public class NodeFactory_c extends AbstractNodeFactory_c
NodeFactory
constructs AST nodes. All node construction
should go through this factory or by done with the copy()
method of Node
.Modifier and Type | Field and Description |
---|---|
protected static DelFactory |
emptyDelFactory |
Constructor and Description |
---|
NodeFactory_c()
Deprecated.
|
NodeFactory_c(ExtFactory extFactory)
Deprecated.
|
NodeFactory_c(ExtFactory extFactory,
DelFactory delFactory)
Deprecated.
|
NodeFactory_c(JLang lang) |
NodeFactory_c(JLang lang,
ExtFactory extFactory) |
Modifier and Type | Method and Description |
---|---|
AmbAssign |
AmbAssign(Position pos,
Expr left,
Assign.Operator op,
Expr right) |
AmbExpr |
AmbExpr(Position pos,
Id name) |
AmbPrefix |
AmbPrefix(Position pos,
Prefix prefix,
Id name) |
AmbQualifierNode |
AmbQualifierNode(Position pos,
QualifierNode qualifier,
Id name) |
AmbReceiver |
AmbReceiver(Position pos,
Prefix prefix,
Id name) |
AmbTypeNode |
AmbTypeNode(Position pos,
QualifierNode qualifier,
Id name) |
ArrayAccess |
ArrayAccess(Position pos,
Expr base,
Expr index) |
ArrayAccessAssign |
ArrayAccessAssign(Position pos,
ArrayAccess left,
Assign.Operator op,
Expr right) |
ArrayInit |
ArrayInit(Position pos,
java.util.List<Expr> elements) |
ArrayTypeNode |
ArrayTypeNode(Position pos,
TypeNode base) |
Assert |
Assert(Position pos,
Expr cond,
Expr errorMessage) |
Assign |
Assign(Position pos,
Expr left,
Assign.Operator op,
Expr right) |
Binary |
Binary(Position pos,
Expr left,
Binary.Operator op,
Expr right) |
Block |
Block(Position pos,
java.util.List<Stmt> statements) |
BooleanLit |
BooleanLit(Position pos,
boolean value) |
Branch |
Branch(Position pos,
Branch.Kind kind,
Id label) |
Call |
Call(Position pos,
Receiver target,
Id name,
java.util.List<Expr> args) |
CanonicalTypeNode |
CanonicalTypeNode(Position pos,
Type type) |
Case |
Case(Position pos,
Expr expr) |
Cast |
Cast(Position pos,
TypeNode type,
Expr expr) |
Catch |
Catch(Position pos,
Formal formal,
Block body) |
CharLit |
CharLit(Position pos,
char value) |
ClassBody |
ClassBody(Position pos,
java.util.List<ClassMember> members) |
ClassDecl |
ClassDecl(Position pos,
Flags flags,
Id name,
TypeNode superClass,
java.util.List<TypeNode> interfaces,
ClassBody body) |
ClassLit |
ClassLit(Position pos,
TypeNode typeNode) |
protected Ext |
composeExts(Ext e1,
Ext e2)
Compose two extensions together.
|
Conditional |
Conditional(Position pos,
Expr cond,
Expr consequent,
Expr alternative) |
ConstructorCall |
ConstructorCall(Position pos,
ConstructorCall.Kind kind,
Expr outer,
java.util.List<Expr> args) |
ConstructorDecl |
ConstructorDecl(Position pos,
Flags flags,
Id name,
java.util.List<Formal> formals,
java.util.List<TypeNode> throwTypes,
Block body) |
protected <T extends Node> |
del(T n,
JLDel del) |
protected DelFactory |
delFactory()
Deprecated.
|
Do |
Do(Position pos,
Stmt body,
Expr cond) |
Empty |
Empty(Position pos) |
Eval |
Eval(Position pos,
Expr expr) |
protected <T extends Node> |
ext(T n,
Ext ext) |
protected ExtFactory |
extFactory() |
Field |
Field(Position pos,
Receiver target,
Id name) |
FieldAssign |
FieldAssign(Position pos,
Field left,
Assign.Operator op,
Expr right) |
FieldDecl |
FieldDecl(Position pos,
Flags flags,
TypeNode type,
Id name,
Expr init) |
protected ExtFactory |
findExtFactInstance(java.lang.Class<? extends ExtFactory> c)
Utility method to find an instance of an Extension Factory
|
FloatLit |
FloatLit(Position pos,
FloatLit.Kind kind,
double value) |
For |
For(Position pos,
java.util.List<ForInit> inits,
Expr cond,
java.util.List<ForUpdate> iters,
Stmt body) |
Formal |
Formal(Position pos,
Flags flags,
TypeNode type,
Id name) |
Id |
Id(Position pos,
java.lang.String name) |
If |
If(Position pos,
Expr cond,
Stmt consequent,
Stmt alternative) |
Import |
Import(Position pos,
Import.Kind kind,
java.lang.String name) |
protected void |
initEnums()
Ensure the enums in the AST are initialized and interned before any
deserialization occurs.
|
Initializer |
Initializer(Position pos,
Flags flags,
Block body) |
Instanceof |
Instanceof(Position pos,
Expr expr,
TypeNode type) |
IntLit |
IntLit(Position pos,
IntLit.Kind kind,
long value) |
Labeled |
Labeled(Position pos,
Id label,
Stmt body) |
JLang |
lang()
Returns the language associated with this NodeFactory.
|
Local |
Local(Position pos,
Id name) |
LocalAssign |
LocalAssign(Position pos,
Local left,
Assign.Operator op,
Expr right) |
LocalClassDecl |
LocalClassDecl(Position pos,
ClassDecl decl) |
LocalDecl |
LocalDecl(Position pos,
Flags flags,
TypeNode type,
Id name,
Expr init) |
MethodDecl |
MethodDecl(Position pos,
Flags flags,
TypeNode returnType,
Id name,
java.util.List<Formal> formals,
java.util.List<TypeNode> throwTypes,
Block body) |
New |
New(Position pos,
Expr outer,
TypeNode objectType,
java.util.List<Expr> args,
ClassBody body) |
NewArray |
NewArray(Position pos,
TypeNode base,
java.util.List<Expr> dims,
int addDims,
ArrayInit init) |
NullLit |
NullLit(Position pos) |
PackageNode |
PackageNode(Position pos,
Package p) |
Return |
Return(Position pos,
Expr expr) |
SourceCollection |
SourceCollection(Position pos,
java.util.List<SourceFile> sources) |
SourceFile |
SourceFile(Position pos,
PackageNode packageName,
java.util.List<Import> imports,
java.util.List<TopLevelDecl> decls) |
Special |
Special(Position pos,
Special.Kind kind,
TypeNode outer) |
StringLit |
StringLit(Position pos,
java.lang.String value) |
Switch |
Switch(Position pos,
Expr expr,
java.util.List<SwitchElement> elements) |
SwitchBlock |
SwitchBlock(Position pos,
java.util.List<Stmt> statements) |
Synchronized |
Synchronized(Position pos,
Expr expr,
Block body) |
Throw |
Throw(Position pos,
Expr expr) |
Try |
Try(Position pos,
Block tryBlock,
java.util.List<Catch> catchBlocks,
Block finallyBlock) |
Unary |
Unary(Position pos,
Unary.Operator op,
Expr expr) |
While |
While(Position pos,
Expr cond,
Stmt body) |
AmbExpr, AmbPrefix, AmbPrefix, AmbPrefix, AmbQualifierNode, AmbQualifierNode, AmbQualifierNode, AmbReceiver, AmbReceiver, AmbReceiver, AmbTypeNode, AmbTypeNode, AmbTypeNode, ArrayInit, Assert, Block, Branch, Branch, Break, Break, Break, Call, Call, Call, Call, Call, Call, Call, ClassDecl, ConstructorCall, ConstructorDecl, Continue, Continue, Continue, Default, disamb, ExprFromQualifiedName, Field, Field, Field, FieldDecl, FieldDecl, FieldDecl, Formal, If, Labeled, Local, LocalDecl, LocalDecl, LocalDecl, MethodDecl, New, New, New, NewArray, NewArray, NewArray, PrefixFromQualifiedName, QualifierNodeFromQualifiedName, ReceiverFromQualifiedName, Return, SourceFile, SourceFile, Special, Super, Super, SuperCall, SuperCall, This, This, ThisCall, ThisCall, Try, TypeNodeFromQualifiedName, Unary
protected static final DelFactory emptyDelFactory
@Deprecated public NodeFactory_c()
@Deprecated public NodeFactory_c(ExtFactory extFactory)
@Deprecated public NodeFactory_c(ExtFactory extFactory, DelFactory delFactory)
public NodeFactory_c(JLang lang)
public NodeFactory_c(JLang lang, ExtFactory extFactory)
public JLang lang()
NodeFactory
protected void initEnums()
protected ExtFactory extFactory()
protected Ext composeExts(Ext e1, Ext e2)
e1
- the Ext
object to add to the end of e2's
chain of extensions.e2
- the second Ext
object that will have e1 added to
its chain of extensions.@Deprecated protected DelFactory delFactory()
protected final ExtFactory findExtFactInstance(java.lang.Class<? extends ExtFactory> c)
public AmbReceiver AmbReceiver(Position pos, Prefix prefix, Id name)
public AmbQualifierNode AmbQualifierNode(Position pos, QualifierNode qualifier, Id name)
public AmbTypeNode AmbTypeNode(Position pos, QualifierNode qualifier, Id name)
public ArrayAccess ArrayAccess(Position pos, Expr base, Expr index)
public Assign Assign(Position pos, Expr left, Assign.Operator op, Expr right)
public LocalAssign LocalAssign(Position pos, Local left, Assign.Operator op, Expr right)
public FieldAssign FieldAssign(Position pos, Field left, Assign.Operator op, Expr right)
public ArrayAccessAssign ArrayAccessAssign(Position pos, ArrayAccess left, Assign.Operator op, Expr right)
public AmbAssign AmbAssign(Position pos, Expr left, Assign.Operator op, Expr right)
public Binary Binary(Position pos, Expr left, Binary.Operator op, Expr right)
public SwitchBlock SwitchBlock(Position pos, java.util.List<Stmt> statements)
public BooleanLit BooleanLit(Position pos, boolean value)
public Branch Branch(Position pos, Branch.Kind kind, Id label)
public ClassBody ClassBody(Position pos, java.util.List<ClassMember> members)
public ClassDecl ClassDecl(Position pos, Flags flags, Id name, TypeNode superClass, java.util.List<TypeNode> interfaces, ClassBody body)
public Conditional Conditional(Position pos, Expr cond, Expr consequent, Expr alternative)
public ConstructorCall ConstructorCall(Position pos, ConstructorCall.Kind kind, Expr outer, java.util.List<Expr> args)
public ConstructorDecl ConstructorDecl(Position pos, Flags flags, Id name, java.util.List<Formal> formals, java.util.List<TypeNode> throwTypes, Block body)
public FloatLit FloatLit(Position pos, FloatLit.Kind kind, double value)
public For For(Position pos, java.util.List<ForInit> inits, Expr cond, java.util.List<ForUpdate> iters, Stmt body)
public Import Import(Position pos, Import.Kind kind, java.lang.String name)
public Initializer Initializer(Position pos, Flags flags, Block body)
public Instanceof Instanceof(Position pos, Expr expr, TypeNode type)
public IntLit IntLit(Position pos, IntLit.Kind kind, long value)
public LocalClassDecl LocalClassDecl(Position pos, ClassDecl decl)
public MethodDecl MethodDecl(Position pos, Flags flags, TypeNode returnType, Id name, java.util.List<Formal> formals, java.util.List<TypeNode> throwTypes, Block body)
public New New(Position pos, Expr outer, TypeNode objectType, java.util.List<Expr> args, ClassBody body)
public NewArray NewArray(Position pos, TypeNode base, java.util.List<Expr> dims, int addDims, ArrayInit init)
public SourceCollection SourceCollection(Position pos, java.util.List<SourceFile> sources)
public SourceFile SourceFile(Position pos, PackageNode packageName, java.util.List<Import> imports, java.util.List<TopLevelDecl> decls)
public Special Special(Position pos, Special.Kind kind, TypeNode outer)
public Switch Switch(Position pos, Expr expr, java.util.List<SwitchElement> elements)
public Synchronized Synchronized(Position pos, Expr expr, Block body)
public Try Try(Position pos, Block tryBlock, java.util.List<Catch> catchBlocks, Block finallyBlock)
public ArrayTypeNode ArrayTypeNode(Position pos, TypeNode base)
public CanonicalTypeNode CanonicalTypeNode(Position pos, Type type)
public PackageNode PackageNode(Position pos, Package p)
public Unary Unary(Position pos, Unary.Operator op, Expr expr)