use crate::token::TokenType::{self, *}; use lazy_static::lazy_static; use std::collections::HashMap; lazy_static! { /// Mapping of reserved keywords to their respective TokenType. pub static ref KEYWORDS: HashMap = { let mut m = HashMap::new(); m.insert("and".into(), And); m.insert("class".into(), Class); m.insert("else".into(), Else); m.insert("false".into(), False); m.insert("for".into(), For); m.insert("fun".into(), Fun); m.insert("if".into(), If); m.insert("nil".into(), Nil); m.insert("or".into(), Or); m.insert("print".into(), Print); m.insert("return".into(), Return); m.insert("super".into(), Super); m.insert("true".into(), True); m.insert("var".into(), Var); m.insert("while".into(), While); m }; }