public class LockAnalysis extends org.checkerframework.framework.flow.CFAbstractAnalysis<org.checkerframework.framework.flow.CFValue,LockStore,LockTransfer>
This class extends CFAbstractAnalysis
so that LockStore
is used rather than
CFStore
.
Constructor and Description |
---|
LockAnalysis(org.checkerframework.common.basetype.BaseTypeChecker checker,
LockAnnotatedTypeFactory factory,
List<org.checkerframework.javacutil.Pair<VariableElement,org.checkerframework.framework.flow.CFValue>> fieldValues) |
Modifier and Type | Method and Description |
---|---|
org.checkerframework.framework.flow.CFValue |
createAbstractValue(Set<AnnotationMirror> annotations,
TypeMirror underlyingType) |
LockStore |
createCopiedStore(LockStore s) |
LockStore |
createEmptyStore(boolean sequentialSemantics) |
LockTransfer |
createTransferFunction() |
createAbstractValue, createSingleAnnotationValue, defaultCreateAbstractValue, getFieldValues, getTypeFactory, getTypeHierarchy, performAnalysis, visualizeCFG
addStoreBefore, addToWorklist, callTransferFunction, getContainingClass, getContainingMethod, getCurrentTree, getEnv, getExceptionalExitStore, getInput, getInputBefore, getNodesForTree, getNodeValues, getRegularExitStore, getResult, getReturnStatementStores, getStoreBefore, getTransferFunction, getTypes, getValue, getValue, init, isRunning, performAnalysis, performAnalysisBlock, propagateStoresTo, readFromStore, setCurrentTree, updateNodeValues
public LockAnalysis(org.checkerframework.common.basetype.BaseTypeChecker checker, LockAnnotatedTypeFactory factory, List<org.checkerframework.javacutil.Pair<VariableElement,org.checkerframework.framework.flow.CFValue>> fieldValues)
public LockTransfer createTransferFunction()
createTransferFunction
in class org.checkerframework.framework.flow.CFAbstractAnalysis<org.checkerframework.framework.flow.CFValue,LockStore,LockTransfer>
public LockStore createEmptyStore(boolean sequentialSemantics)
createEmptyStore
in class org.checkerframework.framework.flow.CFAbstractAnalysis<org.checkerframework.framework.flow.CFValue,LockStore,LockTransfer>
public LockStore createCopiedStore(LockStore s)
createCopiedStore
in class org.checkerframework.framework.flow.CFAbstractAnalysis<org.checkerframework.framework.flow.CFValue,LockStore,LockTransfer>
public org.checkerframework.framework.flow.CFValue createAbstractValue(Set<AnnotationMirror> annotations, TypeMirror underlyingType)
createAbstractValue
in class org.checkerframework.framework.flow.CFAbstractAnalysis<org.checkerframework.framework.flow.CFValue,LockStore,LockTransfer>