Struct tantivy::postings::BlockSegmentPostings
source · pub struct BlockSegmentPostings { /* private fields */ }
Expand description
BlockSegmentPostings
is a cursor iterating over blocks
of documents.
§Warning
While it is useful for some very specific high-performance
use cases, you should prefer using SegmentPostings
for most usage.
Implementations§
source§impl BlockSegmentPostings
impl BlockSegmentPostings
sourcepub fn block_max_score(
&mut self,
fieldnorm_reader: &FieldNormReader,
bm25_weight: &Bm25Weight
) -> Score
pub fn block_max_score( &mut self, fieldnorm_reader: &FieldNormReader, bm25_weight: &Bm25Weight ) -> Score
Returns the block_max_score for the current block.
It does not require the block to be loaded. For instance, it is ok to call this method
after having called .shallow_advance(..)
.
See TermScorer::block_max_score(..)
for more information.
sourcepub fn doc_freq(&self) -> u32
pub fn doc_freq(&self) -> u32
Returns the overall number of documents in the block postings. It does not take in account whether documents are deleted or not.
This doc_freq
is simply the sum of the length of all of the blocks
length, and it does not take in account deleted documents.
sourcepub fn docs(&self) -> &[DocId]
pub fn docs(&self) -> &[DocId]
Returns the array of docs in the current block.
Before the first call to .advance()
, the block
returned by .docs()
is empty.
sourcepub fn block_len(&self) -> usize
pub fn block_len(&self) -> usize
Returns the length of the current block.
All blocks have a length of NUM_DOCS_PER_BLOCK
,
except the last block that may have a length
of any number between 1 and NUM_DOCS_PER_BLOCK - 1
sourcepub fn seek(&mut self, target_doc: DocId)
pub fn seek(&mut self, target_doc: DocId)
Position on a block that may contains target_doc
.
If all docs are smaller than target, the block loaded may be empty, or be the last an incomplete VInt block.
sourcepub fn empty() -> BlockSegmentPostings
pub fn empty() -> BlockSegmentPostings
Returns an empty segment postings object
Trait Implementations§
source§impl Clone for BlockSegmentPostings
impl Clone for BlockSegmentPostings
source§fn clone(&self) -> BlockSegmentPostings
fn clone(&self) -> BlockSegmentPostings
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for BlockSegmentPostings
impl !RefUnwindSafe for BlockSegmentPostings
impl Send for BlockSegmentPostings
impl Sync for BlockSegmentPostings
impl Unpin for BlockSegmentPostings
impl !UnwindSafe for BlockSegmentPostings
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
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.