Skip to content

std.time

tier: std · since: std-0.2 stability: experimental

纯历法(days 域;公历)+ Clock 墙钟面(v0.3:now_ms/iso_utc;单调钟待运行时面;Rust interp 内建待补,parity 欠账在册) 口径:days since 1970-01-01(1970-01-01 = 0);年份域 [1,9999];全部纯函数, 无时钟依赖(宪章 8);Hinnant 民历算法;I32 除法幅度 ≤1.5e6(C3 安全)

pub fn

Signature Returns Description
leap_is_leap(y: I32) Bool 公历闰年:四年一闰、百年不闰、四百年再闰
leap_days_in_month(y: I32, m: I32) I32 月天数;m 越界返回 0(文档化)
days_from_civil(y: I32, m: I32, d: I32) I32 公历日期 → days since 1970-01-01;m/d 越界返回 -1(文档化)
civil_from_days(z: I32) CivilDate days → 公历日期(逆变换;z 域见年份域)
weekday(z: I32) I32 星期:0=星期日 … 6=星期六;1970-01-01 = 4(星期四)
date_format(z: I32) Str "YYYY-MM-DD"(4 位零填充;年份域外返回空串)
date_parse(s: Str) Option[I32] 文本 "yyyy-mm-dd" → days(1970-01-01 = 0 基;形不合规 None)
time_get(o: Option[I32], dft: I32) I32 发射面安全 Option 助手(match 形;C13a)
time_some(o: Option[I32]) Bool Option[I32] 判别形助手(发射面 C13)
time_to_epoch_s(y: I32, m: I32, d: I32) I64 公历日期 → Unix epoch 秒(I64;年域 [1,9999])
iso_utc(ms: I64) Str epoch 毫秒 → ISO 8601 UTC(YYYY-MM-DDTHH:MM:SSZ)
now_iso_utc() Str 当前墙钟的 ISO 8601 UTC 串