public class ClassInstanceExpr extends Access implements Cloneable
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
addEnclosingVariables |
protected Map |
computeDAbefore_int_Variable_values |
protected Map |
computeDUbefore_int_Variable_values |
protected boolean |
decl_computed |
protected ConstructorDecl |
decl_value |
protected boolean |
decls_computed |
protected SimpleSet |
decls_value |
protected Map |
isDAafterInstance_Variable_values |
protected Map |
localLookupType_String_values |
protected boolean |
type_computed |
protected TypeDecl |
type_value |
hasPrevExpr_computed, hasPrevExpr_value, prevExpr_computed, prevExpr_valuefalse_label_computed, false_label_value, true_label_computed, true_label_valuechildren, generatedWithCacheCycle, generatedWithCircularEnabled, generatedWithComponentCheck, in$Circle, is$Final, numChildren, parent, PRIMITIVE_PACKAGE_NAME, state| Constructor and Description |
|---|
ClassInstanceExpr() |
ClassInstanceExpr(Access type,
List args) |
ClassInstanceExpr(Access p0,
List<Expr> p1,
Opt<TypeDecl> p2) |
addArrayDims, addArraySize, emitLoadLocalInNestedClass, emitThis, hasPrevExpr, isDiamond, isQualified, lastAccess, nestedScope, prevExpr, qualifier, substituted, superConstructorQualifier, unknownField, unknownType, unqualifiedScope, withinDeprecatedAnnotation, withinSuppressWarningsaddDependencyIfNeeded, 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, qualifiedLookupVariable, qualifiesAccess, refined_BooleanExpressions_Expr_emitEvalBranch, representableIn, staticContextQualifier, throwTypes, true_label, typeBoolean, typeByte, typeChar, typeDouble, typeFloat, typeInt, typeLong, typeName, typeNull, typeShort, typeString, typeVoid, varDecladdAttributes, 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_inExplicitConstructorInvocation, Define_boolean_inExtendsOrImplements, Define_boolean_inhModifiedInScope, Define_boolean_insideLoop, Define_boolean_insideSwitch, Define_boolean_isCatchParam, Define_boolean_isConstructorParameter, Define_boolean_isDest, Define_boolean_isExceptionHandlerParameter, Define_boolean_isExplicitGenericConstructorAccess, Define_boolean_isIncOrDec, Define_boolean_isLocalClass, 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_Collection_lookupConstructor, Define_Collection_lookupMethod, Define_Collection_lookupSuperConstructor, Define_Collection_TypeDecl__caughtExceptions, Define_CompilationUnit_compilationUnit, 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_methodHost, 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_lookupType, Define_TypeDecl_lookupWildcardExtends, Define_TypeDecl_lookupWildcardSuper, Define_TypeDecl_returnType, 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, transformEnumConstructors, unassignedEverywhere, usesTypeVariable, varChildIndex, varChildIndex, warning, warningPrefix, withgetColumn, getEnd, getId, getLine, getStart, makePositionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitforEach, spliteratorprotected boolean addEnclosingVariables
protected Map isDAafterInstance_Variable_values
protected Map computeDAbefore_int_Variable_values
protected Map computeDUbefore_int_Variable_values
protected boolean decls_computed
protected SimpleSet decls_value
protected boolean decl_computed
protected ConstructorDecl decl_value
protected Map localLookupType_String_values
protected boolean type_computed
protected TypeDecl type_value
public void flushCache()
flushCache in class Accesspublic void flushCollectionCache()
flushCollectionCache in class Accesspublic ClassInstanceExpr clone() throws CloneNotSupportedException
clone in class AccessCloneNotSupportedExceptionpublic ClassInstanceExpr copy()
public ClassInstanceExpr fullCopy()
public void accessControl()
accessControl in class ASTNode<ASTNode>public void exceptionHandling()
exceptionHandling in class ASTNode<ASTNode>protected boolean reachedException(TypeDecl catchType)
reachedException in class ASTNode<ASTNode>public void refined_NameCheck_ClassInstanceExpr_nameCheck()
public void toString(StringBuffer s)
public void typeCheckEnclosingInstance()
public void typeCheckAnonymousSuperclassEnclosingInstance()
public void checkModifiers()
public void addEnclosingVariables()
public void refined_Transformations_ClassInstanceExpr_transformation()
public void collectTypesToSignatures(Collection<Type> set)
collectTypesToSignatures in class ASTNode<ASTNode>public void init$Children()
init$Children in class Accessprotected int numChildren()
numChildren in class Accesspublic boolean mayHaveRewrite()
mayHaveRewrite in class Accesspublic void setAccess(Access node)
node - The new node to replace the Access child.public Access getAccess()
public Access getAccessNoTransform()
This method does not invoke AST transformations.
public void setArgList(List<Expr> list)
list - The new list node to be used as the Arg list.public int getNumArg()
public int getNumArgNoTransform()
public Expr getArg(int i)
i in the Arg list..i - Index of the element to return.i in the Arg list.public void addArg(Expr node)
node - The element to append to the Arg list.public void addArgNoTransform(Expr node)
public void setArg(Expr node, int i)
i with the new node node.node - The new node to replace the old list element.i - The list index of the node to be replaced.public List<Expr> getArgs()
public List<Expr> getArgsNoTransform()
This method does not invoke AST transformations.
public List<Expr> getArgList()
public List<Expr> getArgListNoTransform()
This method does not invoke AST transformations.
public void setTypeDeclOpt(Opt<TypeDecl> opt)
Opt node containing the child TypeDecl, not the actual child!opt - The new node to be used as the optional node for the TypeDecl child.public boolean hasTypeDecl()
true if the optional TypeDecl child exists, false if it does not.public TypeDecl getTypeDecl()
null otherwise.public void setTypeDecl(TypeDecl node)
node - The new node to be used as the TypeDecl child.public Opt<TypeDecl> getTypeDeclOptNoTransform()
Opt node containing the child TypeDecl, not the actual child!
This method does not invoke AST transformations.
public void transformation()
transformation in class ASTNode<ASTNode>public boolean isDAafterInstance(Variable v)
public boolean computeDAbefore(int i,
Variable v)
public boolean isDUafterInstance(Variable v)
public boolean computeDUbefore(int i,
Variable v)
public boolean applicableAndAccessible(ConstructorDecl decl)
applicableAndAccessible in class Exprpublic SimpleSet decls()
public ConstructorDecl decl()
public SimpleSet qualifiedLookupType(String name)
qualifiedLookupType in class Exprpublic boolean validArgs()
public NameType predNameType()
predNameType in class Accesspublic boolean noEnclosingInstance()
public int arity()
public boolean invokesVariableArityAsArray()
public boolean handlesException(TypeDecl exceptionType)
public TypeDecl typeObject()
public ConstructorDecl unknownConstructor()
public String typeDeclIndent()
public TypeDecl enclosingInstance()
public boolean inExplicitConstructorInvocation()
inExplicitConstructorInvocation in class Accesspublic TypeDecl Define_TypeDecl_superType(ASTNode caller, ASTNode child)
Define_TypeDecl_superType in class ASTNode<ASTNode>public ConstructorDecl Define_ConstructorDecl_constructorDecl(ASTNode caller, ASTNode child)
Define_ConstructorDecl_constructorDecl in class ASTNode<ASTNode>public boolean Define_boolean_isDAbefore(ASTNode caller, ASTNode child, Variable v)
Define_boolean_isDAbefore in class ASTNode<ASTNode>public boolean Define_boolean_isDUbefore(ASTNode caller, ASTNode child, Variable v)
Define_boolean_isDUbefore in class ASTNode<ASTNode>public boolean Define_boolean_hasPackage(ASTNode caller, ASTNode child, String packageName)
Define_boolean_hasPackage in class ASTNode<ASTNode>public SimpleSet Define_SimpleSet_lookupType(ASTNode caller, ASTNode child, String name)
Define_SimpleSet_lookupType in class ASTNode<ASTNode>public SimpleSet Define_SimpleSet_lookupVariable(ASTNode caller, ASTNode child, String name)
Define_SimpleSet_lookupVariable in class ASTNode<ASTNode>public NameType Define_NameType_nameType(ASTNode caller, ASTNode child)
Define_NameType_nameType in class ASTNode<ASTNode>public boolean Define_boolean_isAnonymous(ASTNode caller, ASTNode child)
Define_boolean_isAnonymous in class ASTNode<ASTNode>public boolean Define_boolean_isMemberType(ASTNode caller, ASTNode child)
Define_boolean_isMemberType in class ASTNode<ASTNode>public TypeDecl Define_TypeDecl_hostType(ASTNode caller, ASTNode child)
Define_TypeDecl_hostType in class ASTNode<ASTNode>public boolean Define_boolean_inStaticContext(ASTNode caller, ASTNode child)
Define_boolean_inStaticContext in class ASTNode<ASTNode>public ClassInstanceExpr Define_ClassInstanceExpr_getClassInstanceExpr(ASTNode caller, ASTNode child)
Define_ClassInstanceExpr_getClassInstanceExpr in class ASTNode<ASTNode>public boolean Define_boolean_isAnonymousDecl(ASTNode caller, ASTNode child)
Define_boolean_isAnonymousDecl in class ASTNode<ASTNode>Copyright © 2020 Soot OSS. All rights reserved.