pub trait Value:
Sized
+ Send
+ Sync {
// Required methods
fn write(&self, bytes: &mut Vec<u8>);
fn size(&self) -> usize;
fn memory(input: &mut Reader<'_>) -> Result<usize, MessageError>;
fn read(input: &mut Reader<'_>) -> Result<Self, MessageError>;
// Provided methods
fn size_many(values: &[Self]) -> usize { ... }
fn write_many(values: &[Self], bytes: &mut Vec<u8>) { ... }
fn memory_many(
input: &mut Reader<'_>,
count: usize,
) -> Result<usize, MessageError> { ... }
fn read_many(
input: &mut Reader<'_>,
count: usize,
) -> Result<Vec<Self>, MessageError> { ... }
}Required Methods§
fn write(&self, bytes: &mut Vec<u8>)
fn size(&self) -> usize
fn memory(input: &mut Reader<'_>) -> Result<usize, MessageError>
fn read(input: &mut Reader<'_>) -> Result<Self, MessageError>
Provided Methods§
fn size_many(values: &[Self]) -> usize
fn write_many(values: &[Self], bytes: &mut Vec<u8>)
fn memory_many( input: &mut Reader<'_>, count: usize, ) -> Result<usize, MessageError>
fn read_many( input: &mut Reader<'_>, count: usize, ) -> Result<Vec<Self>, MessageError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".