Quantcast

True time-span implementation.

Author Johnny C. Lam <jlam88@gmail.com>
Author date 2013-10-31 19:06:14
Author local date 2013-10-31 19:06:14 +0000
Committer Johnny C. Lam <jlam88@gmail.com>
Committer date 2013-10-31 19:06:14
Committer local date 2013-10-31 19:06:14 +0000
Commit ce9a30eac9cfbe18700b4745879d6574e5b6046a
Tree c1e5858d216217331f55210682730770f8b0ca6b
Parent ad60044d9851566a65ba6334a8f4f2be46508118
True time-span implementation.

A time-span is a union of continuous interval subsets of the real number
line (0, infinity).  Internally represented by an array of numbers
representing alternately the left and right endpoints of an interval.
Point sets and empty sets are both considered empty.

Pre-allocate tables when creating parse tree nodes in OvaleCompile to be
reused for time-span evaluation within OvaleBestAction.

Convert OvaleBestAction to use time-spans for correctness when dealing
with arbitrary unions and intersections of time intervals when evaluating
nodes.

This fixes ticket 306 - "and" "or" bugged by @Wiljo.

git-svn-id: svn://svn.curseforge.net/wow/ovale/mainline/trunk@1117 d5049fe3-3747-40f7-a4b5-f36d6801af5f