org.aspectj.compiler.base.ast
Class FromDecStmt
java.lang.Object
org.aspectj.compiler.base.CompilerObject
org.aspectj.compiler.base.ast.ASTObject
org.aspectj.compiler.base.ast.Stmt
org.aspectj.compiler.base.ast.FromDecStmt
- public class FromDecStmt
- extends Stmt
Used to keep track of the (currently FieldDec) that produces a Stmt
so that we can handle getLexicalType correctly both for accessibility and
for within matching for introduced fields with non-empty initializers
Methods inherited from class org.aspectj.compiler.base.ast.Stmt |
cgStmt, cgTop, completesNormally, isBreakable, isContinuable, isEmpty, mustBeLive, registerLocation, requireBlockStmt, requireStmt, setCompletesNormally |
Methods inherited from class org.aspectj.compiler.base.ast.ASTObject |
addComment, buildAccessMethod, checkNoSharing, checkSpec, cleanup, clearComment, clearParent, contains, containsTypes, copy, display, fixAccessPost, fixAST, fromSource, getAST, getBeginColumn, getBeginLine, getBytecodeType, getBytecodeTypeDec, getComment, getCompilationUnit, getDeclaringType, getEnclosingCodeDec, getEnclosingDec, getEndColumn, getEndLine, getEndPosition, getFormalComment, getOutermostBytecodeType, getOutermostLexicalType, getParent, getSourceDirectoryName, getSourceFile, getSourceFileName, getSourceLocation, getStartPosition, hasLegalProtectedAccess, hasSource, hasSourceLocation, implementMixin, indexOf, inStaticContext, isLanguageVisible, isLeaf, isSynthetic, makeChild, makeChild, postAssignmentCheck, postCopy, postImplementMixin, postInnerAccess, postInnerInfo, postLift, postMove, postScope, postThreading, preAssignmentCheck, preCopy, preIntroduction, preLift, preMove, preScope, preThreading, remove, remove, removeChildAt, replaceWith, setFormalComment, setParent, setParents, setSource, setSourceLocation, setSyntheticSource, showError, showMessage, showTypeError, showWarning, toShortString, toString, unparse, walk, walkAnalysis, walkAssignmentCheck, walkCleanup, walkFlow, walkForwardReference, walkFrameLoc, walkInnerInfo, 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 |
stmt
protected Stmt stmt
fromDec
protected Dec fromDec
FromDecStmt
public FromDecStmt(SourceLocation location,
Stmt _stmt,
Dec _fromDec)
FromDecStmt
protected FromDecStmt(SourceLocation source)
getLexicalType
public Type getLexicalType()
- Description copied from class:
ASTObject
- returns the lexically enclosing Type for this object.
For pure Java code this is always identical to getDeclaringType() and
getBytecodeTypeDec().getType().
For introduced methods, this can be different, i.e.
interface I { }
class C implements I { }
aspect A {
void C.m() { ... }
}
For the method I.m() implemented in C and for any ASTObjects inside of it,
getLexicalType() == A
getDeclaringType() == I
getBytecodeTypeDec().getType() == C
- Overrides:
getLexicalType
in class ASTObject
unparse
public void unparse(org.aspectj.compiler.base.CodeWriter writer)
- Overrides:
unparse
in class ASTObject
postFixAST
public ASTObject postFixAST(org.aspectj.compiler.base.ASTFixerPass fixer)
- Overrides:
postFixAST
in class ASTObject
postCleanup
public ASTObject postCleanup(org.aspectj.compiler.base.ByteCodeCleanupPass w)
- Overrides:
postCleanup
in class ASTObject
getStmt
public Stmt getStmt()
setStmt
public void setStmt(Stmt _stmt)
getFromDec
public Dec getFromDec()
setFromDec
public void setFromDec(Dec _fromDec)
copyWalk
public ASTObject copyWalk(CopyWalker walker)
- Overrides:
copyWalk
in class ASTObject
getChildAt
public ASTObject getChildAt(int childIndex)
- Overrides:
getChildAt
in class ASTObject
getChildNameAt
public java.lang.String getChildNameAt(int childIndex)
- Overrides:
getChildNameAt
in class ASTObject
setChildAt
public void setChildAt(int childIndex,
ASTObject child)
- Overrides:
setChildAt
in class ASTObject
getChildCount
public int getChildCount()
- Overrides:
getChildCount
in class ASTObject
getDefaultDisplayName
public java.lang.String getDefaultDisplayName()
- Overrides:
getDefaultDisplayName
in class Stmt