Modifier and Type | Interface and Description |
---|---|
interface |
Analysis<N,E,G extends Graph<N,E,?>,A extends Assumption<A>>
A simple, non-transforming flow analysis.
|
class |
AnalysisSolver<N,E,T,G extends Graph<N,E,T>,A extends Assumption<A>>
A solver to solve all kinds of analyses defined in the package.
|
interface |
Assumption<Self extends Assumption<?>>
Assumptions are members of the lattice used in the analysis.
|
interface |
AssumptionMap<E,A extends Assumption<A>> |
interface |
FlowFunction<N,E,G extends Graph<N,E,?>,A extends Assumption<A>>
A flow function receives node assumptions and transforms them according to
node semantics.
|
interface |
IntegratedAnalysis<N,E,T,G extends Graph<N,E,T>,A extends Assumption<A>>
Integrated analysis combines analysis with transformation as described in
Lerner et al.
|
interface |
IntegratedFlowFunction<N,E,T,G extends Graph<N,E,T>,A extends Assumption<A>>
Integrated flow function should either interpret the node, or produce
node transformation based on already computed assumptions.
|
class |
SubgraphAssumptions<A extends Assumption<?>>
Set of all assumptions for all edges coming from/to a subgraph.
|
interface |
TransformationFunction<N,E,T,G extends Graph<N,E,T>,A extends Assumption<A>>
Transformation function defines an optional transformation of a graph node
based on node assumptions.
|
Modifier and Type | Class and Description |
---|---|
static class |
CombinedIntegratedAnalysis.CombinedAssumption
Combined assumption which holds vector of original assumptions.
|
Modifier and Type | Method and Description |
---|---|
static <A extends Assumption<A>> |
AssumptionUtil.equals(A a1,
A a2)
Check assumptions for equality.
|
static <A extends Assumption<A>> |
AssumptionUtil.join(A a1,
A a2)
Join assumptions.
|
static <A extends Assumption<A>> |
AssumptionUtil.join(List<A> assumptions)
Join assumptions from the list.
|
static <E,A extends Assumption<A>> |
AssumptionUtil.join(List<E> edges,
AssumptionMap<E,A> assumptionMap) |
<A extends Assumption<A>> |
Graph.printWithAssumptions(Map<EdgeType,A> assumptions)
Returns string representation of the graph with all assumptions along its
edges.
|
static <A extends Assumption<?>> |
SubgraphAssumptions.replaceInValues(SubgraphAssumptions<A> assumptions,
A inValue) |
static <A extends Assumption<?>> |
SubgraphAssumptions.replaceInValues(SubgraphAssumptions<A> assumptions,
ArrayList<A> inValues) |
static <A extends Assumption<?>> |
SubgraphAssumptions.replaceOutValues(SubgraphAssumptions<A> assumptions,
A outValue) |
static <A extends Assumption<?>> |
SubgraphAssumptions.replaceOutValues(SubgraphAssumptions<A> assumptions,
ArrayList<A> outValues) |
static <E,A extends Assumption<A>> |
AssumptionUtil.setAssumptions(List<E> edges,
A assumption,
AssumptionMap<E,A> assumptionMap) |
static <E,A extends Assumption<A>> |
AssumptionUtil.setAssumptions(List<E> edges,
List<A> assumptions,
AssumptionMap<E,A> assumptionMap) |
static <N,E,T,G extends Graph<N,E,T>,A extends Assumption<A>> |
AnalysisSolver.solve(G g,
Analysis<N,E,G,A> analysis,
boolean forward)
Solve a non-integrated analysis.
|
static <N,E,T,G extends Graph<N,E,T>,A extends Assumption<A>> |
AnalysisSolver.solveIntegrated(G g,
IntegratedAnalysis<N,E,T,G,A> analysis,
boolean forward)
Solve a integrated analysis.
|
static <E,A extends Assumption<A>> |
AssumptionUtil.toString(List<E> inEdges,
List<E> outEdges,
AssumptionMap<E,A> assumptionMap) |
Constructor and Description |
---|
CombinedAssumption(List<Assumption<?>> assumptions) |
Modifier and Type | Class and Description |
---|---|
class |
AssumptionsPrinter<A extends Assumption<A>>
Special CfgPrinter implementation which prints assumptions along every edge.
|
Modifier and Type | Method and Description |
---|---|
static <A extends Assumption<?>> |
CfgUtil.createGraphBottomAssumptions(Cfg graph) |
<A extends Assumption<A>> |
Cfg.printWithAssumptions(Map<CfgEdge,A> map)
Returns string representation of the graph with all assumptions along its
edges.
|
Modifier and Type | Class and Description |
---|---|
class |
ConstantsAssumption
Assumptions for ConstantsAnalysis.
|
Modifier and Type | Class and Description |
---|---|
class |
CopyAssumption
Assumption class for CopyAnalysis.
|
Modifier and Type | Class and Description |
---|---|
class |
LivenessAssumption
Assumption for LivenessAnalysis.
|
Modifier and Type | Class and Description |
---|---|
class |
UnreachableAssumptions |
Copyright © 2018. All rights reserved.