pub trait Memory:
Send
+ Sync
+ Debug {
// Required methods
fn push_turn(&mut self, turn: MemoryTurn);
fn messages(&self) -> Vec<MessageNum>;
fn clear(&mut self);
fn len(&self) -> usize;
// Provided methods
fn is_empty(&self) -> bool { ... }
fn as_any_mut(&mut self) -> Option<&mut dyn Any> { ... }
}Expand description
Trait for agent conversation memory.
Required Methods§
fn push_turn(&mut self, turn: MemoryTurn)
Sourcefn messages(&self) -> Vec<MessageNum>
fn messages(&self) -> Vec<MessageNum>
Returns messages in chronological order (oldest first).
fn clear(&mut self)
fn len(&self) -> usize
Provided Methods§
fn is_empty(&self) -> bool
Sourcefn as_any_mut(&mut self) -> Option<&mut dyn Any>
fn as_any_mut(&mut self) -> Option<&mut dyn Any>
Enables downcasting to concrete types (e.g., PersistentMemory).
Override in concrete types to support downcast_mut.