Skip to content

Parses a duration from a string | fork with security fixes

License

Notifications You must be signed in to change notification settings

mverleg/parse_duration

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

parse_duration0

Crates.io Documentation Test & lint Check dependencies License: MIT

This is a fork of zeta12ti's parse_duration.

Main differences:

  • It fixes a DOS issue.
  • It drops support for numbers bigger than ±9.22e18.
  • It drops support for exponential notation.

This crate provides a function parse for parsing strings into durations. The parser is based on the standard set by systemd.time, but extends it significantly. For example, negative numbers, decimals and exponents are allowed.

extern crate parse_duration;

use ::parse_duration0::parse;
use ::std::time::Duration;

// One hour less than a day
assert_eq!(parse("1 day -1 hour"), Ok(Duration::new(82_800, 0)));
// Extra things will be ignored
assert_eq!(
    parse("Duration: 1 hour, 15 minutes and 29 seconds"),
    Ok(Duration::new(4529, 0))
);

About

Parses a duration from a string | fork with security fixes

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 96.9%
  • Dockerfile 3.1%