Skip to main content

tiny_loop/history/
infinite.rs

1use super::History;
2use crate::types::Message;
3
4/// Infinite history - never cleans history
5pub struct InfiniteHistory {
6    messages: Vec<Message>,
7}
8
9impl InfiniteHistory {
10    pub fn new() -> Self {
11        Self {
12            messages: Vec::new(),
13        }
14    }
15}
16
17impl Default for InfiniteHistory {
18    fn default() -> Self {
19        Self::new()
20    }
21}
22
23impl History for InfiniteHistory {
24    fn add(&mut self, message: Message) {
25        self.messages.push(message);
26    }
27
28    fn get_all(&self) -> &[Message] {
29        &self.messages
30    }
31}