public interface ExpressionVisitor
You may want to use ExpressionVisitorXXXX class if you want to
return boolean, void, or Expression
.
It is the callee's responsibility to traverse child expression.
Expression and its derived classes do not provide any traversal.
See ExpressionCloner
for example.
onRef method is called for all subclass of ReferenceExp. So you can safely use this interface to visit AGMs from RELAX grammar.
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
onAnyString() |
java.lang.Object |
onAttribute(AttributeExp exp) |
java.lang.Object |
onChoice(ChoiceExp exp) |
java.lang.Object |
onConcur(ConcurExp p) |
java.lang.Object |
onData(DataExp exp) |
java.lang.Object |
onElement(ElementExp exp) |
java.lang.Object |
onEpsilon() |
java.lang.Object |
onInterleave(InterleaveExp p) |
java.lang.Object |
onList(ListExp exp) |
java.lang.Object |
onMixed(MixedExp exp) |
java.lang.Object |
onNullSet() |
java.lang.Object |
onOneOrMore(OneOrMoreExp exp) |
java.lang.Object |
onOther(OtherExp exp) |
java.lang.Object |
onRef(ReferenceExp exp) |
java.lang.Object |
onSequence(SequenceExp exp) |
java.lang.Object |
onValue(ValueExp exp) |
java.lang.Object onAttribute(AttributeExp exp)
java.lang.Object onChoice(ChoiceExp exp)
java.lang.Object onElement(ElementExp exp)
java.lang.Object onOneOrMore(OneOrMoreExp exp)
java.lang.Object onMixed(MixedExp exp)
java.lang.Object onList(ListExp exp)
java.lang.Object onRef(ReferenceExp exp)
java.lang.Object onOther(OtherExp exp)
java.lang.Object onEpsilon()
java.lang.Object onNullSet()
java.lang.Object onAnyString()
java.lang.Object onSequence(SequenceExp exp)
java.lang.Object onData(DataExp exp)
java.lang.Object onValue(ValueExp exp)
java.lang.Object onConcur(ConcurExp p)
java.lang.Object onInterleave(InterleaveExp p)