pub struct RoundedBP128PostingList {
pub blocks: Vec<RoundedBP128Block>,
pub doc_count: u32,
pub max_score: f32,
}Expand description
Rounded BP128 posting list with block-level skip info
Uses rounded bit widths (0, 8, 16, 32) for faster SIMD decoding at the cost of larger index size.
Fields§
§blocks: Vec<RoundedBP128Block>Blocks of postings
doc_count: u32Total document count
max_score: f32Maximum score across all blocks (for MaxScore pruning)
Implementations§
Source§impl RoundedBP128PostingList
impl RoundedBP128PostingList
Sourcepub fn from_postings(doc_ids: &[u32], term_freqs: &[u32], idf: f32) -> Self
pub fn from_postings(doc_ids: &[u32], term_freqs: &[u32], idf: f32) -> Self
Create from raw doc_ids and term frequencies
Sourcepub fn deserialize<R: Read>(reader: &mut R) -> Result<Self>
pub fn deserialize<R: Read>(reader: &mut R) -> Result<Self>
Deserialize a posting list
Sourcepub fn iterator(&self) -> RoundedBP128Iterator<'_>
pub fn iterator(&self) -> RoundedBP128Iterator<'_>
Create an iterator
Trait Implementations§
Source§impl Clone for RoundedBP128PostingList
impl Clone for RoundedBP128PostingList
Auto Trait Implementations§
impl Freeze for RoundedBP128PostingList
impl RefUnwindSafe for RoundedBP128PostingList
impl Send for RoundedBP128PostingList
impl Sync for RoundedBP128PostingList
impl Unpin for RoundedBP128PostingList
impl UnsafeUnpin for RoundedBP128PostingList
impl UnwindSafe for RoundedBP128PostingList
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DropFlavorWrapper<T> for T
impl<T> DropFlavorWrapper<T> for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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