J'utilise ANTLR à tokenizer une grammaire simple, et la nécessité de faire la différence entre un ID:Comment différencier les mots réservés et les variables en utilisant ANTLR?
ID : LETTER (LETTER | DIGIT)* ;
fragment DIGIT : '0'..'9' ;
fragment LETTER : 'a'..'z' | 'A'..'Z' ;
et RESERVED_WORD:
RESERVED_WORD : 'class' | 'public' | 'static' | 'extends' | 'void' | 'int' | 'boolean' | 'if' | 'else' | 'while' | 'return' | 'null' | 'true' | 'false' | 'this' | 'new' | 'String' ;
dire que je lance le lexer sur l'entrée:
class abc
Je reçois deux jetons d'identification pour "class" et "abc", alors que je veux que "class" soit reconnu comme RESERVED_WORD. Comment puis-je accomplir cela?