View source code
Display the source code in std/datetime/interval.d from which this page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
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.Interval

Represents an interval of time.

struct Interval(TP) ;

An Interval has a starting point and an end point. The interval of time is therefore the time starting at the starting point up to, but not including, the end point. e.g.

[January 5th, 2010 - March 10th, 2010)
[05:00:30 - 12:00:00)
[1982-01-04T08:59:00 - 2010-07-04T12:00:00)

A range can be obtained from an Interval, allowing iteration over that interval, with the exact time points which are iterated over depending on the function which generates the range.

Constructors

NameDescription
this
this

Properties

NameTypeDescription
begin[get] TPThe starting point of the interval. It is included in the interval.
begin[set] TPThe starting point of the interval. It is included in the interval.
empty[get] boolWhether the interval's length is 0, that is, whether begin == end.
end[get] TPThe end point of the interval. It is excluded from the interval.
end[set] TPThe end point of the interval. It is excluded from the interval.
length[get] autoReturns the duration between begin and end.

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 does begin -= duration and/or end += duration. Whether it expands forwards and/or backwards in time is determined by dir.
expand Expands the interval forwards and/or backwards in time. Effectively, it subtracts the given number of months/years from begin and adds them to end. Whether it expands forwards and/or backwards in time is determined by dir.
fwdRange Returns a range which iterates forward over the interval, starting at begin, using func to generate each successive time point.
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 with it.
isBefore Whether this interval is before the given interval and does not intersect with it.
isBefore Whether this interval is before the given interval and does not intersect with it.
merge Returns the union of two intervals
merge Returns the union of two intervals
merge Returns the union of two intervals
opAssign
shift Shifts the 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 begin += duration and end += duration.
shift Shifts the 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 both begin and end. It effectively calls add!"years"() and then add!"months"() on begin and 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.
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.

Authors

Jonathan M Davis

License

Boost License 1.0.