Package org.roaringbitmap.buffer
Class BufferReverseIntIteratorFlyweight
- java.lang.Object
-
- org.roaringbitmap.buffer.BufferReverseIntIteratorFlyweight
-
- All Implemented Interfaces:
java.lang.Cloneable
,IntIterator
public class BufferReverseIntIteratorFlyweight extends java.lang.Object implements IntIterator
Fast iterator minimizing the stress on the garbage collector. You can create one reusable instance of this class and thenwrap(ImmutableRoaringBitmap)
This iterator enumerates the stored values in reverse (starting from the end).
-
-
Field Summary
Fields Modifier and Type Field Description private ReverseMappeableArrayContainerCharIterator
arrIter
private ReverseMappeableBitmapContainerCharIterator
bitmapIter
private int
hs
private CharIterator
iter
private short
pos
private ImmutableRoaringBitmap
roaringBitmap
private ReverseMappeableRunContainerCharIterator
runIter
-
Constructor Summary
Constructors Constructor Description BufferReverseIntIteratorFlyweight()
Creates an instance that is not ready for iteration.BufferReverseIntIteratorFlyweight(ImmutableRoaringBitmap r)
Creates an instance that is ready for iteration.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IntIterator
clone()
Creates a copy of the iterator.boolean
hasNext()
int
next()
private void
nextContainer()
void
wrap(ImmutableRoaringBitmap r)
Prepares a bitmap for iteration
-
-
-
Field Detail
-
hs
private int hs
-
iter
private CharIterator iter
-
arrIter
private ReverseMappeableArrayContainerCharIterator arrIter
-
bitmapIter
private ReverseMappeableBitmapContainerCharIterator bitmapIter
-
runIter
private ReverseMappeableRunContainerCharIterator runIter
-
pos
private short pos
-
roaringBitmap
private ImmutableRoaringBitmap roaringBitmap
-
-
Constructor Detail
-
BufferReverseIntIteratorFlyweight
public BufferReverseIntIteratorFlyweight()
Creates an instance that is not ready for iteration. You must first callwrap(ImmutableRoaringBitmap)
.
-
BufferReverseIntIteratorFlyweight
public BufferReverseIntIteratorFlyweight(ImmutableRoaringBitmap r)
Creates an instance that is ready for iteration.- Parameters:
r
- bitmap to be iterated over
-
-
Method Detail
-
clone
public IntIterator clone()
Description copied from interface:IntIterator
Creates a copy of the iterator.- Specified by:
clone
in interfaceIntIterator
- Overrides:
clone
in classjava.lang.Object
- Returns:
- a clone of the current iterator
-
hasNext
public boolean hasNext()
- Specified by:
hasNext
in interfaceIntIterator
- Returns:
- whether there is another value
-
next
public int next()
- Specified by:
next
in interfaceIntIterator
- Returns:
- next integer value
-
nextContainer
private void nextContainer()
-
wrap
public void wrap(ImmutableRoaringBitmap r)
Prepares a bitmap for iteration- Parameters:
r
- bitmap to be iterated over
-
-