Union fidl_next::WireEnvelope
source · #[repr(C, align(8))]
pub union WireEnvelope<'buf> {
/* private fields */
}
Expand description
A FIDL envelope
Implementations§
source§impl<'buf> WireEnvelope<'buf>
impl<'buf> WireEnvelope<'buf>
sourcepub fn encode_zero(slot: Slot<'_, Self>)
pub fn encode_zero(slot: Slot<'_, Self>)
Encodes a zero envelope into a slot.
sourcepub fn encode_value<E: Encoder + ?Sized, T: Encode<E>>(
value: &mut T,
encoder: &mut E,
slot: Slot<'_, Self>,
) -> Result<(), EncodeError>
pub fn encode_value<E: Encoder + ?Sized, T: Encode<E>>( value: &mut T, encoder: &mut E, slot: Slot<'_, Self>, ) -> Result<(), EncodeError>
Encodes a value into an envelope with an encoder.
sourcepub fn is_encoded_zero(slot: Slot<'_, Self>) -> bool
pub fn is_encoded_zero(slot: Slot<'_, Self>) -> bool
Returns whether a envelope slot is encoded as zero.
sourcepub fn decode_unknown<D: Decoder<'buf> + ?Sized>(
slot: Slot<'_, Self>,
decoder: &mut D,
) -> Result<(), DecodeError>
pub fn decode_unknown<D: Decoder<'buf> + ?Sized>( slot: Slot<'_, Self>, decoder: &mut D, ) -> Result<(), DecodeError>
Decodes and discards an unknown value in an envelope.
sourcepub fn decode_as<D: Decoder<'buf> + ?Sized, T: Decode<D>>(
slot: Slot<'_, Self>,
decoder: &mut D,
) -> Result<(), DecodeError>
pub fn decode_as<D: Decoder<'buf> + ?Sized, T: Decode<D>>( slot: Slot<'_, Self>, decoder: &mut D, ) -> Result<(), DecodeError>
Decodes a value of a known type from an envelope.
sourcepub unsafe fn deref_unchecked<T>(&self) -> &T
pub unsafe fn deref_unchecked<T>(&self) -> &T
Returns a reference to the contained T
.
§Safety
The envelope must have been successfully decoded as a T
.
sourcepub unsafe fn deref_mut_unchecked<T>(&mut self) -> &mut T
pub unsafe fn deref_mut_unchecked<T>(&mut self) -> &mut T
Returns a mutable reference to the contained T
.
§Safety
The envelope must have been successfully decoded as a T
.
sourcepub unsafe fn take_unchecked<T>(&mut self) -> T
pub unsafe fn take_unchecked<T>(&mut self) -> T
Takes the contained T
, leaving an empty envelope.
§Safety
The envelope must have been successfully decoded as a T
.
Auto Trait Implementations§
impl<'buf> Freeze for WireEnvelope<'buf>
impl<'buf> RefUnwindSafe for WireEnvelope<'buf>
impl<'buf> !Send for WireEnvelope<'buf>
impl<'buf> !Sync for WireEnvelope<'buf>
impl<'buf> Unpin for WireEnvelope<'buf>
impl<'buf> !UnwindSafe for WireEnvelope<'buf>
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