Packages

final class RoaringBitmapArray extends Equals

A 64-bit extension of RoaringBitmap that is optimized for cases that usually fit within a 32-bit bitmap, but may run over by a few bits on occasion.

This focus makes it different from org.roaringbitmap.longlong.Roaring64NavigableMap and org.roaringbitmap.longlong.Roaring64Bitmap which focus on sparse bitmaps over the whole 64-bit range.

Structurally, this implementation simply uses the most-significant 4 bytes to index into an array of 32-bit RoaringBitmap instances. The array is grown as necessary to accommodate the largest value in the bitmap.

*Note:* As opposed to the other two 64-bit bitmap implementations mentioned above, this implementation cannot accommodate Long values where the most significant bit is non-zero (i.e., negative Long values). It cannot even accommodate values where the 4 high-order bytes are Int.MaxValue, because then the length of the bitmaps array would be a negative number (Int.MaxValue + 1).

Linear Supertypes
Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RoaringBitmapArray
  2. Equals
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RoaringBitmapArray()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def add(value: Long): Unit

    Add the value to the container (set the value to true), whether it already appears or not.

  5. def addAll(values: Long*): Unit

    Add all values to the container.

    Add all values to the container. For testing purposes only.

    Attributes
    protected[delta]
  6. def addRange(range: NumericRange[Long]): Unit

    Add all values in range to the container.

    Add all values in range to the container.

    Attributes
    protected[delta]
  7. def addRange(range: Range): Unit

    Add all values in range to the container.

    Add all values in range to the container.

    Attributes
    protected[delta]
  8. def and(that: RoaringBitmapArray): Unit

    In-place bitwise AND (this & that) operation.

    In-place bitwise AND (this & that) operation.

    The current bitmap is modified.

  9. def andNot(that: RoaringBitmapArray): Unit

    In-place bitwise AND-NOT (this & ~that) operation.

    In-place bitwise AND-NOT (this & ~that) operation.

    The current bitmap is modified.

  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def canEqual(that: Any): Boolean
    Definition Classes
    RoaringBitmapArray → Equals
  12. def cardinality: Long

    Returns the number of distinct integers added to the bitmap (e.g., number of bits set).

  13. def clear(): Unit

    Remove all values from the bitmap.

  14. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  15. def contains(value: Long): Boolean

    Checks whether the value is included, which is equivalent to checking if the corresponding bit is set.

  16. def copy(): RoaringBitmapArray

    Copy this along with underlying bitmaps to a new instance.

  17. def deserialize(buffer: ByteBuffer): Unit

    Deserialize the contents of buffer into this RoaringBitmapArray.

    Deserialize the contents of buffer into this RoaringBitmapArray.

    All existing content will be discarded!

    See serialize for the expected serialization format.

  18. def diff(other: RoaringBitmapArray): Unit

    Get values in this but not that.

  19. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. def equals(other: Any): Boolean
    Definition Classes
    RoaringBitmapArray → Equals → AnyRef → Any
  21. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  22. def first: Option[Long]
  23. def forAllInRange(start: Long, length: Int, consumer: RelativeRangeConsumer): Unit

    Consume presence information for all values in the range [start, start + length).

    Consume presence information for all values in the range [start, start + length).

    start

    Lower bound of values to consume.

    length

    Maximum number of values to consume.

  24. def forEach(consume: (Long) ⇒ Unit): Unit

    Execute the consume function for every value in the set represented by this bitmap.

  25. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  26. def hashCode(): Int
    Definition Classes
    RoaringBitmapArray → AnyRef → Any
  27. def isEmpty: Boolean

    Tests whether the bitmap is empty.

  28. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  29. def last: Option[Long]
  30. def merge(other: RoaringBitmapArray): Unit

    Merges the other set into this one.

  31. def mkString(start: String = "", sep: String = "", end: String = ""): String
  32. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  33. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  34. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  35. def or(that: RoaringBitmapArray): Unit

    In-place bitwise OR (union) operation.

    In-place bitwise OR (union) operation.

    The current bitmap is modified.

  36. def remove(value: Long): Unit

    If present, remove the value (effectively, sets its bit value to false).

    If present, remove the value (effectively, sets its bit value to false).

    value

    The index in a bitmap.

    Attributes
    protected[deletionvectors]
  37. def removeRunCompression(): Boolean

    Remove run-length encoding even when it is more space efficient.

    Remove run-length encoding even when it is more space efficient.

    returns

    true if a change was applied

  38. def runOptimize(): Boolean

    Use a run-length encoding where it is more space efficient.

    Use a run-length encoding where it is more space efficient.

    returns

    true if a change was applied

  39. def serialize(buffer: ByteBuffer, format: RoaringBitmapArrayFormat.Value): Unit

    Serialize this RoaringBitmapArray into the buffer.

    Serialize this RoaringBitmapArray into the buffer.

    Format

    - A Magic Number indicating the format used (4 bytes) - The actual data as specified by the format.

  40. def serializeAsByteArray(format: RoaringBitmapArrayFormat.Value): Array[Byte]

    Serializes this RoaringBitmapArray and returns the serialized form as a byte array.

  41. def serializedSizeInBytes(format: RoaringBitmapArrayFormat.Value): Long

    Report the number of bytes required to serialize this bitmap.

    Report the number of bytes required to serialize this bitmap.

    This is the number of bytes written out when using the serialize method.

  42. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  43. def toArray: Array[Long]

    Return the set values as an array, if the cardinality is smaller than 2147483648.

    Return the set values as an array, if the cardinality is smaller than 2147483648.

    The integer values are in sorted order.

  44. def toBitmap32Bit(): RoaringBitmap
    Attributes
    protected[delta]
  45. def toString(): String
    Definition Classes
    AnyRef → Any
  46. def values: Array[Long]

    Materialise the whole set into an array

  47. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  48. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  49. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped