Trait miden_crypto::utils::Serializable
source · pub trait Serializable: Sized {
// Required method
fn write_into<W>(&self, target: &mut W)
where W: ByteWriter;
// Provided methods
fn to_bytes(&self) -> Vec<u8> ⓘ { ... }
fn write_batch_into<W>(source: &[Self], target: &mut W)
where W: ByteWriter { ... }
fn get_size_hint(&self) -> usize { ... }
}
Expand description
Defines how to serialize Self
into bytes.
Required Methods§
sourcefn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn write_into<W>(&self, target: &mut W)where W: ByteWriter,
Serializes self
into bytes and writes these bytes into the target
.
Provided Methods§
sourcefn write_batch_into<W>(source: &[Self], target: &mut W)where
W: ByteWriter,
fn write_batch_into<W>(source: &[Self], target: &mut W)where W: ByteWriter,
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.
Object Safety§
This trait is not object safe.