Class RangeBitmap.Appender

java.lang.Object
org.roaringbitmap.RangeBitmap.Appender
Enclosing class:
RangeBitmap

public static final class RangeBitmap.Appender extends Object
Builder for constructing immutable RangeBitmaps
  • Method Details

    • build

      public RangeBitmap build(IntFunction<ByteBuffer> supplier)
      Converts the appender into an immutable range index.
      Parameters:
      supplier - provides an appropriate ByteBuffer to store into
      Returns:
      a queriable RangeBitmap
    • build

      public RangeBitmap build()
      see build(IntFunction)
    • build

      public RangeBitmap build(ByteBuffer buffer)
      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

      public void serialize(ByteBuffer buffer)
      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.