Trait mesh_protobuf::table::decode::StructDecodeMetadata

source ·
pub unsafe trait StructDecodeMetadata<'de, R>: StructMetadata {
    const DECODERS: &'static [ErasedDecoderEntry];
}
Expand description

The struct metadata for decoding a struct.

§Safety

The implementor must ensure that the DECODERS are correct and complete for Self, such that if every field is decoded, then the struct value is valid.

Required Associated Constants§

source

const DECODERS: &'static [ErasedDecoderEntry]

The list of decoder vtables.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<'de, R> StructDecodeMetadata<'de, R> for ()

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'de, R, E0> StructDecodeMetadata<'de, R> for (E0,)
where E0: DefaultEncoding, E0::Encoding: FieldDecode<'de, E0, R>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'de, R, E0, E1> StructDecodeMetadata<'de, R> for (E0, E1)
where E0: DefaultEncoding, E1: DefaultEncoding, E0::Encoding: FieldDecode<'de, E0, R>, E1::Encoding: FieldDecode<'de, E1, R>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'de, R, E0, E1, E2> StructDecodeMetadata<'de, R> for (E0, E1, E2)
where E0: DefaultEncoding, E1: DefaultEncoding, E2: DefaultEncoding, E0::Encoding: FieldDecode<'de, E0, R>, E1::Encoding: FieldDecode<'de, E1, R>, E2::Encoding: FieldDecode<'de, E2, R>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'de, R, E0, E1, E2, E3> StructDecodeMetadata<'de, R> for (E0, E1, E2, E3)
where E0: DefaultEncoding, E1: DefaultEncoding, E2: DefaultEncoding, E3: DefaultEncoding, E0::Encoding: FieldDecode<'de, E0, R>, E1::Encoding: FieldDecode<'de, E1, R>, E2::Encoding: FieldDecode<'de, E2, R>, E3::Encoding: FieldDecode<'de, E3, R>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'de, R, E0, E1, E2, E3, E4> StructDecodeMetadata<'de, R> for (E0, E1, E2, E3, E4)
where E0: DefaultEncoding, E1: DefaultEncoding, E2: DefaultEncoding, E3: DefaultEncoding, E4: DefaultEncoding, E0::Encoding: FieldDecode<'de, E0, R>, E1::Encoding: FieldDecode<'de, E1, R>, E2::Encoding: FieldDecode<'de, E2, R>, E3::Encoding: FieldDecode<'de, E3, R>, E4::Encoding: FieldDecode<'de, E4, R>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'de, R, E0, E1, E2, E3, E4, E5> StructDecodeMetadata<'de, R> for (E0, E1, E2, E3, E4, E5)
where E0: DefaultEncoding, E1: DefaultEncoding, E2: DefaultEncoding, E3: DefaultEncoding, E4: DefaultEncoding, E5: DefaultEncoding, E0::Encoding: FieldDecode<'de, E0, R>, E1::Encoding: FieldDecode<'de, E1, R>, E2::Encoding: FieldDecode<'de, E2, R>, E3::Encoding: FieldDecode<'de, E3, R>, E4::Encoding: FieldDecode<'de, E4, R>, E5::Encoding: FieldDecode<'de, E5, R>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'de, R, E0, E1, E2, E3, E4, E5, E6> StructDecodeMetadata<'de, R> for (E0, E1, E2, E3, E4, E5, E6)
where E0: DefaultEncoding, E1: DefaultEncoding, E2: DefaultEncoding, E3: DefaultEncoding, E4: DefaultEncoding, E5: DefaultEncoding, E6: DefaultEncoding, E0::Encoding: FieldDecode<'de, E0, R>, E1::Encoding: FieldDecode<'de, E1, R>, E2::Encoding: FieldDecode<'de, E2, R>, E3::Encoding: FieldDecode<'de, E3, R>, E4::Encoding: FieldDecode<'de, E4, R>, E5::Encoding: FieldDecode<'de, E5, R>, E6::Encoding: FieldDecode<'de, E6, R>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'encoding, T, AnyR: 'static> StructDecodeMetadata<'encoding, AnyR> for Range<T>
where T: DefaultEncoding, T::Encoding: FieldDecode<'encoding, T, AnyR>,

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

Implementors§

source§

impl<'encoding, AnyR: 'static> StructDecodeMetadata<'encoding, AnyR> for ProtobufAny

source§

const DECODERS: &'static [ErasedDecoderEntry] = _

source§

impl<'encoding, AnyR: 'static> StructDecodeMetadata<'encoding, AnyR> for Timestamp

source§

const DECODERS: &'static [ErasedDecoderEntry] = _