2017-10-18 5 views
1

python (à la fois 2/3) généré à partir des résultats de grammaire ANTLR4 dans les lignes suivantes de code dans le module de python d'analyseur syntaxique de la grammaire:Error in ANTLR4 code généré python

self.state = 79 
self.state() 

Comme prévu cela se traduit par l'erreur suivante:

TypeError: 'int' object is not callable 

Répondre

2

Le code bogué est le résultat d'un mauvais choix de symboles dans la grammaire ANTLR. Puisque le code python généré utilise le nom de variable state donc si la grammaire contient aussi le mot state le code généré aura le problème ci-dessus. La solution est de renommer le terme dans votre grammaire.