com.sun.msv.grammar
Interface ExpressionVisitor

All Known Subinterfaces:
RELAXExpressionVisitor
All Known Implementing Classes:
ElementsOfConcernCollector, ExpressionPrinter, TREXSequencedStringChecker

public interface ExpressionVisitor

Visitor interface for Expression and its derived types.

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.

Author:
Kohsuke KAWAGUCHI

Method Summary
 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)
           
 

Method Detail

onAttribute

java.lang.Object onAttribute(AttributeExp exp)

onChoice

java.lang.Object onChoice(ChoiceExp exp)

onElement

java.lang.Object onElement(ElementExp exp)

onOneOrMore

java.lang.Object onOneOrMore(OneOrMoreExp exp)

onMixed

java.lang.Object onMixed(MixedExp exp)

onList

java.lang.Object onList(ListExp exp)

onRef

java.lang.Object onRef(ReferenceExp exp)

onOther

java.lang.Object onOther(OtherExp exp)

onEpsilon

java.lang.Object onEpsilon()

onNullSet

java.lang.Object onNullSet()

onAnyString

java.lang.Object onAnyString()

onSequence

java.lang.Object onSequence(SequenceExp exp)

onData

java.lang.Object onData(DataExp exp)

onValue

java.lang.Object onValue(ValueExp exp)

onConcur

java.lang.Object onConcur(ConcurExp p)

onInterleave

java.lang.Object onInterleave(InterleaveExp p)