pub trait Queryable: Sized {
// Required methods
fn decode(decoder: &Decoder, buf: &[u8]) -> Result<Self, DecodeError>;
fn check_descriptor(
ctx: &DescriptorContext<'_>,
type_pos: TypePos,
) -> Result<(), DescriptorMismatch>;
// Provided method
fn decode_optional(
decoder: &Decoder,
buf: Option<&[u8]>,
) -> Result<Self, DecodeError> { ... }
}
Required Methods§
fn decode(decoder: &Decoder, buf: &[u8]) -> Result<Self, DecodeError>
fn check_descriptor( ctx: &DescriptorContext<'_>, type_pos: TypePos, ) -> Result<(), DescriptorMismatch>
Provided Methods§
fn decode_optional( decoder: &Decoder, buf: Option<&[u8]>, ) -> Result<Self, DecodeError>
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.