pub struct VerticalBP128PostingList {
pub blocks: Vec<VerticalBP128Block>,
pub doc_count: u32,
pub max_score: f32,
}Expand description
SIMD-BP128 posting list with vertical layout and BlockMax support
Fields§
§blocks: Vec<VerticalBP128Block>Blocks of postings
doc_count: u32Total document count
max_score: f32Maximum score across all blocks
Implementations§
Source§impl VerticalBP128PostingList
impl VerticalBP128PostingList
Sourcepub fn compute_bm25_upper_bound(max_tf: u32, idf: f32) -> f32
pub fn compute_bm25_upper_bound(max_tf: u32, idf: f32) -> f32
Compute BM25 upper bound score
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 postings
Sourcepub fn deserialize<R: Read>(reader: &mut R) -> Result<Self>
pub fn deserialize<R: Read>(reader: &mut R) -> Result<Self>
Deserialize
Sourcepub fn iterator(&self) -> VerticalBP128Iterator<'_>
pub fn iterator(&self) -> VerticalBP128Iterator<'_>
Create iterator
Sourcepub fn size_bytes(&self) -> usize
pub fn size_bytes(&self) -> usize
Get approximate size in bytes
Trait Implementations§
Source§impl Clone for VerticalBP128PostingList
impl Clone for VerticalBP128PostingList
Source§fn clone(&self) -> VerticalBP128PostingList
fn clone(&self) -> VerticalBP128PostingList
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 VerticalBP128PostingList
impl RefUnwindSafe for VerticalBP128PostingList
impl Send for VerticalBP128PostingList
impl Sync for VerticalBP128PostingList
impl Unpin for VerticalBP128PostingList
impl UnwindSafe for VerticalBP128PostingList
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