pub trait Resetable {
type Checkpoint: Clone;
// Required methods
fn checkpoint(&self) -> Self::Checkpoint;
fn reset(&mut self, checkpoint: Self::Checkpoint);
}
pub trait Resetable {
type Checkpoint: Clone;
// Required methods
fn checkpoint(&self) -> Self::Checkpoint;
fn reset(&mut self, checkpoint: Self::Checkpoint);
}