mesh_protobuf

Trait MessageDecode

Source
pub trait MessageDecode<'a, T, R>: Sized {
    // Required method
    fn read_message(
        item: &mut InplaceOption<'_, T>,
        reader: MessageReader<'a, '_, R>,
    ) -> Result<()>;
}
Expand description

The MessageEncode trait provides a message decoder for type T.

R is the external resource type, which allows decoding objects with non-protobuf resources such as file descriptors. Most implementors of this trait will be generic over all R.

Required Methods§

Source

fn read_message( item: &mut InplaceOption<'_, T>, reader: MessageReader<'a, '_, R>, ) -> Result<()>

Reads a message into item.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'a, T, R, E: MessageDecode<'a, T, R>> MessageDecode<'a, Box<T>, R> for BoxEncoding<E>

Source§

impl<'a, T, R, E: MessageDecode<'a, T, R>> MessageDecode<'a, T, R> for MessageEncoding<E>

Source§

impl<'a, T: Clone, R, E: MessageDecode<'a, T, R>> MessageDecode<'a, Arc<T>, R> for ArcEncoding<E>

Source§

impl<'de, T, R> MessageDecode<'de, T, R> for TableEncoder
where T: StructDecodeMetadata<'de, R>,

Source§

impl<'de, T: OneofDecode<'de, R>, R> MessageDecode<'de, T, R> for OneofEncoder

Source§

impl<'de, T: Transparent, E: MessageDecode<'de, T::Inner, R>, R> MessageDecode<'de, T, R> for TransparentEncoding<E>

Source§

impl<R> MessageDecode<'_, Duration, R> for DurationEncoding

Source§

impl<R> MessageDecode<'_, ProtobufMessage, R> for ProtobufMessageEncoding

Source§

impl<R> MessageDecode<'_, SerializedMessage<R>, R> for SerializedMessageEncoder

Source§

impl<T, R> MessageDecode<'_, T, R> for ImpossibleField

Source§

impl<T: Message + Default, R> MessageDecode<'_, T, R> for ProstMessage