Package it.unimi.dsi.big.webgraph
Class ImmutableSequentialGraph
java.lang.Object
it.unimi.dsi.big.webgraph.ImmutableGraph
it.unimi.dsi.big.webgraph.ImmutableSequentialGraph
- All Implemented Interfaces:
FlyweightPrototype<ImmutableGraph>
- Direct Known Subclasses:
ArcListASCIIGraph
,ASCIIGraph
,IncrementalImmutableSequentialGraph
,IntegerListImmutableGraph
,ScatteredArcsASCIIGraph
,Transform.BatchGraph
public abstract class ImmutableSequentialGraph extends ImmutableGraph
An abstract immutable graph that throws an
UnsupportedOperationException
on all random-access methods.
The main purpose of this class is to be used as a base for the numerous anonymous classes that do not support random access.
-
Nested Class Summary
Nested classes/interfaces inherited from class it.unimi.dsi.big.webgraph.ImmutableGraph
ImmutableGraph.LoadMethod
-
Field Summary
Fields inherited from class it.unimi.dsi.big.webgraph.ImmutableGraph
GRAPHCLASS_PROPERTY_KEY, NUMBER_OF_THREADS_PROPERTY, PROPERTIES_EXTENSION
-
Constructor Summary
Constructors Constructor Description ImmutableSequentialGraph()
-
Method Summary
Modifier and Type Method Description ImmutableGraph
copy()
Throws anUnsupportedOperationException
.NodeIterator
nodeIterator(long from)
Returns a node iterator for scanning the graph sequentially, starting from the given node.long
outdegree(long x)
Throws anUnsupportedOperationException
.boolean
randomAccess()
Returns false.long[][]
successorBigArray(long x)
Throws anUnsupportedOperationException
.Methods inherited from class it.unimi.dsi.big.webgraph.ImmutableGraph
basename, equals, hasCopiableIterators, hashCode, intNumNodes, load, load, load, loadMapped, loadMapped, loadOffline, loadOffline, loadOnce, loadSequential, loadSequential, nodeIterator, numArcs, numNodes, outdegrees, splitNodeIterators, store, store, successors, toString, wrap, wrap
-
Constructor Details
-
ImmutableSequentialGraph
public ImmutableSequentialGraph()
-
-
Method Details
-
successorBigArray
public long[][] successorBigArray(long x)Throws anUnsupportedOperationException
.- Overrides:
successorBigArray
in classImmutableGraph
- Parameters:
x
- a node.- Returns:
- an array whose first elements are the successors of the node; the array must not be modified by the caller.
-
outdegree
public long outdegree(long x)Throws anUnsupportedOperationException
.- Specified by:
outdegree
in classImmutableGraph
- Parameters:
x
- a node.- Returns:
- the outdegree of the given node.
-
randomAccess
public boolean randomAccess()Returns false.- Specified by:
randomAccess
in classImmutableGraph
- Returns:
- false.
-
nodeIterator
Description copied from class:ImmutableGraph
Returns a node iterator for scanning the graph sequentially, starting from the given node.This implementation just calls the random-access methods (
ImmutableGraph.successors(long)
andImmutableGraph.outdegree(long)
). More specific implementations may choose to maintain some extra state to make the enumeration more efficient.- Overrides:
nodeIterator
in classImmutableGraph
- Parameters:
from
- the node from which the iterator will iterate.- Returns:
- a
NodeIterator
for accessing nodes and successors sequentially.
-
copy
Throws anUnsupportedOperationException
.- Specified by:
copy
in interfaceFlyweightPrototype<ImmutableGraph>
- Specified by:
copy
in classImmutableGraph
- Returns:
- a flyweight copy of this immutable graph.
- See Also:
FlyweightPrototype
-