
Duration represents a relative duration of time with nanosecond precision.
Slots
- boot
-
static Duration boot()
Get the system timer at boot time of the Fan VM.
- compare
-
Compare based on nanosecond ticks.
- equals
-
Return true if same number nanosecond ticks.
- floor
-
Duration floor(Duration accuracy)
Return a new Duration with this duration's nanosecond ticks truncated according to the specified accuracy. For example
floor(1min)
will truncate this duration such that it's seconds are 0.0. - fromStr
-
static Duration fromStr(Str s, Bool checked := true)
Parse a Str into a Duration according to the Fan literal format. If invalid format and checked is false return null, otherwise throw ParseErr. The following suffixes are supported:
ns: nanoseconds (x 1) ms: milliseconds (x 1,000,000) sec: seconds (x 1,000,000,000) min: minutes (x 60,000,000,000) hr: hours (x 3,600,000,000,000) day: days (x 86,400,000,000,000)
Examples:
Duration.fromStr("4ns") Duration.fromStr("100ms") Duration.fromStr("-0.5hr")
- hash
-
override Int hash()
Return ticks().
- make
-
static Duration make(Int ticks)
Create a Duration which represents the specified number of nanosecond ticks.
- minus
-
Subtract b from this. Shortcut is a-b.
- negate
-
Duration negate()
Negative of this. Shortcut is -a.
- now
-
static Duration now()
Get the current value of the system timer. This method returns a relative time unrelated to system or wall-clock time. Typically it is the number of nanosecond ticks which have elapsed since system startup.
- plus
-
Add this with b. Shortcut is a+b.
-
new privateMake()
Private constructor.
- slash
-
Divide this by b. Shortcut is a/b.
- star
-
Multiply this with b. Shortcut is a*b.
- ticks
-
Int ticks()
Return number of nanosecond ticks.
- toHour
-
Int toHour()
Get this duration in hour. Any fractional hours are truncated with a loss of precision.
- toLocale
-
Str toLocale()
Return human friendly string representation. TODO: enhance this for pattern
- toMillis
-
Int toMillis()
Get this duration in milliseconds. Any fractional milliseconds are truncated with a loss of precision.
- toMin
-
Int toMin()
Get this duration in minutes. Any fractional minutes are truncated with a loss of precision.
- toSec
-
Int toSec()
Get this duration in seconds. Any fractional seconds are truncated with a loss of precision.
- toStr
-
override Str toStr()
Return string representation of the duration which is a valid duration literal format suitable for decoding via fromStr.
- uptime
-
static Duration uptime()
Get the duration which has elapsed since the Fan VM was booted which is
now - boot
.