Package soot.JastAddJ
Class ParConstructorAccess
- java.lang.Object
-
- beaver.Symbol
-
- soot.JastAddJ.ASTNode<ASTNode>
-
- soot.JastAddJ.Expr
-
- soot.JastAddJ.Access
-
- soot.JastAddJ.ConstructorAccess
-
- soot.JastAddJ.ParConstructorAccess
-
public class ParConstructorAccess extends ConstructorAccess implements Cloneable
-
-
Field Summary
-
Fields inherited from class soot.JastAddJ.ConstructorAccess
addEnclosingVariables, decl_computed, decl_value, decls_computed, decls_value, IDend, IDstart, tokenString_ID, type_computed, type_value
-
Fields inherited from class soot.JastAddJ.Access
hasPrevExpr_computed, hasPrevExpr_value, prevExpr_computed, prevExpr_value
-
Fields inherited from class soot.JastAddJ.Expr
false_label_computed, false_label_value, true_label_computed, true_label_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 ParConstructorAccess()ParConstructorAccess(Symbol p0, List<Expr> p1, List<Access> p2)ParConstructorAccess(String p0, List<Expr> p1, List<Access> p2)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddArg(Expr node)Append an element to the Arg list.voidaddArgNoTransform(Expr node)voidaddTypeArgument(Access node)Append an element to the TypeArgument list.voidaddTypeArgumentNoTransform(Access node)ParConstructorAccessclone()ParConstructorAccesscopy()NameTypeDefine_NameType_nameType(ASTNode caller, ASTNode child)SimpleSetDefine_SimpleSet_lookupType(ASTNode caller, ASTNode child, String name)voidflushCache()voidflushCollectionCache()ParConstructorAccessfullCopy()Create a deep copy of the AST subtree at this node.ExprgetArg(int i)Retrieves the element at indexiin the Arg list..List<Expr>getArgList()Retrieves the Arg list.List<Expr>getArgListNoTransform()Retrieves the Arg list.List<Expr>getArgs()Retrieves the Arg list.List<Expr>getArgsNoTransform()Retrieves the Arg list.StringgetID()Retrieves the value for the lexeme ID.intgetNumArg()Retrieves the number of children in the Arg list.intgetNumArgNoTransform()Retrieves the number of children in the Arg list.intgetNumTypeArgument()Retrieves the number of children in the TypeArgument list.intgetNumTypeArgumentNoTransform()Retrieves the number of children in the TypeArgument list.AccessgetTypeArgument(int i)Retrieves the element at indexiin the TypeArgument list..List<Access>getTypeArgumentList()Retrieves the TypeArgument list.List<Access>getTypeArgumentListNoTransform()Retrieves the TypeArgument list.List<Access>getTypeArguments()Retrieves the TypeArgument list.List<Access>getTypeArgumentsNoTransform()Retrieves the TypeArgument list.voidinit$Children()Initializes the child array to the correct size.booleanmayHaveRewrite()protected intnumChildren()ASTNoderewriteTo()voidsetArg(Expr node, int i)Replaces the Arg list element at indexiwith the new nodenode.voidsetArgList(List<Expr> list)Replaces the Arg list.voidsetID(Symbol symbol)JastAdd-internal setter for lexeme ID using the Beaver parser.voidsetID(String value)Replaces the lexeme ID.voidsetTypeArgument(Access node, int i)Replaces the TypeArgument list element at indexiwith the new nodenode.voidsetTypeArgumentList(List<Access> list)Replaces the TypeArgument list.voidtoString(StringBuffer s)-
Methods inherited from class soot.JastAddJ.ConstructorAccess
addEnclosingVariables, applicableAndAccessible, arity, checkModifiers, collectTypesToSignatures, decl, decls, Define_boolean_hasPackage, Define_boolean_inExplicitConstructorInvocation, Define_Collection_lookupMethod, Define_SimpleSet_lookupVariable, Define_String_methodHost, eval, exceptionHandling, handlesException, invokesVariableArityAsArray, isDAafter, isDUafter, lookupConstructor, name, nameCheck, predNameType, reachedException, refined_Transformations_ConstructorAccess_transformation, transformation, transformEnumConstructors, type, unknownConstructor, validArgs
-
Methods inherited from class soot.JastAddJ.Access
addArrayDims, addArraySize, emitLoadLocalInNestedClass, emitThis, hasPrevExpr, inExplicitConstructorInvocation, isDiamond, isQualified, lastAccess, nestedScope, prevExpr, qualifier, substituted, superConstructorQualifier, unknownField, unknownType, unqualifiedScope, withinDeprecatedAnnotation, withinSuppressWarnings
-
Methods inherited from class soot.JastAddJ.Expr
addDependencyIfNeeded, assignConvertedType, canBeFalse, canBeTrue, chooseConstructor, collectTypesToHierarchy, condition_false_label, condition_true_label, constant, emitBooleanCondition, emitEvalBranch, emitStore, enclosingBodyDecl, enclosingStmt, false_label, hasNextAccess, hasPackage, hasParentDot, hasQualifiedPackage, hostPackage, hostType, inExtendsOrImplements, inStaticContext, isArrayAccess, isClassAccess, isConstant, isDAafterFalse, isDAafterTrue, isDAbefore, isDest, isDUafterFalse, isDUafterTrue, isDUbefore, isEnumConstant, isFalse, isFieldAccess, isIncOrDec, isLeftChildOfDot, isMethodAccess, isPackageAccess, isPositive, isRightChildOfDot, isSource, isSuperAccess, isSuperConstructorAccess, isThisAccess, isTrue, isTypeAccess, isUnknown, isVariable, isVariable, keepAccessibleFields, keepAccessibleTypes, lookupMethod, lookupType, lookupType, lookupVariable, mayAccess, methodHost, modifiedInScope, mostSpecific, mostSpecificConstructor, nameType, nextAccess, packageName, parentDot, qualifiedLookupType, qualifiedLookupVariable, qualifiesAccess, refined_BooleanExpressions_Expr_emitEvalBranch, representableIn, staticContextQualifier, throwTypes, true_label, typeBoolean, typeByte, typeChar, typeDouble, typeFloat, typeInt, typeLong, typeName, typeNull, typeShort, typeString, typeVoid, varDecl
-
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, compilationUnit, Define_Annotation_lookupAnnotation, Define_ArrayList_exceptionRanges, Define_ASTNode_enclosingBlock, Define_BodyDecl_enclosingBodyDecl, Define_boolean_enclosedByExceptionHandler, Define_boolean_handlesException, 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_isIncOrDec, Define_boolean_isLocalClass, Define_boolean_isMemberType, Define_boolean_isMethodParameter, Define_boolean_isNestedType, 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_mayUseAnnotationTarget, 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_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_componentType, Define_TypeDecl_declType, Define_TypeDecl_enclosingAnnotationDecl, Define_TypeDecl_enclosingInstance, Define_TypeDecl_enclosingType, Define_TypeDecl_expectedType, 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, definiteAssignment, dumpString, 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, iterator, jimplify1phase1, jimplify1phase2, jimplify2, jimplify2, lineNumber, location, newLabel, options, putSimpleSetElement, removeChild, removeInstanceMethods, removeInstanceVariables, replace, setChild, setEnd, setLocation, setParent, setStart, sourceFile, start, state, toString, 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 classConstructorAccess
-
flushCollectionCache
public void flushCollectionCache()
- Overrides:
flushCollectionCachein classConstructorAccess
-
clone
public ParConstructorAccess clone() throws CloneNotSupportedException
- Overrides:
clonein classConstructorAccess- Throws:
CloneNotSupportedException
-
copy
public ParConstructorAccess copy()
- Overrides:
copyin classConstructorAccess
-
fullCopy
public ParConstructorAccess fullCopy()
Create a deep copy of the AST subtree at this node. The copy is dangling, i.e. has no parent.- Overrides:
fullCopyin classConstructorAccess- Returns:
- dangling copy of the subtree at this node
-
toString
public void toString(StringBuffer s)
- Overrides:
toStringin classConstructorAccess
-
init$Children
public void init$Children()
Initializes the child array to the correct size. Initializes List and Opt nta children.- Overrides:
init$Childrenin classConstructorAccess
-
numChildren
protected int numChildren()
- Overrides:
numChildrenin classConstructorAccess
-
mayHaveRewrite
public boolean mayHaveRewrite()
- Overrides:
mayHaveRewritein classConstructorAccess
-
setID
public void setID(String value)
Replaces the lexeme ID.- Overrides:
setIDin classConstructorAccess- 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.- Overrides:
setIDin classConstructorAccess
-
getID
public String getID()
Retrieves the value for the lexeme ID.- Overrides:
getIDin classConstructorAccess- Returns:
- The value for the lexeme ID.
-
setArgList
public void setArgList(List<Expr> list)
Replaces the Arg list.- Overrides:
setArgListin classConstructorAccess- Parameters:
list- The new list node to be used as the Arg list.
-
getNumArg
public int getNumArg()
Retrieves the number of children in the Arg list.- Overrides:
getNumArgin classConstructorAccess- Returns:
- Number of children in the Arg list.
-
getNumArgNoTransform
public int getNumArgNoTransform()
Retrieves the number of children in the Arg list. Calling this method will not trigger rewrites..- Overrides:
getNumArgNoTransformin classConstructorAccess- Returns:
- Number of children in the Arg list.
-
getArg
public Expr getArg(int i)
Retrieves the element at indexiin the Arg list..- Overrides:
getArgin classConstructorAccess- Parameters:
i- Index of the element to return.- Returns:
- The element at position
iin the Arg list.
-
addArg
public void addArg(Expr node)
Append an element to the Arg list.- Overrides:
addArgin classConstructorAccess- Parameters:
node- The element to append to the Arg list.
-
addArgNoTransform
public void addArgNoTransform(Expr node)
- Overrides:
addArgNoTransformin classConstructorAccess
-
setArg
public void setArg(Expr node, int i)
Replaces the Arg list element at indexiwith the new nodenode.- Overrides:
setArgin classConstructorAccess- Parameters:
node- The new node to replace the old list element.i- The list index of the node to be replaced.
-
getArgs
public List<Expr> getArgs()
Retrieves the Arg list.- Overrides:
getArgsin classConstructorAccess- Returns:
- The node representing the Arg list.
-
getArgsNoTransform
public List<Expr> getArgsNoTransform()
Retrieves the Arg list.This method does not invoke AST transformations.
- Overrides:
getArgsNoTransformin classConstructorAccess- Returns:
- The node representing the Arg list.
-
getArgList
public List<Expr> getArgList()
Retrieves the Arg list.- Overrides:
getArgListin classConstructorAccess- Returns:
- The node representing the Arg list.
-
getArgListNoTransform
public List<Expr> getArgListNoTransform()
Retrieves the Arg list.This method does not invoke AST transformations.
- Overrides:
getArgListNoTransformin classConstructorAccess- Returns:
- The node representing the Arg list.
-
setTypeArgumentList
public void setTypeArgumentList(List<Access> list)
Replaces the TypeArgument list.- Parameters:
list- The new list node to be used as the TypeArgument list.
-
getNumTypeArgument
public int getNumTypeArgument()
Retrieves the number of children in the TypeArgument list.- Returns:
- Number of children in the TypeArgument list.
-
getNumTypeArgumentNoTransform
public int getNumTypeArgumentNoTransform()
Retrieves the number of children in the TypeArgument list. Calling this method will not trigger rewrites..- Returns:
- Number of children in the TypeArgument list.
-
getTypeArgument
public Access getTypeArgument(int i)
Retrieves the element at indexiin the TypeArgument list..- Parameters:
i- Index of the element to return.- Returns:
- The element at position
iin the TypeArgument list.
-
addTypeArgument
public void addTypeArgument(Access node)
Append an element to the TypeArgument list.- Parameters:
node- The element to append to the TypeArgument list.
-
addTypeArgumentNoTransform
public void addTypeArgumentNoTransform(Access node)
-
setTypeArgument
public void setTypeArgument(Access node, int i)
Replaces the TypeArgument list element at indexiwith the new nodenode.- Parameters:
node- The new node to replace the old list element.i- The list index of the node to be replaced.
-
getTypeArguments
public List<Access> getTypeArguments()
Retrieves the TypeArgument list.- Returns:
- The node representing the TypeArgument list.
-
getTypeArgumentsNoTransform
public List<Access> getTypeArgumentsNoTransform()
Retrieves the TypeArgument list.This method does not invoke AST transformations.
- Returns:
- The node representing the TypeArgument list.
-
getTypeArgumentList
public List<Access> getTypeArgumentList()
Retrieves the TypeArgument list.- Returns:
- The node representing the TypeArgument list.
-
getTypeArgumentListNoTransform
public List<Access> getTypeArgumentListNoTransform()
Retrieves the TypeArgument list.This method does not invoke AST transformations.
- Returns:
- The node representing the TypeArgument list.
-
Define_NameType_nameType
public NameType Define_NameType_nameType(ASTNode caller, ASTNode child)
- Overrides:
Define_NameType_nameTypein classConstructorAccess
-
Define_SimpleSet_lookupType
public SimpleSet Define_SimpleSet_lookupType(ASTNode caller, ASTNode child, String name)
- Overrides:
Define_SimpleSet_lookupTypein classConstructorAccess
-
rewriteTo
public ASTNode rewriteTo()
- Overrides:
rewriteToin classConstructorAccess
-
-