Pouvez-vous utiliser un jeton défini dans le lexeur dans un canal caché dans une seule règle de l'analyseur comme s'il s'agissait d'un jeton normal? Le code généré est Java ...Antlr3 - Jeton HIDDEN dans l'analyseur
grâce
Pouvez-vous utiliser un jeton défini dans le lexeur dans un canal caché dans une seule règle de l'analyseur comme s'il s'agissait d'un jeton normal? Le code généré est Java ...Antlr3 - Jeton HIDDEN dans l'analyseur
grâce
Lorsque vous construisez une CommonTokenStream, vous lui dites ce canal à utiliser. Les jetons sur d'autres canaux ne seront pas visibles par l'analyseur.
Oui, vous pouvez utiliser un jeton caché dans l'analyseur.
Nous faisons cela tout le temps. Le seul problème est que vous devez savoir quand le chercher.
Antlr utilise quelques termes de terminologie. Un jeton Hidden
se déplace simplement sur un flux distinct. L'utilisateur peut toujours rechercher des jetons cachés en appelant le getHiddenAfter
ou le getHiddenBefore
sur un jeton actuellement mis en correspondance.
Remarque: Il peut y avoir plusieurs jetons cachés, avant ou après, un jeton correspondant de sorte que vous deviez les parcourir.
Un jeton Discarded
est en fait supprimé lorsque vous demandez à la lexeur de le supprimer. Il ne sera plus jamais vu par vous.
Je me réfère à cette http://www.antlr.org/wiki/pages/viewpage.action?pageId=557063. Mais n'étant pas un expert en ANTLR ne pas comprendre comment utiliser ces méthodes. merci – Batman