pub struct SqliteSketchStore { /* private fields */ }Implementations§
Source§impl SqliteSketchStore
impl SqliteSketchStore
pub fn new(pool: SqlitePool) -> Self
Trait Implementations§
Source§impl Clone for SqliteSketchStore
impl Clone for SqliteSketchStore
Source§impl SketchStore for SqliteSketchStore
impl SketchStore for SqliteSketchStore
Source§fn put_sketch<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
iri: &'life1 str,
signature: &'life2 Signature,
bands: &'life3 [u64],
) -> Pin<Box<dyn Future<Output = Result<(), DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn put_sketch<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
iri: &'life1 str,
signature: &'life2 Signature,
bands: &'life3 [u64],
) -> Pin<Box<dyn Future<Output = Result<(), DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Persist
iri’s signature and its band buckets, replacing any prior
sketch and bands for that IRI so a re-index leaves no stale postings.Source§fn sketch_of<'life0, 'life1, 'async_trait>(
&'life0 self,
iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Signature>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn sketch_of<'life0, 'life1, 'async_trait>(
&'life0 self,
iri: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<Signature>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
The stored signature for
iri, or None when it is unsketched.Source§fn candidates_by_bands<'life0, 'life1, 'async_trait>(
&'life0 self,
bands: &'life1 [u64],
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn candidates_by_bands<'life0, 'life1, 'async_trait>(
&'life0 self,
bands: &'life1 [u64],
) -> Pin<Box<dyn Future<Output = Result<Vec<String>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
The distinct sequence IRIs sharing at least one of
bands, the LSH
candidate set for a query with those band hashes. Order is unspecified.Source§fn all_sketches<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<(String, Signature)>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn all_sketches<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<(String, Signature)>, DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Every stored
(sequence_iri, signature) pair, for a full rebuild. Order
is unspecified.Source§fn replace_all_sketches<'life0, 'async_trait>(
&'life0 self,
entries: Vec<(String, Signature, Vec<u64>)>,
) -> Pin<Box<dyn Future<Output = Result<(), DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn replace_all_sketches<'life0, 'async_trait>(
&'life0 self,
entries: Vec<(String, Signature, Vec<u64>)>,
) -> Pin<Box<dyn Future<Output = Result<(), DomainError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Replace every stored sketch and band posting with
entries in one
transaction: after it returns the index reflects exactly these
(sequence_iri, signature, band_hashes) and nothing prior. The
search-index rebuild swaps the whole index in through this, the sketch
counterpart of ClusterStore::replace_clusters and
PageRankStore::replace_all_ranks, so a rebuild never leaves a stale
posting behind.Auto Trait Implementations§
impl !RefUnwindSafe for SqliteSketchStore
impl !UnwindSafe for SqliteSketchStore
impl Freeze for SqliteSketchStore
impl Send for SqliteSketchStore
impl Sync for SqliteSketchStore
impl Unpin for SqliteSketchStore
impl UnsafeUnpin for SqliteSketchStore
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more