Use this Rust crate to easily parse various time formats to durations.
use dauer::duration;
use std::time::Duration;
let nanoseconds = duration("1 nanosecond");
let milliseconds = duration("2 milliseconds");
let seconds = duration("3 seconds");
let minutes = duration("4 minutes");
let hours = duration("5 hours");
let day = duration("6 days");
let week = duration("7 weeks");
let month = duration("8 months");
let year = duration("9 months");
let real_big_duration = duration("9 years, 8 months, 7 weeks and 6 days");
let real_small_duration = duration("4 minutes 3 seconds, 2 milliseconds and 1 nanosecond");
- The
duration
function provides straightforward functions to parse durations from a human-readable format, into std::time::Duration instances. - The time unit-specific functions return unsigned integers representing the amount of said time unit parsed from a human-readable format:
years
returns the parsed duration as a number of yearsmonths
returns the parsed duration as a number of monthsweeks
returns the parsed duration as a number of weeksdays
returns the parsed duration as a number of dayshours
returns the parsed duration as a number of hoursminutes
returns the parsed duration as a number of minutesseconds
returns the parsed duration as a number of secondsmilliseconds
returns the parsed duration as a number of yearsnanoseconds
returns the parsed duration as a number of years
Add it as a dependency to your Cargo.toml
[dependencies]
jackdauer = "0.1.0"
"Dauer" is the German word for "duration". When thinking about time, it reminded me of this show called "24", and its main character "Jack Bauer" (which, incidentally also happens to mean "builder" in German). The contraction of both gives "Jack Dauer".
It's 2021, COVID-19 is still raging out there. The last year and a half have been quite gloomy, and I thought I needed (and you probably needed it too; maybe you're not just aware of it) some terrible pun to shed some light on my day-to-day quarantined life.