com.sun.msv.grammar
Interface ExpressionVisitor

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

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
 Object onAnyString()
           
 Object onAttribute(AttributeExp exp)
           
 Object onChoice(ChoiceExp exp)
           
 Object onConcur(ConcurExp p)
           
 Object onElement(ElementExp exp)
           
 Object onEpsilon()
           
 Object onInterleave(InterleaveExp p)
           
 Object onKey(KeyExp exp)
           
 Object onList(ListExp exp)
           
 Object onMixed(MixedExp exp)
           
 Object onNullSet()
           
 Object onOneOrMore(OneOrMoreExp exp)
           
 Object onOther(OtherExp exp)
           
 Object onRef(ReferenceExp exp)
           
 Object onSequence(SequenceExp exp)
           
 Object onTypedString(TypedStringExp exp)
           
 

Method Detail

onAttribute

public Object onAttribute(AttributeExp exp)

onChoice

public Object onChoice(ChoiceExp exp)

onElement

public Object onElement(ElementExp exp)

onOneOrMore

public Object onOneOrMore(OneOrMoreExp exp)

onMixed

public Object onMixed(MixedExp exp)

onList

public Object onList(ListExp exp)

onKey

public Object onKey(KeyExp exp)

onRef

public Object onRef(ReferenceExp exp)

onOther

public Object onOther(OtherExp exp)

onEpsilon

public Object onEpsilon()

onNullSet

public Object onNullSet()

onAnyString

public Object onAnyString()

onSequence

public Object onSequence(SequenceExp exp)

onTypedString

public Object onTypedString(TypedStringExp exp)

onConcur

public Object onConcur(ConcurExp p)

onInterleave

public Object onInterleave(InterleaveExp p)