Struct tantivy::store::StoreReader
source · [−]pub struct StoreReader { /* private fields */ }
Expand description
Reads document off tantivy’s Store
Implementations
sourceimpl StoreReader
impl StoreReader
sourcepub fn open(store_file: FileSlice) -> Result<StoreReader>
pub fn open(store_file: FileSlice) -> Result<StoreReader>
Opens a store reader
sourcepub fn get(&self, doc_id: DocId) -> Result<Document>
pub fn get(&self, doc_id: DocId) -> Result<Document>
Reads a given document.
Calling .get(doc)
is relatively costly as it requires
decompressing a compressed block. The store utilizes a LRU cache,
so accessing docs from the same compressed block should be faster.
For that reason a store reader should be kept and reused.
It should not be called to score documents for instance.
sourcepub fn get_document_bytes(&self, doc_id: DocId) -> Result<OwnedBytes>
pub fn get_document_bytes(&self, doc_id: DocId) -> Result<OwnedBytes>
Reads raw bytes of a given document. Returns RawDocument
, which contains the block of a
document and its start and end position within the block.
Calling .get(doc)
is relatively costly as it requires
decompressing a compressed block. The store utilizes a LRU cache,
so accessing docs from the same compressed block should be faster.
For that reason a store reader should be kept and reused.
sourcepub fn iter<'a: 'b, 'b>(
&'b self,
alive_bitset: Option<&'a AliveBitSet>
) -> impl Iterator<Item = Result<Document>> + 'b
pub fn iter<'a: 'b, 'b>(
&'b self,
alive_bitset: Option<&'a AliveBitSet>
) -> impl Iterator<Item = Result<Document>> + 'b
Iterator over all Documents in their order as they are stored in the doc store.
Use this, if you want to extract all Documents from the doc store.
The alive_bitset has to be forwarded from the SegmentReader
or the results maybe wrong.
sourcepub fn space_usage(&self) -> StoreSpaceUsage
pub fn space_usage(&self) -> StoreSpaceUsage
Summarize total space usage of this store reader.
Auto Trait Implementations
impl !RefUnwindSafe for StoreReader
impl Send for StoreReader
impl Sync for StoreReader
impl Unpin for StoreReader
impl !UnwindSafe for StoreReader
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
sourcefn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
. Read more
sourcefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
sourcefn 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. Read more
sourcefn 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. Read more