Trait miden_objects::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 AdviceInjectorNode
impl Deserializable for AdviceInjectorNode
fn read_from<R>(
source: &mut R,
) -> Result<AdviceInjectorNode, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Instruction
impl Deserializable for Instruction
fn read_from<R>(source: &mut R) -> Result<Instruction, DeserializationError>where
R: ByteReader,
source§impl Deserializable for Node
impl Deserializable for Node
fn read_from<R>(source: &mut R) -> Result<Node, 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 PublicInputs
impl Deserializable for PublicInputs
fn read_from<R>(source: &mut R) -> Result<PublicInputs, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ModuleImports
impl Deserializable for ModuleImports
fn read_from<R>(source: &mut R) -> Result<ModuleImports, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ProcReExport
impl Deserializable for ProcReExport
fn read_from<R>(source: &mut R) -> Result<ProcReExport, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ProcedureAst
impl Deserializable for ProcedureAst
fn read_from<R>(source: &mut R) -> Result<ProcedureAst, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ProcedureId
impl Deserializable for ProcedureId
fn read_from<R>(source: &mut R) -> Result<ProcedureId, DeserializationError>where
R: ByteReader,
source§impl Deserializable for ProcedureName
impl Deserializable for ProcedureName
fn read_from<R>(source: &mut R) -> Result<ProcedureName, DeserializationError>where
R: ByteReader,
source§impl Deserializable for SourceLocation
impl Deserializable for SourceLocation
fn read_from<R>(source: &mut R) -> Result<SourceLocation, 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 TraceLayout
impl Deserializable for TraceLayout
source§fn read_from<R>(source: &mut R) -> Result<TraceLayout, DeserializationError>where
R: ByteReader,
fn read_from<R>(source: &mut R) -> Result<TraceLayout, DeserializationError>where
R: ByteReader,
Reads TraceLayout from the specified source and returns the result.
§Errors
Returns an error of a valid TraceLayout struct could not be read from the specified
source.
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 StarkProof
impl Deserializable for StarkProof
fn read_from<R>(source: &mut R) -> Result<StarkProof, 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.