#![allow(dead_code)]
#![allow(unused_variables)]
#![allow(non_snake_case)]
#![allow(non_camel_case_types)]
#![allow(unused_parens)]
#![allow(unused_mut)]
#![allow(unused_imports)]
use std::collections::{HashMap,HashSet};
mod lib;
use lib::*;
use lib::Token::*;
fn main()
{
let input = "x=12 &&u2*20==.14 -> \"ab c \" + k; print(f); n.f(); #b l a h";
let mut scanner = Str_tokenizer::new(input);
let tokens:Vec<_> = scanner.collect();
println!("tokens: {:?}",tokens);
println!("-----------------");
let mut fscan = File_tokenizer::new("test.c");
fscan.add_keywords("while return");
fscan.set_line_comment("//");
fscan.set_keep_comments(false);
fscan.set_keep_newline(true);
while let Some(token) = fscan.next() {
println!("{:?}, line {}",&token,fscan.line_number());
}
println!("--------");
let mut scanner = Str_tokenizer::new("-5-(4-2)*5");
while let Some(token) = scanner.next() {
println!("{:?}",&token);
}
}