datetime-default

Crates.iodatetime-default
lib.rsdatetime-default
version1.1.1
sourcesrc
created_at2022-10-10 16:06:26.339467
updated_at2023-02-26 16:26:25.681326
descriptionProvide NewType of Datetime that overrides the default value.
homepage
repositoryhttps://github.com/yassun4dev/datetime-default.git
max_upload_size
id684738
size35,074
yassun7010 (yassun7010)

documentation

README

datetime-default

DateTime NewType set for default time

Latest Version GitHub license

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.

Features

DateTimeDefaultNow

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()
);

DateTimeDefaultUnix

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()
);

Default Datetime with TimeZone

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

Commit count: 23

cargo fmt