règles lors de l'exécution de mise à jour Dynamiquement
Question
Lors de l'envoi d'une commande AT, il est normalement mis fin par \ r \ n, mais, en fait, ce sont vraiment deux de S3 'les variables registez et S4.
Par défaut S3 == '\ r' et S4 == '\ n', mais l'utilisateur peut modifier ces à l'exécution avec la commande ATSx =
Comment puis-je gérer cela dans mon Antlr lexer / parser?
Chaque commande a la forme AT [paramètres] S3S4, comment puis-je gérer que si l'utilisateur modifie la valeur de S3 ou S4?
Merci d'avance pour toute aide ...
La solution
Non, il n'y a pas de possibilité de changer dynamiquement lexer- ou analyseur règles AFAIK. Bien sûr, il y a des contournements possibles comme recréant le lexer / parser lors du changement des variables de registre, mais il ne sera pas assez, je suppose ...
Modifier
MAWG a écrit
recréer le lexr & poarser (bien, lexer que, je suppose) - pourriez-vous leaborate sur cette
Réécrire le fichier de grammaire d'origine (uniquement les règles analyseurs lexicaux, comme vous le mentionnez à juste titre) et recompilée à la volée. Voir: http://java.sun.com/ JavaSE / 6 / docs / api / javax / outils / JavaCompiler.html