tiny_loop/history.rs
1mod infinite;
2
3use crate::types::Message;
4
5pub use infinite::*;
6
7/// Manages conversation history
8pub trait History {
9 /// Add a message to history
10 fn add(&mut self, message: Message);
11
12 /// Add multiple messages to history
13 fn add_batch(&mut self, messages: Vec<Message>) {
14 for msg in messages {
15 self.add(msg);
16 }
17 }
18
19 /// Get all messages in history
20 fn get_all(&self) -> &[Message];
21}