Package it.unimi.dsi.webgraph
Class LazyIntIterators
java.lang.Object
it.unimi.dsi.webgraph.LazyIntIterators
A class providing static methods and objects that do useful
things with lazy integer iterators.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic it.unimi.dsi.fastutil.ints.IntIteratoreager(LazyIntIterator lazyIntIterator) Returns an eagerIntIteratorenumerating the same elements of a given lazy integer iterator.static LazyIntIteratorlazy(it.unimi.dsi.fastutil.ints.IntIterator eagerIntIterator) Returns aLazyIntIteratorenumerating the same elements of a given eager integer iterator.static int[]unwrap(LazyIntIterator lazyIntIterator) Unwraps the elements returned by a lazy iterator into a new array.static intunwrap(LazyIntIterator lazyIntIterator, int[] array) Unwraps the elements returned by a lazy iterator into an array.static intunwrap(LazyIntIterator lazyIntIterator, int[] array, int offset, int length) Unwraps the elements returned by a lazy iterator into an array fragment.static int[]unwrapLoosely(LazyIntIterator lazyIntIterator) Unwraps the elements returned by a lazy iterator into a new array that can contain additional entries set to zero.static LazyIntIteratorwrap(int[] array) Returns a lazy integer iterator enumerating the elements of an array.static LazyIntIteratorwrap(int[] array, int length) Returns a lazy integer iterator enumerating the given number of elements of an array.
-
Field Details
-
EMPTY_ITERATOR
An empty lazy iterator.
-
-
Constructor Details
-
LazyIntIterators
protected LazyIntIterators()
-
-
Method Details
-
unwrap
Unwraps the elements returned by a lazy iterator into an array.- Parameters:
lazyIntIterator- a lazy integer iterator.array- an array.- Returns:
- the number of elements unwrapped into
arraystarting from index 0.
-
unwrap
Unwraps the elements returned by a lazy iterator into an array fragment.- Parameters:
lazyIntIterator- a lazy integer iterator.array- an array.offset- the index of the first element otarrayto be used.length- the maximum number of elements to be unwrapped.- Returns:
- the number of elements unwrapped into
arraystarting from indexoffset.
-
unwrap
Unwraps the elements returned by a lazy iterator into a new array.If you need the resulting array to contain the elements returned by
lazyIntIterator, but some more elements set to zero would cause no harm, consider usingunwrapLoosely(LazyIntIterator), which usually avoids a final call toIntArrays.trim(int[], int).- Parameters:
lazyIntIterator- a lazy integer iterator.- Returns:
- an array containing the elements returned by
lazyIntIterator. - See Also:
-
unwrapLoosely
Unwraps the elements returned by a lazy iterator into a new array that can contain additional entries set to zero.If you need the resulting array to contain exactly the elements returned by
lazyIntIterator, consider usingunwrap(LazyIntIterator), but this method avoids a final call toIntArrays.trim(int[], int).- Parameters:
lazyIntIterator- a lazy integer iterator.- Returns:
- an array containing the elements returned by
lazyIntIterator; note that in general it might contains some final zeroes beyond the elements returned bylazyIntIterator, so the number of elements actually written intoarraymust be known externally. - See Also:
-
wrap
Returns a lazy integer iterator enumerating the given number of elements of an array.- Parameters:
array- an array.length- the number of elements to enumerate.- Returns:
- a lazy integer iterator enumerating the first
lengthelements ofarray.
-
wrap
Returns a lazy integer iterator enumerating the elements of an array.- Parameters:
array- an array.- Returns:
- a lazy integer iterator enumerating the elements of
array.
-
eager
Returns an eagerIntIteratorenumerating the same elements of a given lazy integer iterator.- Parameters:
lazyIntIterator- a lazy integer iterator.- Returns:
- an eager
IntIteratorenumerating the same elements oflazyIntIterator.
-
lazy
Returns aLazyIntIteratorenumerating the same elements of a given eager integer iterator.- Parameters:
eagerIntIterator- an eager integer iterator.- Returns:
- a lazy integer iterator enumerating the same elements of
eagerIntIterator.
-