Trait miden_lib::utils::Deserializable
source · pub trait Deserializable: Sized {
// Required method
fn read_from<R>(source: &mut R) -> Result<Self, DeserializationError>
where R: ByteReader;
// Provided method
fn read_from_bytes(bytes: &[u8]) -> Result<Self, DeserializationError> { ... }
}Expand description
Defines how to deserialize Self from bytes.
Required Methods§
sourcefn read_from<R>(source: &mut R) -> Result<Self, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<Self, DeserializationError>where
R: ByteReader,
Reads a sequence of bytes from the provided source, attempts to deserialize these bytes
into Self, and returns the result.
§Errors
Returns an error if:
- The
sourcedoes not contain enough bytes to deserializeSelf. - Bytes read from the
sourcedo not represent a valid value forSelf.
Provided Methods§
sourcefn read_from_bytes(bytes: &[u8]) -> Result<Self, DeserializationError>
fn read_from_bytes(bytes: &[u8]) -> Result<Self, DeserializationError>
Attempts to deserialize the provided bytes into Self and returns the result.
§Errors
Returns an error if:
- The
bytesdo not contain enough information to deserializeSelf. - The
bytesdo not represent a valid value forSelf.
Note: if bytes contains more data than needed to deserialize self, no error is
returned.
Object Safety§
Implementations on Foreign Types§
source§impl Deserializable for HashFunction
impl Deserializable for HashFunction
fn read_from<R>(source: &mut R) -> Result<HashFunction, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ModuleKind
impl Deserializable for ModuleKind
fn read_from<R>(source: &mut R) -> Result<ModuleKind, DeserializationError>where
R: ByteReader,
source§impl Deserializable for LibraryNamespace
impl Deserializable for LibraryNamespace
fn read_from<R>(
source: &mut R,
) -> Result<LibraryNamespace, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Operation
impl Deserializable for Operation
fn read_from<R>(source: &mut R) -> Result<Operation, DeserializationError>where
R: ByteReader,
source§impl Deserializable for SmtLeaf
impl Deserializable for SmtLeaf
fn read_from<R>(source: &mut R) -> Result<SmtLeaf, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AuthSecretKey
impl Deserializable for AuthSecretKey
fn read_from<R>(source: &mut R) -> Result<AuthSecretKey, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountUpdateDetails
impl Deserializable for AccountUpdateDetails
fn read_from<R>(
source: &mut R,
) -> Result<AccountUpdateDetails, DeserializationError>where
R: ByteReader,
source§impl Deserializable for StorageSlotType
impl Deserializable for StorageSlotType
fn read_from<R>(source: &mut R) -> Result<StorageSlotType, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Asset
impl Deserializable for Asset
fn read_from<R>(source: &mut R) -> Result<Asset, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteFile
impl Deserializable for NoteFile
fn read_from<R>(source: &mut R) -> Result<NoteFile, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteType
impl Deserializable for NoteType
fn read_from<R>(source: &mut R) -> Result<NoteType, DeserializationError>where
R: ByteReader,
source§impl Deserializable for InputNote
impl Deserializable for InputNote
fn read_from<R>(source: &mut R) -> Result<InputNote, DeserializationError>where
R: ByteReader,
source§impl Deserializable for OutputNote
impl Deserializable for OutputNote
fn read_from<R>(source: &mut R) -> Result<OutputNote, DeserializationError>where
R: ByteReader,
source§impl Deserializable for FieldExtension
impl Deserializable for FieldExtension
source§fn read_from<R>(source: &mut R) -> Result<FieldExtension, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<FieldExtension, DeserializationError>where
R: ByteReader,
Reads a field extension enum from the specified source.
source§impl Deserializable for u8
impl Deserializable for u8
fn read_from<R>(source: &mut R) -> Result<u8, DeserializationError>where
R: ByteReader,
source§impl Deserializable for u16
impl Deserializable for u16
fn read_from<R>(source: &mut R) -> Result<u16, DeserializationError>where
R: ByteReader,
source§impl Deserializable for u32
impl Deserializable for u32
fn read_from<R>(source: &mut R) -> Result<u32, DeserializationError>where
R: ByteReader,
source§impl Deserializable for u64
impl Deserializable for u64
fn read_from<R>(source: &mut R) -> Result<u64, DeserializationError>where
R: ByteReader,
source§impl Deserializable for u128
impl Deserializable for u128
fn read_from<R>(source: &mut R) -> Result<u128, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ()
impl Deserializable for ()
fn read_from<R>(_source: &mut R) -> Result<(), DeserializationError>where
R: ByteReader,
source§impl Deserializable for usize
impl Deserializable for usize
fn read_from<R>(source: &mut R) -> Result<usize, DeserializationError>where
R: ByteReader,
source§impl Deserializable for String
impl Deserializable for String
fn read_from<R>(source: &mut R) -> Result<String, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ExecutionProof
impl Deserializable for ExecutionProof
fn read_from<R>(source: &mut R) -> Result<ExecutionProof, DeserializationError>where
R: ByteReader,
source§impl Deserializable for PublicInputs
impl Deserializable for PublicInputs
fn read_from<R>(source: &mut R) -> Result<PublicInputs, DeserializationError>where
R: ByteReader,
source§impl Deserializable for LibraryPath
impl Deserializable for LibraryPath
fn read_from<R>(source: &mut R) -> Result<LibraryPath, DeserializationError>where
R: ByteReader,
source§impl Deserializable for KernelLibrary
impl Deserializable for KernelLibrary
fn read_from<R>(source: &mut R) -> Result<KernelLibrary, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Library
impl Deserializable for Library
fn read_from<R>(source: &mut R) -> Result<Library, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Version
impl Deserializable for Version
fn read_from<R>(source: &mut R) -> Result<Version, DeserializationError>where
R: ByteReader,
source§impl Deserializable for SourceSpan
impl Deserializable for SourceSpan
fn read_from<R>(source: &mut R) -> Result<SourceSpan, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Kernel
impl Deserializable for Kernel
fn read_from<R>(source: &mut R) -> Result<Kernel, DeserializationError>where
R: ByteReader,
source§impl Deserializable for MastForest
impl Deserializable for MastForest
fn read_from<R>(source: &mut R) -> Result<MastForest, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Program
impl Deserializable for Program
fn read_from<R>(source: &mut R) -> Result<Program, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ProgramInfo
impl Deserializable for ProgramInfo
fn read_from<R>(source: &mut R) -> Result<ProgramInfo, DeserializationError>where
R: ByteReader,
source§impl Deserializable for StackInputs
impl Deserializable for StackInputs
fn read_from<R>(source: &mut R) -> Result<StackInputs, DeserializationError>where
R: ByteReader,
source§impl Deserializable for StackOutputs
impl Deserializable for StackOutputs
fn read_from<R>(source: &mut R) -> Result<StackOutputs, DeserializationError>where
R: ByteReader,
source§impl Deserializable for PubKeyPoly
impl Deserializable for PubKeyPoly
fn read_from<R>(source: &mut R) -> Result<PubKeyPoly, DeserializationError>where
R: ByteReader,
source§impl Deserializable for SecretKey
impl Deserializable for SecretKey
fn read_from<R>(source: &mut R) -> Result<SecretKey, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Signature
impl Deserializable for Signature
fn read_from<R>(source: &mut R) -> Result<Signature, DeserializationError>where
R: ByteReader,
source§impl Deserializable for SignatureHeader
impl Deserializable for SignatureHeader
fn read_from<R>(source: &mut R) -> Result<SignatureHeader, DeserializationError>where
R: ByteReader,
source§impl Deserializable for SignaturePoly
impl Deserializable for SignaturePoly
fn read_from<R>(source: &mut R) -> Result<SignaturePoly, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Nonce
impl Deserializable for Nonce
fn read_from<R>(source: &mut R) -> Result<Nonce, DeserializationError>where
R: ByteReader,
source§impl Deserializable for RpoDigest
impl Deserializable for RpoDigest
fn read_from<R>(source: &mut R) -> Result<RpoDigest, DeserializationError>where
R: ByteReader,
source§impl Deserializable for RpxDigest
impl Deserializable for RpxDigest
fn read_from<R>(source: &mut R) -> Result<RpxDigest, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NodeIndex
impl Deserializable for NodeIndex
fn read_from<R>(source: &mut R) -> Result<NodeIndex, DeserializationError>where
R: ByteReader,
source§impl Deserializable for PartialMerkleTree
impl Deserializable for PartialMerkleTree
fn read_from<R>(
source: &mut R,
) -> Result<PartialMerkleTree, DeserializationError>where
R: ByteReader,
source§impl Deserializable for MerklePath
impl Deserializable for MerklePath
fn read_from<R>(source: &mut R) -> Result<MerklePath, DeserializationError>where
R: ByteReader,
source§impl Deserializable for RootPath
impl Deserializable for RootPath
fn read_from<R>(source: &mut R) -> Result<RootPath, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ValuePath
impl Deserializable for ValuePath
fn read_from<R>(source: &mut R) -> Result<ValuePath, DeserializationError>where
R: ByteReader,
source§impl Deserializable for SmtProof
impl Deserializable for SmtProof
fn read_from<R>(source: &mut R) -> Result<SmtProof, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Smt
impl Deserializable for Smt
fn read_from<R>(source: &mut R) -> Result<Smt, DeserializationError>where
R: ByteReader,
source§impl Deserializable for StoreNode
impl Deserializable for StoreNode
fn read_from<R>(source: &mut R) -> Result<StoreNode, DeserializationError>where
R: ByteReader,
source§impl Deserializable for RpoRandomCoin
impl Deserializable for RpoRandomCoin
fn read_from<R>(source: &mut R) -> Result<RpoRandomCoin, DeserializationError>where
R: ByteReader,
source§impl Deserializable for RpxRandomCoin
impl Deserializable for RpxRandomCoin
fn read_from<R>(source: &mut R) -> Result<RpxRandomCoin, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountId
impl Deserializable for AccountId
fn read_from<R>(source: &mut R) -> Result<AccountId, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountProcedureInfo
impl Deserializable for AccountProcedureInfo
fn read_from<R>(
source: &mut R,
) -> Result<AccountProcedureInfo, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountCode
impl Deserializable for AccountCode
fn read_from<R>(source: &mut R) -> Result<AccountCode, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountData
impl Deserializable for AccountData
fn read_from<R>(source: &mut R) -> Result<AccountData, DeserializationError>where
R: ByteReader,
fn read_from_bytes(bytes: &[u8]) -> Result<AccountData, DeserializationError>
source§impl Deserializable for AccountStorageDelta
impl Deserializable for AccountStorageDelta
fn read_from<R>(
source: &mut R,
) -> Result<AccountStorageDelta, DeserializationError>where
R: ByteReader,
source§impl Deserializable for StorageMapDelta
impl Deserializable for StorageMapDelta
fn read_from<R>(source: &mut R) -> Result<StorageMapDelta, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountDelta
impl Deserializable for AccountDelta
fn read_from<R>(source: &mut R) -> Result<AccountDelta, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountVaultDelta
impl Deserializable for AccountVaultDelta
fn read_from<R>(
source: &mut R,
) -> Result<AccountVaultDelta, DeserializationError>where
R: ByteReader,
source§impl Deserializable for FungibleAssetDelta
impl Deserializable for FungibleAssetDelta
fn read_from<R>(
source: &mut R,
) -> Result<FungibleAssetDelta, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NonFungibleAssetDelta
impl Deserializable for NonFungibleAssetDelta
fn read_from<R>(
source: &mut R,
) -> Result<NonFungibleAssetDelta, DeserializationError>where
R: ByteReader,
source§impl Deserializable for StorageMap
impl Deserializable for StorageMap
fn read_from<R>(source: &mut R) -> Result<StorageMap, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AccountStorage
impl Deserializable for AccountStorage
fn read_from<R>(source: &mut R) -> Result<AccountStorage, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Account
impl Deserializable for Account
fn read_from<R>(source: &mut R) -> Result<Account, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NonFungibleAsset
impl Deserializable for NonFungibleAsset
fn read_from<R>(
source: &mut R,
) -> Result<NonFungibleAsset, DeserializationError>where
R: ByteReader,
source§impl Deserializable for AssetVault
impl Deserializable for AssetVault
fn read_from<R>(source: &mut R) -> Result<AssetVault, DeserializationError>where
R: ByteReader,
source§impl Deserializable for BlockHeader
impl Deserializable for BlockHeader
fn read_from<R>(source: &mut R) -> Result<BlockHeader, DeserializationError>where
R: ByteReader,
source§impl Deserializable for BlockNoteTree
impl Deserializable for BlockNoteTree
fn read_from<R>(source: &mut R) -> Result<BlockNoteTree, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Block
impl Deserializable for Block
fn read_from<R>(source: &mut R) -> Result<Block, DeserializationError>where
R: ByteReader,
source§impl Deserializable for BlockAccountUpdate
impl Deserializable for BlockAccountUpdate
fn read_from<R>(
source: &mut R,
) -> Result<BlockAccountUpdate, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteAssets
impl Deserializable for NoteAssets
fn read_from<R>(source: &mut R) -> Result<NoteAssets, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteDetails
impl Deserializable for NoteDetails
fn read_from<R>(source: &mut R) -> Result<NoteDetails, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteHeader
impl Deserializable for NoteHeader
fn read_from<R>(source: &mut R) -> Result<NoteHeader, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteInputs
impl Deserializable for NoteInputs
fn read_from<R>(source: &mut R) -> Result<NoteInputs, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteInclusionProof
impl Deserializable for NoteInclusionProof
fn read_from<R>(
source: &mut R,
) -> Result<NoteInclusionProof, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteLocation
impl Deserializable for NoteLocation
fn read_from<R>(source: &mut R) -> Result<NoteLocation, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteMetadata
impl Deserializable for NoteMetadata
fn read_from<R>(source: &mut R) -> Result<NoteMetadata, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteId
impl Deserializable for NoteId
fn read_from<R>(source: &mut R) -> Result<NoteId, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteTag
impl Deserializable for NoteTag
fn read_from<R>(source: &mut R) -> Result<NoteTag, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Nullifier
impl Deserializable for Nullifier
fn read_from<R>(source: &mut R) -> Result<Nullifier, DeserializationError>where
R: ByteReader,
source§impl Deserializable for PartialNote
impl Deserializable for PartialNote
fn read_from<R>(source: &mut R) -> Result<PartialNote, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteRecipient
impl Deserializable for NoteRecipient
fn read_from<R>(source: &mut R) -> Result<NoteRecipient, DeserializationError>where
R: ByteReader,
source§impl Deserializable for NoteScript
impl Deserializable for NoteScript
fn read_from<R>(source: &mut R) -> Result<NoteScript, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Note
impl Deserializable for Note
fn read_from<R>(source: &mut R) -> Result<Note, DeserializationError>where
R: ByteReader,
source§impl Deserializable for OutputNotes
impl Deserializable for OutputNotes
fn read_from<R>(source: &mut R) -> Result<OutputNotes, DeserializationError>where
R: ByteReader,
source§impl Deserializable for InputNoteCommitment
impl Deserializable for InputNoteCommitment
fn read_from<R>(
source: &mut R,
) -> Result<InputNoteCommitment, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ProvenTransaction
impl Deserializable for ProvenTransaction
fn read_from<R>(
source: &mut R,
) -> Result<ProvenTransaction, DeserializationError>where
R: ByteReader,
source§impl Deserializable for TxAccountUpdate
impl Deserializable for TxAccountUpdate
fn read_from<R>(source: &mut R) -> Result<TxAccountUpdate, DeserializationError>where
R: ByteReader,
source§impl Deserializable for TransactionId
impl Deserializable for TransactionId
fn read_from<R>(source: &mut R) -> Result<TransactionId, DeserializationError>where
R: ByteReader,
source§impl Deserializable for TransactionScript
impl Deserializable for TransactionScript
fn read_from<R>(
source: &mut R,
) -> Result<TransactionScript, DeserializationError>where
R: ByteReader,
source§impl Deserializable for TraceInfo
impl Deserializable for TraceInfo
source§impl Deserializable for ProofOptions
impl Deserializable for ProofOptions
source§fn read_from<R>(source: &mut R) -> Result<ProofOptions, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<ProofOptions, DeserializationError>where
R: ByteReader,
Reads proof options from the specified source and returns the result.
§Errors
Returns an error of a valid proof options could not be read from the specified source.
source§impl Deserializable for Commitments
impl Deserializable for Commitments
source§fn read_from<R>(source: &mut R) -> Result<Commitments, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<Commitments, DeserializationError>where
R: ByteReader,
Reads commitments from the specified source and returns the result.
§Errors
Returns an error of a valid Commitments struct could not be read from the specified
source.
source§impl Deserializable for Context
impl Deserializable for Context
source§fn read_from<R>(source: &mut R) -> Result<Context, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<Context, DeserializationError>where
R: ByteReader,
Reads proof context from the specified source and returns the result.
§Errors
Returns an error of a valid Context struct could not be read from the specified source.
source§impl Deserializable for OodFrame
impl Deserializable for OodFrame
source§fn read_from<R>(source: &mut R) -> Result<OodFrame, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<OodFrame, DeserializationError>where
R: ByteReader,
Reads a OOD frame from the specified source and returns the result
§Errors
Returns an error of a valid OOD frame could not be read from the specified source.
source§impl Deserializable for Queries
impl Deserializable for Queries
source§fn read_from<R>(source: &mut R) -> Result<Queries, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<Queries, DeserializationError>where
R: ByteReader,
Reads a query struct from the specified source and returns the result
§Errors
Returns an error of a valid query struct could not be read from the specified source.
source§impl Deserializable for Proof
impl Deserializable for Proof
fn read_from<R>(source: &mut R) -> Result<Proof, DeserializationError>where
R: ByteReader,
source§impl Deserializable for FriProof
impl Deserializable for FriProof
source§fn read_from<R>(source: &mut R) -> Result<FriProof, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<FriProof, DeserializationError>where
R: ByteReader,
Reads a FRI proof from the specified source and returns the result.
§Errors
Returns an error if a valid proof could not be read from the source.