Struct tantivy::query::BitSetDocSet
[−]
[src]
pub struct BitSetDocSet { /* fields omitted */ }
A BitSetDocSet
makes it possible to iterate through a bitset as if it was a DocSet
.
Implementation detail
Skipping is relatively fast here as we can directly point to the right tiny bitset bucket.
TODO: Consider implementing a BitTreeSet
in order to advance faster
when the bitset is sparse
Trait Implementations
impl DocSet for BitSetDocSet
[src]
fn advance(&mut self) -> bool
[src]
Goes to the next element. .advance(...)
needs to be called a first time to point to the correct element. Read more
fn skip_next(&mut self, target: DocId) -> SkipResult
[src]
After skipping, position the iterator in such a way that .doc()
will return a value greater than or equal to target. Read more
fn doc(&self) -> DocId
[src]
Returns the current document
fn next(&mut self) -> Option<DocId>
[src]
Advances the cursor to the next document
None is returned if the iterator has DocSet
has already been entirely consumed.
fn size_hint(&self) -> u32
[src]
Returns half of the max_doc
This is quite a terrible heuristic,
but we don't have access to any better
value.
fn fill_buffer(&mut self, buffer: &mut [DocId]) -> usize
[src]
Fills a given mutable buffer with the next doc ids from the DocSet
Read more
fn append_to_bitset(&mut self, bitset: &mut BitSet)
[src]
Appends all docs to a bitset
.