Package soot.JastAddJ
Class AnnotatedCompilationUnit
- java.lang.Object
-
- beaver.Symbol
-
- soot.JastAddJ.ASTNode<ASTNode>
-
- soot.JastAddJ.CompilationUnit
-
- soot.JastAddJ.AnnotatedCompilationUnit
-
public class AnnotatedCompilationUnit extends CompilationUnit implements Cloneable
-
-
Field Summary
-
Fields inherited from class soot.JastAddJ.CompilationUnit
errors, isResolved, lookupType_String_values, PackageDeclend, PackageDeclstart, packageName_computed, packageName_value, parseErrors, tokenjava_lang_String_PackageDecl, warnings
-
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 AnnotatedCompilationUnit()AnnotatedCompilationUnit(Symbol p0, List<ImportDecl> p1, List<TypeDecl> p2, Modifiers p3)AnnotatedCompilationUnit(String p0, List<ImportDecl> p1, List<TypeDecl> p2, Modifiers p3)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddImportDecl(ImportDecl node)Append an element to the ImportDecl list.voidaddImportDeclNoTransform(ImportDecl node)voidaddTypeDecl(TypeDecl node)Append an element to the TypeDecl list.voidaddTypeDeclNoTransform(TypeDecl node)AnnotatedCompilationUnitclone()AnnotatedCompilationUnitcopy()booleanDefine_boolean_mayUseAnnotationTarget(ASTNode caller, ASTNode child, String name)StringDefine_String_hostPackage(ASTNode caller, ASTNode child)voidflushCache()voidflushCollectionCache()AnnotatedCompilationUnitfullCopy()Create a deep copy of the AST subtree at this node.ImportDeclgetImportDecl(int i)Retrieves the element at indexiin the ImportDecl list..List<ImportDecl>getImportDeclList()Retrieves the ImportDecl list.List<ImportDecl>getImportDeclListNoTransform()Retrieves the ImportDecl list.List<ImportDecl>getImportDecls()Retrieves the ImportDecl list.List<ImportDecl>getImportDeclsNoTransform()Retrieves the ImportDecl list.ModifiersgetModifiers()Retrieves the Modifiers child.ModifiersgetModifiersNoTransform()Retrieves the Modifiers child.intgetNumImportDecl()Retrieves the number of children in the ImportDecl list.intgetNumImportDeclNoTransform()Retrieves the number of children in the ImportDecl list.intgetNumTypeDecl()Retrieves the number of children in the TypeDecl list.intgetNumTypeDeclNoTransform()Retrieves the number of children in the TypeDecl list.StringgetPackageDecl()Retrieves the value for the lexeme PackageDecl.TypeDeclgetTypeDecl(int i)Retrieves the element at indexiin the TypeDecl list..List<TypeDecl>getTypeDeclList()Retrieves the TypeDecl list.List<TypeDecl>getTypeDeclListNoTransform()Retrieves the TypeDecl list.List<TypeDecl>getTypeDecls()Retrieves the TypeDecl list.List<TypeDecl>getTypeDeclsNoTransform()Retrieves the TypeDecl list.voidinit$Children()Initializes the child array to the correct size.voidjimplify1phase2()booleanmayHaveRewrite()voidnameCheck()protected intnumChildren()ASTNoderewriteTo()voidsetImportDecl(ImportDecl node, int i)Replaces the ImportDecl list element at indexiwith the new nodenode.voidsetImportDeclList(List<ImportDecl> list)Replaces the ImportDecl list.voidsetModifiers(Modifiers node)Replaces the Modifiers child.voidsetPackageDecl(Symbol symbol)JastAdd-internal setter for lexeme PackageDecl using the Beaver parser.voidsetPackageDecl(String value)Replaces the lexeme PackageDecl.voidsetTypeDecl(TypeDecl node, int i)Replaces the TypeDecl list element at indexiwith the new nodenode.voidsetTypeDeclList(List<TypeDecl> list)Replaces the TypeDecl list.voidtoString(StringBuffer s)-
Methods inherited from class soot.JastAddJ.CompilationUnit
addParseError, Define_boolean_handlesException, Define_boolean_isIncOrDec, Define_boolean_isLocalClass, Define_boolean_isMemberType, Define_boolean_isNestedType, Define_Collection_lookupMethod, Define_CompilationUnit_compilationUnit, Define_NameType_nameType, Define_SimpleSet_allImportedTypes, Define_SimpleSet_lookupType, Define_SimpleSet_lookupVariable, Define_String_packageName, Define_TypeDecl_enclosingType, Define_TypeDecl_hostType, dumpString, errorCheck, errorCheck, fromSource, importedFields, importedFieldsOnDemand, importedMethods, importedMethodsOnDemand, importedTypes, importedTypesOnDemand, localLookupType, lookupMethod, lookupType, lookupType, lookupVariable, packageName, parseErrors, pathName, refined_NameCheck_CompilationUnit_nameCheck, relativeName, setFromSource, setPathName, setRelativeName, transformation
-
Methods inherited from class soot.JastAddJ.ASTNode
accessControl, addAttributes, addChild, addsIndentationLevel, asImmediate, asLocal, asLocal, asRValue, beginExceptionRange, branchTarget, checkDUeverywhere, checkEnum, checkUncheckedConversion, checkWarnings, clearLocations, cloneSubtree, collectBranches, collectEnclosingVariables, collectErrors, collectExceptions, collectFinally, collectTypesToHierarchy, collectTypesToSignatures, compilationUnit, Define_Annotation_lookupAnnotation, Define_ArrayList_exceptionRanges, Define_ASTNode_enclosingBlock, Define_BodyDecl_enclosingBodyDecl, Define_boolean_enclosedByExceptionHandler, Define_boolean_hasPackage, Define_boolean_inExplicitConstructorInvocation, Define_boolean_inExtendsOrImplements, Define_boolean_inhModifiedInScope, Define_boolean_insideLoop, Define_boolean_insideSwitch, Define_boolean_inStaticContext, Define_boolean_isAnonymous, Define_boolean_isAnonymousDecl, Define_boolean_isCatchParam, Define_boolean_isConstructorParameter, Define_boolean_isDAbefore, Define_boolean_isDest, Define_boolean_isDUbefore, Define_boolean_isExceptionHandlerParameter, Define_boolean_isExplicitGenericConstructorAccess, Define_boolean_isMethodParameter, Define_boolean_isSource, Define_boolean_mayBeAbstract, Define_boolean_mayBeFinal, Define_boolean_mayBeNative, Define_boolean_mayBePrivate, Define_boolean_mayBeProtected, Define_boolean_mayBePublic, Define_boolean_mayBeStatic, Define_boolean_mayBeStrictfp, Define_boolean_mayBeSynchronized, Define_boolean_mayBeTransient, Define_boolean_mayBeVolatile, Define_boolean_reachable, Define_boolean_reachableCatchClause, Define_boolean_reportUnreachable, Define_boolean_resourcePreviouslyDeclared, Define_boolean_variableArityValid, Define_boolean_withinDeprecatedAnnotation, Define_boolean_withinSuppressWarnings, Define_Case_bind, Define_CatchClause_catchClause, Define_ClassInstanceExpr_getClassInstanceExpr, Define_Collection_lookupConstructor, Define_Collection_lookupSuperConstructor, Define_Collection_TypeDecl__caughtExceptions, 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_soot_jimple_Stmt_condition_false_label, Define_soot_jimple_Stmt_condition_true_label, Define_String_methodHost, Define_String_typeDeclIndent, Define_TypeDecl_assignConvertedType, Define_TypeDecl_componentType, Define_TypeDecl_declType, Define_TypeDecl_enclosingAnnotationDecl, Define_TypeDecl_enclosingInstance, Define_TypeDecl_expectedType, Define_TypeDecl_genericDecl, 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, definiteAssignment, 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, iterator, jimplify1phase1, jimplify2, jimplify2, lineNumber, location, newLabel, options, putSimpleSetElement, reachedException, removeChild, removeInstanceMethods, removeInstanceVariables, replace, setChild, setEnd, setLocation, setParent, setStart, sourceFile, start, state, toString, transformEnumConstructors, typeCheck, unassignedEverywhere, usesTypeVariable, 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
-
-
-
-
Method Detail
-
flushCache
public void flushCache()
- Overrides:
flushCachein classCompilationUnit
-
flushCollectionCache
public void flushCollectionCache()
- Overrides:
flushCollectionCachein classCompilationUnit
-
clone
public AnnotatedCompilationUnit clone() throws CloneNotSupportedException
- Overrides:
clonein classCompilationUnit- Throws:
CloneNotSupportedException
-
copy
public AnnotatedCompilationUnit copy()
- Overrides:
copyin classCompilationUnit
-
fullCopy
public AnnotatedCompilationUnit fullCopy()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.- Overrides:
fullCopyin classCompilationUnit- Returns:
- dangling copy of the subtree at this node
-
nameCheck
public void nameCheck()
- Overrides:
nameCheckin classCompilationUnit
-
toString
public void toString(StringBuffer s)
- Overrides:
toStringin classCompilationUnit
-
jimplify1phase2
public void jimplify1phase2()
- Overrides:
jimplify1phase2in classASTNode<ASTNode>
-
init$Children
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.- Overrides:
init$Childrenin classCompilationUnit
-
numChildren
protected int numChildren()
- Overrides:
numChildrenin classCompilationUnit
-
mayHaveRewrite
public boolean mayHaveRewrite()
- Overrides:
mayHaveRewritein classCompilationUnit
-
setPackageDecl
public void setPackageDecl(String value)
Replaces the lexeme PackageDecl.- Overrides:
setPackageDeclin classCompilationUnit- Parameters:
value- The new value for the lexeme PackageDecl.
-
setPackageDecl
public void setPackageDecl(Symbol symbol)
JastAdd-internal setter for lexeme PackageDecl using the Beaver parser.- Overrides:
setPackageDeclin classCompilationUnit
-
getPackageDecl
public String getPackageDecl()
Retrieves the value for the lexeme PackageDecl.- Overrides:
getPackageDeclin classCompilationUnit- Returns:
- The value for the lexeme PackageDecl.
-
setImportDeclList
public void setImportDeclList(List<ImportDecl> list)
Replaces the ImportDecl list.- Overrides:
setImportDeclListin classCompilationUnit- Parameters:
list- The new list node to be used as the ImportDecl list.
-
getNumImportDecl
public int getNumImportDecl()
Retrieves the number of children in the ImportDecl list.- Overrides:
getNumImportDeclin classCompilationUnit- Returns:
- Number of children in the ImportDecl list.
-
getNumImportDeclNoTransform
public int getNumImportDeclNoTransform()
Retrieves the number of children in the ImportDecl list. Calling this method will not trigger rewrites..- Overrides:
getNumImportDeclNoTransformin classCompilationUnit- Returns:
- Number of children in the ImportDecl list.
-
getImportDecl
public ImportDecl getImportDecl(int i)
Retrieves the element at indexiin the ImportDecl list..- Overrides:
getImportDeclin classCompilationUnit- Parameters:
i- Index of the element to return.- Returns:
- The element at position
iin the ImportDecl list.
-
addImportDecl
public void addImportDecl(ImportDecl node)
Append an element to the ImportDecl list.- Overrides:
addImportDeclin classCompilationUnit- Parameters:
node- The element to append to the ImportDecl list.
-
addImportDeclNoTransform
public void addImportDeclNoTransform(ImportDecl node)
- Overrides:
addImportDeclNoTransformin classCompilationUnit
-
setImportDecl
public void setImportDecl(ImportDecl node, int i)
Replaces the ImportDecl list element at indexiwith the new nodenode.- Overrides:
setImportDeclin classCompilationUnit- Parameters:
node- The new node to replace the old list element.i- The list index of the node to be replaced.
-
getImportDecls
public List<ImportDecl> getImportDecls()
Retrieves the ImportDecl list.- Overrides:
getImportDeclsin classCompilationUnit- Returns:
- The node representing the ImportDecl list.
-
getImportDeclsNoTransform
public List<ImportDecl> getImportDeclsNoTransform()
Retrieves the ImportDecl list.This method does not invoke AST transformations.
- Overrides:
getImportDeclsNoTransformin classCompilationUnit- Returns:
- The node representing the ImportDecl list.
-
getImportDeclList
public List<ImportDecl> getImportDeclList()
Retrieves the ImportDecl list.- Overrides:
getImportDeclListin classCompilationUnit- Returns:
- The node representing the ImportDecl list.
-
getImportDeclListNoTransform
public List<ImportDecl> getImportDeclListNoTransform()
Retrieves the ImportDecl list.This method does not invoke AST transformations.
- Overrides:
getImportDeclListNoTransformin classCompilationUnit- Returns:
- The node representing the ImportDecl list.
-
setTypeDeclList
public void setTypeDeclList(List<TypeDecl> list)
Replaces the TypeDecl list.- Overrides:
setTypeDeclListin classCompilationUnit- Parameters:
list- The new list node to be used as the TypeDecl list.
-
getNumTypeDecl
public int getNumTypeDecl()
Retrieves the number of children in the TypeDecl list.- Overrides:
getNumTypeDeclin classCompilationUnit- Returns:
- Number of children in the TypeDecl list.
-
getNumTypeDeclNoTransform
public int getNumTypeDeclNoTransform()
Retrieves the number of children in the TypeDecl list. Calling this method will not trigger rewrites..- Overrides:
getNumTypeDeclNoTransformin classCompilationUnit- Returns:
- Number of children in the TypeDecl list.
-
getTypeDecl
public TypeDecl getTypeDecl(int i)
Retrieves the element at indexiin the TypeDecl list..- Overrides:
getTypeDeclin classCompilationUnit- Parameters:
i- Index of the element to return.- Returns:
- The element at position
iin the TypeDecl list.
-
addTypeDecl
public void addTypeDecl(TypeDecl node)
Append an element to the TypeDecl list.- Overrides:
addTypeDeclin classCompilationUnit- Parameters:
node- The element to append to the TypeDecl list.
-
addTypeDeclNoTransform
public void addTypeDeclNoTransform(TypeDecl node)
- Overrides:
addTypeDeclNoTransformin classCompilationUnit
-
setTypeDecl
public void setTypeDecl(TypeDecl node, int i)
Replaces the TypeDecl list element at indexiwith the new nodenode.- Overrides:
setTypeDeclin classCompilationUnit- Parameters:
node- The new node to replace the old list element.i- The list index of the node to be replaced.
-
getTypeDecls
public List<TypeDecl> getTypeDecls()
Retrieves the TypeDecl list.- Overrides:
getTypeDeclsin classCompilationUnit- Returns:
- The node representing the TypeDecl list.
-
getTypeDeclsNoTransform
public List<TypeDecl> getTypeDeclsNoTransform()
Retrieves the TypeDecl list.This method does not invoke AST transformations.
- Overrides:
getTypeDeclsNoTransformin classCompilationUnit- Returns:
- The node representing the TypeDecl list.
-
getTypeDeclList
public List<TypeDecl> getTypeDeclList()
Retrieves the TypeDecl list.- Overrides:
getTypeDeclListin classCompilationUnit- Returns:
- The node representing the TypeDecl list.
-
getTypeDeclListNoTransform
public List<TypeDecl> getTypeDeclListNoTransform()
Retrieves the TypeDecl list.This method does not invoke AST transformations.
- Overrides:
getTypeDeclListNoTransformin classCompilationUnit- Returns:
- The node representing the TypeDecl list.
-
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.- 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.
-
Define_boolean_mayUseAnnotationTarget
public boolean Define_boolean_mayUseAnnotationTarget(ASTNode caller, ASTNode child, String name)
- Overrides:
Define_boolean_mayUseAnnotationTargetin classASTNode<ASTNode>
-
Define_String_hostPackage
public String Define_String_hostPackage(ASTNode caller, ASTNode child)
- Overrides:
Define_String_hostPackagein classCompilationUnit
-
rewriteTo
public ASTNode rewriteTo()
- Overrides:
rewriteToin classCompilationUnit
-
-