elipdotter::index

Trait Provider

source
pub trait Provider<'a> {
    type DocumentIter: Iterator<Item = Id> + ExactSizeIterator + 'a;
    type WordIter: Iterator<Item = &'a Arc<Alphanumeral<StrPtr>>> + 'a;
    type WordFilteredIter: Iterator<Item = &'a Arc<Alphanumeral<StrPtr>>> + 'a;

    // Required methods
    fn insert_word(&mut self, word: impl AsRef<str>, document: Id, index: usize);
    fn remove_document(&mut self, document: Id);
    fn contains_word(&self, word: impl AsRef<str>, document: Id) -> bool;
    fn documents_with_word(
        &'a self,
        word: impl AsRef<str>,
    ) ->