pub struct BitPackedInts { /* private fields */ }Expand description
Bit-packed integer array.
Stores integers using a fixed number of bits per value, determined by the maximum value in the array.
Implementations§
Source§impl BitPackedInts
impl BitPackedInts
Sourcepub fn pack_with_bits(values: &[u64], bits_per_value: u8) -> Self
pub fn pack_with_bits(values: &[u64], bits_per_value: u8) -> Self
Packs values using a specified bit width.
§Panics
Panics if any value doesn’t fit in the specified bit width.
Sourcepub fn bits_per_value(&self) -> u8
pub fn bits_per_value(&self) -> u8
Returns the number of bits per value.
Sourcepub fn compression_ratio(&self) -> f64
pub fn compression_ratio(&self) -> f64
Returns the compression ratio compared to storing full u64s.
Sourcepub fn bits_needed(value: u64) -> u8
pub fn bits_needed(value: u64) -> u8
Returns the number of bits needed to represent a value.
Sourcepub fn from_bytes(bytes: &[u8]) -> Result<Self>
pub fn from_bytes(bytes: &[u8]) -> Result<Self>
Deserializes from bytes.
Trait Implementations§
Source§impl Clone for BitPackedInts
impl Clone for BitPackedInts
Source§fn clone(&self) -> BitPackedInts
fn clone(&self) -> BitPackedInts
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for BitPackedInts
impl RefUnwindSafe for BitPackedInts
impl Send for BitPackedInts
impl Sync for BitPackedInts
impl Unpin for BitPackedInts
impl UnwindSafe for BitPackedInts
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