[−][src]Function tweetr::util::parse_relative_time
pub fn parse_relative_time(delta: &str) -> Result<Duration, ()>
Parse a relative datetime into a Duration
.
This has the form of
now
- current datetimein
n [second
|minute
|hour
|day
|week
]{,s
} (case-insensitive) - current datetime plus the specified amount of time
Examples
assert_eq!(parse_relative_time("now").unwrap(), Duration::from_secs(0)); assert_eq!(parse_relative_time("in 3 seconds").unwrap(), Duration::from_secs(3)); assert_eq!(parse_relative_time("in 5 MINUTES").unwrap(), Duration::from_secs(60*5)); assert_eq!(parse_relative_time("iN 1 hOur").unwrap(), Duration::from_secs(60*60*1)); assert_eq!(parse_relative_time("in 2 daYs").unwrap(), Duration::from_secs(60*60*24*2)); assert_eq!(parse_relative_time("in 4 weeks").unwrap(), Duration::from_secs(60*60*24*7*4)); assert!(parse_relative_time("in a23d weeks").is_err()); assert!(parse_relative_time("in 23 wsfas1eeks").is_err()); assert!(parse_relative_time("23 wsfas1eeks").is_err());