Struct tantivy::positions::PositionReader
source · pub struct PositionReader { /* private fields */ }
Expand description
When accessing the positions of a term, we get a positions_idx from the Terminfo
.
This means we need to skip to the nth
position efficiently.
Blocks are compressed using bitpacking, so skip_read
contains the number of bits
(values can go from 0 to 32 bits) required to decompress every block.
A given block obviously takes (128 x num_bit_for_the_block / num_bits_in_a_byte)
,
so skipping a block without decompressing it is just a matter of advancing that many
bytes.
Implementations§
source§impl PositionReader
impl PositionReader
sourcepub fn open(positions_data: OwnedBytes) -> Result<PositionReader>
pub fn open(positions_data: OwnedBytes) -> Result<PositionReader>
Open and reads the term positions encoded into the positions_data owned bytes.
Trait Implementations§
source§impl Clone for PositionReader
impl Clone for PositionReader
source§fn clone(&self) -> PositionReader
fn clone(&self) -> PositionReader
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 moreAuto Trait Implementations§
impl Freeze for PositionReader
impl !RefUnwindSafe for PositionReader
impl Send for PositionReader
impl Sync for PositionReader
impl Unpin for PositionReader
impl !UnwindSafe for PositionReader
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> 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>
Convert
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>
Convert
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)
Convert
&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)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.