org.aspectj.compiler.base.ast
Class NewInstanceExpr
java.lang.Object
org.aspectj.compiler.base.CompilerObject
org.aspectj.compiler.base.ast.ASTObject
org.aspectj.compiler.base.ast.Expr
org.aspectj.compiler.base.ast.JavaExpr
org.aspectj.compiler.base.ast.AnyCallExpr
org.aspectj.compiler.base.ast.NewExpr
org.aspectj.compiler.base.ast.NewInstanceExpr
- All Implemented Interfaces:
- MajPrimaryExpr, PossibleSoftThrowable, SOLink
- Direct Known Subclasses:
- NewInnerInstanceExpr
- public class NewInstanceExpr
- extends NewExpr
- implements SOLink
Fields inherited from class org.aspectj.compiler.base.ast.NewExpr |
typeD |
Fields inherited from class org.aspectj.compiler.base.ast.Expr |
type |
Constructor Summary |
|
NewInstanceExpr(Identifier id,
Exprs args)
|
protected |
NewInstanceExpr(SourceLocation source)
|
|
NewInstanceExpr(SourceLocation source,
Constructor constructor,
Exprs args)
|
|
NewInstanceExpr(SourceLocation location,
Expr _enclosingInstanceExpr,
TypeD _typeD,
Exprs _args,
TypeDec _typeDec,
Constructor _constructor)
|
|
NewInstanceExpr(SourceLocation source,
TypeD typeD,
Exprs args)
|
|
NewInstanceExpr(SourceLocation location,
TypeD _typeD,
Exprs _args,
TypeDec _typeDec,
Constructor _constructor)
|
|
NewInstanceExpr(TypeD typeD,
Exprs args)
|
|
NewInstanceExpr(TypeD _typeD,
Exprs _args,
TypeDec _typeDec,
Constructor _constructor)
|
Methods inherited from class org.aspectj.compiler.base.ast.Expr |
assertType, canBeCopied, cgBuffer, cgTest, cgValue, cleanup, getType, isAssignableTo, isConstantFalse, isConstantTrue, isConstantZero, isInConstructorCallExpr, isInExprStmt, isMethodConvertableTo, isUltimatelyLiteral, makeQualifiedThis, makeReference, postCopy, setType, showOperatorTypeError, showOperatorTypeError, walkCleanup, walkFrameLoc |
Methods inherited from class org.aspectj.compiler.base.ast.ASTObject |
addComment, buildAccessMethod, checkNoSharing, clearComment, clearParent, contains, containsTypes, copy, display, fixAST, fromSource, getAST, getBeginColumn, getBeginLine, getBytecodeType, getBytecodeTypeDec, getComment, getCompilationUnit, getDeclaringType, getEnclosingCodeDec, getEnclosingDec, getEndColumn, getEndLine, getEndPosition, getFormalComment, getLexicalType, getOutermostBytecodeType, getOutermostLexicalType, getParent, getSourceDirectoryName, getSourceFile, getSourceFileName, getSourceLocation, getStartPosition, hasSource, hasSourceLocation, implementMixin, indexOf, inStaticContext, isLanguageVisible, isLeaf, isSynthetic, makeChild, makeChild, postAssignmentCheck, postCleanup, postImplementMixin, postLift, postThreading, preAssignmentCheck, preCopy, preIntroduction, preMove, preScope, remove, removeChildAt, replaceWith, setFormalComment, setParent, setParents, setSource, setSourceLocation, setSyntheticSource, showError, showMessage, showTypeError, showWarning, toShortString, toString, unparse, walk, walkAnalysis, walkAssignmentCheck, walkForwardReference, walkMemberMunger, walkScope |
Methods inherited from class org.aspectj.compiler.base.CompilerObject |
getCompiler, getOptions, getTypeManager, getWorld |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
enclosingInstanceExpr
protected Expr enclosingInstanceExpr
args
protected Exprs args
typeDec
protected TypeDec typeDec
constructor
protected Constructor constructor
NewInstanceExpr
public NewInstanceExpr(SourceLocation location,
TypeD _typeD,
Exprs _args,
TypeDec _typeDec,
Constructor _constructor)
NewInstanceExpr
public NewInstanceExpr(SourceLocation source,
Constructor constructor,
Exprs args)
NewInstanceExpr
public NewInstanceExpr(SourceLocation source,
TypeD typeD,
Exprs args)
NewInstanceExpr
public NewInstanceExpr(TypeD typeD,
Exprs args)
NewInstanceExpr
public NewInstanceExpr(Identifier id,
Exprs args)
NewInstanceExpr
public NewInstanceExpr(TypeD _typeD,
Exprs _args,
TypeDec _typeDec,
Constructor _constructor)
NewInstanceExpr
public NewInstanceExpr(SourceLocation location,
Expr _enclosingInstanceExpr,
TypeD _typeD,
Exprs _args,
TypeDec _typeDec,
Constructor _constructor)
NewInstanceExpr
protected NewInstanceExpr(SourceLocation source)
getCodeDec
public CodeDec getCodeDec()
- Specified by:
getCodeDec
in class AnyCallExpr
getConstructorDec
public ConstructorDec getConstructorDec()
setConstructorDec
public void setConstructorDec(ConstructorDec md)
getTarget
public SemanticObject getTarget()
- Specified by:
getTarget
in interface SOLink
setTarget
public void setTarget(SemanticObject newTarget)
- Specified by:
setTarget
in interface SOLink
isLegalStmt
public boolean isLegalStmt()
- Overrides:
isLegalStmt
in class Expr
walkInnerInfo
public void walkInnerInfo(org.aspectj.compiler.base.InnerInfoPass w)
- Overrides:
walkInnerInfo
in class ASTObject
postInnerInfo
public void postInnerInfo(org.aspectj.compiler.base.InnerInfoPass w)
- Overrides:
postInnerInfo
in class ASTObject
checkSpec
public void checkSpec()
- Overrides:
checkSpec
in class Expr
fixAccessPost
public ASTObject fixAccessPost(org.aspectj.compiler.crosscuts.AccessFixer fixer)
- Overrides:
fixAccessPost
in class ASTObject
walkFlow
public void walkFlow(org.aspectj.compiler.base.FlowCheckerPass w)
- Overrides:
walkFlow
in class ASTObject
hasLegalProtectedAccess
public boolean hasLegalProtectedAccess(Type fromType)
- Section 6.6.2.2 from JLSv2
access to protected is only allowed from outside package
if typeDec != null
- Overrides:
hasLegalProtectedAccess
in class ASTObject
postMove
public ASTObject postMove(MovingWalker walker)
- Overrides:
postMove
in class ASTObject
postScope
public ASTObject postScope(ScopeWalker walker)
- Overrides:
postScope
in class ASTObject
discoverType
public Type discoverType()
- Specified by:
discoverType
in class Expr
getCalledType
public Type getCalledType()
- Overrides:
getCalledType
in class NewExpr
fixForIntroductions
public void fixForIntroductions()
postFixAST
public ASTObject postFixAST(org.aspectj.compiler.base.ASTFixerPass fixer)
- Overrides:
postFixAST
in class ASTObject
unparse
public void unparse(org.aspectj.compiler.base.CodeWriter writer)
- Overrides:
unparse
in class ASTObject
postInnerAccess
public ASTObject postInnerAccess(org.aspectj.compiler.base.InnerAccessFixer w)
- Description copied from class:
ASTObject
- Converts an expression accessing inaccessable context to one
that is legal.
- Overrides:
postInnerAccess
in class ASTObject
cgValue
protected void cgValue(org.aspectj.compiler.base.bcg.CodeBuilder cb)
- Description copied from class:
Expr
- Leaves the value of this expression on the stack. May self-call
Expr.cgTest(CodeBuilder, Label, Label)
.
- Overrides:
cgValue
in class Expr
cgEffect
protected void cgEffect(org.aspectj.compiler.base.bcg.CodeBuilder cb)
- Description copied from class:
Expr
- Evaluates the expression in a context where its value is
unnecessary (i.e., from
ExprStmt
, or in a FieldAccessExpr
when the field is static but there is an
expression there nonetheless). May self-call Expr.cgValue(CodeBuilder)
.
- Overrides:
cgEffect
in class Expr
preLift
public void preLift(org.aspectj.compiler.base.LocalClassPass.LiftWalker walker)
- Overrides:
preLift
in class ASTObject
preThreading
public void preThreading(org.aspectj.compiler.base.LocalClassPass.ThreadingWalker walker)
- Overrides:
preThreading
in class ASTObject
remove
public void remove(int index)
- Overrides:
remove
in class ASTObject
getEnclosingInstanceExpr
public Expr getEnclosingInstanceExpr()
setEnclosingInstanceExpr
public void setEnclosingInstanceExpr(Expr _enclosingInstanceExpr)
getArgs
public Exprs getArgs()
- Specified by:
getArgs
in class AnyCallExpr
setArgs
public void setArgs(Exprs _args)
- Overrides:
setArgs
in class NewExpr
getTypeDec
public TypeDec getTypeDec()
setTypeDec
public void setTypeDec(TypeDec _typeDec)
getConstructor
public Constructor getConstructor()
setConstructor
public void setConstructor(Constructor _constructor)
copyWalk
public ASTObject copyWalk(CopyWalker walker)
- Overrides:
copyWalk
in class ASTObject
getChildAt
public ASTObject getChildAt(int childIndex)
- Overrides:
getChildAt
in class NewExpr
getChildNameAt
public java.lang.String getChildNameAt(int childIndex)
- Overrides:
getChildNameAt
in class NewExpr
setChildAt
public void setChildAt(int childIndex,
ASTObject child)
- Overrides:
setChildAt
in class NewExpr
getChildCount
public int getChildCount()
- Overrides:
getChildCount
in class NewExpr
getDefaultDisplayName
public java.lang.String getDefaultDisplayName()
- Overrides:
getDefaultDisplayName
in class NewExpr