mesh_protobuf::table::encode

Trait StructEncodeMetadata

Source
pub unsafe trait StructEncodeMetadata<R>: StructMetadata {
    const ENCODERS: &'static [ErasedEncoderEntry];
}
Expand description

Metadata for encoding a struct.

§Safety

The implementor must ensure that the ENCODERS are correct and complete for Self and R.

Required Associated Constants§

Source

const ENCODERS: &'static [ErasedEncoderEntry]

The list of encoder vtables.

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.

Implementations on Foreign Types§

Source§

impl<R> StructEncodeMetadata<R> for ()

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<R, E0> StructEncodeMetadata<R> for (E0,)
where E0: DefaultEncoding, E0::Encoding: FieldEncode<E0, R>,

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<R, E0, E1> StructEncodeMetadata<R> for (E0, E1)
where E0: DefaultEncoding, E1: DefaultEncoding, E0::Encoding: FieldEncode<E0, R>, E1::Encoding: FieldEncode<E1, R>,

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<R, E0, E1, E2> StructEncodeMetadata<R> for (E0, E1, E2)
where E0: DefaultEncoding, E1: DefaultEncoding, E2: DefaultEncoding, E0::Encoding: FieldEncode<E0, R>, E1::Encoding: FieldEncode<E1, R>, E2::Encoding: FieldEncode<E2, R>,

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<R, E0, E1, E2, E3> StructEncodeMetadata<R> for (E0, E1, E2, E3)

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<R, E0, E1, E2, E3, E4> StructEncodeMetadata<R> for (E0, E1, E2, E3, E4)

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<R, E0, E1, E2, E3, E4, E5> StructEncodeMetadata<R> for (E0, E1, E2, E3, E4, E5)

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<R, E0, E1, E2, E3, E4, E5, E6> StructEncodeMetadata<R> for (E0, E1, E2, E3, E4, E5, E6)

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<T, AnyR: 'static> StructEncodeMetadata<AnyR> for Range<T>
where T: DefaultEncoding, T::Encoding: FieldEncode<T, AnyR>,

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Implementors§

Source§

impl<AnyR: 'static> StructEncodeMetadata<AnyR> for ProtobufAny

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _

Source§

impl<AnyR: 'static> StructEncodeMetadata<AnyR> for Timestamp

Source§

const ENCODERS: &'static [ErasedEncoderEntry] = _