diff options
Diffstat (limited to 'src/lib.rs')
-rw-r--r-- | src/lib.rs | 15 |
1 files changed, 14 insertions, 1 deletions
@@ -185,7 +185,7 @@ use pidgin::{Grammar, Match, Matcher}; use regex::Regex; lazy_static! { - // making this public is useful for testing, but best to keep it hidden to + // making this public is useful for testing, but best to keep it hidden to // limit complexity and commitment #[doc(hidden)] pub static ref GRAMMAR: Grammar = grammar!{ @@ -402,6 +402,19 @@ pub enum TimeError { NoPayPeriod(String), } +impl TimeError { + /// Extracts error message. + pub fn msg(&self) -> &str { + match self { + TimeError::Parse(s) => s.as_ref(), + TimeError::Misordered(s) => s.as_ref(), + TimeError::ImpossibleDate(s) => s.as_ref(), + TimeError::Weekday(s) => s.as_ref(), + TimeError::NoPayPeriod(s) => s.as_ref(), + } + } +} + /// Converts a time expression into a pair or timestamps and a boolean indicating whether /// the expression was literally a range, such as "9 to 11", as opposed to "9 AM", say. /// |