Skip to main content

Queryable

Trait Queryable 

Source
pub trait Queryable: Sized {
    // Required method
    fn decode(value: &Value) -> Result<Self, DecodeError>;
}
Expand description

A type a query result can be decoded into — implemented for the scalars Pylon returns, for Option/Vec of those, and derivable for a row struct or a schema enum with #[derive(Queryable)].

Required Methods§

Source

fn decode(value: &Value) -> Result<Self, DecodeError>

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 Queryable for DateTime<Utc>

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for NaiveDate

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for NaiveDateTime

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for NaiveTime

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for String

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for Uuid

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for Vec<u8>

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for bool

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for f32

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for f64

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for i16

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for i32

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for i64

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for u16

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for u32

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl Queryable for u64

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl<T: Queryable> Queryable for Option<T>

An empty set decodes as None; anything else has to decode as T.

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Source§

impl<T: Queryable> Queryable for Vec<T>

A multi pointer or any other set-valued result. A single (non-Array) value decodes as a one-element Vec — a shape’s cardinality is the query’s business, and rejecting it here would make Vec<T> unusable for a pointer Pylon happens to return unwrapped.

Source§

fn decode(value: &Value) -> Result<Self, DecodeError>

Implementors§

Source§

impl Queryable for Value

Decoding Value into itself — lets query::<Value, _>(...) (the untyped path every caller used before Queryable existed) go through the same generic method as a derived row struct.