diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2017-11-19 14:45:49 +0100 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2017-11-19 15:05:00 +0100 |
commit | 95e07f51a2cc3e04f356d15497da7278d75523fd (patch) | |
tree | 4a23694727212d2cac0f1cf7c084129a75f7f27d /examples | |
parent | e12aaac56d7375515cb9c7c468d6d65dfa1ae76f (diff) |
Adapt example CLI tool to new interface
Diffstat (limited to 'examples')
-rw-r--r-- | examples/main.rs | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/examples/main.rs b/examples/main.rs index 920accc..3c301cf 100644 --- a/examples/main.rs +++ b/examples/main.rs @@ -6,15 +6,31 @@ fn main() { let s = s.trim(); // because kairos is not yet whitespace tolerant println!("Parsing: '{}'", s); - match kairos::timetype::TimeType::parse(&s) { - Ok(tt) => { - println!("{:?}", tt); + match kairos::parser::parse(s) { + Err(e) => println!("Error -> {:?}", e), + Ok(kairos::parser::Parsed::TimeType(tt)) => { + println!("Having TimeType"); match tt.calculate() { - Ok(r) => println!("{:?}", r), + Ok(r) => println!("{:?}", r), Err(e) => println!("Error calculating: {:?}", e), } }, - Err(e) => println!("Error -> {:?}", e), + Ok(kairos::parser::Parsed::Iterator(Ok(ui))) => { + println!("Having iterator"); + + for elem in ui { + match elem { + Ok(r) => println!("{:?}", r), + Err(e) => { + println!("Error calculating: {:?}", e); + ::std::process::exit(1) + } + } + } + }, + Ok(kairos::parser::Parsed::Iterator(Err(e))) => { + println!("Failed building iterator: {:?}", e); + }, } } |