pub trait SnapshotLoader: Send + Sync {
type Key: Clone + Eq + Hash + Send + Sync;
type State: Clone + Send + Sync;
// Required methods
fn load_latest(
&self,
) -> Result<Option<(i64, SnapshotState<Self::Key, Self::State>)>, SnapshotError>;
fn load(
&self,
snapshot_id: i64,
) -> Result<SnapshotState<Self::Key, Self::State>, SnapshotError>;
}Expand description
Trait for loading snapshots.
Required Associated Types§
Required Methods§
Sourcefn load_latest(
&self,
) -> Result<Option<(i64, SnapshotState<Self::Key, Self::State>)>, SnapshotError>
fn load_latest( &self, ) -> Result<Option<(i64, SnapshotState<Self::Key, Self::State>)>, SnapshotError>
Load the latest snapshot, if any.
Sourcefn load(
&self,
snapshot_id: i64,
) -> Result<SnapshotState<Self::Key, Self::State>, SnapshotError>
fn load( &self, snapshot_id: i64, ) -> Result<SnapshotState<Self::Key, Self::State>, SnapshotError>
Load a specific snapshot by ID.