1 //! Date and time types unconcerned with timezones. 2 //! 3 //! They are primarily building blocks for other types 4 //! (e.g. [`TimeZone`](../offset/trait.TimeZone.html)), 5 //! but can be also used for the simpler date and time handling. 6 7 pub(crate) mod date; 8 pub(crate) mod datetime; 9 mod internals; 10 pub(crate) mod isoweek; 11 pub(crate) mod time; 12 13 pub use self::date::{Days, NaiveDate, NaiveDateDaysIterator, NaiveDateWeeksIterator, NaiveWeek}; 14 #[allow(deprecated)] 15 pub use self::date::{MAX_DATE, MIN_DATE}; 16 #[cfg(feature = "rustc-serialize")] 17 #[allow(deprecated)] 18 pub use self::datetime::rustc_serialize::TsSeconds; 19 #[allow(deprecated)] 20 pub use self::datetime::{NaiveDateTime, MAX_DATETIME, MIN_DATETIME}; 21 pub use self::isoweek::IsoWeek; 22 pub use self::time::NaiveTime; 23 24 #[cfg(feature = "__internal_bench")] 25 #[doc(hidden)] 26 pub use self::internals::YearFlags as __BenchYearFlags; 27 28 /// Serialization/Deserialization of naive types in alternate formats 29 /// 30 /// The various modules in here are intended to be used with serde's [`with` 31 /// annotation][1] to serialize as something other than the default [RFC 32 /// 3339][2] format. 33 /// 34 /// [1]: https://serde.rs/attributes.html#field-attributes 35 /// [2]: https://tools.ietf.org/html/rfc3339 36 #[cfg(feature = "serde")] 37 pub mod serde { 38 pub use super::datetime::serde::*; 39 } 40