Package soot.JastAddJ
Class EnumDecl
- java.lang.Object
-
- beaver.Symbol
-
- soot.JastAddJ.ASTNode<ASTNode>
-
- soot.JastAddJ.TypeDecl
-
- soot.JastAddJ.ReferenceType
-
- soot.JastAddJ.ClassDecl
-
- soot.JastAddJ.EnumDecl
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface soot.JastAddJ.SimpleSet
SimpleSet.SimpleSetImpl
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanenumConstants_computedprotected ArrayListenumConstants_valueprotected booleangetSuperClassAccessOpt_computedprotected OptgetSuperClassAccessOpt_valueprotected booleanisStatic_computedprotected booleanisStatic_valueprotected booleanunimplementedMethods_computedprotected CollectionunimplementedMethods_value-
Fields inherited from class soot.JastAddJ.ClassDecl
ancestorMethods_String_values, castingConversionTo_TypeDecl_values, hasAbstract_computed, hasAbstract_value, implementedInterfaces_computed, implementedInterfaces_value, instanceOf_TypeDecl_values, interfacesMethodsSignatureMap_computed, interfacesMethodsSignatureMap_value, isCircular_computed, isCircular_initialized, isCircular_value, isCircular_visited, isObject_computed, isObject_value, isString_computed, isString_value, memberFields_String_values, memberFieldsMap_computed, memberFieldsMap_value, memberTypes_String_values, methodsSignatureMap_computed, methodsSignatureMap_value, sootClass_computed, sootClass_value, subtype_TypeDecl_values
-
Fields inherited from class soot.JastAddJ.ReferenceType
jvmName_computed, jvmName_value, narrowingConversionTo_TypeDecl_values, unboxed_computed, unboxed_value
-
Fields inherited from class soot.JastAddJ.TypeDecl
accessibleFrom_TypeDecl_values, accessibleFromExtend_TypeDecl_values, accessibleFromPackage_String_values, accessorCounter, anonymousIndex, arrayType_computed, arrayType_value, boxed_computed, boxed_value, clinit, componentType_computed, componentType_value, constructors_computed, constructors_value, containedIn_TypeDecl_values, createEnumArray_TypeDecl_values, createEnumIndex_EnumConstant_values, createEnumMethod_TypeDecl_values, dimension_computed, dimension_value, elementType_computed, elementType_value, enclosingVariables_computed, enclosingVariables_value, erasure_computed, erasure_value, fullName_computed, fullName_value, getSootClassDecl_computed, getSootClassDecl_value, getSootField_String_TypeDecl_values, getSootType_computed, getSootType_value, IDend, IDstart, inExplicitConstructorInvocation_computed, inExplicitConstructorInvocation_value, innerClassesAttributeEntries_computed, innerClassesAttributeEntries_value, inStaticContext_computed, inStaticContext_value, involvesTypeParameters_computed, involvesTypeParameters_initialized, involvesTypeParameters_value, involvesTypeParameters_visited, isAnonymous_computed, isAnonymous_value, isCheckedException_computed, isCheckedException_value, isDAbefore_Variable_values, isDUbefore_Variable_values, isException_computed, isException_value, isIterable_computed, isIterable_value, isPublic_computed, isPublic_value, isUncheckedException_computed, isUncheckedException_value, localFields_String_values, localFieldsMap_computed, localFieldsMap_value, localMethodsSignatureMap_computed, localMethodsSignatureMap_value, localTypeDecls_String_values, lookupMethod_String_values, lookupType_String_values, lookupVariable_String_values, mayCatch_TypeDecl_values, methodInvocationConversionTo_TypeDecl_values, methodsNameMap_computed, methodsNameMap_value, needsClinit_computed, needsClinit_value, packageName_computed, packageName_value, sameStructure_TypeDecl_values, sourceTypeDecl_computed, sourceTypeDecl_value, tokenString_ID, typeError_computed, typeError_value, typeException_computed, typeException_value, typeName_computed, typeName_value, typeObject_computed, typeObject_value, typeRuntimeException_computed, typeRuntimeException_value, uniqueIndex_computed, uniqueIndex_value, unknownType_computed, unknownType_value, unqualifiedLookupMethod_String_values, usesTypeVariable_computed, usesTypeVariable_initialized, usesTypeVariable_value, usesTypeVariable_visited
-
Fields inherited from class soot.JastAddJ.ASTNode
children, generatedWithCacheCycle, generatedWithCircularEnabled, generatedWithComponentCheck, in$Circle, is$Final, numChildren, parent, PRIMITIVE_PACKAGE_NAME, state
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddBodyDecl(BodyDecl node)Append an element to the BodyDecl list.voidaddBodyDeclNoTransform(BodyDecl node)voidaddImplements(Access node)Append an element to the Implements list.voidaddImplementsNoTransform(Access node)protected voidcheckEnum(EnumDecl enumDecl)voidcheckModifiers()Check that the enum does not contain unimplemented abstract methods.EnumDeclclone()EnumDeclcopy()booleanDefine_boolean_mayBeAbstract(ASTNode caller, ASTNode child)booleanDefine_boolean_mayBeFinal(ASTNode caller, ASTNode child)booleanDefine_boolean_mayBeStatic(ASTNode caller, ASTNode child)ArrayListenumConstants()voidflushCache()voidflushCollectionCache()EnumDeclfullCopy()Create a deep copy of the AST subtree at this node.BodyDeclgetBodyDecl(int i)Retrieves the element at indexiin the BodyDecl list..List<BodyDecl>getBodyDeclList()Retrieves the BodyDecl list.List<BodyDecl>getBodyDeclListNoTransform()Retrieves the BodyDecl list.List<BodyDecl>getBodyDecls()Retrieves the BodyDecl list.List<BodyDecl>getBodyDeclsNoTransform()Retrieves the BodyDecl list.StringgetID()Retrieves the value for the lexeme ID.AccessgetImplements(int i)Retrieves the element at indexiin the Implements list..List<Access>getImplementsList()Retrieves the Implements list.List<Access>getImplementsListNoTransform()Retrieves the Implements list.List<Access>getImplementss()Retrieves the Implements list.List<Access>getImplementssNoTransform()Retrieves the Implements list.ModifiersgetModifiers()Retrieves the Modifiers child.ModifiersgetModifiersNoTransform()Retrieves the Modifiers child.intgetNumBodyDecl()Retrieves the number of children in the BodyDecl list.intgetNumBodyDeclNoTransform()Retrieves the number of children in the BodyDecl list.intgetNumImplements()Retrieves the number of children in the Implements list.intgetNumImplementsNoTransform()Retrieves the number of children in the Implements list.AccessgetSuperClassAccess()Retrieves the (optional) SuperClassAccess child.OptgetSuperClassAccessOpt()protected intgetSuperClassAccessOptChildPosition()Retrieves the child position of the optional child SuperClassAccess.Opt<Access>getSuperClassAccessOptNoTransform()Retrieves the optional node for child SuperClassAccess.booleanhasSuperClassAccess()Check whether the optional SuperClassAccess child exists.voidinit$Children()Initializes the child array to the correct size.booleanisAbstract()booleanisEnumDecl()booleanisFinal()booleanisStatic()booleanisValidAnnotationMethodReturnType()booleanmayHaveRewrite()protected intnumChildren()ASTNoderewriteTo()voidsetBodyDecl(BodyDecl node, int i)Replaces the BodyDecl list element at indexiwith the new nodenode.voidsetBodyDeclList(List<BodyDecl> list)Replaces the BodyDecl list.voidsetID(Symbol symbol)JastAdd-internal setter for lexeme ID using the Beaver parser.voidsetID(String value)Replaces the lexeme ID.voidsetImplements(Access node, int i)Replaces the Implements list element at indexiwith the new nodenode.voidsetImplementsList(List<Access> list)Replaces the Implements list.voidsetModifiers(Modifiers node)Replaces the Modifiers child.voidsetSuperClassAccess(Access node)Replaces the (optional) SuperClassAccess child.voidsetSuperClassAccessOpt(Opt<Access> opt)Replaces the optional node for the SuperClassAccess child.intsootTypeModifiers()voidtoString(StringBuffer s)voidtypeCheck()TypeDecltypeString()CollectionunimplementedMethods()From the Java Language Specification, third edition, section 8.9 Enums: It is a compile-time error for an enum type E to have an abstract method m as a member unless E has one or more enum constants, and all of E's enum constants have class bodies that provide concrete implementations of m.-
Methods inherited from class soot.JastAddJ.ClassDecl
accessControl, add, ancestorMethods, annotation, bridgeCandidates, cast, castingConversionTo, Define_boolean_inExtendsOrImplements, Define_boolean_withinDeprecatedAnnotation, Define_boolean_withinSuppressWarnings, Define_NameType_nameType, Define_TypeDecl_hostType, eqIsTrue, exceptionHandling, hasAbstract, hasSuperclass, implementedInterfaces, instanceOf, interfacesIterator, interfacesMethodsIterator, interfacesMethodsSignature, interfacesMethodsSignatureMap, isCircular, isClassDecl, isInnerClass, isObject, isString, isSupertypeOfArrayDecl, isSupertypeOfClassDecl, isSupertypeOfInterfaceDecl, jimplify1phase2, lineNumber, lookupSuperConstructor, makeGeneric, memberFields, memberFieldsMap, memberTypes, methodsSignatureMap, nameCheck, noConstructor, questionColon, sootClass, substitutedClassDecl, subtype, superclass, superEnclosing, supertypeArrayDecl, supertypeClassDecl, supertypeInterfaceDecl, typeDescriptor
-
Methods inherited from class soot.JastAddJ.ReferenceType
binaryNumericPromotion, emitCastTo, isBoolean, isIntegralType, isNumericType, isPrimitive, isReferenceType, isSupertypeOfNullType, jvmName, narrowingConversionTo, referenceClassFieldName, stringPromotion, supertypeNullType, typeBoolean, typeByte, typeChar, typeDouble, typeFloat, typeInt, typeLong, typeShort, unaryNumericPromotion, unboxed, unboxingConversionTo, wideningConversionTo
-
Methods inherited from class soot.JastAddJ.TypeDecl
accessibleFrom, accessibleFromExtend, accessibleFromPackage, add, addAccessor, addAttributes, addConstructor, addEnclosingVariables, addMemberClass, addMemberField, addMemberMethod, addNestedType, addsIndentationLevel, addUsedNestedType, allMethodsAbstract, andBitwise, arrayType, assignableToInt, assignConversionTo, asWildcardExtends, asWildcardSuper, bitNot, boxed, boxingConversionTo, commensurateWith, compilationUnit, componentType, constructors, containedIn, contains, createAssertionsDisabled, createBoundAccess, createEnumArray, createEnumIndex, createEnumMethod, createQualifiedAccess, createStaticClassField, createStaticClassMethod, declaredBeforeUse, declaredBeforeUse, Define_boolean_enclosedByExceptionHandler, Define_boolean_insideLoop, Define_boolean_insideSwitch, Define_boolean_inStaticContext, Define_boolean_isAnonymous, Define_boolean_isDAbefore, Define_boolean_isDest, Define_boolean_isDUbefore, Define_boolean_isLocalClass, Define_boolean_isNestedType, Define_boolean_isSource, Define_boolean_mayBeNative, Define_boolean_mayBePrivate, Define_boolean_mayBeProtected, Define_boolean_mayBePublic, Define_boolean_mayBeStrictfp, Define_boolean_mayBeSynchronized, Define_boolean_mayBeTransient, Define_boolean_mayBeVolatile, Define_boolean_mayUseAnnotationTarget, Define_boolean_reportUnreachable, Define_Collection_lookupConstructor, Define_Collection_lookupMethod, Define_Collection_lookupSuperConstructor, Define_SimpleSet_lookupType, Define_SimpleSet_lookupVariable, Define_String_methodHost, Define_TypeDecl_componentType, Define_TypeDecl_enclosingInstance, Define_TypeDecl_enclosingType, Define_TypeDecl_returnType, Define_VariableScope_outerScope, dimension, div, dumpString, elementType, emitBoxingOperation, emitCastTo, emitUnboxingOperation, enclosedBy, encloses, enclosing, enclosingBlock, enclosingBodyDecl, enclosingInstance, enclosingType, enclosingVariables, erasure, fieldsIterator, findSingleVariable, fullName, getAccessor, getAccessorSource, getSootClassDecl, getSootField, getSootType, hasAnnotationSafeVarargs, hasAnnotationSuppressWarnings, hasEnclosingTypeDecl, hasField, hasMethod, hasNext, hasPackage, hasType, hostPackage, hostType, identityConversionTo, inExplicitConstructorInvocation, innerClassesAttributeEntries, inStaticContext, involvesTypeParameters, isAnnotationDecl, isAnonymous, isAnonymousInNonStaticContext, isArrayDecl, isByte, isChar, isCheckedException, isDAbefore, isDeprecated, isDouble, isDUbefore, isEmpty, isException, isFloat, isGenericType, isInnerType, isInnerTypeOf, isInt, isInterfaceDecl, isIterable, isLocalClass, isLong, isMemberType, isNestedType, isNull, isParameterizedType, isPrimitiveType, isPrivate, isProtected, isPublic, isRawType, isReifiable, isShort, isSingleton, isSingleton, isStrictfp, isSupertypeOfPrimitiveType, isSupertypeOfVoidType, isSynthetic, isTopLevelType, isTypeVariable, isUnboxedPrimitive, isUncheckedConversionTo, isUncheckedException, isUnknown, isVoid, isWildcard, iterator, jimplify2, jimplify2clinit, leIsTrue, localFields, localFieldsMap, localMethodsIterator, localMethodsSignature, localMethodsSignatureMap, localTypeDecls, lookupConstructor, lookupGLBType, lookupLUBType, lookupMethod, lookupType, lookupType, lookupVariable, lookupWildcardExtends, lookupWildcardSuper, lshift, ltIsTrue, mayAccess, mayAccess, mayCatch, memberMethods, methodInvocationConversionTo, methodsIterator, methodsNameMap, methodsSignature, methodWithArgs, minus, mod, mul, name, needsClinit, needsEnclosing, needsSuperEnclosing, nestedTypes, next, nextAnonymousIndex, orBitwise, original, packageName, plus, ppBodyDecls, primitiveClassName, refined_TypeHierarchyCheck_TypeDecl_typeCheck, remove, rshift, sameSignature, sameStructure, size, sootRef, sourceNameWithoutPath, sourceTypeDecl, stringConversion, sub, substitute, substitute, substituteParameterType, substituteReturnType, supertypeClassDeclSubstituted, supertypeGenericClassDecl, supertypeGenericClassDeclSubstituted, supertypeGenericInterfaceDecl, supertypeGenericInterfaceDeclSubstituted, supertypeGLBType, supertypeInterfaceDeclSubstituted, supertypeLUBType, supertypeParClassDecl, supertypeParInterfaceDecl, supertypePrimitiveType, supertypeRawClassDecl, supertypeRawInterfaceDecl, supertypeTypeVariable, supertypeVoidType, supertypeWildcard, supertypeWildcardExtends, supertypeWildcardSuper, topLevelType, transformation, typeCloneable, typeError, typeException, typeName, typeObject, typeRuntimeException, typeSerializable, typeVoid, typeWildcard, uniqueIndex, unknownType, unqualifiedLookupMethod, urshift, usedNestedTypes, usesTypeVariable, variableSize, withinBodyThatSubclasses, withinDeprecatedAnnotation, withinSuppressWarnings, xorBitwise
-
Methods inherited from class soot.JastAddJ.ASTNode
addChild, asImmediate, asLocal, asLocal, asRValue, beginExceptionRange, branchTarget, checkDUeverywhere, checkUncheckedConversion, checkWarnings, clearLocations, cloneSubtree, collectBranches, collectEnclosingVariables, collectErrors, collectExceptions, collectFinally, collectTypesToHierarchy, collectTypesToSignatures, Define_Annotation_lookupAnnotation, Define_ArrayList_exceptionRanges, Define_ASTNode_enclosingBlock, Define_BodyDecl_enclosingBodyDecl, Define_boolean_handlesException, Define_boolean_hasPackage, Define_boolean_inExplicitConstructorInvocation, Define_boolean_inhModifiedInScope, Define_boolean_isAnonymousDecl, Define_boolean_isCatchParam, Define_boolean_isConstructorParameter, Define_boolean_isExceptionHandlerParameter, Define_boolean_isExplicitGenericConstructorAccess, Define_boolean_isIncOrDec, Define_boolean_isMemberType, Define_boolean_isMethodParameter, Define_boolean_reachable, Define_boolean_reachableCatchClause, Define_boolean_resourcePreviouslyDeclared, Define_boolean_variableArityValid, Define_Case_bind, Define_CatchClause_catchClause, Define_ClassInstanceExpr_getClassInstanceExpr, 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_soot_jimple_Stmt_condition_false_label, Define_soot_jimple_Stmt_condition_true_label, Define_String_hostPackage, Define_String_packageName, Define_String_typeDeclIndent, Define_TypeDecl_assignConvertedType, Define_TypeDecl_declType, Define_TypeDecl_enclosingAnnotationDecl, Define_TypeDecl_expectedType, Define_TypeDecl_genericDecl, Define_TypeDecl_lookupType, Define_TypeDecl_lookupWildcardExtends, Define_TypeDecl_lookupWildcardSuper, 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, definesLabel, definiteAssignment, dumpTree, dumpTree, dumpTreeNoRewrite, dumpTreeNoRewrite, duringAnnotations, duringAnonymousClasses, duringBoundNames, duringDU, duringEnums, duringGenericTypeVariables, duringImplicitConstructor, duringLiterals, duringNameResolution, duringSyntacticClassification, duringVariableDeclarationTransformation, emitConstant, end, endExceptionRange, error, errorPrefix, extractIndent, extractSingleType, flushCaches, getChild, getChildNoTransform, getIndexOfChild, getNumChild, getNumChildNoTransform, getParent, in$Circle, in$Circle, indent, insertChild, is$Final, is$Final, isDescendantTo, isStringAdd, jimplify1phase1, jimplify2, location, newLabel, options, putSimpleSetElement, reachedException, removeChild, removeInstanceMethods, removeInstanceVariables, replace, setChild, setEnd, setLocation, setParent, setStart, sourceFile, start, state, toString, 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
-
isStatic_computed
protected boolean isStatic_computed
-
isStatic_value
protected boolean isStatic_value
-
getSuperClassAccessOpt_computed
protected boolean getSuperClassAccessOpt_computed
-
getSuperClassAccessOpt_value
protected Opt getSuperClassAccessOpt_value
-
enumConstants_computed
protected boolean enumConstants_computed
-
enumConstants_value
protected ArrayList enumConstants_value
-
unimplementedMethods_computed
protected boolean unimplementedMethods_computed
-
unimplementedMethods_value
protected Collection unimplementedMethods_value
-
-
Method Detail
-
flushCache
public void flushCache()
- Overrides:
flushCachein classClassDecl
-
flushCollectionCache
public void flushCollectionCache()
- Overrides:
flushCollectionCachein classClassDecl
-
clone
public EnumDecl clone() throws CloneNotSupportedException
- Overrides:
clonein classClassDecl- Throws:
CloneNotSupportedException
-
fullCopy
public EnumDecl fullCopy()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.
-
checkEnum
protected void checkEnum(EnumDecl enumDecl)
-
toString
public void toString(StringBuffer s)
-
checkModifiers
public void checkModifiers()
Check that the enum does not contain unimplemented abstract methods.- Overrides:
checkModifiersin classClassDecl
-
init$Children
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.- Overrides:
init$Childrenin classClassDecl
-
numChildren
protected int numChildren()
- Overrides:
numChildrenin classClassDecl
-
mayHaveRewrite
public boolean mayHaveRewrite()
- Overrides:
mayHaveRewritein classClassDecl
-
setModifiers
public void setModifiers(Modifiers node)
Replaces the Modifiers child.- Overrides:
setModifiersin classClassDecl- Parameters:
node- The new node to replace the Modifiers child.
-
getModifiers
public Modifiers getModifiers()
Retrieves the Modifiers child.- Overrides:
getModifiersin classClassDecl- Returns:
- The current node used as the Modifiers child.
-
getModifiersNoTransform
public Modifiers getModifiersNoTransform()
Retrieves the Modifiers child.This method does not invoke AST transformations.
- Overrides:
getModifiersNoTransformin classClassDecl- Returns:
- The current node used as the Modifiers child.
-
setID
public void setID(String value)
Replaces 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.
-
setImplementsList
public void setImplementsList(List<Access> list)
Replaces the Implements list.- Overrides:
setImplementsListin classClassDecl- Parameters:
list- The new list node to be used as the Implements list.
-
getNumImplements
public int getNumImplements()
Retrieves the number of children in the Implements list.- Overrides:
getNumImplementsin classClassDecl- Returns:
- Number of children in the Implements list.
-
getNumImplementsNoTransform
public int getNumImplementsNoTransform()
Retrieves the number of children in the Implements list. Calling this method will not trigger rewrites..- Overrides:
getNumImplementsNoTransformin classClassDecl- Returns:
- Number of children in the Implements list.
-
getImplements
public Access getImplements(int i)
Retrieves the element at indexiin the Implements list..- Overrides:
getImplementsin classClassDecl- Parameters:
i- Index of the element to return.- Returns:
- The element at position
iin the Implements list.
-
addImplements
public void addImplements(Access node)
Append an element to the Implements list.- Overrides:
addImplementsin classClassDecl- Parameters:
node- The element to append to the Implements list.
-
addImplementsNoTransform
public void addImplementsNoTransform(Access node)
- Overrides:
addImplementsNoTransformin classClassDecl
-
setImplements
public void setImplements(Access node, int i)
Replaces the Implements list element at indexiwith the new nodenode.- Overrides:
setImplementsin classClassDecl- Parameters:
node- The new node to replace the old list element.i- The list index of the node to be replaced.
-
getImplementss
public List<Access> getImplementss()
Retrieves the Implements list.- Overrides:
getImplementssin classClassDecl- Returns:
- The node representing the Implements list.
-
getImplementssNoTransform
public List<Access> getImplementssNoTransform()
Retrieves the Implements list.This method does not invoke AST transformations.
- Overrides:
getImplementssNoTransformin classClassDecl- Returns:
- The node representing the Implements list.
-
getImplementsList
public List<Access> getImplementsList()
Retrieves the Implements list.- Overrides:
getImplementsListin classClassDecl- Returns:
- The node representing the Implements list.
-
getImplementsListNoTransform
public List<Access> getImplementsListNoTransform()
Retrieves the Implements list.This method does not invoke AST transformations.
- Overrides:
getImplementsListNoTransformin classClassDecl- Returns:
- The node representing the Implements list.
-
setBodyDeclList
public void setBodyDeclList(List<BodyDecl> list)
Replaces the BodyDecl list.- Overrides:
setBodyDeclListin classClassDecl- Parameters:
list- The new list node to be used as the BodyDecl list.
-
getNumBodyDecl
public int getNumBodyDecl()
Retrieves the number of children in the BodyDecl list.- Overrides:
getNumBodyDeclin classClassDecl- Returns:
- Number of children in the BodyDecl list.
-
getNumBodyDeclNoTransform
public int getNumBodyDeclNoTransform()
Retrieves the number of children in the BodyDecl list. Calling this method will not trigger rewrites..- Overrides:
getNumBodyDeclNoTransformin classClassDecl- Returns:
- Number of children in the BodyDecl list.
-
getBodyDecl
public BodyDecl getBodyDecl(int i)
Retrieves the element at indexiin the BodyDecl list..- Overrides:
getBodyDeclin classClassDecl- Parameters:
i- Index of the element to return.- Returns:
- The element at position
iin the BodyDecl list.
-
addBodyDecl
public void addBodyDecl(BodyDecl node)
Append an element to the BodyDecl list.- Overrides:
addBodyDeclin classClassDecl- Parameters:
node- The element to append to the BodyDecl list.
-
addBodyDeclNoTransform
public void addBodyDeclNoTransform(BodyDecl node)
- Overrides:
addBodyDeclNoTransformin classClassDecl
-
setBodyDecl
public void setBodyDecl(BodyDecl node, int i)
Replaces the BodyDecl list element at indexiwith the new nodenode.- Overrides:
setBodyDeclin classClassDecl- Parameters:
node- The new node to replace the old list element.i- The list index of the node to be replaced.
-
getBodyDecls
public List<BodyDecl> getBodyDecls()
Retrieves the BodyDecl list.- Overrides:
getBodyDeclsin classClassDecl- Returns:
- The node representing the BodyDecl list.
-
getBodyDeclsNoTransform
public List<BodyDecl> getBodyDeclsNoTransform()
Retrieves the BodyDecl list.This method does not invoke AST transformations.
- Overrides:
getBodyDeclsNoTransformin classClassDecl- Returns:
- The node representing the BodyDecl list.
-
getBodyDeclList
public List<BodyDecl> getBodyDeclList()
Retrieves the BodyDecl list.- Overrides:
getBodyDeclListin classClassDecl- Returns:
- The node representing the BodyDecl list.
-
getBodyDeclListNoTransform
public List<BodyDecl> getBodyDeclListNoTransform()
Retrieves the BodyDecl list.This method does not invoke AST transformations.
- Overrides:
getBodyDeclListNoTransformin classClassDecl- Returns:
- The node representing the BodyDecl list.
-
setSuperClassAccessOpt
public void setSuperClassAccessOpt(Opt<Access> opt)
Replaces the optional node for the SuperClassAccess child. This is theOptnode containing the child SuperClassAccess, not the actual child!- Overrides:
setSuperClassAccessOptin classClassDecl- Parameters:
opt- The new node to be used as the optional node for the SuperClassAccess child.
-
hasSuperClassAccess
public boolean hasSuperClassAccess()
Check whether the optional SuperClassAccess child exists.- Overrides:
hasSuperClassAccessin classClassDecl- Returns:
trueif the optional SuperClassAccess child exists,falseif it does not.
-
getSuperClassAccess
public Access getSuperClassAccess()
Retrieves the (optional) SuperClassAccess child.- Overrides:
getSuperClassAccessin classClassDecl- Returns:
- The SuperClassAccess child, if it exists. Returns
nullotherwise.
-
setSuperClassAccess
public void setSuperClassAccess(Access node)
Replaces the (optional) SuperClassAccess child.- Overrides:
setSuperClassAccessin classClassDecl- Parameters:
node- The new node to be used as the SuperClassAccess child.
-
getSuperClassAccessOptNoTransform
public Opt<Access> getSuperClassAccessOptNoTransform()
Retrieves the optional node for child SuperClassAccess. This is theOptnode containing the child SuperClassAccess, not the actual child!This method does not invoke AST transformations.
- Overrides:
getSuperClassAccessOptNoTransformin classClassDecl- Returns:
- The optional node for child SuperClassAccess.
-
getSuperClassAccessOptChildPosition
protected int getSuperClassAccessOptChildPosition()
Retrieves the child position of the optional child SuperClassAccess.- Returns:
- The the child position of the optional child SuperClassAccess.
-
isValidAnnotationMethodReturnType
public boolean isValidAnnotationMethodReturnType()
- Overrides:
isValidAnnotationMethodReturnTypein classReferenceType
-
isEnumDecl
public boolean isEnumDecl()
- Overrides:
isEnumDeclin classTypeDecl
-
getSuperClassAccessOpt
public Opt getSuperClassAccessOpt()
- Overrides:
getSuperClassAccessOptin classClassDecl
-
enumConstants
public ArrayList enumConstants()
-
isAbstract
public boolean isAbstract()
- Overrides:
isAbstractin classTypeDecl
-
unimplementedMethods
public Collection unimplementedMethods()
From the Java Language Specification, third edition, section 8.9 Enums: It is a compile-time error for an enum type E to have an abstract method m as a member unless E has one or more enum constants, and all of E's enum constants have class bodies that provide concrete implementations of m.- Overrides:
unimplementedMethodsin classClassDecl
-
sootTypeModifiers
public int sootTypeModifiers()
- Overrides:
sootTypeModifiersin classTypeDecl
-
typeString
public TypeDecl typeString()
-
Define_boolean_mayBeAbstract
public boolean Define_boolean_mayBeAbstract(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeAbstractin classTypeDecl
-
Define_boolean_mayBeStatic
public boolean Define_boolean_mayBeStatic(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeStaticin classTypeDecl
-
Define_boolean_mayBeFinal
public boolean Define_boolean_mayBeFinal(ASTNode caller, ASTNode child)
- Overrides:
Define_boolean_mayBeFinalin classClassDecl
-
-