Travail sur un projet de jeu impliquant un langage de script que je souhaite interpréter dans un code de machine virtuelle pouvant être exécuté directement. J'ai inclus la grammaire ci-dessous. Toutes les règles lexers s'affichent correctement dans le diagramme de syntaxe, mais lorsque je clique sur les corps de l'une des règles d'analyseur, j'obtiens "Impossible d'afficher la règle" X "car l'état de départ est introuvable" pour une règle d'analyseur donnée.AntlrWorks et erreurs de grammaire du langage
Je ne suis pas vraiment sûr pourquoi ANTLR se plaint de ne pas avoir un état de démarrage. La grammaire devrait clairement commencer à partir de la ligne de codage, qui n'est référencée par aucune autre règle d'analyseur. En outre, la case en haut à droite est verte, indiquant qu'il n'y a pas d'erreurs de syntaxe. J'ai passé en revue quelques-uns des autres messages du forum, ainsi que de nombreuses grammaires fournies dans l'exemple de téléchargement de grammaire ANTLRv3, mais aucun d'entre eux n'a de code spécial indiquant à ANTLR quelle est l'une des règles de l'analyseur. état de départ. J'ai l'impression que quelque chose de simple est brisé, mais je suis dans une impasse quant à ce que c'est exactement.
Un conseil ou une aide serait grandement apprécié! Même si c'est juste comme "allez lire ceci".
grammar RobotWarsGrammar;
EQUAL
options {
paraphrase = "=";
}
: '='
;
une aide? Je ne peux toujours pas le comprendre. –