org.aspectj.compiler.base.ast
Class VarDec

java.lang.Object
  extended byorg.aspectj.compiler.base.CompilerObject
      extended byorg.aspectj.compiler.base.ast.ASTObject
          extended byorg.aspectj.compiler.base.ast.Stmt
              extended byorg.aspectj.compiler.base.ast.Dec
                  extended byorg.aspectj.compiler.base.ast.VarDec
All Implemented Interfaces:
AspectMember, ClassMember
Direct Known Subclasses:
FieldDec, FormalDec

public class VarDec
extends Dec
implements AspectMember, ClassMember


Field Summary
protected  VarDec[] decs
           
protected  java.lang.String id
           
protected  Expr initializer
           
protected  Modifiers modifiers
           
protected  TypeD typeD
           
 
Fields inherited from class org.aspectj.compiler.base.ast.Dec
forcePublic, owner, semanticObject
 
Fields inherited from class org.aspectj.compiler.base.ast.ASTObject
dummySource, parent, sourceLocation
 
Constructor Summary
  VarDec(Modifiers _modifiers, TypeD _typeD, Identifier _id)
           
  VarDec(Modifiers _modifiers, TypeD _typeD, Identifier _id, Expr _initializer)
           
  VarDec(Modifiers _modifiers, TypeD _typeD, Identifier _id, Identifier _init)
           
  VarDec(Modifiers _modifiers, TypeD _typeD, java.lang.String _id)
           
  VarDec(Modifiers _modifiers, TypeD _typeD, java.lang.String _id, Expr _initializer)
           
  VarDec(Modifiers _mods, VarDec _vardec)
           
protected VarDec(SourceLocation source)
           
  VarDec(SourceLocation location, Modifiers _modifiers, TypeD _typeD, java.lang.String _id, Expr _initializer)
           
  VarDec(SourceLocation location, TypeD typeD, java.lang.String id, Expr initializer)
           
  VarDec(TypeD typeD, java.lang.String id)
           
  VarDec(VarDec[] _decs)
           
 
Method Summary
protected  void cgStmt(org.aspectj.compiler.base.bcg.CodeBuilder cb)
          This procedure does the work of generating bytecode.
protected  void checkAssignmentType()
           
 void checkSpec()
           
 ASTObject copyWalk(CopyWalker walker)
           
 ASTObject getChildAt(int childIndex)
           
 int getChildCount()
           
 java.lang.String getChildNameAt(int childIndex)
           
 java.lang.String getDefaultDisplayName()
           
 java.lang.String getDescriptor()
           
 Expr getExpr()
           
 int getFrameLoc()
           
 java.lang.String getId()
           
 Expr getInitializer()
           
 java.lang.String getKind()
           
 Modifiers getModifiers()
           
 Type getType()
           
 TypeD getTypeD()
           
 boolean inStaticContext()
           
 boolean isBlank()
           
 boolean isField()
           
 boolean isIntroduced()
           
 ASTObject postAssignmentCheck(org.aspectj.compiler.base.AssignmentCheckerPass walker)
           
 void preAssignmentCheck(org.aspectj.compiler.base.AssignmentCheckerPass walker)
           
 void preScope(ScopeWalker walker)
           
 void setChildAt(int childIndex, ASTObject child)
           
 void setId(java.lang.String _id)
           
 void setInitializer(Expr _initializer)
           
 void setModifiers(Modifiers _modifiers)
           
 void setTypeD(TypeD _typeD)
           
 java.lang.String toShortString()
           
 void unparse(org.aspectj.compiler.base.CodeWriter writer)
           
 void unparse(org.aspectj.compiler.base.CodeWriter writer, boolean isStmt, boolean showType)
           
 void walkFlow(org.aspectj.compiler.base.FlowCheckerPass w)
           
 void walkFrameLoc(org.aspectj.compiler.base.FrameLocPass walker)
           
 
Methods inherited from class org.aspectj.compiler.base.ast.Dec
addIntroducedFromType, cgMember, checkOverride, cleanup, conflictsWith, dominates, forcePublic, getBytecodeId, getCorrespondingSemanticObject, getDeclaringType, getLexicalType, getName, getOutermostLexicalType, getSignatureString, getStackDelta, isAbstract, isAccessible, isAccessible, isAlmostApplicable, isApplicable, isDeprecated, isFinal, isInherited, isLanguageVisible, isMoreAccessibleThan, isMoreSpecificThan, isPrivate, isProtected, isPublic, isStatic, isSynthetic, lookupDeclaringType, lookupLexicalType, makeBlockScope, makeCorrespondingSemanticObject, postCopy, preCopy, preMove, requireStmt, samePackage, setAllEnclosingTypes, setBytecodeId, setDeclaringType, setDeprecated, setExplicitlyNonSynthetic, setFromLexicalScope, setLanguageVisible, setLexicalType, walkForwardReference, writeModifiers, writeNames
 
Methods inherited from class org.aspectj.compiler.base.ast.Stmt
cgTop, completesNormally, isBreakable, isContinuable, isEmpty, mustBeLive, registerLocation, requireBlockStmt, setCompletesNormally
 
