diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2017-11-19 15:57:39 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-19 15:57:39 +0100 |
commit | 8164d268235c29b05566e635c8e0e206e8a667de (patch) | |
tree | cfe57367c595b3be6469f2be86624a5504122e7d | |
parent | 902f04bd7c975b7d97849327b464e0e5db1f9ec5 (diff) | |
parent | fd3f3ff1e5ee75e3050c26788b86f0362baa2d8f (diff) |
Merge pull request #11 from matthiasbeyer/0.1.0-beta-1
0.1.0 beta 1
-rw-r--r-- | .travis.yml | 4 | ||||
-rw-r--r-- | Cargo.toml | 2 | ||||
-rw-r--r-- | README.md | 29 |
3 files changed, 22 insertions, 13 deletions
diff --git a/.travis.yml b/.travis.yml index d7ded8e..e02add9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,8 +21,8 @@ matrix: - rust: nightly script: -- | - cargo build --all --features with-filters --verbose -j 1 && cargo test --all --features with-filters --verbose -j 1 + - cargo build --all --all-features --verbose -j 1 + - cargo test --all --all-features --verbose -j 1 cache: cargo: true @@ -1,6 +1,6 @@ [package] name = "kairos" -version = "0.0.0" +version = "0.1.0-beta-1" authors = ["Matthias Beyer <mail@beyermatthias.de>"] description = "A library on top of chrono to calculate times and dates ergonomically" @@ -15,34 +15,43 @@ This library offers an abstraction over the awesome `chrono` crate to calculate dates almost like one would write plain text: ```rust +use kairos::timetype::TimeType as TT; + // get the end of the month of the day 5 days ago -let _ = (today() - week(1) + days(2)).end_of_month(); +let _ = (TT::today() - TT::weeks(1) + TT::days(2)).end_of_month(); // alternative to above -let _ = (today() - days(5)).end_of_month(); +let _ = (TT::today() - TT::days(5)).end_of_month(); -// get the name of the day of the end of the current year -let _ = today().end_of_year().dayname(); +// NOTE: The following features are not yet included // get a vector of dates for the next 4 weeks, starting today -let _ = today().every(week(1)).take(4); +let _ = TT::today() + .every(TT::week(1)) + .take(4); // get an iterator of dates for the next year, in a weekly fashion, starting // today but skipping october -let _ = today().every(week(1)).skip(Month::October).until(Mark::END_OF_YEAR); +let _ = TT::today() + .every(TT::week(1)) + .skip(Month::October) + .until(Mark::END_OF_YEAR); // and finally, a complex one -let _ = (today() - year(1)) // exactly one year ago +let _ = (TT::today() - TT::years(1)) // exactly one year ago .every(Day::Monday) // and then every Monday .skip(Month::October) // but not in october .skip(|date| date.is(Mark::MONTH_START)) // and not if the day is the 1st of a month .until(Mark::Moment(today())); // until today ``` -Plus, we want to offer a string-parser which can be used to parse user input -into such things. This will be a compiletime option to include the parser or -not. +## Parsing User-Input + +kairos ships a user input parser, so you can include kairos in your +commandline applications. + +Have a look at [the example CLI utility](./examples/main.rs). # License |