[antlr-interest] Using previously matched parser rule in decision making

Kieran Simpson kierans777 at gmail.com
Sun Mar 7 18:50:09 PST 2010


I have

ruleA: ruleB;

ruleC: ruleB;

ruleB: ruleD;

In ruleB I want to different target language actions to execute based on
whether it was ruleA or ruleC that was previously matched.  If my
understanding of syntatic/semantic predicates is correct, they only look
forwards, not backwards.

Is there a way (without refactoring the grammar) to in rule B know which
rule it was invoked from (A or C) and make decisions accordingly?

Thanks.


More information about the antlr-interest mailing list