fr.umlv.tatoo.cc.ebnf.ast
Class EnhancedDefAST

java.lang.Object
  extended by fr.umlv.tatoo.cc.ebnf.ast.EnhancedDefAST
All Implemented Interfaces:
BindingSite, NodeAST, NonTerminalBinder, TreeAST, VariableVarAST

public class EnhancedDefAST
extends Object
implements VariableVarAST, NonTerminalBinder, BindingSite


Nested Class Summary
static class EnhancedDefAST.Enhancement
           
 
Method Summary
<R,P,E extends Exception>
R
accept(TreeASTVisitor<? extends R,? super P,? extends E> visitor, P parameter)
           
 AST getAST()
           
<A> A
getAttribute(Class<A> attributeType)
           
 Binding.NonTerminalBinding getBinding()
          Returns null by default.
 VariableVarAST getElement()
           
 EnhancedDefAST.Enhancement getEnhancement()
           
 Kind getKind()
           
 String getName()
           
 NodeAST getParent()
           
 VariableVarAST getSeparator()
           
 TokenAST<String> getTokenId()
           
 List<NodeAST> getVarGroup()
           
 boolean isToken()
           
 List<NodeAST> nodeList()
           
<A> void
setAttribute(Class<A> attributeType, A attribute)
           
 void setBinding(Binding.NonTerminalBinding binding)
           
 void setName(String name)
           
protected  void setParent(NodeAST parent)
           
 String toString()
           
 List<TreeAST> treeList()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getKind

public Kind getKind()
Specified by:
getKind in interface NodeAST
Specified by:
getKind in interface TreeAST

getTokenId

public TokenAST<String> getTokenId()
Specified by:
getTokenId in interface BindingSite
Returns:
may be null.

getEnhancement

public EnhancedDefAST.Enhancement getEnhancement()

getElement

public VariableVarAST getElement()

getSeparator

public VariableVarAST getSeparator()

getVarGroup

public List<NodeAST> getVarGroup()

getName

public String getName()
Specified by:
getName in interface VariableVarAST

setName

public void setName(String name)

getBinding

public Binding.NonTerminalBinding getBinding()
Returns null by default.

Specified by:
getBinding in interface NodeAST
Specified by:
getBinding in interface NonTerminalBinder
Specified by:
getBinding in interface VariableVarAST

setBinding

public void setBinding(Binding.NonTerminalBinding binding)

accept

public <R,P,E extends Exception> R accept(TreeASTVisitor<? extends R,? super P,? extends E> visitor,
                                          P parameter)
         throws E extends Exception
Specified by:
accept in interface TreeAST
Throws:
E extends Exception

isToken

public boolean isToken()
Specified by:
isToken in interface TreeAST

treeList

public List<TreeAST> treeList()
Specified by:
treeList in interface NodeAST

toString

public String toString()
Overrides:
toString in class Object

nodeList

public List<NodeAST> nodeList()
Specified by:
nodeList in interface NodeAST

getAST

public AST getAST()
Specified by:
getAST in interface TreeAST

getParent

public NodeAST getParent()
Specified by:
getParent in interface TreeAST

setParent

protected void setParent(NodeAST parent)

getAttribute

public final <A> A getAttribute(Class<A> attributeType)
Specified by:
getAttribute in interface TreeAST

setAttribute

public final <A> void setAttribute(Class<A> attributeType,
                                   A attribute)
Specified by:
setAttribute in interface TreeAST