mergable/sequence.rs
1pub trait SequenceFactory {
2 type Sequence: Clone + std::hash::Hash + Ord;
3 type Delta: std::ops::Add<Output=Self::Delta> + Clone;
4
5 fn base() -> Self::Sequence;
6 fn acquire(&mut self, last: Self::Sequence) -> Self::Sequence;
7
8 fn rewind(&self, current: Self::Sequence, amount: &Self::Delta) -> Self::Sequence;
9}