duration_str

Function parse_time

Source
pub fn parse_time(input: impl AsRef<str>) -> Result<Duration, String>
Expand description

convert Into<String> to time::Duration

ยงExample

use duration_str::parse_time;
use time::Duration;

// supports units
let duration = parse_time("1d").unwrap();
assert_eq!(duration,Duration::seconds(24*60*60));

// supports addition
let duration = parse_time("3m+31").unwrap();
assert_eq!(duration,Duration::seconds(211));

// spaces are optional
let duration = parse_time("3m + 31").unwrap();
assert_eq!(duration,Duration::seconds(211));

// plus sign is optional
let duration = parse_time("3m  31").unwrap();
assert_eq!(duration,Duration::seconds(211));

// both plus and spaces are optional
let duration = parse_time("3m31").unwrap();
assert_eq!(duration,Duration::seconds(211));

// supports multiplication
let duration = parse_time("1m*10").unwrap();
assert_eq!(duration,Duration::seconds(600));

// spaces are optional
let duration = parse_time("1m * 10").unwrap();
assert_eq!(duration,Duration::seconds(600));