API reference
The roaring package, from roaring 0.1.3, as published on mojoshelf (commit a90a7bd30cf1), by mojo doc from Mojo 1.2.0.
Source.
roaring — pure-Mojo Roaring bitmaps (32-bit and 64-bit), with the RoaringFormatSpec portable serialization (including the 64-bit extension) and Apache Iceberg's deletion-vector v1 blob framing.
from roaring import Bitmap32, Bitmap64, encode_iceberg_dv, decode_iceberg_dv
No dependencies — the CRC-32 used by the Iceberg framing is implemented
locally in crc32.mojo.
Modules
-
roaring.bitmap32Bitmap32— a Roaring bitmap overUInt32values: a sorted set of 16-bit-keyedContainers, one per distinct high-16-bits key present. 1 struct -
roaring.bitmap64Bitmap64— a Roaring bitmap overUInt64values, per the "extension for 64-bit implementations": a sorted map from a 32-bit high key to a fullBitmap32over the low 32 bits. This is the shape Apache Iceberg uses for deletion vectors (row positions areUInt64). 1 struct -
roaring.containerA single Roaring container, keyed externally by a 16-bit high key and holding up to 65536 low-16-bit values in one of three representations. 1 struct -
roaring.crc32A plain, from-scratch CRC-32 (the IEEE 802.3 / zlib / gzip variant: poly 0xEDB88320 reflected, init 0xFFFFFFFF, final XOR 0xFFFFFFFF) — no dependencies, used to checksum Iceberg deletion-vector blobs. 1 function -
roaring.iceberg_dvApache Iceberg "deletion vector v1" blob framing (https://iceberg.apache.org/puffin-spec/#deletion-vector-v1-blob-type). 2 functions -
roaring.portableShared constants and little-endian byte helpers for the Roaring "portable" serialization format (RoaringFormatSpec) — used by both the 32-bit container layer and theBitmap32/Bitmap64assemblers. 6 functions