Methods inherited from class org.aspectj.compiler.base.ast.ASTObject
addComment, buildAccessMethod, checkNoSharing, clearComment, clearParent, contains, containsTypes, copy, display, fixAccessPost, fixAST, fromSource, getAST, getBeginColumn, getBeginLine, getBytecodeType, getBytecodeTypeDec, getComment, getCompilationUnit, getEnclosingCodeDec, getEnclosingDec, getEndColumn, getEndLine, getEndPosition, getFormalComment, getOutermostBytecodeType, getParent, getSourceDirectoryName, getSourceFile, getSourceFileName, getSourceLocation, getStartPosition, hasLegalProtectedAccess, hasSource, hasSourceLocation, implementMixin, indexOf, isLeaf, makeChild, makeChild, postCleanup, postFixAST, postImplementMixin, postInnerAccess, postInnerInfo, postLift, postMove, postScope, postThreading, preIntroduction, preLift, preThreading, remove, remove, removeChildAt, replaceWith, setFormalComment, setParent, setParents, setSource, setSourceLocation, setSyntheticSource, showError, showMessage, showTypeError, showWarning, toString, unparse, walk, walkAnalysis, walkAssignmentCheck, walkCleanup, 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
 
Methods inherited from interface org.aspectj.compiler.crosscuts.ast.AspectMember
cgTop, cleanup, setParent, unparse
 
Methods inherited from interface org.aspectj.compiler.base.ast.ClassMember
cgTop, cleanup, setParent, unparse
 

Field Detail

modifiers

protected Modifiers modifiers

typeD

protected TypeD typeD

id

protected java.lang.String id

initializer

protected Expr initializer

decs

protected VarDec[] decs
Constructor Detail

VarDec

public VarDec(SourceLocation location,
              TypeD typeD,
              java.lang.String id,
              Expr initializer)

VarDec

public VarDec(TypeD typeD,
              java.lang.String id)

VarDec

public VarDec(Modifiers _mods,
              VarDec _vardec)

VarDec

public VarDec(Modifiers _modifiers,
              TypeD _typeD,
              java.lang.String _id,
              Expr _initializer)

VarDec

public VarDec(VarDec[] _decs)

VarDec

public VarDec(Modifiers _modifiers,
              TypeD _typeD,
              Identifier _id,
              Expr _initializer)

VarDec

public VarDec(Modifiers _modifiers,
              TypeD _typeD,
              Identifier _id,
              Identifier _init)

VarDec

public VarDec(Modifiers _modifiers,
              TypeD _typeD,
              Identifier _id)

VarDec

public VarDec(Modifiers _modifiers,
              TypeD _typeD,
              java.lang.String _id)

VarDec

public VarDec(SourceLocation location,
              Modifiers _modifiers,
              TypeD _typeD,
              java.lang.String _id,
              Expr _initializer)

VarDec

protected VarDec(SourceLocation source)
Method Detail

getKind

public java.lang.String getKind()
Specified by:
getKind in class Dec

checkSpec

public void checkSpec()
Overrides:
checkSpec in class ASTObject

isBlank

public boolean isBlank()

walkFlow

public void walkFlow(org.aspectj.compiler.base.FlowCheckerPass w)
Overrides:
walkFlow in class ASTObject

preAssignmentCheck

public void preAssignmentCheck(org.aspectj.compiler.base.AssignmentCheckerPass walker)
Overrides:
preAssignmentCheck in class ASTObject

postAssignmentCheck

public ASTObject postAssignmentCheck(org.aspectj.compiler.base.AssignmentCheckerPass walker)
Overrides:
postAssignmentCheck in class ASTObject

checkAssignmentType

protected void checkAssignmentType()

preScope

public void preScope(ScopeWalker walker)
Overrides:
preScope in class ASTObject

isIntroduced

public boolean isIntroduced()
Overrides:
isIntroduced in class Dec

isField

public boolean isField()

inStaticContext

public boolean inStaticContext()
Overrides:
inStaticContext in class Dec

getType

public Type getType()

getExpr

public Expr getExpr()

toShortString

public java.lang.String toShortString()
Specified by:
toShortString in class Dec

unparse

public void unparse(org.aspectj.compiler.base.CodeWriter writer,
                    boolean isStmt,
                    boolean showType)

unparse

public void unparse(org.aspectj.compiler.base.CodeWriter writer)
Specified by:
unparse in interface AspectMember
Overrides:
unparse in class ASTObject

walkFrameLoc

public void walkFrameLoc(org.aspectj.compiler.base.FrameLocPass walker)
Overrides:
walkFrameLoc in class ASTObject

getDescriptor

public java.lang.String getDescriptor()
Overrides:
getDescriptor in class Dec

cgStmt

protected void cgStmt(org.aspectj.compiler.base.bcg.CodeBuilder cb)
Description copied from class: Stmt
This procedure does the work of generating bytecode. Its main requirement is to leave the stack empty. This method should only be called from Stmt.cgTop(org.aspectj.compiler.base.bcg.CodeBuilder).

Overrides:
cgStmt in class Stmt

getFrameLoc

public int getFrameLoc()

getModifiers

public Modifiers getModifiers()
Specified by:
getModifiers in class Dec

setModifiers

public void setModifiers(Modifiers _modifiers)

getTypeD

public TypeD getTypeD()

setTypeD

public void setTypeD(TypeD _typeD)

getId

public java.lang.String getId()
Specified by:
getId in class Dec

setId

public void setId(java.lang.String _id)
Overrides:
setId in class Dec

getInitializer

public Expr getInitializer()

setInitializer

public void setInitializer(Expr _initializer)

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 Dec