pub trait Serializable {
// Required method
fn write_into<W>(&self, target: &mut W)
where W: ByteWriter;
// Provided methods
fn to_bytes(&self) -> Vec<u8> ⓘ { ... }
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 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.
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.
Implementations on Foreign Types§
Source§impl Serializable for &PublicKey
impl Serializable for &PublicKey
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for &SignatureHeader
impl Serializable for &SignatureHeader
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for &SignaturePoly
impl Serializable for &SignaturePoly
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for &Nonce
impl Serializable for &Nonce
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for IntValue
impl Serializable for IntValue
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Operation
impl Serializable for Operation
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for NodeMutation
impl Serializable for NodeMutation
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for SmtLeaf
impl Serializable for SmtLeaf
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for str
impl Serializable for str
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for u8
impl Serializable for u8
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for u16
impl Serializable for u16
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for u32
impl Serializable for u32
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for u64
impl Serializable for u64
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for u128
impl Serializable for u128
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for ()
impl Serializable for ()
fn write_into<W>(&self, _target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for usize
impl Serializable for usize
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for String
impl Serializable for String
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for WordValue
impl Serializable for WordValue
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for AdviceMap
impl Serializable for AdviceMap
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Kernel
impl Serializable for Kernel
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Program
impl Serializable for Program
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for ProgramInfo
impl Serializable for ProgramInfo
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for StackInputs
impl Serializable for StackInputs
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for StackOutputs
impl Serializable for StackOutputs
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for EncryptedData
impl Serializable for EncryptedData
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for EncryptedData
impl Serializable for EncryptedData
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Nonce
impl Serializable for Nonce
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for SecretKey
impl Serializable for SecretKey
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for PublicKey
impl Serializable for PublicKey
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for SecretKey
impl Serializable for SecretKey
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Signature
impl Serializable for Signature
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for SecretKey
impl Serializable for SecretKey
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Signature
impl Serializable for Signature
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for EphemeralPublicKey
impl Serializable for EphemeralPublicKey
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Keccak256Digest
impl Serializable for Keccak256Digest
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for NodeIndex
impl Serializable for NodeIndex
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Forest
impl Serializable for Forest
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Mmr
impl Serializable for Mmr
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for InOrderIndex
impl Serializable for InOrderIndex
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for PartialMmr
impl Serializable for PartialMmr
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for PartialMerkleTree
impl Serializable for PartialMerkleTree
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for MerklePath
impl Serializable for MerklePath
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for MerkleProof
impl Serializable for MerkleProof
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for RootPath
impl Serializable for RootPath
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for SmtProof
impl Serializable for SmtProof
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Smt
impl Serializable for Smt
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for PartialSmt
impl Serializable for PartialSmt
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for SparseMerklePath
impl Serializable for SparseMerklePath
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for MerkleStore
impl Serializable for MerkleStore
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for StoreNode
impl Serializable for StoreNode
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for RpoRandomCoin
impl Serializable for RpoRandomCoin
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for RpxRandomCoin
impl Serializable for RpxRandomCoin
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl Serializable for Word
impl Serializable for Word
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for BaseElement
impl Serializable for BaseElement
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for BaseElement
impl Serializable for BaseElement
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl Serializable for BaseElement
impl Serializable for BaseElement
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<B> Serializable for CubeExtension<B>where
B: ExtensibleField<3>,
impl<B> Serializable for CubeExtension<B>where
B: ExtensibleField<3>,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl<B> Serializable for QuadExtension<B>where
B: ExtensibleField<2>,
impl<B> Serializable for QuadExtension<B>where
B: ExtensibleField<2>,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl<H> Serializable for BatchMerkleProof<H>where
H: Hasher,
impl<H> Serializable for BatchMerkleProof<H>where
H: Hasher,
Source§fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Writes all internal proof nodes into the provided target.
Source§impl<K, V> Serializable for BTreeMap<K, V>where
K: Serializable,
V: Serializable,
impl<K, V> Serializable for BTreeMap<K, V>where
K: Serializable,
V: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T1> Serializable for (T1,)where
T1: Serializable,
impl<T1> Serializable for (T1,)where
T1: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T1, T2> Serializable for (T1, T2)where
T1: Serializable,
T2: Serializable,
impl<T1, T2> Serializable for (T1, T2)where
T1: Serializable,
T2: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T1, T2, T3> Serializable for (T1, T2, T3)
impl<T1, T2, T3> Serializable for (T1, T2, T3)
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T1, T2, T3, T4> Serializable for (T1, T2, T3, T4)
impl<T1, T2, T3, T4> Serializable for (T1, T2, T3, T4)
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T1, T2, T3, T4, T5> Serializable for (T1, T2, T3, T4, T5)
impl<T1, T2, T3, T4, T5> Serializable for (T1, T2, T3, T4, T5)
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T1, T2, T3, T4, T5, T6> Serializable for (T1, T2, T3, T4, T5, T6)where
T1: Serializable,
T2: Serializable,
T3: Serializable,
T4: Serializable,
T5: Serializable,
T6: Serializable,
impl<T1, T2, T3, T4, T5, T6> Serializable for (T1, T2, T3, T4, T5, T6)where
T1: Serializable,
T2: Serializable,
T3: Serializable,
T4: Serializable,
T5: Serializable,
T6: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T> Serializable for Option<T>where
T: Serializable,
impl<T> Serializable for Option<T>where
T: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T> Serializable for &Twhere
T: Serializable,
impl<T> Serializable for &Twhere
T: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T> Serializable for [T]where
T: Serializable,
impl<T> Serializable for [T]where
T: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T> Serializable for BTreeSet<T>where
T: Serializable,
impl<T> Serializable for BTreeSet<T>where
T: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T> Serializable for Vec<T>where
T: Serializable,
impl<T> Serializable for Vec<T>where
T: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T> Serializable for LexicographicWord<T>
impl<T> Serializable for LexicographicWord<T>
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<T, const C: usize> Serializable for [T; C]where
T: Serializable,
impl<T, const C: usize> Serializable for [T; C]where
T: Serializable,
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
fn get_size_hint(&self) -> usize
Source§impl<const DEPTH: u8> Serializable for LeafIndex<DEPTH>
impl<const DEPTH: u8> Serializable for LeafIndex<DEPTH>
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Source§impl<const DEPTH: u8, K, V> Serializable for MutationSet<DEPTH, K, V>
impl<const DEPTH: u8, K, V> Serializable for MutationSet<DEPTH, K, V>
fn write_into<W>(&self, target: &mut W)where
W: ByteWriter,
Implementors§
impl Serializable for Attribute
impl Serializable for MetaExpr
impl Serializable for ModuleKind
impl Serializable for LibraryNamespace
impl Serializable for AttributeSet
impl Serializable for Ident
impl Serializable for MetaKeyValue
impl Serializable for MetaList
impl Serializable for ProcedureName
impl Serializable for QualifiedProcedureName
impl Serializable for FunctionTypeSerializer<'_>
impl Serializable for TypeSerializer<'_>
impl Serializable for DecoratorId
impl Serializable for MastForest
impl Serializable for KernelLibrary
NOTE: Serialization of libraries is likely to be deprecated in a future release
impl Serializable for Library
NOTE: Serialization of libraries is likely to be deprecated in a future release