https://github.com/zslayton/cron
A cron expression parser in Rust
https://github.com/zslayton/cron
cron cron-expression-parser rust schedule
Last synced: 5 months ago
JSON representation
A cron expression parser in Rust
- Host: GitHub
- URL: https://github.com/zslayton/cron
- Owner: zslayton
- License: apache-2.0
- Created: 2015-06-14T21:16:41.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2024-11-06T19:42:57.000Z (about 1 year ago)
- Last Synced: 2024-11-06T20:34:28.053Z (about 1 year ago)
- Topics: cron, cron-expression-parser, rust, schedule
- Language: Rust
- Homepage:
- Size: 167 KB
- Stars: 364
- Watchers: 6
- Forks: 69
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# cron [](https://github.com/zslayton/cron/actions) [](https://crates.io/crates/cron) [](https://docs.rs/cron)
A cron expression parser. Works with stable Rust v1.28.0.
```rust
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
*/
```
## License
Licensed under either of
* Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or https://www.apache.org/licenses/LICENSE-2.0)
* MIT license ([LICENSE-MIT](LICENSE-MIT) or https://opensource.org/licenses/MIT)
at your option.
### Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you shall be dual licensed as above, without any
additional terms or conditions.