pub trait Deserialize<'de>: Sized {
    // Required method
    fn deserialize<D: Deserializer<'de>>(
        deserializer: D
    ) -> Result<Self, D::Error>;
}
Expand description

A datastructure that can be deserialized from any data format supported by SATS.

In most cases, implementations of Deserialize may be #[derive(Deserialize)]d.

The Deserialize trait in SATS performs the same function as serde::Deserialize in serde. See the documentation of serde::Deserialize for more information of the data model.

The lifetime 'de allows us to deserialize lifetime-generic types in a zero-copy fashion.

Required Methods§

source

fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>

Deserialize this value from the given deserializer.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<'de> Deserialize<'de> for &'de str

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for &'de [u8]

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for Cow<'de, str>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for Cow<'de, [u8]>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for bool

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for f32

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for f64

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for i8

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for i16

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for i32

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for i64

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for i128

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for u8

source§

fn deserialize<D: Deserializer<'de>>(deserializer: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for u16

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for u32

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for u64

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for u128

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for ()

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for Box<str>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for String

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for Constraints

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for ColId

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for IndexId

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for SequenceId

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for TableId

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de> Deserialize<'de> for ColList

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de, K: Deserialize<'de> + Ord, V: Deserialize<'de>> Deserialize<'de> for BTreeMap<K, V>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de, T: Deserialize<'de>> Deserialize<'de> for Option<T>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de, T: Deserialize<'de>> Deserialize<'de> for Box<[T]>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de, T: Deserialize<'de>> Deserialize<'de> for Box<T>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de, T: Deserialize<'de>> Deserialize<'de> for Vec<T>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de, T: Deserialize<'de>, E: Deserialize<'de>> Deserialize<'de> for Result<T, E>

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

source§

impl<'de, T: Deserialize<'de>, const N: usize> Deserialize<'de> for [T; N]

source§

fn deserialize<D: Deserializer<'de>>(de: D) -> Result<Self, D::Error>

Implementors§

source§

impl<'de> Deserialize<'de> for AlgebraicType

source§

impl<'de> Deserialize<'de> for BuiltinType

source§

impl<'de> Deserialize<'de> for StAccess

source§

impl<'de> Deserialize<'de> for StTableType

source§

impl<'de> Deserialize<'de> for IndexType

source§

impl<'de> Deserialize<'de> for ArrayType

source§

impl<'de> Deserialize<'de> for ColumnAttribute

source§

impl<'de> Deserialize<'de> for ColumnDef

source§

impl<'de> Deserialize<'de> for ConstraintDef

source§

impl<'de> Deserialize<'de> for IndexDef

source§

impl<'de> Deserialize<'de> for SequenceDef

source§

impl<'de> Deserialize<'de> for TableDef

source§

impl<'de> Deserialize<'de> for Hash

source§

impl<'de> Deserialize<'de> for MapType

source§

impl<'de> Deserialize<'de> for ProductType

source§

impl<'de> Deserialize<'de> for ProductTypeElement

source§

impl<'de> Deserialize<'de> for AlgebraicTypeRef

source§

impl<'de> Deserialize<'de> for SumType

source§

impl<'de> Deserialize<'de> for SumTypeVariant

source§

impl<'de> Deserialize<'de> for Typespace

source§

impl<'de> Deserialize<'de> for F32

source§

impl<'de> Deserialize<'de> for F64