BaseMemory

Trait BaseMemory 

Source
pub trait BaseMemory: Send + Sync {
    // Required methods
    fn memory_variables(&self) -> Vec<String>;
    fn load_memory_variables<'a>(
        &'a self,
        inputs: &'a HashMap<String, Value>,
    ) -> Pin<Box<dyn Future<Output = Result<HashMap<String, Value>, Error>> + Send + 'a>>;
    fn save_context<'a>(
        &'a self,
        inputs: &'a HashMap<String, Value>,
        outputs: &'a HashMap<String, Value>,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'a>>;
    fn clear<'a>(
        &'a self,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'a>>;
    fn clone_box(&self) -> Box<dyn BaseMemory>;
    fn get_session_id(&self) -> Option<&str>;
    fn set_session_id(&mut self, session_id: String);
    fn get_token_count(&self) -> Result<usize, Error>;
    fn as_any(&self) -> &dyn Any;
}

Required Methods§

Source

fn memory_variables(&self) -> Vec<String>

Source

fn load_memory_variables<'a>( &'a self, inputs: &'a HashMap<String, Value>, ) -> Pin<Box<dyn Future<Output = Result<HashMap<String, Value>, Error>> + Send + 'a>>

Source

fn save_context<'a>( &'a self, inputs: &'a HashMap<String, Value>, outputs: &'a HashMap<String, Value>, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'a>>

Source

fn clear<'a>( &'a self, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'a>>

Source

fn clone_box(&self) -> Box<dyn BaseMemory>

Source

fn get_session_id(&self) -> Option<&str>

Source

fn set_session_id(&mut self, session_id: String)

Source

fn get_token_count(&self) -> Result<usize, Error>

Source

fn as_any(&self) -> &dyn Any

Trait Implementations§

Source§

impl Clone for Box<dyn BaseMemory>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Implementors§