Class DFSPathFinder<T>
java.lang.Object
java.util.AbstractCollection<T>
java.util.AbstractList<T>
java.util.ArrayList<T>
com.ibm.wala.util.graph.traverse.DFSPathFinder<T>
- All Implemented Interfaces:
Serializable
,Cloneable
,Iterable<T>
,Collection<T>
,List<T>
,RandomAccess
,SequencedCollection<T>
- Direct Known Subclasses:
DFSAllPathsFinder
This class searches depth-first search for node that matches some criteria. If found, it reports
a path to the first node found.
This class follows the outNodes of the graph nodes to define the graph, but this behavior can be changed by overriding the getConnected method.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionThe graph to searchAn iterator of child nodes for each node being searchedstatic final long
Fields inherited from class java.util.AbstractList
modCount
-
Constructor Summary
ConstructorDescriptionConstruct a depth-first enumerator across the (possibly improper) subset of nodes reachable from the nodes in the given enumeration.Construct a depth-first enumerator starting with a particular node in a directed graph. -
Method Summary
Modifier and TypeMethodDescriptionfind()
getConnected
(T n) get the out edges of a given nodeMethod getPendingChildren.boolean
hasNext()
Return whether there are any more nodes left to enumerate.protected void
setPendingChildren
(T v, Iterator<? extends T> iterator) Method setPendingChildren.Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, addFirst, addLast, clear, clone, contains, ensureCapacity, equals, forEach, get, getFirst, getLast, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeFirst, removeIf, removeLast, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSize
Methods inherited from class java.util.AbstractCollection
containsAll, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, stream, toArray
Methods inherited from interface java.util.List
containsAll, reversed
-
Field Details
-
serialVersionUID
public static final long serialVersionUID- See Also:
-
G
-
pendingChildren
-
-
Constructor Details
-
DFSPathFinder
Construct a depth-first enumerator starting with a particular node in a directed graph.- Parameters:
G
- the graph whose nodes to enumerate- Throws:
IllegalArgumentException
- if G is null
-
DFSPathFinder
-
-
Method Details
-
find
-
currentPath
-
hasNext
public boolean hasNext()Return whether there are any more nodes left to enumerate.- Returns:
- true if there nodes left to enumerate.
-
getPendingChildren
-
setPendingChildren
-
getConnected
-