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

public java.lang.Object onAttribute(AttributeExp exp)

onChoice

public java.lang.Object onChoice(ChoiceExp exp)

onElement

public java.lang.Object onElement(ElementExp exp)

onOneOrMore

public java.lang.Object onOneOrMore(OneOrMoreExp exp)

onMixed

public java.lang.Object onMixed(MixedExp exp)

onList

public java.lang.Object onList(ListExp exp)

onRef

public java.lang.Object onRef(ReferenceExp exp)

onOther

public java.lang.Object onOther(OtherExp exp)

onEpsilon

public java.lang.Object onEpsilon()

onNullSet

public java.lang.Object onNullSet()

onAnyString

public java.lang.Object onAnyString()

onSequence

public java.lang.Object onSequence(SequenceExp exp)

onData

public java.lang.Object onData(DataExp exp)

onValue

public java.lang.Object onValue(ValueExp exp)

onConcur

public java.lang.Object onConcur(ConcurExp p)

onInterleave

public java.lang.Object onInterleave(InterleaveExp p)