1//! Human-friendly time parser and formatter 2//! 3//! Features: 4//! 5//! * Parses durations in free form like `15days 2min 2s` 6//! * Formats durations in similar form `2years 2min 12us` 7//! * Parses and formats timestamp in `rfc3339` format: `2018-01-01T12:53:00Z` 8//! * Parses timestamps in a weaker format: `2018-01-01 12:53:00` 9//! 10//! Timestamp parsing/formatting is super-fast because format is basically 11//! fixed. 12//! 13//! See [humantime-serde] for serde integration (previous crate [serde-humantime] looks unmaintained). 14//! 15//! [serde-humantime]: https://docs.rs/serde-humantime/0.1.1/serde_humantime/ 16//! [humantime-serde]: https://docs.rs/humantime-serde 17 18#![forbid(unsafe_code)] 19#![warn(missing_debug_implementations)] 20#![warn(missing_docs)] 21 22mod duration; 23mod wrapper; 24mod date; 25 26pub use self::duration::{parse_duration, Error as DurationError}; 27pub use self::duration::{format_duration, FormattedDuration}; 28pub use self::wrapper::{Duration, Timestamp}; 29pub use self::date::{parse_rfc3339, parse_rfc3339_weak, Error as TimestampError}; 30pub use self::date::{ 31 format_rfc3339, format_rfc3339_micros, format_rfc3339_millis, format_rfc3339_nanos, 32 format_rfc3339_seconds, 33}; 34pub use self::date::{Rfc3339Timestamp}; 35