Expand description
General utilities for bitmaps representing items where LSB is the first item.
Structs
This struct is used to efficiently iterate over bit masks by loading bytes on
the stack with alignments of uX
. This allows efficient iteration over bitmaps.
An iterator over a slice of bytes in BitChunk
s.
An iterator over bits according to the LSB,
i.e. the bytes [4u8, 128u8]
correspond to [false, false, true, false, ..., true]
.
Iterator over a bitmap that returns slices of set regions
This is the most efficient method to extract slices of values from arrays
with a validity bitmap.
For example, the bitmap 00101111
returns [(0,4), (6,1)]
An iterator adapter that converts an iterator over T
and a validity
into an iterator over Option<T>
based on the validity.
Traits
A chunk of bits. This is used to create masks of a given length
whose width is 1
bit. In simd_packed
notation, this corresponds to m1xY
.
Trait representing an exact iterator over bytes in BitChunk
.
Functions
Returns the number of bytes required to hold bits
bits.
Returns the number of zero bits in the slice offsetted by offset
and a length of length
.
Formats bytes
taking into account an offset and length of the form
Returns whether bit at position i
in data
is set or not
Returns whether bit at position i
in data
is set or not.
Returns whether bit at position i
in byte
is set or not
Sets bit at position i
in byte
Sets bit at position i
in data
Sets bit at position i
in data
without doing bound checks
Returns an iterator adapter that returns Option