mod serialization; #[cfg(test)] mod test; use lattices::map_union::MapUnionHashMap; use lattices::set_union::SetUnionHashSet; use lattices::{DomPair, Max, Point, WithBot}; pub use serialization::KvsRequestDeserializer; use crate::buffer_pool::AutoReturnBuffer; pub type NodeId = usize; pub type MyLastWriteWins = DomPair, WithBot, ()>>>; pub type MySetUnion = SetUnionHashSet<(NodeId, usize)>; #[derive(Clone, Debug)] pub enum KvsRequest { Put { key: u64, value: AutoReturnBuffer, }, Get { key: u64, }, Gossip { map: MapUnionHashMap>, }, Delete { key: u64, }, } #[derive(Clone, Debug)] pub enum KvsResponse { _PutResponse { key: u64, }, #[expect(dead_code, reason = "benchmark discards responses")] GetResponse { key: u64, reg: MyLastWriteWins, }, }