Skip to main content

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}