pub enum ShutdownRpc {
WaitReady(Rpc<(), OneshotReceiver<()>>),
Shutdown(Rpc<ShutdownParams, ShutdownResult>),
}
Expand description
An RPC request to the shutdown IC.
Variants§
WaitReady(Rpc<(), OneshotReceiver<()>>)
Wait for the shutdown IC to be ready.
Returns a receiver that closes when the IC is no longer ready.
FUTURE: this should instead be a Sender
that is used to send the
shutdown request. Do this once Sender
has a mechanism to wait on the
receiver to be closed.
Shutdown(Rpc<ShutdownParams, ShutdownResult>)
Send a shutdown request to the guest.
Trait Implementations§
Source§impl DefaultEncoding for ShutdownRpc
impl DefaultEncoding for ShutdownRpc
Source§type Encoding = OneofEncoder
type Encoding = OneofEncoder
The encoding to use for the serialization. Read more
Source§impl<'encoding> OneofDecode<'encoding, Resource> for ShutdownRpc
impl<'encoding> OneofDecode<'encoding, Resource> for ShutdownRpc
Source§fn read_variant(
item: &mut InplaceOption<'_, Self>,
n: u32,
field: FieldReader<'encoding, '_, Resource>,
) -> Result<()>
fn read_variant( item: &mut InplaceOption<'_, Self>, n: u32, field: FieldReader<'encoding, '_, Resource>, ) -> Result<()>
Read the specified variant from the reader.
Source§impl OneofEncode<Resource> for ShutdownRpc
impl OneofEncode<Resource> for ShutdownRpc
Source§fn write_variant(self, writer: MessageWriter<'_, '_, Resource>)
fn write_variant(self, writer: MessageWriter<'_, '_, Resource>)
Write the variant to the writer.
Source§fn compute_variant_size(&mut self, sizer: MessageSizer<'_>)
fn compute_variant_size(&mut self, sizer: MessageSizer<'_>)
Compute the size of the variant.
Auto Trait Implementations§
impl Freeze for ShutdownRpc
impl !RefUnwindSafe for ShutdownRpc
impl Send for ShutdownRpc
impl Sync for ShutdownRpc
impl Unpin for ShutdownRpc
impl !UnwindSafe for ShutdownRpc
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> MeshField for Twhere
T: DefaultEncoding,
<T as DefaultEncoding>::Encoding: FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
impl<T> MeshField for Twhere
T: DefaultEncoding,
<T as DefaultEncoding>::Encoding: FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
type Encoding = <T as DefaultEncoding>::Encoding
Source§impl<T> MeshPayload for Twhere
T: DefaultEncoding + Any + Send + 'static,
<T as DefaultEncoding>::Encoding: MessageEncode<T, Resource> + for<'a> MessageDecode<'a, T, Resource> + FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
impl<T> MeshPayload for Twhere
T: DefaultEncoding + Any + Send + 'static,
<T as DefaultEncoding>::Encoding: MessageEncode<T, Resource> + for<'a> MessageDecode<'a, T, Resource> + FieldEncode<T, Resource> + for<'a> FieldDecode<'a, T, Resource> + Send + Sync,
type Encoding = <T as DefaultEncoding>::Encoding
Source§impl<T> SerializeMessage for Twhere
T: 'static + MeshPayload + Send,
impl<T> SerializeMessage for Twhere
T: 'static + MeshPayload + Send,
Source§fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
fn compute_message_size(&mut self, sizer: MessageSizer<'_>)
Computes the message size, as in
MessageEncode::compute_message_size
.Source§fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
fn write_message(self, writer: MessageWriter<'_, '_, Resource>)
Writes the message, as in
MessageEncode::write_message
.Source§fn extract(self) -> <T as SerializeMessage>::Concrete
fn extract(self) -> <T as SerializeMessage>::Concrete
Extract the concrete message.