Crates.io | datetime-default |
lib.rs | datetime-default |
version | 1.1.1 |
source | src |
created_at | 2022-10-10 16:06:26.339467 |
updated_at | 2023-02-26 16:26:25.681326 |
description | Provide NewType of Datetime that overrides the default value. |
homepage | |
repository | https://github.com/yassun4dev/datetime-default.git |
max_upload_size | |
id | 684738 |
size | 35,074 |
When you want to use #[derive(Default)]
to a struct, you may want the current time to be the default for DateTime
.
For this purpose, we have provided NewType that overrides the default value.
DateTime with current time as default.
use chrono::{Local, TimeZone};
use datetime_default::DateTimeDefaultNow;
assert_eq!(
DateTimeDefaultNow::<Local>::default(),
Local.datetime_from_str("2022/10/10 23:40:11.695164300", "%Y/%m/%d %H:%M:%S%.9f").unwrap()
);
DateTime with UNIX epoch as default.
use chrono::{Utc, TimeZone};
use datetime_default::DateTimeDefaultUnix;
assert_eq!(
DateTimeDefaultUnix::<Utc>::default(),
Utc.datetime_from_str("1970/1/1 00:00:00", "%Y/%m/%d %H:%M:%S").unwrap()
);
use chrono::{DateTime, FixedOffset, TimeZone};
use datetime_default::DateTimeDefaultUnix;
assert_eq!(
DateTimeDefaultUnix::<FixedOffset, 9>::default(),
DateTime::parse_from_rfc3339("1970-01-01T09:00:00+09:00").unwrap()
);
License: MIT