pub trait CanvasPersistenceByteStore {
type Error: Debug + Display;
// Required methods
fn load_checkpoint_bytes(&self) -> Result<Option<Vec<u8>>, Self::Error>;
fn save_checkpoint_bytes(
&mut self,
bytes: Vec<u8>,
) -> Result<(), Self::Error>;
fn append_log_entry_bytes(
&mut self,
sequence: u64,
bytes: Vec<u8>,
) -> Result<(), Self::Error>;
fn load_log_entry_bytes(
&self,
after_sequence: u64,
) -> Result<Vec<CanvasEncodedLogEntry>, Self::Error>;
fn compact_log_entry_bytes(
&mut self,
through_sequence: u64,
) -> Result<(), Self::Error>;
}Required Associated Types§
Required Methods§
fn load_checkpoint_bytes(&self) -> Result<Option<Vec<u8>>, Self::Error>
fn save_checkpoint_bytes(&mut self, bytes: Vec<u8>) -> Result<(), Self::Error>
fn append_log_entry_bytes( &mut self, sequence: u64, bytes: Vec<u8>, ) -> Result<(), Self::Error>
fn load_log_entry_bytes( &self, after_sequence: u64, ) -> Result<Vec<CanvasEncodedLogEntry>, Self::Error>
fn compact_log_entry_bytes( &mut self, through_sequence: u64, ) -> Result<(), Self::Error>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".