pub trait Protobuf: DefaultEncoding<Encoding = Self::Encoding> + Sized {
type Encoding: MessageEncode<Self, NoResources> + for<'a> MessageDecode<'a, Self, NoResources> + FieldEncode<Self, NoResources> + for<'a> FieldDecode<'a, Self, NoResources>;
}
Expand description
Trait for types that can be encoded and decoded as a protobuf message.
Required Associated Types§
Sourcetype Encoding: MessageEncode<Self, NoResources> + for<'a> MessageDecode<'a, Self, NoResources> + FieldEncode<Self, NoResources> + for<'a> FieldDecode<'a, Self, NoResources>
type Encoding: MessageEncode<Self, NoResources> + for<'a> MessageDecode<'a, Self, NoResources> + FieldEncode<Self, NoResources> + for<'a> FieldDecode<'a, Self, NoResources>
The default encoding for Self
.
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.