Constructor and Description 

Graph() 
Graph(ToLongFunction<V> hashFn,
BiPredicate<V,V> equalsFn) 
Modifier and Type  Method and Description 

Graph<V,E> 
add(V vertex) 
Graph<V,E> 
clone() 
E 
edge(V from,
V to) 
Iterable<IEdge<V,E>> 
edges() 
boolean 
equals(Object obj) 
Graph<V,E> 
forked()
This returns a data structure which is forked, which is equivalent to Clojure's persistent
data structures, also sometimes called functional or immutable.

int 
hashCode() 
Set<V> 
in(V vertex)
In an undirected graph, this is equivalent to
IGraph.out(Object) . 
boolean 
isDirected() 
boolean 
isLinear() 
Graph<V,E> 
linear()
This returns a data structure which is linear, or temporarily mutable.

Graph<V,E> 
link(V from,
V to,
E edge,
BinaryOperator<E> merge) 
<U> Graph<V,U> 
mapEdges(Function<IEdge<V,E>,U> f) 
Graph<V,E> 
merge(IGraph<V,E> graph,
BinaryOperator<E> merge) 
Set<V> 
out(V vertex)
In an undirected graph, this is equivalent to
IGraph.in(Object) . 
Graph<V,E> 
remove(V vertex) 
Graph<V,E> 
select(ISet<V> vertices) 
String 
toString() 
Graph<V,E> 
transpose() 
Graph<V,E> 
unlink(V from,
V to) 
BiPredicate<V,V> 
vertexEquality() 
ToLongFunction<V> 
vertexHash() 
Set<V> 
vertices() 
finalize, getClass, notify, notifyAll, wait, wait, wait
add, indexOf, iterator, link, link, merge, nth, remove, replace, replace, size, split
iterator, nth, save
forEach, spliterator
public Graph()
public Graph(ToLongFunction<V> hashFn, BiPredicate<V,V> equalsFn)
public Set<V> in(V vertex)
IGraph
IGraph.out(Object)
.public Set<V> out(V vertex)
IGraph
IGraph.in(Object)
.public boolean isLinear()
public boolean isDirected()
isDirected
in interface IGraph<V,E>
public ToLongFunction<V> vertexHash()
vertexHash
in interface IGraph<V,E>
public BiPredicate<V,V> vertexEquality()
vertexEquality
in interface IGraph<V,E>
public Graph<V,E> forked()
ICollection
If only a single function or scope uses the data structure, it can be left as a linear data structure, which can have significant performance benefits.
If the data structure is already forked, it will simply return itself.
public Graph<V,E> linear()
ICollection
If ICollection.forked()
is called on a linear collection, all references to that linear collection
should be discarded.
If the data structure is already linear, it will simply return itself.