Crate duration_breakdown

Crate duration_breakdown 

Source
Expand description

This crate breaks down durations of time into their constituent parts of various units (weeks, days, hours, minutes, seconds, and nanoseconds).

This can be used to convert a duration such as 10,000 seconds into the following form: 0 weeks, 0 days, 2 hours, 46 minutes, 40 seconds, and 0 nanoseconds.

§Examples

use duration_breakdown::DurationBreakdown;
use std::time::Duration;
let breakdown = DurationBreakdown::from(Duration::new(12_345_678, 1234));
assert_eq!(
    breakdown.to_string(),
    "20 weeks, 2 days, 21 hours, 21 minutes, 18 seconds, and 1234 nanoseconds");

Structs§

DurationBreakdown
A DurationBreakdown represents a duration of time that has been broken up into several units (i.e. weeks, days, etc) in such a way that the sum of each unit comprises the whole duration of time.

Enums§

Precision
The granularity of a breakdown. A DurationBreakdown with a Minutes precision would have possibly non-zero values for its weeks, days, hours, and minutes, but 0 for its seconds and nanoseconds.