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

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

public class NonTerminalDefAST
extends Object
implements NonTerminalBinder, BindingSite


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.
 Kind getKind()
           
 String getName()
           
 NodeAST getParent()
           
 List<ProductionDefAST> getProductions()
           
 TokenAST<String> getTokenId()
           
 TypeVarAST getType()
           
 boolean isToken()
           
 List<NodeAST> nodeList()
           
<A> void
setAttribute(Class<A> attributeType, A attribute)
           
 void setBinding(Binding.NonTerminalBinding binding)
           
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
 
Methods inherited from interface fr.umlv.tatoo.cc.ebnf.ast.NodeAST
nodeList, treeList
 
Methods inherited from interface fr.umlv.tatoo.cc.ebnf.ast.TreeAST
getAST, getAttribute, getParent, isToken, setAttribute
 

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.

getName

public String getName()

getType

public TypeVarAST getType()

getProductions

public List<ProductionDefAST> getProductions()

setBinding

public void setBinding(Binding.NonTerminalBinding binding)

getBinding

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

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

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