Skip to main content

SerializableState

Trait SerializableState 

Source
pub trait SerializableState: Sized {
    type SerializedStateSize: ArraySize;

    // Required methods
    fn serialize(&self) -> Array<u8, Self::SerializedStateSize>;
    fn deserialize(
        serialized_state: &Array<u8, Self::SerializedStateSize>,
    ) -> Result<Self, DeserializeStateError>;
}
Expand description

Types which can serialize the internal state and be restored from it.

§Compatibility

Serialized state can be assumed to be stable across backwards compatible versions of an implementation crate, i.e. any 0.x.y version of a crate should be able to decode data serialized with any other 0.x.z version, but it may not be able to correctly decode data serialized with a non-x version.

This guarantee is a subject to issues such as security fixes.

§SECURITY WARNING

Serialized state may contain sensitive data.

Required Associated Types§

Source

type SerializedStateSize: ArraySize

Size of serialized internal state.

Required Methods§

Source

fn serialize(&self) -> Array<u8, Self::SerializedStateSize>

Serialize and return internal state.

Source

fn deserialize( serialized_state: &Array<u8, Self::SerializedStateSize>, ) -> Result<Self, DeserializeStateError>

Create an object from serialized internal state.

§Errors

If the serialized state could not be deserialized successfully.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl SerializableState for Sha1

Source§

impl SerializableState for Sha1Core

Source§

impl SerializableState for [u8; 1]

Source§

impl SerializableState for [u8; 2]

Source§

impl SerializableState for [u8; 3]

Source§

impl SerializableState for [u8; 4]

Source§

impl SerializableState for [u8; 5]

Source§

impl SerializableState for [u8; 6]

Source§

impl SerializableState for [u8; 7]

Source§

impl SerializableState for [u8; 8]

Source§

impl SerializableState for [u8; 9]

Source§

impl SerializableState for [u8; 10]

Source§

impl SerializableState for [u8; 11]

Source§

impl SerializableState for [u8; 12]

Source§

impl SerializableState for [u8; 13]

Source§

impl SerializableState for [u8; 14]

Source§

impl SerializableState for [u8; 15]

Source§

impl SerializableState for [u8; 16]

Source§

impl SerializableState for [u8; 17]

Source§

impl SerializableState for [u8; 18]

Source§

impl SerializableState for [u8; 19]

Source§

impl SerializableState for [u8; 20]

Source§

impl SerializableState for [u8; 21]

Source§

impl SerializableState for [u8; 22]

Source§

impl SerializableState for [u8; 23]

Source§

impl SerializableState for [u8; 24]

Source§

impl SerializableState for [u8; 25]

Source§

impl SerializableState for [u8; 26]

Source§

impl SerializableState for [u8; 27]

Source§

impl SerializableState for [u8; 28]

Source§

impl SerializableState for [u8; 29]

Source§

impl SerializableState for [u8; 30]

Source§

impl SerializableState for [u8; 31]

Source§

impl SerializableState for [u8; 32]

Source§

impl SerializableState for [u8; 33]

Source§

impl SerializableState for [u8; 34]

Source§

impl SerializableState for [u8; 35]

Source§

impl SerializableState for [u8; 36]

Source§

impl SerializableState for [u8; 37]

Source§

impl SerializableState for [u8; 38]

Source§

impl SerializableState for [u8; 39]

Source§

impl SerializableState for [u8; 40]

Source§

impl SerializableState for [u8; 41]

Source§

impl SerializableState for [u8; 42]

Source§

impl SerializableState for [u8; 43]

Source§

impl SerializableState for [u8; 44]

Source§

impl SerializableState for [u8; 45]

Source§

impl SerializableState for [u8; 46]

Source§

impl SerializableState for [u8; 47]

Source§

impl SerializableState for [u8; 48]

Source§

impl SerializableState for [u8; 49]

Source§

impl SerializableState for [u8; 50]

Source§

impl SerializableState for [u8; 51]

Source§

impl SerializableState for [u8; 52]

Source§

impl SerializableState for [u8; 53]

Source§

impl SerializableState for [u8; 54]

Source§

impl SerializableState for [u8; 55]

Source§

impl SerializableState for [u8; 56]

Source§

impl SerializableState for [u8; 57]

Source§

impl SerializableState for [u8; 58]

Source§

impl SerializableState for [u8; 59]

Source§

impl SerializableState for [u8; 60]

Source§

impl SerializableState for [u8; 61]

Source§

impl SerializableState for [u8; 62]

Source§

impl SerializableState for [u8; 63]

Source§

impl SerializableState for [u8; 64]

Source§

impl SerializableState for [u8; 96]

Source§

impl SerializableState for [u8; 128]

Source§

impl SerializableState for [u8; 192]

Source§

impl SerializableState for [u8; 256]

Source§

impl SerializableState for [u8; 384]

Source§

impl SerializableState for [u8; 448]

Source§

impl SerializableState for [u8; 512]

Source§

impl SerializableState for [u8; 768]

Source§

impl SerializableState for [u8; 896]

Source§

impl SerializableState for [u8; 1024]

Source§

impl SerializableState for [u8; 2048]

Source§

impl SerializableState for [u8; 4096]

Source§

impl SerializableState for [u8; 8192]

Source§

impl SerializableState for [u16; 1]

Source§

impl SerializableState for [u16; 2]

Source§

impl SerializableState for [u16; 3]

Source§

impl SerializableState for [u16; 4]

Source§

impl SerializableState for [u16; 5]

Source§

impl SerializableState for [u16; 6]

Source§

impl SerializableState for [u16; 7]

