use super::TokenKind;
use std::collections::HashMap;
pub fn keyword_map() -> HashMap<&'static str, TokenKind> {
let mut m = HashMap::new();
m.insert("abstract", TokenKind::Abstract);
m.insert("as", TokenKind::As);
m.insert("base", TokenKind::Base);
m.insert("bool", TokenKind::Bool);
m.insert("break", TokenKind::Break);
m.insert("byte", TokenKind::Byte);
m.insert("case", TokenKind::Case);
m.insert("catch", TokenKind::Catch);
m.insert("char", TokenKind::Char);
m.insert("checked", TokenKind::Checked);
m.insert("class", TokenKind::Class);
m.insert("const", TokenKind::Const);
m.insert("continue", TokenKind::Continue);
m.insert("decimal", TokenKind::Decimal);
m.insert("default", TokenKind::Default);
m.insert("delegate", TokenKind::Delegate);
m.insert("do", TokenKind::Do);
m.insert("double", TokenKind::Double);
m.insert("else", TokenKind::Else);
m.insert("enum", TokenKind::Enum);
m.insert("event", TokenKind::Event);
m.insert("explicit", TokenKind::Explicit);
m.insert("extern", TokenKind::Extern);
m.insert("false", TokenKind::False);
m.insert("finally", TokenKind::Finally);
m.insert("fixed", TokenKind::Fixed);
m.insert("float", TokenKind::Float);
m.insert("for", TokenKind::For);
m.insert("foreach", TokenKind::ForEach);
m.insert("goto", TokenKind::Goto);
m.insert("if", TokenKind::If);
m.insert("implicit", TokenKind::Implicit);
m.insert("in", TokenKind::In);
m.insert("int", TokenKind::Int);
m.insert("interface", TokenKind::Interface);
m.insert("internal", TokenKind::Internal);
m.insert("is", TokenKind::Is);
m.insert("lock", TokenKind::Lock);
m.insert("long", TokenKind::Long);
m.insert("namespace", TokenKind::Namespace);
m.insert("new", TokenKind::New);
m.insert("null", TokenKind::Null);
m.insert("object", TokenKind::Object);
m.insert("operator", TokenKind::Operator);
m.insert("out", TokenKind::Out);
m.insert("override", TokenKind::Override);
m.insert("params", TokenKind::Params);
m.insert("private", TokenKind::Private);
m.insert("protected", TokenKind::Protected);
m.insert("public", TokenKind::Public);
m.insert("readonly", TokenKind::Readonly);
m.insert("ref", TokenKind::Ref);
m.insert("return", TokenKind::Return);
m.insert("sbyte", TokenKind::Sbyte);
m.insert("sealed", TokenKind::Sealed);
m.insert("short", TokenKind::Short);
m.insert("sizeof", TokenKind::Sizeof);
m.insert("stackalloc", TokenKind::Stackalloc);
m.insert("static", TokenKind::Static);
m.insert("string", TokenKind::String);
m.insert("struct", TokenKind::Struct);
m.insert("switch", TokenKind::Switch);
m.insert("this", TokenKind::This);
m.insert("throw", TokenKind::Throw);
m.insert("true", TokenKind::True);
m.insert("try", TokenKind::Try);
m.insert("typeof", TokenKind::Typeof);
m.insert("uint", TokenKind::Uint);
m.insert("ulong", TokenKind::Ulong);
m.insert("unchecked", TokenKind::Unchecked);
m.insert("unsafe", TokenKind::Unsafe);
m.insert("ushort", TokenKind::Ushort);
m.insert("using", TokenKind::Using);
m.insert("virtual", TokenKind::Virtual);
m.insert("void", TokenKind::Void);
m.insert("volatile", TokenKind::Volatile);
m.insert("while", TokenKind::While);
m.insert("add", TokenKind::Add);
m.insert("alias", TokenKind::Alias);
m.insert("async", TokenKind::Async);
m.insert("await", TokenKind::Await);
m.insert("by", TokenKind::By);
m.insert("descending", TokenKind::Descending);
m.insert("equals", TokenKind::Equals);
m.insert("from", TokenKind::From);
m.insert("get", TokenKind::Get);
m.insert("global", TokenKind::Global);
m.insert("group", TokenKind::Group);
m.insert("init", TokenKind::Init);
m.insert("into", TokenKind::Into);
m.insert("join", TokenKind::Join);
m.insert("let", TokenKind::Let);
m.insert("nameof", TokenKind::Nameof);
m.insert("not", TokenKind::Not);
m.insert("notnull", TokenKind::NotNull);
m.insert("on", TokenKind::On);
m.insert("or", TokenKind::Or);
m.insert("orderby", TokenKind::Orderby);
m.insert("partial", TokenKind::Partial);
m.insert("record", TokenKind::Record);
m.insert("remove", TokenKind::Remove);
m.insert("select", TokenKind::Select);
m.insert("set", TokenKind::Set);
m.insert("unmanaged", TokenKind::Unmanaged);
m.insert("value", TokenKind::Value);
m.insert("var", TokenKind::Var);
m.insert("when", TokenKind::When);
m.insert("where", TokenKind::Where);
m.insert("with", TokenKind::With);
m.insert("yield", TokenKind::Yield);
m.insert("nint", TokenKind::Nint);
m.insert("nuint", TokenKind::Nuint);
m
}