Trait winter_utils::Serializable
source · [−]pub trait Serializable: Sized {
fn write_into<W: ByteWriter>(&self, target: &mut W);
fn to_bytes(&self) -> Vec<u8>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator, { ... }
fn write_batch_into<W: ByteWriter>(source: &[Self], target: &mut W) { ... }
fn get_size_hint(&self) -> usize { ... }
}Expand description
Defines how to serialize Self into bytes.
Required Methods
sourcefn write_into<W: ByteWriter>(&self, target: &mut W)
fn write_into<W: ByteWriter>(&self, target: &mut W)
Serializes self into bytes and writes these bytes into the target.
Provided Methods
sourcefn to_bytes(&self) -> Vec<u8>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn to_bytes(&self) -> Vec<u8>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Serializes self into a vector of bytes.
sourcefn write_batch_into<W: ByteWriter>(source: &[Self], target: &mut W)
fn write_batch_into<W: ByteWriter>(source: &[Self], target: &mut W)
Serializes all elements of the source and writes these bytes into the target.
This method does not write any metadata (e.g. number of serialized elements) into the
target.
sourcefn get_size_hint(&self) -> usize
fn get_size_hint(&self) -> usize
Returns an estimate of how many bytes are needed to represent self.
The default implementation returns zero.