Search
View source code
Display the source code in std/datetime/interval.d from which this page was generated on github.
Report a bug
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using local clone.

# Struct `std.datetime.interval.NegInfInterval`

Represents an interval of time which has negative infinity as its starting point.

``` struct NegInfInterval(TP) ; ```

Any ranges which iterate over a `NegInfInterval` are infinite. So, the main purpose of using `NegInfInterval` is to create an infinite range which starts at negative infinity and goes to a fixed end point. Iterate over it in reverse.

NameDescription
`this`

## Properties

NameTypeDescription
`end`[get] `TP`The end point of the interval. It is excluded from the interval.
`end`[set] `TP`The end point of the interval. It is excluded from the interval.

## Methods

NameDescription
`bwdRange` Returns a range which iterates backwards over the interval, starting at `end`, using func to generate each successive time point.
`contains` Whether the given time point is within this interval.
`contains` Whether the given interval is completely within this interval.
`contains` Whether the given interval is completely within this interval.
`contains` Whether the given interval is completely within this interval.
`expand` Expands the interval forwards and/or backwards in time. Effectively, it adds the given number of months/years to end.
`expand` Expands the interval forwards in time. Effectively, it does `end += duration`.
`intersection` Returns the intersection of two intervals
`intersection` Returns the intersection of two intervals
`intersection` Returns the intersection of two intervals
`intersects` Whether the given interval overlaps this interval.
`intersects` Whether the given interval overlaps this interval.
`intersects` Whether the given interval overlaps this interval.
`isAdjacent` Whether the given interval is adjacent to this interval.
`isAdjacent` Whether the given interval is adjacent to this interval.
`isAdjacent` Whether the given interval is adjacent to this interval.
`isAfter` Whether this interval is after the given time point.
`isAfter` Whether this interval is after the given interval and does not intersect it.
`isAfter` Whether this interval is after the given interval and does not intersect it.
`isAfter` Whether this interval is after the given interval and does not intersect it.
`isBefore` Whether this interval is before the given time point.
`isBefore` Whether this interval is before the given interval and does not intersect it.
`isBefore` Whether this interval is before the given interval and does not intersect it.
`isBefore` Whether this interval is before the given interval and does not intersect it.
`merge` Returns the union of two intervals
`merge` Returns the union of two intervals
`opAssign`
`shift` Shifts the `end` of this interval forward or backwards in time by the given duration (a positive duration shifts the interval forward; a negative duration shifts it backward). Effectively, it does `end += duration`.
`shift` Shifts the `end` of this interval forward or backwards in time by the given number of years and/or months (a positive number of years and months shifts the interval forward; a negative number shifts it backward). It adds the years the given years and months to end. It effectively calls `add!"years"()` and then `add!"months"()` on end with the given number of years and months.
`span` Returns an interval that covers from the earliest time point of two intervals up to (but not including) the latest time point of two intervals.
`span` Returns an interval that covers from the earliest time point of two intervals up to (but not including) the latest time point of two intervals.
`toString` Converts this interval to a string.