diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2018-10-30 13:25:33 +0100 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2018-11-07 18:11:27 +0100 |
commit | 6c25067ba3218abbd9c4e60467559edd4d923deb (patch) | |
tree | 4d96140108936d0f40c16a96a2874fa384125e61 /src/parser/iterator.rs | |
parent | d100fc8d0f456acfd33151de0b6225b6bf601717 (diff) |
Move code to failure as error handling library
Diffstat (limited to 'src/parser/iterator.rs')
-rw-r--r-- | src/parser/iterator.rs | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/src/parser/iterator.rs b/src/parser/iterator.rs index f06edd0..a60892e 100644 --- a/src/parser/iterator.rs +++ b/src/parser/iterator.rs @@ -1,5 +1,7 @@ use nom::whitespace::sp; +use failure::Fallible as Result; +use failure::Error; use parser::timetype::*; use timetype::IntoTimeType; use timetype; @@ -64,7 +66,7 @@ named!(pub iterator<Iterator>, do_parse!( pub struct Iterator(Date, Iterspec, Option<UntilSpec>); impl Iterator { - pub fn into_user_iterator(self) -> error::Result<UserIterator<iter::Iter>> { + pub fn into_user_iterator(self) -> Result<UserIterator<iter::Iter>> { use iter::Times; use iter::Until; @@ -91,7 +93,8 @@ impl Iterator { let into_ndt = |e: timetype::TimeType| try!(e.calculate()) .get_moment() - .ok_or(error::KairosErrorKind::NotADateInsideIterator) + .ok_or(error::ErrorKind::NotADateInsideIterator) + .map_err(Error::from) .map(Clone::clone); match self.2 { @@ -122,7 +125,7 @@ impl Iterator { // names are hard #[derive(Debug)] pub enum UserIterator<I> - where I: ::std::iter::Iterator<Item = error::Result<timetype::TimeType>> + where I: ::std::iter::Iterator<Item = Result<timetype::TimeType>> { Iterator(iter::Iter), TimesIter(iter::TimesIter<I>), @@ -130,9 +133,9 @@ pub enum UserIterator<I> } impl<I> ::std::iter::Iterator for UserIterator<I> - where I: ::std::iter::Iterator<Item = error::Result<timetype::TimeType>> + where I: ::std::iter::Iterator<Item = Result<timetype::TimeType>> { - type Item = error::Result<timetype::TimeType>; + type Item = Result<timetype::TimeType>; fn next(&mut self) -> Option<Self::Item> { match *self { @@ -171,7 +174,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); @@ -195,7 +198,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); @@ -219,7 +222,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); @@ -243,7 +246,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); @@ -275,7 +278,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); println!("Okay: {:#?}", ui); @@ -306,7 +309,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); @@ -336,7 +339,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); @@ -366,7 +369,7 @@ mod tests { let (_, i) = res.unwrap(); println!("{:#?}", i); - let ui : Result<UserIterator<iter::Iter>, _> = i.into_user_iterator(); + let ui : Result<UserIterator<iter::Iter>> = i.into_user_iterator(); assert!(ui.is_ok(), "Not okay: {:#?}", ui); let mut ui = ui.unwrap(); |