Module bool

Module bool 

Source
Expand description

Definition and implementation of BoolVector and BoolVectorMut.

§Examples

§Extending and appending

use vortex_vector::bool::BoolVectorMut;
use vortex_vector::VectorMutOps;

let mut vec1 = BoolVectorMut::from_iter([true, false].map(Some));
let vec2 = BoolVectorMut::from_iter([true, true].map(Some)).freeze();

// Extend from another vector.
vec1.extend_from_vector(&vec2);
assert_eq!(vec1.len(), 4);

// Append null values.
vec1.append_nulls(2);
assert_eq!(vec1.len(), 6);

§Splitting and unsplitting

use vortex_vector::bool::BoolVectorMut;
use vortex_vector::VectorMutOps;

let mut vec = BoolVectorMut::from_iter([true, false, true, false, true].map(Some));

// Split the vector at index 3.
let mut second_half = vec.split_off(3);
assert_eq!(vec.len(), 3);
assert_eq!(second_half.len(), 2);

// Rejoin the vectors.
vec.unsplit(second_half);
assert_eq!(vec.len(), 5);

§Converting to immutable

use vortex_vector::bool::BoolVectorMut;
use vortex_vector::{VectorMutOps, VectorOps};

let mut vec = BoolVectorMut::from_iter([true, false, true].map(Some));

// Freeze into an immutable vector.
let immutable = vec.freeze();
assert_eq!(immutable.len(), 3);

Structs§

BoolScalar
A scalar value for boolean types.
BoolVector
An immutable vector of boolean values.
BoolVectorMut
A mutable vector of boolean values.