Package edu.umd.cs.findbugs.ba
Class DepthFirstSearch
java.lang.Object
edu.umd.cs.findbugs.graph.AbstractDepthFirstSearch<GraphType,EdgeType,VertexType>
edu.umd.cs.findbugs.graph.DepthFirstSearch<CFG,Edge,BasicBlock>
edu.umd.cs.findbugs.ba.DepthFirstSearch
- All Implemented Interfaces:
DFSEdgeTypes
Algorithm to perform a depth first search on a CFG.
- Author:
- David Hovemeyer
- See Also:
-
Field Summary
Fields inherited from class edu.umd.cs.findbugs.graph.AbstractDepthFirstSearch
BLACK, DEBUG, GRAY, WHITE
Fields inherited from interface edu.umd.cs.findbugs.graph.DFSEdgeTypes
BACK_EDGE, CROSS_EDGE, FORWARD_EDGE, TREE_EDGE, UNKNOWN_EDGE
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class edu.umd.cs.findbugs.graph.DepthFirstSearch
getSource, getTarget, outgoingEdgeIterator
Methods inherited from class edu.umd.cs.findbugs.graph.AbstractDepthFirstSearch
containsCycle, getColor, getDFSEdgeType, getDiscoveryTime, getFinishTime, getFinishTimeList, search, setSearchTreeCallback, setVertexChooser, topologicalSortIterator, unvisitedVertices, visitMe
-
Constructor Details
-
DepthFirstSearch
Constructor.- Parameters:
cfg
- the CFG to perform the depth first search on
-
-
Method Details
-
getNextSearchTreeRoot
Description copied from class:AbstractDepthFirstSearch
Choose the next search tree root. By default, this method just scans for a WHITE vertex. Subclasses may override this method in order to choose which vertices are used as search tree roots.- Overrides:
getNextSearchTreeRoot
in classAbstractDepthFirstSearch<CFG,
Edge, BasicBlock> - Returns:
- the next search tree root
-