Schema

Trait Schema 

Source
pub trait Schema {
    const SCHEMA: &'static NamedType;
}
Expand description

A trait that represents a compile time calculated schema

Required Associated Constants§

Source

const SCHEMA: &'static NamedType

A recursive data structure that describes the schema of the given type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Schema for IpAddr

Available on crate feature core-net only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for SocketAddr

Available on crate feature core-net only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for bool

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for char

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for f32

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for f64

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for i8

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for i16

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for i32

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for i64

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for i128

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for str

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for u8

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for u16

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for u32

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for u64

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for u128

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for ()

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for String

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for Arguments<'_>

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for Ipv4Addr

Available on crate feature core-net only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for Ipv6Addr

Available on crate feature core-net only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for SocketAddrV4

Available on crate feature core-net only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for SocketAddrV6

Available on crate feature core-net only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for Duration

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for PathBuf

Available on crate feature use-std only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for Uuid

Available on crate feature uuid-v1_0 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroI8

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroI16

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroI32

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroI64

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroI128

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroU8

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroU16

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroU32

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroU64

Source§

const SCHEMA: &'static NamedType

Source§

impl Schema for NonZeroU128

Source§

const SCHEMA: &'static NamedType

Source§

impl<A: Schema> Schema for (A,)

Source§

const SCHEMA: &'static NamedType

Source§

impl<A: Schema, B: Schema> Schema for (A, B)

Source§

const SCHEMA: &'static NamedType

Source§

impl<A: Schema, B: Schema, C: Schema> Schema for (A, B, C)

Source§

const SCHEMA: &'static NamedType

Source§

impl<A: Schema, B: Schema, C: Schema, D: Schema> Schema for (A, B, C, D)

Source§

const SCHEMA: &'static NamedType

Source§

impl<A: Schema, B: Schema, C: Schema, D: Schema, E: Schema> Schema for (A, B, C, D, E)

Source§

const SCHEMA: &'static NamedType

Source§

impl<A: Schema, B: Schema, C: Schema, D: Schema, E: Schema, F: Schema> Schema for (A, B, C, D, E, F)

Source§

const SCHEMA: &'static NamedType

Source§

impl<Frac> Schema for FixedI8<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = i8::SCHEMA

Source§

impl<Frac> Schema for FixedI16<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = i16::SCHEMA

Source§

impl<Frac> Schema for FixedI32<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = i32::SCHEMA

Source§

impl<Frac> Schema for FixedI64<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = i64::SCHEMA

Source§

impl<Frac> Schema for FixedI128<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = i128::SCHEMA

Source§

impl<Frac> Schema for FixedU8<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = u8::SCHEMA

Source§

impl<Frac> Schema for FixedU16<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = u16::SCHEMA

Source§

impl<Frac> Schema for FixedU32<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = u32::SCHEMA

Source§

impl<Frac> Schema for FixedU64<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = u64::SCHEMA

Source§

impl<Frac> Schema for FixedU128<Frac>

Available on crate feature fixed-v1_0 only.
Source§

const SCHEMA: &'static NamedType = u128::SCHEMA

Source§

impl<K: Schema> Schema for BTreeSet<K>

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<K: Schema> Schema for HashSet<K>

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<K: Schema, V: Schema> Schema for BTreeMap<K, V>

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<K: Schema, V: Schema> Schema for HashMap<K, V>

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<T, const R: usize, const C: usize> Schema for Matrix<T, Const<R>, Const<C>, ArrayStorage<T, R, C>>
where T: Schema + Scalar,

Available on crate feature nalgebra-v0_33 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema + Scalar> Schema for Quaternion<T>

Available on crate feature nalgebra-v0_33 only.
Source§

const SCHEMA: &'static NamedType = nalgebra_v0_33::Vector4<T>::SCHEMA

Source§

impl<T: Schema + ?Sized> Schema for &T

Source§

const SCHEMA: &'static NamedType = T::SCHEMA

Source§

impl<T: Schema> Schema for Option<T>

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema> Schema for [T]

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema> Schema for Box<T>

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType = T::SCHEMA

Source§

impl<T: Schema> Schema for Vec<T>

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema> Schema for Saturating<T>

Available on crate feature core-num-saturating only.
Source§

const SCHEMA: &'static NamedType = T::SCHEMA

Source§

impl<T: Schema> Schema for Wrapping<T>

Source§

const SCHEMA: &'static NamedType = T::SCHEMA

Source§

impl<T: Schema> Schema for Range<T>

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema> Schema for RangeFrom<T>

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema> Schema for RangeInclusive<T>

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema> Schema for RangeTo<T>

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema> Schema for Unit<T>

Available on crate feature nalgebra-v0_33 only.
Source§

const SCHEMA: &'static NamedType = T::SCHEMA

Source§

impl<T: Schema, E: Schema> Schema for Result<T, E>

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema, const N: usize> Schema for [T; N]

Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema, const N: usize> Schema for Vec<T, N>

Available on crate feature heapless-v0_7 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema, const N: usize> Schema for Vec<T, N>

Available on crate feature heapless-v0_8 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<T: Schema, const N: usize> Schema for Array<T, N>

Available on crate feature serde-big-array-v0_5 only.
Source§

const SCHEMA: &'static NamedType = <[T; N] as Schema>::SCHEMA

Source§

impl<T: Schema, const N: usize> Schema for Vec<T, N>

Available on crate feature heapless-v0_9 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<T: ?Sized + Schema + ToOwned> Schema for Cow<'_, T>

Available on crate feature use-std and (crate features alloc or use-std) only.
Source§

const SCHEMA: &'static NamedType = T::SCHEMA

Source§

impl<T: ?Sized> Schema for PhantomData<T>

Source§

const SCHEMA: &'static NamedType

Source§

impl<Tz: TimeZone> Schema for DateTime<Tz>

Available on crate feature chrono-v0_4 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<const N: usize> Schema for String<N>

Available on crate feature heapless-v0_7 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<const N: usize> Schema for String<N>

Available on crate feature heapless-v0_8 only.
Source§

const SCHEMA: &'static NamedType

Source§

impl<const N: usize> Schema for String<N>

Available on crate feature heapless-v0_9 only.
Source§

const SCHEMA: &'static NamedType

Implementors§