public class TryStmt extends Stmt implements Cloneable, FinallyHost
localNum_computed, localNum_valuechildren, generatedWithCacheCycle, generatedWithCircularEnabled, generatedWithComponentCheck, in$Circle, is$Final, numChildren, parent, PRIMITIVE_PACKAGE_NAME, state| Constructor and Description |
|---|
TryStmt() |
TryStmt(Block p0,
List<CatchClause> p1,
Opt<Block> p2) |
addsIndentationLevel, continueLabel, declaresVariable, Define_String_typeDeclIndent, enclosingBodyDecl, hostType, isDAbefore, localNum, lookupMethod, lookupType, lookupType, lookupVariable, reachable, reportUnreachableaccessControl, addAttributes, addChild, asImmediate, asLocal, asLocal, asRValue, beginExceptionRange, checkDUeverywhere, checkEnum, checkUncheckedConversion, checkWarnings, clearLocations, cloneSubtree, collectEnclosingVariables, collectErrors, collectExceptions, collectTypesToHierarchy, collectTypesToSignatures, compilationUnit, Define_Annotation_lookupAnnotation, Define_ASTNode_enclosingBlock, Define_BodyDecl_enclosingBodyDecl, 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_isDest, 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_resourcePreviouslyDeclared, 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_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_NameType_nameType, 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_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, exceptionHandling, 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, lineNumber, location, nameCheck, newLabel, options, putSimpleSetElement, removeChild, removeInstanceMethods, removeInstanceVariables, replace, setChild, setEnd, setLocation, setParent, setStart, sourceFile, start, state, toString, transformation, transformEnumConstructors, typeCheck, unassignedEverywhere, usesTypeVariable, varChildIndex, varChildIndex, warning, warningPrefix, withgetColumn, getEnd, getId, getLine, getStart, makePositionequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitforEach, spliteratorprotected boolean branches_computed
protected Collection branches_value
protected boolean branchesFromFinally_computed
protected Collection branchesFromFinally_value
protected boolean targetBranches_computed
protected Collection targetBranches_value
protected boolean escapedBranches_computed
protected Collection escapedBranches_value
protected Map isDAafter_Variable_values
protected Map isDUbefore_Variable_values
protected Map isDUafter_Variable_values
protected Map catchableException_TypeDecl_values
protected boolean canCompleteNormally_computed
protected boolean canCompleteNormally_value
protected boolean label_begin_computed
protected Stmt label_begin_value
protected boolean label_block_end_computed
protected Stmt label_block_end_value
protected boolean label_end_computed
protected Stmt label_end_value
protected boolean label_finally_computed
protected Stmt label_finally_value
protected boolean label_finally_block_computed
protected Stmt label_finally_block_value
protected boolean label_exception_handler_computed
protected Stmt label_exception_handler_value
protected boolean label_catch_end_computed
protected Stmt label_catch_end_value
protected boolean exceptionRanges_computed
protected ArrayList exceptionRanges_value
protected Map handlesException_TypeDecl_values
protected boolean typeError_computed
protected TypeDecl typeError_value
protected boolean typeRuntimeException_computed
protected TypeDecl typeRuntimeException_value
public TryStmt()
public TryStmt(Block p0, List<CatchClause> p1, Opt<Block> p2)
public void flushCache()
flushCache in class Stmtpublic void flushCollectionCache()
flushCollectionCache in class Stmtpublic TryStmt clone() throws CloneNotSupportedException
clone in class StmtCloneNotSupportedExceptionpublic TryStmt fullCopy()
public void collectBranches(Collection c)
collectBranches in class ASTNode<ASTNode>public Stmt branchTarget(Stmt branchStmt)
branchTarget in class ASTNode<ASTNode>public void collectFinally(Stmt branchStmt, ArrayList list)
collectFinally in class ASTNode<ASTNode>protected boolean reachedException(TypeDecl type)
reachedException in class ASTNode<ASTNode>public void toString(StringBuffer s)
public void emitFinallyCode(Body b)
emitFinallyCode in interface FinallyHostprotected void addFallThroughLabelTag(Body b, Stmt handler, Stmt fallThrough)
public void emitExceptionHandler(Body b)
public void init$Children()
init$Children in class Stmtprotected int numChildren()
numChildren in class Stmtpublic boolean mayHaveRewrite()
mayHaveRewrite in class Stmtpublic void setBlock(Block node)
node - The new node to replace the Block child.public Block getBlock()
public Block getBlockNoTransform()
This method does not invoke AST transformations.
public void setCatchClauseList(List<CatchClause> list)
list - The new list node to be used as the CatchClause list.public int getNumCatchClause()
public int getNumCatchClauseNoTransform()
public CatchClause getCatchClause(int i)
i in the CatchClause list..i - Index of the element to return.i in the CatchClause list.public void addCatchClause(CatchClause node)
node - The element to append to the CatchClause list.public void addCatchClauseNoTransform(CatchClause node)
public void setCatchClause(CatchClause 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<CatchClause> getCatchClauses()
public List<CatchClause> getCatchClausesNoTransform()
This method does not invoke AST transformations.
public List<CatchClause> getCatchClauseList()
public List<CatchClause> getCatchClauseListNoTransform()
This method does not invoke AST transformations.
public void setFinallyOpt(Opt<Block> opt)
Opt node containing the child Finally, not the actual child!opt - The new node to be used as the optional node for the Finally child.public boolean hasFinally()
true if the optional Finally child exists, false if it does not.public Block getFinally()
null otherwise.public void setFinally(Block node)
node - The new node to be used as the Finally child.public Opt<Block> getFinallyOptNoTransform()
Opt node containing the child Finally, not the actual child!
This method does not invoke AST transformations.
public Collection branches()
public Collection branchesFromFinally()
public Collection targetBranches()
public Collection escapedBranches()
public boolean isDUafterFinally(Variable v)
isDUafterFinally in interface FinallyHostpublic boolean isDAafterFinally(Variable v)
isDAafterFinally in interface FinallyHostpublic boolean isDUbefore(Variable v)
isDUbefore in class Stmtpublic boolean catchableException(TypeDecl type)
public boolean canCompleteNormally()
canCompleteNormally in class Stmtpublic Stmt break_label()
break_label in class Stmtpublic Stmt continue_label()
continue_label in class Stmtpublic Stmt label_begin()
public Stmt label_block_end()
public Stmt label_end()
public Stmt label_finally()
public Stmt label_finally_block()
label_finally_block in interface FinallyHostpublic Stmt label_exception_handler()
public Stmt label_catch_end()
public boolean needsFinallyTrap()
public ArrayList exceptionRanges()
public boolean modifiedInScope(Variable var)
modifiedInScope in class Stmtpublic boolean handlesException(TypeDecl exceptionType)
public TypeDecl typeError()
public TypeDecl typeRuntimeException()
public boolean enclosedByExceptionHandler()
public TypeDecl typeThrowable()
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_handlesException(ASTNode caller, ASTNode child, TypeDecl exceptionType)
Define_boolean_handlesException in class ASTNode<ASTNode>public boolean Define_boolean_reachable(ASTNode caller, ASTNode child)
Define_boolean_reachable in class ASTNode<ASTNode>public boolean Define_boolean_reachableCatchClause(ASTNode caller, ASTNode child, TypeDecl exceptionType)
Define_boolean_reachableCatchClause in class ASTNode<ASTNode>public boolean Define_boolean_reportUnreachable(ASTNode caller, ASTNode child)
Define_boolean_reportUnreachable in class ASTNode<ASTNode>public boolean Define_boolean_enclosedByExceptionHandler(ASTNode caller, ASTNode child)
Define_boolean_enclosedByExceptionHandler in class ASTNode<ASTNode>public ArrayList Define_ArrayList_exceptionRanges(ASTNode caller, ASTNode child)
Define_ArrayList_exceptionRanges in class ASTNode<ASTNode>public Collection<TypeDecl> Define_Collection_TypeDecl__caughtExceptions(ASTNode caller, ASTNode child)
Define_Collection_TypeDecl__caughtExceptions in class ASTNode<ASTNode>Copyright © 2020 Soot OSS. All rights reserved.