time

The time module groups clock readings, date-component extraction, sleeping, durations, and formatting into five submodules, plus a few top-level shortcuts. Timestamps are Unix seconds and all components are computed in UTC. Import it with import time.

time.clock

FunctionSignatureDescription
nowtime.clock.now() → stringcurrent time as an RFC3339 string
unixtime.clock.unix() → intcurrent time in Unix seconds
unixMillitime.clock.unixMilli() → intcurrent time in Unix milliseconds
unixMicrotime.clock.unixMicro() → intcurrent time in Unix microseconds
unixNanotime.clock.unixNano() → intcurrent time in Unix nanoseconds

time.date

FunctionSignatureDescription
yeartime.date.year(ts: int) → intyear of the timestamp
monthtime.date.month(ts: int) → intmonth, 1–12
daytime.date.day(ts: int) → intday of month
hourtime.date.hour(ts: int) → inthour, 0–23
minutetime.date.minute(ts: int) → intminute, 0–59
secondtime.date.second(ts: int) → intsecond, 0–59
weekdaytime.date.weekday(ts: int) → stringweekday name, e.g. “Monday”
isLeapYeartime.date.isLeapYear(year: int) → booltrue if the year is a leap year
fromPartstime.date.fromParts(year: int, month: int, day: int, hour: int, min: int, sec: int) → intbuild a Unix timestamp from UTC components

time.timer

FunctionSignatureDescription
sleeptime.timer.sleep(ms: int) → voidblock the current execution for ms milliseconds
sincetime.timer.since(ts: int) → intmilliseconds elapsed since ts
untiltime.timer.until(ts: int) → intmilliseconds remaining until ts

time.duration

FunctionSignatureDescription
parsetime.duration.parse(s: string) → intparse a Go duration string (e.g. “1h30m”) into milliseconds; 0 on error
formattime.duration.format(ms: int) → stringformat milliseconds as a duration string
secondstime.duration.seconds(n: int) → intn seconds in milliseconds
minutestime.duration.minutes(n: int) → intn minutes in milliseconds
hourstime.duration.hours(n: int) → intn hours in milliseconds
daystime.duration.days(n: int) → intn days in milliseconds

time.format

FunctionSignatureDescription
rfc3339time.format.rfc3339(ts: int) → stringformat as RFC3339
rfc1123time.format.rfc1123(ts: int) → stringformat as RFC1123
datetime.format.date(ts: int) → stringformat as 2006-01-02
timetime.format.time(ts: int) → stringformat as 15:04:05
datetimetime.format.datetime(ts: int) → stringformat as 2006-01-02 15:04:05
customtime.format.custom(ts: int, layout: string) → stringformat with a Go layout string

Top-level shortcuts

FunctionSignatureDescription
nowtime.now() → stringcurrent time as RFC3339
unixtime.unix() → intcurrent time in Unix seconds
sleeptime.sleep(ms: int) → voidblock for ms milliseconds
parsetime.parse(s: string) → intparse an RFC3339 string into a Unix timestamp; 0 on error

Example

import time

// stamp "now", then break it into parts
let ts = time.clock.unix()
print(time.format.datetime(ts))           // 2026-05-29 14:03:21
print(time.date.weekday(ts))              // Friday

// build a timestamp and measure elapsed time
let start = time.clock.unixMilli()
time.timer.sleep(time.duration.seconds(1))
print(time.timer.since(ts))               // milliseconds since ts
Standard library · View as Markdown · llms-full.txt