Struct bitpacking::BitPacker4x
source · pub struct BitPacker4x;
Expand description
BitPacker4x
packs integers in groups of 4. This gives an opportunity
to leverage SSE3
instructions to encode and decode the stream.
One block must contain 128 integers
.
Trait Implementations§
source§impl BitPacker for BitPacker4x
impl BitPacker for BitPacker4x
source§fn compress(
&self,
decompressed: &[u32],
compressed: &mut [u8],
num_bits: u8
) -> usize
fn compress( &self, decompressed: &[u32], compressed: &mut [u8], num_bits: u8 ) -> usize
Compress a block of
u32
. Read moresource§fn compress_sorted(
&self,
initial: u32,
decompressed: &[u32],
compressed: &mut [u8],
num_bits: u8
) -> usize
fn compress_sorted( &self, initial: u32, decompressed: &[u32], compressed: &mut [u8], num_bits: u8 ) -> usize
Delta encode and compressed the
decompressed
array. Read moresource§fn compress_strictly_sorted(
&self,
initial: Option<u32>,
decompressed: &[u32],
compressed: &mut [u8],
num_bits: u8
) -> usize
fn compress_strictly_sorted( &self, initial: Option<u32>, decompressed: &[u32], compressed: &mut [u8], num_bits: u8 ) -> usize
Delta encode and compress the
decompressed
array. Read moresource§fn decompress_sorted(
&self,
initial: u32,
compressed: &[u8],
decompressed: &mut [u32],
num_bits: u8
) -> usize
fn decompress_sorted( &self, initial: u32, compressed: &[u8], decompressed: &mut [u32], num_bits: u8 ) -> usize
Decompress the
compress
array to the decompressed
array.
The compressed
array is assumed to have been delta-encoded and compressed. Read moresource§fn decompress_strictly_sorted(
&self,
initial: Option<u32>,
compressed: &[u8],
decompressed: &mut [u32],
num_bits: u8
) -> usize
fn decompress_strictly_sorted( &self, initial: Option<u32>, compressed: &[u8], decompressed: &mut [u32], num_bits: u8 ) -> usize
Decompress the
compress
array to the decompressed
array.
The compressed
array is assumed to have been strict-delta-encoded and compressed. Read moresource§fn num_bits(&self, decompressed: &[u32]) -> u8
fn num_bits(&self, decompressed: &[u32]) -> u8
Returns the minimum number of bits used to represent the largest integer in the
decompressed
block. Read moresource§fn num_bits_sorted(&self, initial: u32, decompressed: &[u32]) -> u8
fn num_bits_sorted(&self, initial: u32, decompressed: &[u32]) -> u8
Returns the minimum number of bits used to represent the largest
delta
in the deltas in the
decompressed
block. Read moresource§fn num_bits_strictly_sorted(
&self,
initial: Option<u32>,
decompressed: &[u32]
) -> u8
fn num_bits_strictly_sorted( &self, initial: Option<u32>, decompressed: &[u32] ) -> u8
Returns the minimum number of bits used to represent the largest
delta-1
in the deltas in the
decompressed
block. Read moresource§fn compressed_block_size(num_bits: u8) -> usize
fn compressed_block_size(num_bits: u8) -> usize
Returns the size of a compressed block.
source§impl Clone for BitPacker4x
impl Clone for BitPacker4x
source§fn clone(&self) -> BitPacker4x
fn clone(&self) -> BitPacker4x
Returns a copy 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 moreimpl Copy for BitPacker4x
Auto Trait Implementations§
impl RefUnwindSafe for BitPacker4x
impl Send for BitPacker4x
impl Sync for BitPacker4x
impl Unpin for BitPacker4x
impl UnwindSafe for BitPacker4x
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