NegInfInterval.merge

Returns the union of two intervals

  1. NegInfInterval merge(Interval!TP interval)
    struct NegInfInterval(TP)
    const
    merge
    (
    scope const Interval!TP interval
    )
  2. NegInfInterval merge(NegInfInterval interval)

Parameters

interval Interval!TP

The interval to merge with this interval.

Throws

std.datetime.date.DateTimeException if the two intervals do not intersect and are not adjacent or if the given interval is empty.

Note: There is no overload for merge which takes a PosInfInterval, because an interval going from negative infinity to positive infinity is not possible.

Examples

assert(NegInfInterval!Date(Date(2012, 3, 1)).merge(
            Interval!Date(Date(1990, 7, 6), Date(2000, 8, 2))) ==
       NegInfInterval!Date(Date(2012, 3 , 1)));

assert(NegInfInterval!Date(Date(2012, 3, 1)).merge(
            Interval!Date(Date(1999, 1, 12), Date(2015, 9, 2))) ==
       NegInfInterval!Date(Date(2015, 9 , 2)));

Meta