Source§

impl SerializableState for [u16; 8]

Source§

impl SerializableState for [u16; 9]

Source§

impl SerializableState for [u16; 10]

Source§

impl SerializableState for [u16; 11]

Source§

impl SerializableState for [u16; 12]

Source§

impl SerializableState for [u16; 13]

Source§

impl SerializableState for [u16; 14]

Source§

impl SerializableState for [u16; 15]

Source§

impl SerializableState for [u16; 16]

Source§

impl SerializableState for [u16; 17]

Source§

impl SerializableState for [u16; 18]

Source§

impl SerializableState for [u16; 19]

Source§

impl SerializableState for [u16; 20]

Source§

impl SerializableState for [u16; 21]

Source§

impl SerializableState for [u16; 22]

Source§

impl SerializableState for [u16; 23]

Source§

impl SerializableState for [u16; 24]

Source§

impl SerializableState for [u16; 25]

Source§

impl SerializableState for [u16; 26]

Source§

impl SerializableState for [u16; 27]

Source§

impl SerializableState for [u16; 28]

Source§

impl SerializableState for [u16; 29]

Source§

impl SerializableState for [u16; 30]

Source§

impl SerializableState for [u16; 31]

Source§

impl SerializableState for [u16; 32]

Source§

impl SerializableState for [u16; 48]

Source§

impl SerializableState for [u16; 96]

Source§

impl SerializableState for [u16; 128]

Source§

impl SerializableState for [u16; 192]

Source§

impl SerializableState for [u16; 256]

Source§

impl SerializableState for [u16; 384]

Source§

impl SerializableState for [u16; 448]

Source§

impl SerializableState for [u16; 512]

Source§

impl SerializableState for [u16; 2048]

Source§

impl SerializableState for [u16; 4096]

Source§

impl SerializableState for [u32; 1]

Source§

impl SerializableState for [u32; 2]

Source§

impl SerializableState for [u32; 3]

Source§

impl SerializableState for [u32; 4]

Source§

impl SerializableState for [u32; 5]

Source§

impl SerializableState for [u32; 6]

Source§

impl SerializableState for [u32; 7]

Source§

impl SerializableState for [u32; 8]

Source§

impl SerializableState for [u32; 9]

Source§

impl SerializableState for [u32; 10]

Source§

impl SerializableState for [u32; 11]

Source§

impl SerializableState for [u32; 12]

Source§

impl SerializableState for [u32; 13]

Source§

impl SerializableState for [u32; 14]

Source§

impl SerializableState for [u32; 15]

Source§

impl SerializableState for [u32; 16]

Source§

impl SerializableState for [u32; 24]

Source§

impl SerializableState for [u32; 32]

Source§

impl SerializableState for [u32; 48]

Source§

impl SerializableState for [u32; 64]

Source§

impl SerializableState for [u32; 96]

Source§

impl SerializableState for [u32; 128]

Source§

impl SerializableState for [u32; 192]

Source§

impl SerializableState for [u32; 256]

Source§

impl SerializableState for [u32; 512]

Source§

impl SerializableState for [u32; 1024]

Source§

impl SerializableState for [u32; 2048]

Source§

impl SerializableState for [u64; 1]

Source§

impl SerializableState for [u64; 2]

Source§

impl SerializableState for [u64; 3]

Source§

impl SerializableState for [u64; 4]

Source§

impl SerializableState for [u64; 5]

Source§

impl SerializableState for [u64; 6]

Source§

impl SerializableState for [u64; 7]

Source§

impl SerializableState for [u64; 8]

Source§

impl SerializableState for [u64; 12]

Source§

impl SerializableState for [u64; 16]

Source§

impl SerializableState for [u64; 24]

Source§

impl SerializableState for [u64; 32]

Source§

impl SerializableState for [u64; 48]

Source§

impl SerializableState for [u64; 64]

Source§

impl SerializableState for [u64; 96]

Source§

impl SerializableState for [u64; 128]

Source§

impl SerializableState for [u64; 256]

Source§

impl SerializableState for [u64; 512]

Source§

impl SerializableState for [u64; 1024]

Source§

impl SerializableState for [u128; 1]

Source§

impl SerializableState for [u128; 2]

Source§

impl SerializableState for [u128; 3]

Source§

impl SerializableState for [u128; 4]

Source§

impl SerializableState for [u128; 6]

Source§

impl SerializableState for [u128; 8]

Source§

impl SerializableState for [u128; 12]

Source§

impl SerializableState for [u128; 16]

Source§

impl SerializableState for [u128; 24]

Source§

impl SerializableState for [u128; 32]

Source§

impl SerializableState for [u128; 48]

Source§

impl SerializableState for [u128; 64]

Source§

impl SerializableState for [u128; 128]

Source§

impl SerializableState for [u128; 256]

Source§

impl SerializableState for [u128; 512]

Source§

impl SerializableState for u8

Source§

impl SerializableState for u16

Source§

impl SerializableState for u32

Source§

impl SerializableState for u64

Source§

impl SerializableState for u128

Implementors§

Source§

impl SerializableState for Sha224

Source§

impl SerializableState for Sha256

Source§

impl SerializableState for Sha384

Source§

impl SerializableState for Sha512

Source§

impl SerializableState for Sha256VarCore

Source§

impl SerializableState for Sha512VarCore

Source§

impl SerializableState for Sha512_224

Source§

impl SerializableState for Sha512_256

Source§

impl<T, OutSize> SerializableState for CtOutWrapper<T, OutSize>

Source§

impl<T, S> SerializableState for XofFixedWrapper<T, S>