Package com.ibm.wala.util.graph.traverse
Class DFSDiscoverTimeIterator<T>
java.lang.Object
java.util.AbstractCollection<T>
java.util.AbstractList<T>
java.util.ArrayList<T>
com.ibm.wala.util.graph.traverse.DFSDiscoverTimeIterator<T>
- All Implemented Interfaces:
Serializable,Cloneable,Iterable<T>,Collection<T>,Iterator<T>,List<T>,RandomAccess,SequencedCollection<T>
- Direct Known Subclasses:
NumberedDFSDiscoverTimeIterator,SlowDFSDiscoverTimeIterator
This class implements depth-first search over a
NumberedGraph, return an enumeration of the nodes of the graph in order of
increasing discover time. 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
Fields inherited from class java.util.AbstractList
modCount -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetConnected(T n) get the out edges of a given nodebooleanhasNext()Return whether there are any more nodes left to enumerate.protected voidsubclass constructors must call this!protected voidsubclass constructors must call this!next()Find the next graph node in discover time order.voidremove()protected abstract voidsetPendingChildren(T v, Iterator<? extends T> iterator) protected voidMethods 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, trimToSizeMethods inherited from class java.util.AbstractCollection
containsAll, toStringMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
parallelStream, stream, toArrayMethods inherited from interface java.util.Iterator
forEachRemainingMethods inherited from interface java.util.List
containsAll, reversed
-
Constructor Details
-
DFSDiscoverTimeIterator
public DFSDiscoverTimeIterator()
-
-
Method Details
-
init
subclass constructors must call this! -
init
subclass constructors must call this! -
hasNext
public boolean hasNext()Return whether there are any more nodes left to enumerate. -
getPendingChildren
-
setPendingChildren
-
next
Find the next graph node in discover time order.- Specified by:
nextin interfaceIterator<T>- Returns:
- the next graph node in discover time order.
- Throws:
NoSuchElementException
-
getConnected
get the out edges of a given node- Parameters:
n- the node of which to get the out edges- Returns:
- the out edges
-
remove
- Specified by:
removein interfaceIterator<T>- Throws:
UnimplementedError
-
visitEdge
- Parameters:
from- source of the edge to visitto- target of the edge to visit
-