Skip to main content

Store

Trait Store 

Source
pub trait Store {
    // Required methods
    fn index(
        &mut self,
        project_id: &str,
        content: &str,
        meta: &SessionMeta,
    ) -> Result<String, Error>;
    fn search(
        &mut self,
        project_id: &str,
        query: &str,
        limit: usize,
    ) -> Result<Vec<SearchResult>, Error>;
    fn delete_by_session(
        &mut self,
        project_id: &str,
        session_id: &str,
    ) -> Result<usize, Error>;
    fn cleanup_stale(
        &mut self,
        project_id: &str,
        max_age_secs: i64,
    ) -> Result<usize, Error>;
}

Required Methods§

Source

fn index( &mut self, project_id: &str, content: &str, meta: &SessionMeta, ) -> Result<String, Error>

Source

fn search( &mut self, project_id: &str, query: &str, limit: usize, ) -> Result<Vec<SearchResult>, Error>

Source

fn delete_by_session( &mut self, project_id: &str, session_id: &str, ) -> Result<usize, Error>

Source

fn cleanup_stale( &mut self, project_id: &str, max_age_secs: i64, ) -> Result<usize, Error>

Implementors§