2008-12-25 10 views
0

Existe-t-il un moyen d'exécuter du code après chaque terminal?Yacc: Code après chaque terminal non-terminal

Alors que quelque chose comme cela est possible:

a : B { code } C { some code } 

Toute aide serait vraiment apprécié!

+0

Voir aussi: http://stackoverflow.com/questions/393041/yacc-problem-make-data-available-in-next-non-terminal –

Répondre

1

L'exemple que vous avez donné devrait fonctionner comme il est.

+0

non, je reçois: $ 2 est indéfini ... – Chris

+0

Oui: $ 2 est le bloc de code - comme vous l'avez découvert plus tard. –

0

Vous avez raison. Je ne sais pas comment C est 3 $ après avoir inséré le code et pas 2 $ ... vraiment bizarre.

+0

C'est la prise importante; $ 2 est effectivement le bloc de code. –

+0

:) yacc peut être difficile. –

+0

Je pense que vous devriez éditer votre question pour inclure ceci comme explication, et ensuite supprimer cette réponse. –

Questions connexes