From 6a10fcaf64938da52b326ea80013d9f30ed62a6c Mon Sep 17 00:00:00 2001 From: Owen Jacobson Date: Sat, 5 Oct 2024 22:42:43 -0400 Subject: Separate `/api/boot` into its own module. --- src/message/history.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/message/history.rs') diff --git a/src/message/history.rs b/src/message/history.rs index c44d954..f267f4c 100644 --- a/src/message/history.rs +++ b/src/message/history.rs @@ -2,7 +2,7 @@ use super::{ event::{Deleted, Event, Sent}, Id, Message, }; -use crate::event::Instant; +use crate::event::{Instant, ResumePoint, Sequence}; #[derive(Clone, Debug, Eq, PartialEq)] pub struct History { @@ -24,6 +24,12 @@ impl History { pub fn as_sent(&self) -> Message { self.message.clone() } + + pub fn as_of(&self, resume_point: impl Into) -> Option { + self.events() + .filter(Sequence::up_to(resume_point.into())) + .collect() + } } // Events interface -- cgit v1.2.3