Trait mesh::payload::MessageDecode

source ·
pub trait MessageDecode<'a, T, R>: Sized {
    // Required method
    fn read_message(
        item: &mut InplaceOption<'_, T>,
        reader: MessageReader<'a, '_, R>,
    ) -> Result<(), Error>;
}
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<(), Error>

Reads a message into item.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl MessageDecode<'_, Message, Resource> for MessageEncoder

source§

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

source§

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

source§

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

source§

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

source§

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

source§

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

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, R> MessageDecode<'_, T, R> for ProstMessage
where T: Message + Default,