3 unstable releases
0.1.0 | Jul 10, 2023 |
---|---|
0.0.2 | May 17, 2021 |
0.0.1 | Mar 8, 2016 |
#1365 in Parser implementations
35 downloads per month
Used in 2 crates
(via gedcomx)
27KB
686 lines
gedcomx-date-rs
Gedcomx date parsing written with nom in rust. See documentation here.
let date = gedcomx_date::parse("2015-06-26T16:43:23+02:00").unwrap();
Will give you:
GedcomxDate::Simple {
date: Date {
year: 2015,
month: Some(6),
day: Some(26),
},
time: Some(Time {
hours: 16,
minutes: Some(43),
seconds: Some(23),
tz_offset_hours: Some(2),
tz_offset_minutes: Some(0),
}),
};
Usage
Update your Cargo.toml
:
[dependencies]
gedcomx_date = "0.0.1"
fn main() {
let date = gedcomx_date::parse("+1988-03-29T03:19+01");
print!("{:?}", date);
}
TODO
- don't cheat on the duration tests
- validate dates (i.e. 30/02/2016)
- validate hours (i.e. 24:31)
- report parsing errors
License
MIT License Copyright (c) 2016 Nicolas Barbotte
Dependencies
~1MB
~19K SLoC