Time API Reference

Time measurement, sleep operations, and Duration type

Import

U std/time

Duration Struct

S Duration { secs: i64, nanos: i64 }
MethodSignatureDescription
newF new(secs: i64, nanos: i64) -> DurationCreate with normalization
from_secsF from_secs(secs: i64) -> DurationFrom seconds
from_millisF from_millis(millis: i64) -> DurationFrom milliseconds
from_microsF from_micros(micros: i64) -> DurationFrom microseconds
from_nanosF from_nanos(nanos: i64) -> DurationFrom nanoseconds
as_secsF as_secs(&self) -> i64Total seconds
as_millisF as_millis(&self) -> i64Total milliseconds
as_microsF as_micros(&self) -> i64Total microseconds
as_nanosF as_nanos(&self) -> i64Total nanoseconds
subsec_nanosF subsec_nanos(&self) -> i64Subsecond nanoseconds component
subsec_millisF subsec_millis(&self) -> i64Subsecond milliseconds component
subsec_microsF subsec_micros(&self) -> i64Subsecond microseconds component
addF add(&self, other: Duration) -> DurationAdd durations
subF sub(&self, other: Duration) -> DurationSubtract durations

Functions

FunctionSignatureDescription
time_nowF time_now() -> i64Unix timestamp (seconds)
time_millisF time_millis() -> i64Milliseconds since epoch
time_microsF time_micros() -> i64Microseconds since epoch
sleep_millisF sleep_millis(millis: i64) -> i64Sleep milliseconds
sleep_microsF sleep_micros(micros: i64) -> i64Sleep microseconds
sleep_secsF sleep_secs(secs: i64) -> i64Sleep seconds
sleepF sleep(millis: i64) -> i64Sleep (alias)
sleep_durationF sleep_duration(dur: Duration) -> i64Sleep for Duration
elapsed_millisF elapsed_millis(start: i64) -> i64Elapsed since start (ms)
elapsed_microsF elapsed_micros(start: i64) -> i64Elapsed since start (us)
now_durationF now_duration() -> DurationCurrent time as Duration

Usage

U std/time

F main() -> i64 {
    start := time_millis()
    sleep_millis(100)
    elapsed := elapsed_millis(start)  # ~100
    0
}