pub struct PartitionedEliasFano { /* private fields */ }Expand description
Partitioned Elias-Fano encoded sequence
Implementations§
Source§impl PartitionedEliasFano
impl PartitionedEliasFano
Sourcepub fn from_sorted_slice(values: &[u32]) -> Self
pub fn from_sorted_slice(values: &[u32]) -> Self
Create from sorted slice with optimal partitioning
Sourcepub fn num_partitions(&self) -> usize
pub fn num_partitions(&self) -> usize
Number of partitions
Sourcepub fn next_geq(&self, target: u32) -> Option<(u32, u32)>
pub fn next_geq(&self, target: u32) -> Option<(u32, u32)>
Find first element >= target Returns (global_position, value) or None
Sourcepub fn deserialize<R: Read>(reader: &mut R) -> Result<Self>
pub fn deserialize<R: Read>(reader: &mut R) -> Result<Self>
Deserialize
Sourcepub fn size_bytes(&self) -> usize
pub fn size_bytes(&self) -> usize
Total size in bytes
Trait Implementations§
Source§impl Clone for PartitionedEliasFano
impl Clone for PartitionedEliasFano
Source§fn clone(&self) -> PartitionedEliasFano
fn clone(&self) -> PartitionedEliasFano
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 PartitionedEliasFano
impl RefUnwindSafe for PartitionedEliasFano
impl Send for PartitionedEliasFano
impl Sync for PartitionedEliasFano
impl Unpin for PartitionedEliasFano
impl UnwindSafe for PartitionedEliasFano
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more