5 haxe
让我说清楚,我有这个枚举:
enum Token {
Number(v:Float);
Identifier(v:String);
TString(v:String);
Var;
Assign;
Division;
// and so on
}
Run Code Online (Sandbox Code Playgroud)
我想检查变量的值是否为标识符,但这不起作用:
if(tk == Token.Identifier) {
Run Code Online (Sandbox Code Playgroud)
它只允许我在传递参数时比较值:
if(tk == Token.Identifier('test')) {
Run Code Online (Sandbox Code Playgroud)
但这只会在标识符为'test'时匹配,但我想匹配任何标识符.
Type.enumConstructor(tk) == "Identifier"
Run Code Online (Sandbox Code Playgroud)
阅读Type doc以获取有关枚举的更多方法.