Trait concordium_std::SerialCtx
source · pub trait SerialCtx {
// Required method
fn serial_ctx<W>(
&self,
size_length: SizeLength,
out: &mut W
) -> Result<(), <W as Write>::Err>
where W: Write;
}
Expand description
The SerialCtx
trait provides a means of writing structures into byte-sinks
(Write
) using contextual information.
The contextual information is:
size_length
: The number of bytes used to record the length of the data.
Required Methods§
sourcefn serial_ctx<W>(
&self,
size_length: SizeLength,
out: &mut W
) -> Result<(), <W as Write>::Err>where
W: Write,
fn serial_ctx<W>(
&self,
size_length: SizeLength,
out: &mut W
) -> Result<(), <W as Write>::Err>where
W: Write,
Attempt to write the structure into the provided writer, failing if
if the length cannot be represented in the provided size_length
or
only part of the structure could be written.
NB: We use Result instead of Option for better composability with other constructs.
Object Safety§
This trait is not object safe.
Implementations on Foreign Types§
source§impl SerialCtx for &str
impl SerialCtx for &str
fn serial_ctx<W>(
&self,
size_len: SizeLength,
out: &mut W
) -> Result<(), <W as Write>::Err>where
W: Write,
source§impl<K> SerialCtx for HashSet<K, BuildHasherDefault<FnvHasher>>where
K: Serial,
impl<K> SerialCtx for HashSet<K, BuildHasherDefault<FnvHasher>>where
K: Serial,
Serialization for HashSet given a size_len. Values are not serialized in any particular order.
fn serial_ctx<W>(
&self,
size_len: SizeLength,
out: &mut W
) -> Result<(), <W as Write>::Err>where
W: Write,
source§impl<K, V> SerialCtx for HashMap<K, V, BuildHasherDefault<FnvHasher>>
impl<K, V> SerialCtx for HashMap<K, V, BuildHasherDefault<FnvHasher>>
Serialization for HashMap given a size_len. Keys are not serialized in any particular order.