Commits

Dave Abrahams committed cb050eee52b
[stdlib] Add Interval support This allows 0.0..<10.3 and 0.1...4.4 to work properly in pattern matching. Fixes <rdar://problem/12016900> (#Seed 4: add a "contains" method to the range types) by making "contains" available on Interval Addresses <rdar://problem/16254937> (#Seed 4: Ranges with negative strides are broken) by making the formation of an invalid Interval a runtime error. Fixes <rdar://problem/16304317> (Range<T> has limited awesomeness: it is restricted to types that conform to ForwardIndex) Fixes <rdar://problem/16736924> (#Seed 4: Enable range inclusion pattern matching for all types that conform to Equatable and Comparable) Addresses <rdar://problem/16846325> (#Seed 4: Introduce index range) by distinguishing Range (which operates on indices) from Interval Fixes <rdar://problem/17051263> (Pattern-matching a Double range with an infinite endpoint triggers an assertion failure) Fixes <rdar://problem/17051271> (#Seed 4: Pattern-matching Double ranges excludes fractional values) Addresses <rdar://problem/17171420> (Separate types for closed and half-open ranges) Swift SVN r19900