internal static string CanBeIdentifier(JSToken keyword){
switch (keyword){
case JSToken.Abstract: return "abstract";
case JSToken.Assert: return "assert";
case JSToken.Boolean: return "boolean";
case JSToken.Byte: return "byte";
case JSToken.Char: return "char";
case JSToken.Decimal: return "decimal";
case JSToken.Double: return "double";
case JSToken.Ensure: return "ensure";
case JSToken.Enum: return "enum";
case JSToken.Event: return "event";
case JSToken.Final: return "final";
case JSToken.Float: return "float";
case JSToken.Get: return "get";
case JSToken.Goto: return "goto";
case JSToken.Implements: return "implements";
case JSToken.Int: return "int";
case JSToken.Interface: return "interface";
case JSToken.Internal: return "internal";
case JSToken.Invariant: return "invariant";
case JSToken.Long: return "long";
case JSToken.Namespace: return "namespace";
case JSToken.Native: return "native";
case JSToken.Package: return "package";
case JSToken.Private: return "private";
case JSToken.Protected: return "protected";
case JSToken.Public: return "public";
case JSToken.Require: return "require";
case JSToken.Sbyte: return "sbyte";
case JSToken.Set: return "set";
case JSToken.Short: return "short";
case JSToken.Static: return "static";
case JSToken.Synchronized: return "synchronized";
case JSToken.Throws: return "throws";
case JSToken.Transient: return "transient";
case JSToken.Void: return "void";
case JSToken.Volatile: return "volatile";
case JSToken.Uint : return "uint";
case JSToken.Ulong : return "ulong";
case JSToken.Ushort : return "ushort";
case JSToken.Use : return "use";
default: return null;
}
}