fr.umlv.tatoo.cc.ebnf.ast
Class TreeFactory
java.lang.Object
fr.umlv.tatoo.cc.ebnf.ast.TreeFactory
public class TreeFactory
- extends Object
|
Method Summary |
NodeBuilder<AliasDefAST> |
createAliasDef(TokenAST<String> name)
|
NodeBuilder<DirectiveDefAST> |
createDirectiveDef(TokenAST<String> name)
|
NodeBuilder<EnhancedDefAST> |
createEnhancedVariable(EnhancedDefAST.Enhancement enhancement,
VariableVarAST element,
VariableVarAST separator,
List<Node> vargroup)
|
NodeBuilder<ImportDefAST> |
createImportDef(TokenAST<String> qualifiedId)
|
NodeBuilder<MacroDefAST> |
createMacroDef(TokenAST<String> name,
String regex)
|
NodeBuilder<NonTerminalDefAST> |
createNonTerminalDef(TokenAST<String> name,
TypeVarAST type,
List<ProductionDefAST> productions)
|
NodeBuilder<PriorityDefAST> |
createPriorityDef(TokenAST<String> name,
double number,
String assoc)
|
NodeBuilder<PriorityVarAST> |
createPriorityVar(TokenAST<String> name)
|
NodeBuilder<ProductionDefAST> |
createProductionDef(List<Node> varlist,
PriorityVarAST priority,
ProductionIdAndVersionDefAST idAndVersion)
|
NodeBuilder<ProductionIdAndVersionDefAST> |
createProductionIdAndVersionDef(TokenAST<String> name,
VersionVarAST version)
|
NodeBuilder<QuotedIdVarAST> |
createQuotedIdVar(TokenAST<String> name)
|
NodeBuilder<RootDefAST> |
createRootDef(StartNonTerminalSetDefAST startNonTerminalSetDef)
|
NodeBuilder<RuleDefAST> |
createRuleDef(TokenAST<String> name,
String regex)
|
|
createSimpleNode(Kind kind,
V value)
|
NodeBuilder<StartNonTerminalSetDefAST> |
createStartNonTerminalSetDef(List<UnquotedIdVarAST> startNonTerminalList)
|
NodeBuilder<TerminalDefAST> |
createTerminalDef(TerminalDefAST.TerminalKind kind,
TokenAST<String> name,
AliasDefAST alias,
TypeVarAST type,
RuleDefAST rule,
PriorityVarAST priority)
|
|
createToken(fr.umlv.tatoo.cc.lexer.ebnf.parser.TerminalEnum kind,
V value)
|
NodeBuilder<TypeVarAST> |
createTypeVar(TokenAST<String> qualifiedid)
|
NodeBuilder<UnquotedIdVarAST> |
createUnquotedIdVar(TokenAST<String> name)
|
NodeBuilder<VariableTypeDefAST> |
createVariableTypeDef(VariableVarAST variable,
TypeVarAST type)
|
NodeBuilder<VersionDefAST> |
createVersionDef(TokenAST<String> name,
VersionVarAST parent)
|
NodeBuilder<VersionVarAST> |
createVersionVar(TokenAST<String> name)
|
AnnotationComputer |
getAnnotationComputer()
|
void |
reset(AST ast)
|
void |
setRoot(Node root)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TreeFactory
public TreeFactory(AST ast,
AnnotationComputer annotationComputer)
reset
public void reset(AST ast)
getAnnotationComputer
public AnnotationComputer getAnnotationComputer()
setRoot
public void setRoot(Node root)
createToken
public <V> TokenAST<V> createToken(fr.umlv.tatoo.cc.lexer.ebnf.parser.TerminalEnum kind,
V value)
createSimpleNode
public <V> NodeBuilder<SimpleNodeAST<V>> createSimpleNode(Kind kind,
V value)
createProductionIdAndVersionDef
public NodeBuilder<ProductionIdAndVersionDefAST> createProductionIdAndVersionDef(TokenAST<String> name,
VersionVarAST version)
createEnhancedVariable
public NodeBuilder<EnhancedDefAST> createEnhancedVariable(EnhancedDefAST.Enhancement enhancement,
VariableVarAST element,
VariableVarAST separator,
List<Node> vargroup)
createImportDef
public NodeBuilder<ImportDefAST> createImportDef(TokenAST<String> qualifiedId)
createMacroDef
public NodeBuilder<MacroDefAST> createMacroDef(TokenAST<String> name,
String regex)
createNonTerminalDef
public NodeBuilder<NonTerminalDefAST> createNonTerminalDef(TokenAST<String> name,
TypeVarAST type,
List<ProductionDefAST> productions)
createUnquotedIdVar
public NodeBuilder<UnquotedIdVarAST> createUnquotedIdVar(TokenAST<String> name)
createPriorityDef
public NodeBuilder<PriorityDefAST> createPriorityDef(TokenAST<String> name,
double number,
String assoc)
createPriorityVar
public NodeBuilder<PriorityVarAST> createPriorityVar(TokenAST<String> name)
createProductionDef
public NodeBuilder<ProductionDefAST> createProductionDef(List<Node> varlist,
PriorityVarAST priority,
ProductionIdAndVersionDefAST idAndVersion)
createDirectiveDef
public NodeBuilder<DirectiveDefAST> createDirectiveDef(TokenAST<String> name)
createRuleDef
public NodeBuilder<RuleDefAST> createRuleDef(TokenAST<String> name,
String regex)
createRootDef
public NodeBuilder<RootDefAST> createRootDef(StartNonTerminalSetDefAST startNonTerminalSetDef)
createStartNonTerminalSetDef
public NodeBuilder<StartNonTerminalSetDefAST> createStartNonTerminalSetDef(List<UnquotedIdVarAST> startNonTerminalList)
createTerminalDef
public NodeBuilder<TerminalDefAST> createTerminalDef(TerminalDefAST.TerminalKind kind,
TokenAST<String> name,
AliasDefAST alias,
TypeVarAST type,
RuleDefAST rule,
PriorityVarAST priority)
createQuotedIdVar
public NodeBuilder<QuotedIdVarAST> createQuotedIdVar(TokenAST<String> name)
createTypeVar
public NodeBuilder<TypeVarAST> createTypeVar(TokenAST<String> qualifiedid)
createVersionDef
public NodeBuilder<VersionDefAST> createVersionDef(TokenAST<String> name,
VersionVarAST parent)
createAliasDef
public NodeBuilder<AliasDefAST> createAliasDef(TokenAST<String> name)
createVariableTypeDef
public NodeBuilder<VariableTypeDefAST> createVariableTypeDef(VariableVarAST variable,
TypeVarAST type)
createVersionVar
public NodeBuilder<VersionVarAST> createVersionVar(TokenAST<String> name)