Trait miden_processor::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§

source

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 source does not contain enough bytes to deserialize Self.
  • Bytes read from the source do not represent a valid value for Self.

Provided Methods§

source

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 bytes do not contain enough information to deserialize Self.
  • The bytes do not represent a valid value for Self.

Note: if bytes contains more data than needed to deserialize self, no error is returned.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl Deserializable for HashFunction

source§

impl Deserializable for SmtLeaf

source§

impl Deserializable for FieldExtension

source§

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

source§

impl Deserializable for u16

source§

impl Deserializable for u32

source§

impl Deserializable for u64

source§

impl Deserializable for u128

source§

impl Deserializable for ()

source§

impl Deserializable for usize

source§

impl Deserializable for String

source§

impl Deserializable for ExecutionProof

source§

impl Deserializable for PublicInputs

source§

impl Deserializable for SourceSpan

source§

impl Deserializable for PubKeyPoly

source§

impl Deserializable for SecretKey

source§

impl Deserializable for Signature

source§

impl Deserializable for SignatureHeader

source§

impl Deserializable for SignaturePoly

source§

impl Deserializable for Nonce

source§

impl Deserializable for RootPath

source§

impl Deserializable for ValuePath

source§

impl Deserializable for SmtProof

source§

impl Deserializable for Smt

source§

impl Deserializable for StoreNode

source§

impl Deserializable for TraceInfo

source§

fn read_from<R>(source: &mut R) -> Result<TraceInfo, DeserializationError>
where R: ByteReader,

Reads TraceInfo from the specified source and returns the result.

§Errors

Returns an error of a valid TraceInfo struct could not be read from the specified source.

source§

impl Deserializable for ProofOptions

source§

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

source§

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

source§

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

source§

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

source§

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

source§

impl Deserializable for FriProof

source§

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.

source§

impl Deserializable for BaseElement

source§

impl Deserializable for BaseElement

source§

impl<B> Deserializable for CubeExtension<B>
where B: ExtensibleField<3>,

source§

impl<K, V> Deserializable for BTreeMap<K, V>

source§

impl<T1> Deserializable for (T1,)
where T1: Deserializable,

source§

impl<T1, T2> Deserializable for (T1, T2)

source§

impl<T1, T2, T3> Deserializable for (T1, T2, T3)

source§

impl<T1, T2, T3, T4> Deserializable for (T1, T2, T3, T4)

source§

impl<T1, T2, T3, T4, T5> Deserializable for (T1, T2, T3, T4, T5)

source§

impl<T1, T2, T3, T4, T5, T6> Deserializable for (T1, T2, T3, T4, T5, T6)

source§

impl<T> Deserializable for Option<T>
where T: Deserializable,

source§

impl<T> Deserializable for BTreeSet<T>
where T: Deserializable + Ord,

source§

impl<T> Deserializable for Vec<T>
where T: Deserializable,

source§

impl<T> Deserializable for Span<T>
where T: Deserializable,

source§

impl<T, const C: usize> Deserializable for [T; C]
where T: Deserializable,

source§

impl<const N: usize> Deserializable for Blake3Digest<N>

Implementors§