Package org.roaringbitmap
Class RangeBitmap.Appender
java.lang.Object
org.roaringbitmap.RangeBitmap.Appender
- Enclosing class:
RangeBitmap
Builder for constructing immutable RangeBitmaps
-
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(long value) Adds the value and associates it with the current row index.build()
see build(IntFunction)build
(ByteBuffer buffer) Converts the appender into an immutable range index, using the supplied ByteBuffer.build
(IntFunction<ByteBuffer> supplier) Converts the appender into an immutable range index.void
clear()
Call this to reuse the appender and its buffersvoid
serialize
(ByteBuffer buffer) Serializes the bitmap to the buffer without materialising it.int
Returns the size of the RangeBitmap on disk.
-
Method Details
-
build
Converts the appender into an immutable range index.- Parameters:
supplier
- provides an appropriate ByteBuffer to store into- Returns:
- a queriable RangeBitmap
-
build
see build(IntFunction) -
build
Converts the appender into an immutable range index, using the supplied ByteBuffer.- Parameters:
buffer
- a little endian buffer which must have sufficient capacity for the appended values.- Returns:
- a queriable RangeBitmap
-
clear
public void clear()Call this to reuse the appender and its buffers -
serializedSizeInBytes
public int serializedSizeInBytes()Returns the size of the RangeBitmap on disk.- Returns:
- the serialized size in bytes.
-
serialize
Serializes the bitmap to the buffer without materialising it. The user should call serializedSizeInBytes to size the buffer appropriately.It is not guaranteed that all values will be written
- Parameters:
buffer
- expected to be large enough to contain the bitmap.
-
add
public void add(long value) Adds the value and associates it with the current row index.- Parameters:
value
- the value, will be rejected if greater than max value.
-