pub trait EncoderValue: Sized {
// Required method
fn encode<E: Encoder>(&self, encoder: &mut E);
// Provided methods
fn encode_mut<E: Encoder>(&mut self, encoder: &mut E) { ... }
fn encoding_size(&self) -> usize { ... }
fn encoding_size_for_encoder<E: Encoder>(&self, encoder: &E) -> usize { ... }
fn encode_with_len_prefix<Len: TryFrom<usize> + EncoderValue, E: Encoder>(
&self,
encoder: &mut E,
)
where Self: Sized,
Len::Error: Debug { ... }
fn encode_to_vec(&self) -> Vec<u8> ⓘ { ... }
}
Required Methods§
Provided Methods§
Sourcefn encode_mut<E: Encoder>(&mut self, encoder: &mut E)
fn encode_mut<E: Encoder>(&mut self, encoder: &mut E)
Encodes the value into the encoder, while potentially mutating the value itself
Sourcefn encoding_size(&self) -> usize
fn encoding_size(&self) -> usize
Returns the encoding size with no buffer constrains
Sourcefn encoding_size_for_encoder<E: Encoder>(&self, encoder: &E) -> usize
fn encoding_size_for_encoder<E: Encoder>(&self, encoder: &E) -> usize
Returns the encoding size for the given encoder’s capacity
Sourcefn encode_with_len_prefix<Len: TryFrom<usize> + EncoderValue, E: Encoder>(
&self,
encoder: &mut E,
)
fn encode_with_len_prefix<Len: TryFrom<usize> + EncoderValue, E: Encoder>( &self, encoder: &mut E, )
Encodes the value into the encoder with a prefix of Len
fn encode_to_vec(&self) -> Vec<u8> ⓘ
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.