Expand description
Sealed traits and implementations to handle all physical types used in this crate.
Most physical types used in this crate are native Rust types, such as i32
.
The trait NativeType
describes the interfaces required by this crate to be conformant
with Arrow.
Every implementation of NativeType
has an associated variant in PrimitiveType
,
available via NativeType::PRIMITIVE
.
Combined, these allow structs generic over NativeType
to be trait objects downcastable
to concrete implementations based on the matched NativeType::PRIMITIVE
variant.
Another important trait in this module is Offset
, the subset of NativeType
that can
be used in Arrow offsets (i32
and i64
).
Another important trait in this module is BitChunk
, describing types that can be used to
represent chunks of bits (e.g. 8 bits via u8
, 16 via u16
), and BitChunkIter
,
that can be used to iterate over bitmaps in BitChunk
s according to
Arrow’s definition of bitmaps.
Finally, this module contains traits used to compile code based on NativeType
optimized
for SIMD, at simd
.
Modules
Structs
Iterator<Item=usize>
] over a BitChunk
returning the index of each bit set in the chunk
See https://lemire.me/blog/2018/03/08/iterating-over-set-bits-quickly-simd-edition/ for detailsEnums
NativeType
.Traits
1
bit. In portable_simd
notation, this corresponds to m1xY
.NativeType
(i32
, i64
, u32
and u64
)
that can be used to index a slot of an array.