pub unsafe trait EncodeOptionRef<E: ?Sized>: EncodeOption<E> {
// Required method
fn encode_option_ref(
this: Option<&Self>,
encoder: &mut E,
out: &mut MaybeUninit<Self::EncodedOption>,
) -> Result<(), EncodeError>;
}
Expand description
Encodes an optional reference.
§Safety
encode_option_ref
must initialize all non-padding bytes of out
.
Required Methods§
Sourcefn encode_option_ref(
this: Option<&Self>,
encoder: &mut E,
out: &mut MaybeUninit<Self::EncodedOption>,
) -> Result<(), EncodeError>
fn encode_option_ref( this: Option<&Self>, encoder: &mut E, out: &mut MaybeUninit<Self::EncodedOption>, ) -> Result<(), EncodeError>
Encodes this optional reference into an encoder and output.
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.