See: Description
Interface | Description |
---|---|
IBinaryReturnFlowFunction |
A binary flow function corresponding to a return statements combining information from the call site and the exit site.
|
IFlowFunction |
A flow function corresponding to an edge in the supergraph.
|
IFlowFunctionMap<T> |
A map from an edge in a supergraph to a flow function
|
IMergeFunction |
Special case: if supportsMerge(), then the problem is not really IFDS anymore.
|
IPartiallyBalancedFlowFunctions<T> |
Flow functions for a
PartiallyBalancedTabulationProblem |
IReversibleFlowFunction |
A flow function corresponding to an edge in the supergraph.
|
ISupergraph<T,P> |
A supergraph as defined by Reps, Horwitz, and Sagiv POPL95
|
ITabulationWorklist<T> | |
IUnaryFlowFunction |
A flow function corresponding to an edge in the supergraph.
|
PartiallyBalancedTabulationProblem<T,P,F> |
A
TabulationProblem with additional support for computing with partially balanced parentheses. |
TabulationDomain<F,T> |
Domain of facts for tabulation.
|
TabulationProblem<T,P,F> |
Representation of a Dyck-language graph reachability problem for the tabulation solver.
|
TabulationResult<T,P,F> |
The solution of a tabulation problem: a mapping from supergraph node -> bit vector representing the dataflow facts that hold at
the entry to the supergraph node.
|
Class | Description |
---|---|
BackwardsSupergraph<T,P> |
A "reversed" supergraph for backwards analysis.
|
BoundedPartiallyBalancedSolver<T,P,F> |
A
TabulationSolver that gives up after a finite bound. |
BoundedTabulationSolver<T,P,F> |
A
TabulationSolver that gives up after a finite bound. |
CallFlowEdges |
A set of call flow edges which lead to a particular procedure entry s_p.
|
ICFGSupergraph |
Forward supergraph induced over an
ExplodedInterproceduralCFG
This should lazily build the supergraph as it is explored. |
IdentityFlowFunction |
A flow function where out == in
|
IdentityFlowFunctions<T> |
A silly debugging aid that always returns the identity flow function
|
KillEverything |
A flow function that kills everything (even 0)
|
LocalPathEdges |
A set of path edges for a particular procedure entry s_p.
|
LocalSummaryEdges |
A set of summary edges for a particular procedure.
|
PartiallyBalancedTabulationSolver<T,P,F> |
Utilities for dealing with tabulation with partially balanced parentheses.
|
PathEdge<T> |
an individual edge
|
SingletonFlowFunction |
A flow function which has only the edge 0 -> dest
|
TabulationSolver<T,P,F> |
A precise interprocedural tabulation solver.
|
UnorderedDomain<T,U> |
A
TabulationDomain with no build-in partial order defining priority. |
VectorGenFlowFunction |
A function which gens a vector of outgoing dataflow facts.
|
VectorKillFlowFunction |
A function which kills a vector of incoming dataflow facts
|
Exception | Description |
---|---|
TabulationCancelException |
A
CancelException thrown during tabulation; holds a pointer to a partial TabulationSolver.Result . |