pub struct CoreVmOutput {
pub vm_output: VmOutput,
pub vm_state: VmState,
pub old_hash: Hash,
pub new_hash: Hash,
pub touched_imported_pages: VecMap<u64, Hash>,
pub updated_pages: VecMap<u64, Hash>,
pub video: Option<VideoMode>,
pub guest_code_hash: Hash,
pub guest_code_host: ServiceId,
}Expand description
CoreVM-specific work output.
This is the output of the work package.
Fields§
§vm_output: VmOutputThe specification of the VM’s output data.
vm_state: VmStateThe posterior VM state on which the program run was suspended.
Use this state in [CorevmPayload] to continue the execution in another work package.
old_hash: Hash§new_hash: Hash§touched_imported_pages: VecMap<u64, Hash>Memory pages that were imported and read from/written to while refining the package.
updated_pages: VecMap<u64, Hash>Memory pages that were read from/written to while refining this work package.
Include deallocated pages indicated by zero hashes.
video: Option<VideoMode>Video output mode.
None if the mode was not changed in this program run.
guest_code_hash: HashThe guest code hash.
guest_code_host: ServiceIdThe host service for the guest code.
Trait Implementations§
Source§impl Debug for CoreVmOutput
impl Debug for CoreVmOutput
Source§impl Decode for CoreVmOutput
impl Decode for CoreVmOutput
Source§fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy,
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy, ) -> Result<Self, Error>
Attempt to deserialise the value from input.
Source§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
Source§impl Encode for CoreVmOutput
impl Encode for CoreVmOutput
Source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
If possible give a hint of expected size of the encoding. Read more
Source§fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy,
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy, )
Convert self to a slice and append it to the destination.
Source§fn using_encoded<R, F>(&self, f: F) -> R
fn using_encoded<R, F>(&self, f: F) -> R
Convert self to a slice and then invoke the given closure with it.
Source§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
impl EncodeLike for CoreVmOutput
Auto Trait Implementations§
impl Freeze for CoreVmOutput
impl RefUnwindSafe for CoreVmOutput
impl Send for CoreVmOutput
impl Sync for CoreVmOutput
impl Unpin for CoreVmOutput
impl UnwindSafe for CoreVmOutput
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more