Crate tinytime

Source
Expand description

Low overhead implementation of time related concepts.

§Operator support

// | example                                       | left       | op | right    | result     |
// | ----------------------------------------------| ---------- | ---| -------- | ---------- |
let result: Duration = time - time;             // | Time       | -  | Time     | Duration   |
let result: Time = time + duration;             // | Time       | +  | Duration | Time       |
time += duration;                               // | Time       | += | Duration | Time       |
let result: Time = time - duration;             // | Time       | -  | Duration | Time       |
time -= duration;                               // | Time       | -= | Duration | Time       |
let result: Duration = duration + duration;     // | Duration   | +  | Duration | Duration   |
duration += duration;                           // | Duration   | += | Duration | Duration   |
let result: Duration = duration - duration;     // | Duration   | -  | Duration | Duration   |
duration -= duration;                           // | Duration   | -= | Duration | Duration   |
let result: Duration = duration * 1.0f64;       // | Duration   | *  | f64      | Duration   |
let result: Duration = 2.0f64 * duration;       // | f64        | *  | Duration | Duration   |
duration *= 2.0f64;                             // | Duration   | *= | f64      | Duration   |
let result: Duration = duration / 2.0f64;       // | Duration   | /  | f64      | Duration   |
duration /= 2.0f64;                             // | Duration   | /= | f64      | Duration   |
let result: Duration = duration * 7i64;         // | Duration   | *  | i64      | Duration   |
let result: Duration = 7i64 * duration;         // | i64        | *  | Duration | Duration   |
duration *= 7i64;                               // | Duration   | *= | i64      | Duration   |
let result: Duration = duration / 7i64;         // | Duration   | /  | i64      | Duration   |
duration /= 7i64;                               // | Duration   | /= | i64      | Duration   |
let result: f64 = duration / duration;          // | Duration   | /  | Duration | f64        |

Structs§

Duration
A duration of time.
Time
A point in time.
TimeIsNegativeError
TimeWindow
An interval or range of time: [start,end). Debug-asserts ensure that start <= end. If compiled in release mode, the invariant of start <= end is maintained, by correcting invalid use of the API (and setting end to start).

Enums§

DurationParseError
TimeWindowError