Package org.checkerframework.dataflow.analysis
-
Interface Summary Interface Description AbstractValue<V extends AbstractValue<V>> An abstract value used in the org.checkerframework.dataflow analysis.Analysis<V extends AbstractValue<V>,S extends Store<S>,T extends TransferFunction<V,S>> This interface defines a dataflow analysis, given a control flow graph and a transfer function.BackwardAnalysis<V extends AbstractValue<V>,S extends Store<S>,T extends BackwardTransferFunction<V,S>> This interface defines a backward analysis, given a control flow graph and a backward transfer function.BackwardTransferFunction<V extends AbstractValue<V>,S extends Store<S>> Interface of a backward transfer function for the abstract interpretation used for the backward flow analysis.ForwardAnalysis<V extends AbstractValue<V>,S extends Store<S>,T extends ForwardTransferFunction<V,S>> This interface defines a forward analysis, given a control flow graph and a forward transfer function.ForwardTransferFunction<V extends AbstractValue<V>,S extends Store<S>> Interface of a forward transfer function for the abstract interpretation used for the forward flow analysis.Store<S extends Store<S>> A store is used to keep track of the information that the org.checkerframework.dataflow analysis has accumulated at any given point in time.TransferFunction<V extends AbstractValue<V>,S extends Store<S>> Interface of a transfer function for the abstract interpretation used for the flow analysis. -
Class Summary Class Description AbstractAnalysis<V extends AbstractValue<V>,S extends Store<S>,T extends TransferFunction<V,S>> Implementation of common features forBackwardAnalysisImpl
andForwardAnalysisImpl
.AbstractAnalysis.Worklist A worklist is a priority queue of blocks in which the order is given by depth-first ordering to place non-loop predecessors ahead of successors.AnalysisResult<V extends AbstractValue<V>,S extends Store<S>> AnAnalysisResult
represents the result of a org.checkerframework.dataflow analysis by providing the abstract values given a node or a tree.BackwardAnalysisImpl<V extends AbstractValue<V>,S extends Store<S>,T extends BackwardTransferFunction<V,S>> An implementation of a backward analysis to solve a org.checkerframework.dataflow problem given a control flow graph and a backward transfer function.ConditionalTransferResult<V extends AbstractValue<V>,S extends Store<S>> Implementation of aTransferResult
with two non-exceptional stores.ForwardAnalysisImpl<V extends AbstractValue<V>,S extends Store<S>,T extends ForwardTransferFunction<V,S>> An implementation of a forward analysis to solve a org.checkerframework.dataflow problem given a control flow graph and a forward transfer function.RegularTransferResult<V extends AbstractValue<V>,S extends Store<S>> Implementation of aTransferResult
with just one non-exceptional store.TransferInput<V extends AbstractValue<V>,S extends Store<S>> TransferInput
is used as the input type of the individual transfer functions of aForwardTransferFunction
or aBackwardTransferFunction
.TransferResult<V extends AbstractValue<V>,S extends Store<S>> TransferResult
is used as the result type of the individual transfer functions of aTransferFunction
.UnusedAbstractValue UnusedAbstractValue is an AbstractValue that is not involved in any lub computation during dataflow analysis. -
Enum Summary Enum Description Analysis.BeforeOrAfter In calls toAnalysis#runAnalysisFor
, whether to return the store before or after the given node.Analysis.Direction The direction of an analysis instance.Store.FlowRule A flow rule describes how stores flow along one edge between basic blocks.Store.Kind