1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
#![cfg_attr(feature = "clippy", feature(plugin))] #![cfg_attr(feature = "clippy", plugin(clippy))] //! A cron expression parser and schedule explorer //! # Example //! ``` //! extern crate chrono; //! extern crate cron; //! //! use cron::Schedule; //! use chrono::Utc; //! use std::str::FromStr; //! //! fn main() { //! // sec min hour day of month month day of week year //! let expression = "0 30 9,12,15 1,15 May-Aug Mon,Wed,Fri 2018/2"; //! let schedule = Schedule::from_str(expression).unwrap(); //! println!("Upcoming fire times:"); //! for datetime in schedule.upcoming(Utc).take(10) { //! println!("-> {}", datetime); //! } //! } //! //! /* //! Upcoming fire times: //! -> 2018-06-01 09:30:00 UTC //! -> 2018-06-01 12:30:00 UTC //! -> 2018-06-01 15:30:00 UTC //! -> 2018-06-15 09:30:00 UTC //! -> 2018-06-15 12:30:00 UTC //! -> 2018-06-15 15:30:00 UTC //! -> 2018-08-01 09:30:00 UTC //! -> 2018-08-01 12:30:00 UTC //! -> 2018-08-01 15:30:00 UTC //! -> 2018-08-15 09:30:00 UTC //! */ //! ``` extern crate chrono; extern crate nom; #[macro_use] extern crate error_chain; pub mod error; pub mod schedule; pub mod time_unit; pub use chrono::*; pub use error_chain::*; pub use nom::*; pub use time_unit::TimeUnitSpec;