enum SparseStrategy {
Gather,
MaskAllFieldsWithNullsSkipOne,
MaskSkipWithoutNulls,
MaskSkipFullyNull,
}
Expand description
How to compute the logical nulls of a sparse union. All strategies return the same result. Those starting with Mask perform bitwise masking for each chunk of 64 values, including computing expensive selection masks of fields: which fields masks must be computed is the difference between them
Variants§
Gather
Gather individual bits from the null buffer of the selected field
MaskAllFieldsWithNullsSkipOne
All fields contains nulls, so we can skip the selection mask computation of one field by negating the others
MaskSkipWithoutNulls
Skip the selection mask computation of the fields without nulls
MaskSkipFullyNull
Skip the selection mask computation of the fully nulls fields
Auto Trait Implementations§
impl Freeze for SparseStrategy
impl RefUnwindSafe for SparseStrategy
impl Send for SparseStrategy
impl Sync for SparseStrategy
impl Unpin for SparseStrategy
impl UnwindSafe for SparseStrategy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more