6 Date and Time Periods
(require gregor/period) | package: gregor-lib |
procedure
(years n) → date-period?
n : exact-integer?
procedure
(months n) → date-period?
n : exact-integer?
procedure
(weeks n) → date-period?
n : exact-integer?
procedure
(days n) → date-period?
n : exact-integer?
procedure
(hours n) → time-period?
n : exact-integer?
procedure
(minutes n) → time-period?
n : exact-integer?
procedure
(seconds n) → time-period?
n : exact-integer?
procedure
(milliseconds n) → time-period?
n : exact-integer?
procedure
(microseconds n) → time-period?
n : exact-integer?
procedure
(nanoseconds n) → time-period?
n : exact-integer?
Examples: | ||||||
|
value
Example: | ||
|
Examples: | ||||||
|
procedure
(date-period? p) → boolean?
p : period?
(equal? p (period->date-period p))
procedure
(time-period? p) → boolean?
p : period?
(equal? p (period->time-period p))
procedure
(period-empty? p) → boolean?
p : period?
(andmap (compose zero? cdr) (period->list p))
procedure
(period-ref p f) → exact-integer?
p : period? f : temporal-unit/c
Examples: | ||||
|
procedure
(period-set p f n) → period?
p : period? f : temporal-unit/c n : exact-integer
Examples: | ||||
|
procedure
(period->list p)
→ (listof (cons/c temporal-unit/c exact-integer?)) p : period?
Examples: | ||||||||||||||||||||||||||||||||||||
|
procedure
p : period?
Example: | ||
|
procedure
p : period?
Example: | ||
|
procedure
(negate-period p) → period?
p : period?
Example: | ||
|
value
date-units : (listof symbol?) = '(years months weeks days)
value
time-units : (listof symbol?)
=
'(hours minutes seconds milliseconds microseconds nanoseconds)
value
temporal-units : (listof symbol?)
=
'(years months weeks days hours minutes seconds milliseconds microseconds nanoseconds)
value
date-unit/c : flat-contract?
value
time-unit/c : flat-contract?
value
temporal-unit/c : flat-contract?
procedure
(date-period-between p1 p2 [fields]) → date-period?
p1 : date-provider? p2 : date-provider? fields : (listof date-unit/c) = date-units
Example: | ||
|
procedure
(time-period-between p1 p2 [fields]) → time-period?
p1 : time-provider? p2 : time-provider? fields : (listof time-unit/c) = time-units
Example: | ||
|
procedure
(period-between p1 p2 [fields]) → period?
p1 : datetime-provider? p2 : datetime-provider? fields : (listof temporal-unit/c) = temporal-units
Example: | ||
|