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 TypeMethodDescriptionvoidadd(long value)Adds the value and associates it with the current row index.build()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.voidclear()Call this to reuse the appender and its buffersvoidserialize(ByteBuffer buffer)Serializes the bitmap to the buffer without materialising it.intReturns 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
-
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 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.
-