pub trait SaveRestoreSimpleVmbusClientDevice: SimpleVmbusClientDevice {
// Required methods
fn save_open(&mut self, runner: &Self::Runner) -> Self::SavedState;
fn restore_open(
&mut self,
state: Self::SavedState,
channel: RawAsyncChannel<MemoryBlockRingBuffer>,
) -> Result<Self::Runner>;
}
Expand description
Trait implemented by simple vmbus client devices that support save/restore.
If you implement this, make sure to return Some(self)
from
SimpleVmbusClientDevice::supports_save_restore
.
Required Methods§
Sourcefn save_open(&mut self, runner: &Self::Runner) -> Self::SavedState
fn save_open(&mut self, runner: &Self::Runner) -> Self::SavedState
Saves the channel.
Will only be called if the channel is open.
Sourcefn restore_open(
&mut self,
state: Self::SavedState,
channel: RawAsyncChannel<MemoryBlockRingBuffer>,
) -> Result<Self::Runner>
fn restore_open( &mut self, state: Self::SavedState, channel: RawAsyncChannel<MemoryBlockRingBuffer>, ) -> Result<Self::Runner>
Restores the channel.
Will only be called if the channel was saved open.