Package boomerang.results
Class ForwardBoomerangResults<W extends wpds.impl.Weight>
- java.lang.Object
-
- boomerang.results.AbstractBoomerangResults<W>
-
- boomerang.results.ForwardBoomerangResults<W>
-
public class ForwardBoomerangResults<W extends wpds.impl.Weight> extends AbstractBoomerangResults<W>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class boomerang.results.AbstractBoomerangResults
AbstractBoomerangResults.Context
-
-
Field Summary
-
Fields inherited from class boomerang.results.AbstractBoomerangResults
LOGGER, queryToSolvers
-
-
Constructor Summary
Constructors Constructor Description ForwardBoomerangResults(ForwardQuery query, ObservableICFG<Statement,Method> icfg, ObservableControlFlowGraph cfg, boolean timedout, DefaultValueMap<ForwardQuery,ForwardBoomerangSolver<W>> queryToSolvers, IBoomerangStats<W> stats, com.google.common.base.Stopwatch analysisWatch, Set<Method> visitedMethods, boolean trackDataFlowPath, boolean pruneContradictoryDataFlowPath, boolean pruneImplictFlows)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.google.common.collect.Table<ControlFlowGraph.Edge,Val,W>asEdgeValWeightTable()com.google.common.collect.Table<Statement,Val,W>asStatementValWeightTable()booleancontainsCallRecursion()booleancontainsFieldLoop()com.google.common.base.StopwatchgetAnalysisWatch()AbstractBoomerangResults.ContextgetContext(sync.pds.solver.nodes.Node<ControlFlowGraph.Edge,Val> node)Map<ControlFlowGraph.Edge,DeclaredMethod>getInvokedMethodOnInstance()Collection<Statement>getInvokeStatementsOnInstance()Get all statements that contain an invoke expression belonging to the original seed.longgetMaxMemory()com.google.common.collect.Table<ControlFlowGraph.Edge,Val,W>getObjectDestructingStatements()QueryResultsgetPotentialNullPointerDereferences()IBoomerangStats<W>getStats()Set<Method>getVisitedMethods()booleanisTimedout()-
Methods inherited from class boomerang.results.AbstractBoomerangResults
asEdgeValWeightTable, asStatementValWeightTable, computeUnmatchedClosingContext, computeUnmatchedOpeningContext, constructContextGraph
-
-
-
-
Constructor Detail
-
ForwardBoomerangResults
public ForwardBoomerangResults(ForwardQuery query, ObservableICFG<Statement,Method> icfg, ObservableControlFlowGraph cfg, boolean timedout, DefaultValueMap<ForwardQuery,ForwardBoomerangSolver<W>> queryToSolvers, IBoomerangStats<W> stats, com.google.common.base.Stopwatch analysisWatch, Set<Method> visitedMethods, boolean trackDataFlowPath, boolean pruneContradictoryDataFlowPath, boolean pruneImplictFlows)
-
-
Method Detail
-
getAnalysisWatch
public com.google.common.base.Stopwatch getAnalysisWatch()
-
isTimedout
public boolean isTimedout()
-
getObjectDestructingStatements
public com.google.common.collect.Table<ControlFlowGraph.Edge,Val,W> getObjectDestructingStatements()
-
asEdgeValWeightTable
public com.google.common.collect.Table<ControlFlowGraph.Edge,Val,W> asEdgeValWeightTable()
-
asStatementValWeightTable
public com.google.common.collect.Table<Statement,Val,W> asStatementValWeightTable()
-
getStats
public IBoomerangStats<W> getStats()
-
getInvokedMethodOnInstance
public Map<ControlFlowGraph.Edge,DeclaredMethod> getInvokedMethodOnInstance()
-
getInvokeStatementsOnInstance
public Collection<Statement> getInvokeStatementsOnInstance()
Get all statements that contain an invoke expression belonging to the original seed.- Returns:
- the statements that contain invoke expressions belonging to the original seed.
-
getPotentialNullPointerDereferences
public QueryResults getPotentialNullPointerDereferences()
-
getContext
public AbstractBoomerangResults.Context getContext(sync.pds.solver.nodes.Node<ControlFlowGraph.Edge,Val> node)
-
containsCallRecursion
public boolean containsCallRecursion()
-
containsFieldLoop
public boolean containsFieldLoop()
-
getMaxMemory
public long getMaxMemory()
-
-