pub struct ParserUnits { /* private fields */ }Expand description
Used to customize the parser’s units and their values.
§Example
use durstr::{Parser, ParserOptions, ParserUnits};
use std::time::Duration;
let mut units = ParserUnits::default();
units.add_unit("days", Duration::from_secs(3600) * 24);
let parser = Parser::new(ParserOptions::default().with_units(units));
let d = parser.parse("4 days");
assert_eq!(d, Ok(Duration::from_secs(3600) * 24 * 4));Implementations§
Source§impl ParserUnits
impl ParserUnits
Sourcepub fn new() -> Self
pub fn new() -> Self
Returns a ParserUnits with no units.
Unlike ParserUnits::default, this does not include the built-in units
(hours, minutes, seconds, milliseconds). Use this when you want full control
over which units are available.
Sourcepub fn add_unit(&mut self, k: impl Into<String>, v: Duration)
pub fn add_unit(&mut self, k: impl Into<String>, v: Duration)
Insert/update a unit and its value.
For example, to add a unit ‘day’ with a duration of 24 hours:
use durstr::ParserUnits;
use std::time::Duration;
let mut units = ParserUnits::default();
units.add_unit("day", Duration::from_secs(3600) * 24);Trait Implementations§
Auto Trait Implementations§
impl Freeze for ParserUnits
impl RefUnwindSafe for ParserUnits
impl Send for ParserUnits
impl Sync for ParserUnits
impl Unpin for ParserUnits
impl UnsafeUnpin for ParserUnits
impl UnwindSafe for ParserUnits
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more