Package soot.JastAddJ
Class FieldDeclaration
- java.lang.Object
-
- beaver.Symbol
-
- soot.JastAddJ.ASTNode<ASTNode>
-
- soot.JastAddJ.BodyDecl
-
- soot.JastAddJ.MemberDecl
-
- soot.JastAddJ.FieldDeclaration
-
- Direct Known Subclasses:
EnumConstant,FieldDeclarationSubstituted
public class FieldDeclaration extends MemberDecl implements Cloneable, SimpleSet, Iterator, Variable
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface soot.JastAddJ.SimpleSet
SimpleSet.SimpleSetImpl
-
-
Field Summary
Fields Modifier and Type Field Description protected MapaccessibleFrom_TypeDecl_valuesprotected booleanconstant_computedprotected Constantconstant_valueprotected booleanexceptions_computedprotected Collectionexceptions_valueintIDendintIDstartprotected MapisDAafter_Variable_valuesprotected MapisDUafter_Variable_valuesSootFieldsootFieldprotected booleansootRef_computedprotected SootFieldRefsootRef_valueprotected booleansourceVariableDecl_computedprotected VariablesourceVariableDecl_valueprotected booleanthrowTypes_computedprotected Collection<TypeDecl>throwTypes_valueprotected StringtokenString_IDprotected booleanusesTypeVariable_computedprotected booleanusesTypeVariable_value-
Fields inherited from class soot.JastAddJ.BodyDecl
isDAbefore_Variable_values, isDUbefore_Variable_values, lookupVariable_String_values, typeThrowable_computed, typeThrowable_value
-
Fields inherited from class soot.JastAddJ.ASTNode
children, generatedWithCacheCycle, generatedWithCircularEnabled, generatedWithComponentCheck, in$Circle, is$Final, numChildren, parent, PRIMITIVE_PACKAGE_NAME, state
-
-
Constructor Summary
Constructors Constructor Description FieldDeclaration()FieldDeclaration(Modifiers p0, Access p1, Symbol p2, Opt<Expr> p3)FieldDeclaration(Modifiers m, Access type, String name)FieldDeclaration(Modifiers m, Access type, String name, Expr init)FieldDeclaration(Modifiers p0, Access p1, String p2, Opt<Expr> p3)
-
Method Summary
-
Methods inherited from class soot.JastAddJ.BodyDecl
addsIndentationLevel, collectFinally, declaresType, Define_ArrayList_exceptionRanges, Define_BodyDecl_enclosingBodyDecl, Define_boolean_resourcePreviouslyDeclared, Define_String_typeDeclIndent, generate, hasIllegalAnnotationSafeVarargs, hostPackage, hostType, isDAbefore, isDUbefore, isEnumConstant, jimplify2, lookupMethod, lookupType, lookupType, lookupVariable, nameType, type, typeThrowable
-
Methods inherited from class soot.JastAddJ.ASTNode
accessControl, addChild, asImmediate, asLocal, asLocal, asRValue, beginExceptionRange, branchTarget, checkDUeverywhere, checkEnum, checkUncheckedConversion, clearLocations, cloneSubtree, collectBranches, collectEnclosingVariables, collectErrors, collectExceptions, collectTypesToHierarchy, collectTypesToSignatures, compilationUnit, Define_Annotation_lookupAnnotation, Define_ASTNode_enclosingBlock, Define_boolean_enclosedByExceptionHandler, Define_boolean_hasPackage, Define_boolean_inExplicitConstructorInvocation, Define_boolean_inExtendsOrImplements, Define_boolean_inhModifiedInScope, Define_boolean_insideLoop, Define_boolean_insideSwitch, Define_boolean_isAnonymous, Define_boolean_isAnonymousDecl, Define_boolean_isCatchParam, Define_boolean_isConstructorParameter, Define_boolean_isDest, Define_boolean_isDUbefore, Define_boolean_isExceptionHandlerParameter, Define_boolean_isExplicitGenericConstructorAccess, Define_boolean_isIncOrDec, Define_boolean_isLocalClass, Define_boolean_isMemberType, Define_boolean_isMethodParameter, Define_boolean_isNestedType, Define_boolean_mayBeAbstract, Define_boolean_mayBeNative, Define_boolean_mayBeStrictfp, Define_boolean_mayBeSynchronized, Define_boolean_reachable, Define_boolean_reachableCatchClause, Define_boolean_reportUnreachable, Define_boolean_variableArityValid, Define_boolean_withinDeprecatedAnnotation, Define_boolean_withinSuppressWarnings, Define_Case_bind, Define_CatchClause_catchClause, Define_ClassInstanceExpr_getClassInstanceExpr, Define_Collection_lookupConstructor, Define_Collection_lookupMethod, Define_Collection_lookupSuperConstructor, Define_Collection_TypeDecl__caughtExceptions, Define_CompilationUnit_compilationUnit, Define_ConstructorDecl_constructorDecl, Define_ConstructorDecl_unknownConstructor, Define_ElementValue_lookupElementTypeValue, Define_Expr_nestedScope, Define_GLBType_lookupGLBType, Define_int_localNum, Define_LabeledStmt_lookupLabel, Define_LUBType_lookupLUBType, Define_MethodDecl_unknownMethod, Define_SimpleSet_allImportedTypes, Define_SimpleSet_lookupType, Define_SimpleSet_lookupVariable, Define_soot_jimple_Stmt_condition_false_label, Define_soot_jimple_Stmt_condition_true_label, Define_String_hostPackage, Define_String_methodHost, Define_String_packageName, Define_TypeDecl_componentType, Define_TypeDecl_enclosingAnnotationDecl, Define_TypeDecl_enclosingInstance, Define_TypeDecl_enclosingType, Define_TypeDecl_genericDecl, Define_TypeDecl_hostType, Define_TypeDecl_lookupType, Define_TypeDecl_lookupWildcardExtends, Define_TypeDecl_lookupWildcardSuper, Define_TypeDecl_returnType, Define_TypeDecl_superType, Define_TypeDecl_switchType, Define_TypeDecl_typeBoolean, Define_TypeDecl_typeByte, Define_TypeDecl_typeChar, Define_TypeDecl_typeCloneable, Define_TypeDecl_typeDouble, Define_TypeDecl_typeError, Define_TypeDecl_typeException, Define_TypeDecl_typeFloat, Define_TypeDecl_typeInt, Define_TypeDecl_typeLong, Define_TypeDecl_typeNull, Define_TypeDecl_typeNullPointerException, Define_TypeDecl_typeObject, Define_TypeDecl_typeRuntimeException, Define_TypeDecl_typeSerializable, Define_TypeDecl_typeShort, Define_TypeDecl_typeString, Define_TypeDecl_typeThrowable, Define_TypeDecl_typeVoid, Define_TypeDecl_typeWildcard, Define_TypeDecl_unknownType, Define_Variable_unknownField, Define_VariableScope_outerScope, definesLabel, dumpTree, dumpTree, dumpTreeNoRewrite, dumpTreeNoRewrite, duringAnnotations, duringAnonymousClasses, duringBoundNames, duringDU, duringEnums, duringGenericTypeVariables, duringImplicitConstructor, duringLiterals, duringNameResolution, duringSyntacticClassification, duringVariableDeclarationTransformation, emitConstant, end, endExceptionRange, error, errorPrefix, exceptionHandling, extractIndent, extractSingleType, flushCaches, getChild, getChildNoTransform, getIndexOfChild, getNumChild, getNumChildNoTransform, getParent, in$Circle, in$Circle, indent, insertChild, is$Final, is$Final, isDescendantTo, isStringAdd, jimplify1phase1, jimplify2, lineNumber, location, newLabel, options, putSimpleSetElement, reachedException, removeChild, removeInstanceMethods, removeInstanceVariables, replace, setChild, setEnd, setLocation, setParent, setStart, sourceFile, start, state, toString, transformation, transformEnumConstructors, unassignedEverywhere, varChildIndex, varChildIndex, warning, warningPrefix, with
-
Methods inherited from class beaver.Symbol
getColumn, getEnd, getId, getLine, getStart, makePosition
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface java.util.Iterator
forEachRemaining
-
-
-
-
Field Detail
-
sootField
public SootField sootField
-
tokenString_ID
protected String tokenString_ID
-
IDstart
public int IDstart
-
IDend
public int IDend
-
accessibleFrom_TypeDecl_values
protected Map accessibleFrom_TypeDecl_values
-
exceptions_computed
protected boolean exceptions_computed
-
exceptions_value
protected Collection exceptions_value
-
isDAafter_Variable_values
protected Map isDAafter_Variable_values
-
isDUafter_Variable_values
protected Map isDUafter_Variable_values
-
constant_computed
protected boolean constant_computed
-
constant_value
protected Constant constant_value
-
usesTypeVariable_computed
protected boolean usesTypeVariable_computed
-
usesTypeVariable_value
protected boolean usesTypeVariable_value
-
sourceVariableDecl_computed
protected boolean sourceVariableDecl_computed
-
sourceVariableDecl_value
protected Variable sourceVariableDecl_value
-
sootRef_computed
protected boolean sootRef_computed
-
sootRef_value
protected SootFieldRef sootRef_value
-
throwTypes_computed
protected boolean throwTypes_computed
-
throwTypes_value
protected Collection<TypeDecl> throwTypes_value
-
-
Method Detail
-
flushCache
public void flushCache()
- Overrides:
flushCachein classMemberDecl
-
flushCollectionCache
public void flushCollectionCache()
- Overrides:
flushCollectionCachein classMemberDecl
-
clone
public FieldDeclaration clone() throws CloneNotSupportedException
- Overrides:
clonein classMemberDecl- Throws:
CloneNotSupportedException
-
copy
public FieldDeclaration copy()
-
fullCopy
public FieldDeclaration fullCopy()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
-
createQualifiedBoundAccess
public Access createQualifiedBoundAccess()
-
createBoundFieldAccess
public Access createBoundFieldAccess()
-
isSingleton
public boolean isSingleton()
- Specified by:
isSingletonin interfaceSimpleSet
-
isSingleton
public boolean isSingleton(Object o)
- Specified by:
isSingletonin interfaceSimpleSet
-
iterator
public Iterator iterator()
-
definiteAssignment
public void definiteAssignment()
- Overrides:
definiteAssignmentin classASTNode<ASTNode>
-
checkModifiers
public void checkModifiers()
- Overrides:
checkModifiersin classMemberDecl
-
toString
public void toString(StringBuffer s)
-
getFieldDecl
public FieldDecl getFieldDecl()
-
setFieldDecl
public void setFieldDecl(FieldDecl fieldDecl)
-
substitutedBodyDecl
public BodyDecl substitutedBodyDecl(Parameterization parTypeDecl)
- Overrides:
substitutedBodyDeclin classBodyDecl
-
createAccessor
public MethodDecl createAccessor(TypeDecl fieldQualifier)
-
createAccessorWrite
public MethodDecl createAccessorWrite(TypeDecl fieldQualifier)
-
jimplify1phase2
public void jimplify1phase2()
- Overrides:
jimplify1phase2in classBodyDecl
-
addAttributes
public void addAttributes()
- Overrides:
addAttributesin classASTNode<ASTNode>
-
checkWarnings
public void checkWarnings()
Description copied from class:BodyDeclWe must report illegal uses of the SafeVarargs annotation. It is only allowed on variable arity method and constructor declarations.- Overrides:
checkWarningsin classBodyDecl
-
init$Children
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.- Overrides:
init$Childrenin classMemberDecl
-
numChildren
protected int numChildren()
- Overrides:
numChildrenin classMemberDecl
-
mayHaveRewrite
public boolean mayHaveRewrite()
- Overrides:
mayHaveRewritein classMemberDecl
-
setModifiers
public void setModifiers(Modifiers node)
Replaces the Modifiers child.- Parameters:
node- The new node to replace the Modifiers child.
-
getModifiers
public Modifiers getModifiers()
Retrieves the Modifiers child.- Specified by:
getModifiersin interfaceVariable- Returns:
- The current node used as the Modifiers child.
-
getModifiersNoTransform
public Modifiers getModifiersNoTransform()
Retrieves the Modifiers child.This method does not invoke AST transformations.
- Returns:
- The current node used as the Modifiers child.
-
setTypeAccess
public void setTypeAccess(Access node)
Replaces the TypeAccess child.- Parameters:
node- The new node to replace the TypeAccess child.
-
getTypeAccess
public Access getTypeAccess()
Retrieves the TypeAccess child.- Returns:
- The current node used as the TypeAccess child.
-
getTypeAccessNoTransform
public Access getTypeAccessNoTransform()
Retrieves the TypeAccess child.This method does not invoke AST transformations.
- Returns:
- The current node used as the TypeAccess child.
-
setID
public void setID(String value)
Replaces the lexeme ID.- Parameters:
value- The new value for the lexeme ID.
-
setID
public void setID(Symbol symbol)
JastAdd-internal setter for lexeme ID using the Beaver parser.
-
getID
public String getID()
Retrieves the value for the lexeme ID.- Returns:
- The value for the lexeme ID.
-
setInitOpt
public void setInitOpt(Opt<Expr> opt)
Replaces the optional node for the Init child. This is theOptnode containing the child Init, not the actual child!- Parameters:
opt- The new node to be used as the optional node for the Init child.
-
hasInit
public boolean hasInit()
Check whether the optional Init child exists.
-
getInit
public Expr getInit()
Retrieves the (optional) Init child.
-
setInit
public void setInit(Expr node)
Replaces the (optional) Init child.- Parameters:
node- The new node to be used as the Init child.
-
getInitOptNoTransform
public Opt<Expr> getInitOptNoTransform()
Retrieves the optional node for child Init. This is theOptnode containing the child Init, not the actual child!This method does not invoke AST transformations.
- Returns:
- The optional node for child Init.
-
isConstant
public boolean isConstant()
- Overrides:
isConstantin classMemberDecl
-
accessibleFrom
public boolean accessibleFrom(TypeDecl type)
-
exceptions
public Collection exceptions()
-
isSynthetic
public boolean isSynthetic()
- Specified by:
isSyntheticin interfaceVariable- Overrides:
isSyntheticin classMemberDecl
-
isPublic
public boolean isPublic()
-
isPrivate
public boolean isPrivate()
-
isProtected
public boolean isProtected()
-
isStatic
public boolean isStatic()
- Specified by:
isStaticin interfaceVariable- Specified by:
isStaticin classMemberDecl
-
isTransient
public boolean isTransient()
-
isVolatile
public boolean isVolatile()
- Specified by:
isVolatilein interfaceVariable
-
dumpString
public String dumpString()
- Overrides:
dumpStringin classASTNode<ASTNode>
-
isParameter
public boolean isParameter()
- Specified by:
isParameterin interfaceVariable
-
isClassVariable
public boolean isClassVariable()
- Specified by:
isClassVariablein interfaceVariable
-
isInstanceVariable
public boolean isInstanceVariable()
- Specified by:
isInstanceVariablein interfaceVariable
-
isMethodParameter
public boolean isMethodParameter()
- Specified by:
isMethodParameterin interfaceVariable
-
isConstructorParameter
public boolean isConstructorParameter()
- Specified by:
isConstructorParameterin interfaceVariable
-
isExceptionHandlerParameter
public boolean isExceptionHandlerParameter()
- Specified by:
isExceptionHandlerParameterin interfaceVariable
-
isLocalVariable
public boolean isLocalVariable()
- Specified by:
isLocalVariablein interfaceVariable
-
hasAnnotationSuppressWarnings
public boolean hasAnnotationSuppressWarnings(String s)
- Overrides:
hasAnnotationSuppressWarningsin classBodyDecl
-
isDeprecated
public boolean isDeprecated()
- Overrides:
isDeprecatedin classBodyDecl
-
usesTypeVariable
public boolean usesTypeVariable()
- Overrides:
usesTypeVariablein classASTNode<ASTNode>
-
sourceVariableDecl
public Variable sourceVariableDecl()
- Specified by:
sourceVariableDeclin interfaceVariable
-
visibleTypeParameters
public boolean visibleTypeParameters()
- Overrides:
visibleTypeParametersin classBodyDecl
-
sootTypeModifiers
public int sootTypeModifiers()
-
sootRef
public SootFieldRef sootRef()
-
erasedField
public FieldDeclaration erasedField()
-
throwTypes
public Collection<TypeDecl> throwTypes()
- Specified by:
throwTypesin interfaceVariable
-
hasAnnotationSafeVarargs
public boolean hasAnnotationSafeVarargs()
- Overrides:
hasAnnotationSafeVarargsin classBodyDecl- Returns:
- true if the modifier list includes the SafeVarargs annotation
-
suppressWarnings
public boolean suppressWarnings(String type)
-
handlesException
public boolean handlesException(TypeDecl exceptionType)
-
withinSuppressWarnings
public boolean withinSuppressWarnings(String s)
-
Define_boolean_isSource
public boolean Define_boolean_isSource(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_isSourcein classASTNode<ASTNode>
-
Define_boolean_isDAbefore
public boolean Define_boolean_isDAbefore(ASTNode caller, ASTNode child, Variable v)
- Overrides:
Define_boolean_isDAbeforein classASTNode<ASTNode>
-
Define_boolean_handlesException
public boolean Define_boolean_handlesException(ASTNode caller, ASTNode child, TypeDecl exceptionType)
- Overrides:
Define_boolean_handlesExceptionin classASTNode<ASTNode>
-
Define_boolean_mayBePublic
public boolean Define_boolean_mayBePublic(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBePublicin classASTNode<ASTNode>
-
Define_boolean_mayBeProtected
public boolean Define_boolean_mayBeProtected(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeProtectedin classASTNode<ASTNode>
-
Define_boolean_mayBePrivate
public boolean Define_boolean_mayBePrivate(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBePrivatein classASTNode<ASTNode>
-
Define_boolean_mayBeStatic
public boolean Define_boolean_mayBeStatic(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeStaticin classASTNode<ASTNode>
-
Define_boolean_mayBeFinal
public boolean Define_boolean_mayBeFinal(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeFinalin classASTNode<ASTNode>
-
Define_boolean_mayBeTransient
public boolean Define_boolean_mayBeTransient(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeTransientin classASTNode<ASTNode>
-
Define_boolean_mayBeVolatile
public boolean Define_boolean_mayBeVolatile(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeVolatilein classASTNode<ASTNode>
-
Define_NameType_nameType
public NameType Define_NameType_nameType(ASTNode caller, ASTNode child)
- Overrides:
Define_NameType_nameTypein classASTNode<ASTNode>
-
Define_TypeDecl_declType
public TypeDecl Define_TypeDecl_declType(ASTNode caller, ASTNode child)
- Overrides:
Define_TypeDecl_declTypein classASTNode<ASTNode>
-
Define_boolean_inStaticContext
public boolean Define_boolean_inStaticContext(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_inStaticContextin classASTNode<ASTNode>
-
Define_boolean_mayUseAnnotationTarget
public boolean Define_boolean_mayUseAnnotationTarget(ASTNode caller, ASTNode child, String name)
- Overrides:
Define_boolean_mayUseAnnotationTargetin classASTNode<ASTNode>
-
Define_TypeDecl_assignConvertedType
public TypeDecl Define_TypeDecl_assignConvertedType(ASTNode caller, ASTNode child)
- Overrides:
Define_TypeDecl_assignConvertedTypein classASTNode<ASTNode>
-
Define_TypeDecl_expectedType
public TypeDecl Define_TypeDecl_expectedType(ASTNode caller, ASTNode child)
- Overrides:
Define_TypeDecl_expectedTypein classASTNode<ASTNode>
-
rewriteTo
public ASTNode rewriteTo()
- Overrides:
rewriteToin classMemberDecl
-
-