Class CalledMethodsAnalysis
- java.lang.Object
-
- org.checkerframework.dataflow.analysis.AbstractAnalysis<V,S,T>
-
- org.checkerframework.dataflow.analysis.ForwardAnalysisImpl<V,S,T>
-
- org.checkerframework.framework.flow.CFAbstractAnalysis<AccumulationValue,AccumulationStore,AccumulationTransfer>
-
- org.checkerframework.common.accumulation.AccumulationAnalysis
-
- org.checkerframework.checker.calledmethods.CalledMethodsAnalysis
-
- All Implemented Interfaces:
Analysis<AccumulationValue,AccumulationStore,AccumulationTransfer>,ForwardAnalysis<AccumulationValue,AccumulationStore,AccumulationTransfer>
- Direct Known Subclasses:
ResourceLeakAnalysis
public class CalledMethodsAnalysis extends AccumulationAnalysis
The analysis for the Called Methods Checker. The analysis is specialized to ignore certain exception types; seeisIgnoredExceptionType(TypeMirror).
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.checkerframework.framework.flow.CFAbstractAnalysis
CFAbstractAnalysis.FieldInitialValue<V extends CFAbstractValue<V>>
-
Nested classes/interfaces inherited from class org.checkerframework.dataflow.analysis.AbstractAnalysis
AbstractAnalysis.Worklist
-
Nested classes/interfaces inherited from interface org.checkerframework.dataflow.analysis.Analysis
Analysis.BeforeOrAfter, Analysis.Direction
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.util.Set<java.lang.String>ignoredExceptionTypesThe fully-qualified names of the exception types that are ignored by this checker when computing dataflow stores.-
Fields inherited from class org.checkerframework.framework.flow.CFAbstractAnalysis
atypeFactory, checker, dependentTypesHelper, env, fieldValues, qualHierarchy, typeHierarchy, types
-
Fields inherited from class org.checkerframework.dataflow.analysis.ForwardAnalysisImpl
blockCount, elseStores, maxCountBeforeWidening, storesAtReturnStatements, thenStores
-
Fields inherited from class org.checkerframework.dataflow.analysis.AbstractAnalysis
cfg, currentInput, currentNode, currentTree, direction, finalLocalValues, inputs, isRunning, nodeValues, transferFunction, worklist
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedCalledMethodsAnalysis(BaseTypeChecker checker, CalledMethodsAnnotatedTypeFactory factory)Creates a newCalledMethodsAnalysis.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanisIgnoredExceptionType(javax.lang.model.type.TypeMirror exceptionType)Ignore exceptional control flow due to ignored exception types.-
Methods inherited from class org.checkerframework.common.accumulation.AccumulationAnalysis
createAbstractValue, createCopiedStore, createEmptyStore
-
Methods inherited from class org.checkerframework.framework.flow.CFAbstractAnalysis
createAbstractValue, createSingleAnnotationValue, createTransferFunction, defaultCreateAbstractValue, getEnv, getFieldInitialValues, getTypeFactory, getTypeHierarchy, getTypes, performAnalysis
-
Methods inherited from class org.checkerframework.dataflow.analysis.ForwardAnalysisImpl
addStoreBefore, callTransferFunction, getInput, getInputBefore, getReturnStatementStores, getStoreBefore, initFields, initInitialInputs, performAnalysis, performAnalysisBlock, propagateStoresTo, runAnalysisFor
-
Methods inherited from class org.checkerframework.dataflow.analysis.AbstractAnalysis
addToWorklist, getContainingClass, getContainingMethod, getCurrentTree, getDirection, getExceptionalExitStore, getNodesForTree, getNodeValues, getRegularExitStore, getResult, getTransferFunction, getValue, getValue, init, isRunning, readFromStore, setCurrentNode, setCurrentTree, updateNodeValues
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.checkerframework.dataflow.analysis.Analysis
getDirection, getExceptionalExitStore, getRegularExitStore, getResult, getTransferFunction, getValue, getValue, isRunning
-
-
-
-
Constructor Detail
-
CalledMethodsAnalysis
protected CalledMethodsAnalysis(BaseTypeChecker checker, CalledMethodsAnnotatedTypeFactory factory)
Creates a newCalledMethodsAnalysis.- Parameters:
checker- the checkerfactory- the factory
-
-
Method Detail
-
isIgnoredExceptionType
protected boolean isIgnoredExceptionType(javax.lang.model.type.TypeMirror exceptionType)
Ignore exceptional control flow due to ignored exception types.- Overrides:
isIgnoredExceptionTypein classAbstractAnalysis<AccumulationValue,AccumulationStore,AccumulationTransfer>- Parameters:
exceptionType- exception type- Returns:
trueifexceptionTypeis a member ofignoredExceptionTypes,falseotherwise
-
-