langchain_rust/memory/
dummy_memory.rs

1use std::sync::Arc;
2
3use tokio::sync::Mutex;
4
5use crate::schemas::{memory::BaseMemory, messages::Message};
6
7pub struct DummyMemory {}
8
9impl DummyMemory {
10    pub fn new() -> Self {
11        Self {}
12    }
13}
14
15impl Into<Arc<dyn BaseMemory>> for DummyMemory {
16    fn into(self) -> Arc<dyn BaseMemory> {
17        Arc::new(self)
18    }
19}
20
21impl Into<Arc<Mutex<dyn BaseMemory>>> for DummyMemory {
22    fn into(self) -> Arc<Mutex<dyn BaseMemory>> {
23        Arc::new(Mutex::new(self))
24    }
25}
26
27impl BaseMemory for DummyMemory {
28    fn messages(&self) -> Vec<Message> {
29        vec![]
30    }
31    fn add_message(&mut self, _message: Message) {}
32    fn clear(&mut self) {}
33}