#date-time #whatwg #html #html-datetime

whatwg-datetime

A Rust crate for parsing the datetime microsyntax, as defined by the WHATWG HTML Standard

2 releases

new 0.1.1 Nov 3, 2024
0.1.0 May 26, 2023

#2869 in Parser implementations

MIT/Apache

86KB
1.5K SLoC

whatwg-datetime

License master docs docs.rs CI codecov

A Rust crate for parsing the datetime microsyntax, as defined by the WHATWG HTML Standard.

Install

cargo add whatwg-datetime

Usage

This library currently implements 8 of the 9 datetime formats defined by the WHATWG HTML Standard. The only format not implemented is the duration format, which is tracked in issue #29.

use chrono::{NaiveDate, NaiveDateTime, NaiveTime, TimeZone, Utc};
use whatwg_datetime::parse_global_datetime;

assert_eq!(
	parse_global_datetime("2011-11-18T14:54Z"),
	Some(Utc.from_utc_datetime(
		&NaiveDateTime::new(
			NaiveDate::from_ymd_opt(2011, 11, 18).unwrap(),
			NaiveTime::from_hms_opt(14, 54, 0).unwrap(),
		)
	))
);

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~1–6MB
~27K SLoC