Trait diesel::query_source::Queryable [] [src]

pub trait Queryable<ST, DB> where
    DB: Backend + HasSqlType<ST>, 
{ type Row: FromSqlRow<ST, DB>; fn build(row: Self::Row) -> Self; }

Trait indicating that a record can be queried from the database. This trait can be derived automatically using #[derive(Queryable)]. This trait can only be derived for structs, not enums.

Associated Types

Required Methods

Implementations on Foreign Types

impl<DB> Queryable<Date, DB> for NaiveDate where
    DB: Backend + HasSqlType<Date>,
    NaiveDate: FromSqlRow<Date, DB>, 
[src]

[src]

impl<DB> Queryable<Time, DB> for NaiveTime where
    DB: Backend + HasSqlType<Time>,
    NaiveTime: FromSqlRow<Time, DB>, 
[src]

[src]

impl<DB> Queryable<Timestamp, DB> for NaiveDateTime where
    DB: Backend + HasSqlType<Timestamp>,
    NaiveDateTime: FromSqlRow<Timestamp, DB>, 
[src]

[src]

impl<T, ST, DB> Queryable<Nullable<ST>, DB> for Option<T> where
    T: Queryable<ST, DB>,
    DB: Backend + HasSqlType<ST>,
    Option<T::Row>: FromSqlRow<Nullable<ST>, DB>,
    ST: NotNull
[src]

[src]

impl<DB> Queryable<Bool, DB> for bool where
    DB: Backend + HasSqlType<Bool>,
    bool: FromSqlRow<Bool, DB>, 
[src]

[src]

impl<DB> Queryable<SmallInt, DB> for i16 where
    DB: Backend + HasSqlType<SmallInt>,
    i16: FromSqlRow<SmallInt, DB>, 
[src]

[src]

impl<DB> Queryable<Integer, DB> for i32 where
    DB: Backend + HasSqlType<Integer>,
    i32: FromSqlRow<Integer, DB>, 
[src]

[src]

impl<DB> Queryable<BigInt, DB> for i64 where
    DB: Backend + HasSqlType<BigInt>,
    i64: FromSqlRow<BigInt, DB>, 
[src]

[src]

impl<DB> Queryable<Float, DB> for f32 where
    DB: Backend + HasSqlType<Float>,
    f32: FromSqlRow<Float, DB>, 
[src]

[src]

impl<DB> Queryable<Double, DB> for f64 where
    DB: Backend + HasSqlType<Double>,
    f64: FromSqlRow<Double, DB>, 
[src]

[src]

impl<DB> Queryable<Text, DB> for String where
    DB: Backend + HasSqlType<Text>,
    String: FromSqlRow<Text, DB>, 
[src]

[src]

impl<DB> Queryable<Binary, DB> for Vec<u8> where
    DB: Backend + HasSqlType<Binary>,
    Vec<u8>: FromSqlRow<Binary, DB>, 
[src]

[src]

impl<'a, T: ?Sized, ST, DB> Queryable<ST, DB> for Cow<'a, T> where
    T: 'a + ToOwned,
    DB: Backend + HasSqlType<ST>,
    Self: FromSqlRow<ST, DB>, 
[src]

[src]

impl<A, SA, DB> Queryable<(SA,), DB> for (A,) where
    DB: Backend,
    A: Queryable<SA, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<(SA,)>, 
[src]

[src]

impl<A, B, SA, SB, DB> Queryable<(SA, SB), DB> for (A, B) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<(SA, SB)>, 
[src]

[src]

impl<A, B, C, SA, SB, SC, DB> Queryable<(SA, SB, SC), DB> for (A, B, C) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<(SA, SB, SC)>, 
[src]

[src]

impl<A, B, C, D, SA, SB, SC, SD, DB> Queryable<(SA, SB, SC, SD), DB> for (A, B, C, D) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<(SA, SB, SC, SD)>, 
[src]

[src]

impl<A, B, C, D, E, SA, SB, SC, SD, SE, DB> Queryable<(SA, SB, SC, SD, SE), DB> for (A, B, C, D, E) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<(SA, SB, SC, SD, SE)>, 
[src]

[src]

impl<A, B, C, D, E, F, SA, SB, SC, SD, SE, SF, DB> Queryable<(SA, SB, SC, SD, SE, SF), DB> for (A, B, C, D, E, F) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, SA, SB, SC, SD, SE, SF, SG, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG), DB> for (A, B, C, D, E, F, G) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, SA, SB, SC, SD, SE, SF, SG, SH, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH), DB> for (A, B, C, D, E, F, G, H) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, SA, SB, SC, SD, SE, SF, SG, SH, SI, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI), DB> for (A, B, C, D, E, F, G, H, I) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, J, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ), DB> for (A, B, C, D, E, F, G, H, I, J) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    J: Queryable<SJ, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<SJ>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, J, K, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK), DB> for (A, B, C, D, E, F, G, H, I, J, K) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    J: Queryable<SJ, DB>,
    K: Queryable<SK, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<SJ>,
    DB: HasSqlType<SK>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL), DB> for (A, B, C, D, E, F, G, H, I, J, K, L) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    J: Queryable<SJ, DB>,
    K: Queryable<SK, DB>,
    L: Queryable<SL, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<SJ>,
    DB: HasSqlType<SK>,
    DB: HasSqlType<SL>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM), DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    J: Queryable<SJ, DB>,
    K: Queryable<SK, DB>,
    L: Queryable<SL, DB>,
    M: Queryable<SM, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<SJ>,
    DB: HasSqlType<SK>,
    DB: HasSqlType<SL>,
    DB: HasSqlType<SM>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN), DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    J: Queryable<SJ, DB>,
    K: Queryable<SK, DB>,
    L: Queryable<SL, DB>,
    M: Queryable<SM, DB>,
    N: Queryable<SN, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<SJ>,
    DB: HasSqlType<SK>,
    DB: HasSqlType<SL>,
    DB: HasSqlType<SM>,
    DB: HasSqlType<SN>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO), DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    J: Queryable<SJ, DB>,
    K: Queryable<SK, DB>,
    L: Queryable<SL, DB>,
    M: Queryable<SM, DB>,
    N: Queryable<SN, DB>,
    O: Queryable<SO, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<SJ>,
    DB: HasSqlType<SK>,
    DB: HasSqlType<SL>,
    DB: HasSqlType<SM>,
    DB: HasSqlType<SN>,
    DB: HasSqlType<SO>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO)>, 
[src]

[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP, DB> Queryable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP), DB> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
    DB: Backend,
    A: Queryable<SA, DB>,
    B: Queryable<SB, DB>,
    C: Queryable<SC, DB>,
    D: Queryable<SD, DB>,
    E: Queryable<SE, DB>,
    F: Queryable<SF, DB>,
    G: Queryable<SG, DB>,
    H: Queryable<SH, DB>,
    I: Queryable<SI, DB>,
    J: Queryable<SJ, DB>,
    K: Queryable<SK, DB>,
    L: Queryable<SL, DB>,
    M: Queryable<SM, DB>,
    N: Queryable<SN, DB>,
    O: Queryable<SO, DB>,
    P: Queryable<SP, DB>,
    DB: HasSqlType<SA>,
    DB: HasSqlType<SB>,
    DB: HasSqlType<SC>,
    DB: HasSqlType<SD>,
    DB: HasSqlType<SE>,
    DB: HasSqlType<SF>,
    DB: HasSqlType<SG>,
    DB: HasSqlType<SH>,
    DB: HasSqlType<SI>,
    DB: HasSqlType<SJ>,
    DB: HasSqlType<SK>,
    DB: HasSqlType<SL>,
    DB: HasSqlType<SM>,
    DB: HasSqlType<SN>,
    DB: HasSqlType<SO>,
    DB: HasSqlType<SP>,
    DB: HasSqlType<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP)>, 
[src]

[src]

impl<DB> Queryable<Numeric, DB> for BigDecimal where
    DB: Backend + HasSqlType<Numeric>,
    BigDecimal: FromSqlRow<Numeric, DB>, 
[src]

[src]

impl<DB> Queryable<Datetime, DB> for NaiveDateTime where
    DB: Backend + HasSqlType<Datetime>,
    NaiveDateTime: FromSqlRow<Datetime, DB>, 
[src]

[src]

impl<DB> Queryable<Tinyint, DB> for i8 where
    DB: Backend + HasSqlType<Tinyint>,
    i8: FromSqlRow<Tinyint, DB>, 
[src]

[src]

impl<T, ST> Queryable<Array<ST>, Pg> for Vec<T> where
    T: FromSql<ST, Pg> + Queryable<ST, Pg>,
    Pg: HasSqlType<ST>, 
[src]

[src]

impl<T, ST> Queryable<Range<ST>, Pg> for (Bound<T>, Bound<T>) where
    T: FromSql<ST, Pg> + Queryable<ST, Pg>,
    Pg: HasSqlType<ST> + HasSqlType<Range<ST>>, 
[src]

[src]

impl<DB> Queryable<Timestamp, DB> for SystemTime where
    DB: Backend + HasSqlType<Timestamp>,
    SystemTime: FromSqlRow<Timestamp, DB>, 
[src]

[src]

impl<DB> Queryable<Timestamptz, DB> for NaiveDateTime where
    DB: Backend + HasSqlType<Timestamptz>,
    NaiveDateTime: FromSqlRow<Timestamptz, DB>, 
[src]

[src]

impl<DB> Queryable<Timestamptz, DB> for DateTime<Utc> where
    DB: Backend + HasSqlType<Timestamptz>,
    DateTime<Utc>: FromSqlRow<Timestamptz, DB>, 
[src]

[src]

impl<DB> Queryable<Timestamp, DB> for Timespec where
    DB: Backend + HasSqlType<Timestamp>,
    Timespec: FromSqlRow<Timestamp, DB>, 
[src]

[src]

impl<DB> Queryable<MacAddr, DB> for [u8; 6] where
    DB: Backend + HasSqlType<MacAddr>,
    [u8; 6]: FromSqlRow<MacAddr, DB>, 
[src]

[src]

impl<DB> Queryable<Inet, DB> for IpNetwork where
    DB: Backend + HasSqlType<Inet>,
    IpNetwork: FromSqlRow<Inet, DB>, 
[src]

[src]

impl<DB> Queryable<Cidr, DB> for IpNetwork where
    DB: Backend + HasSqlType<Cidr>,
    IpNetwork: FromSqlRow<Cidr, DB>, 
[src]

[src]

impl<DB> Queryable<Oid, DB> for u32 where
    DB: Backend + HasSqlType<Oid>,
    u32: FromSqlRow<Oid, DB>, 
[src]

[src]

impl<DB> Queryable<Uuid, DB> for Uuid where
    DB: Backend + HasSqlType<Uuid>,
    Uuid: FromSqlRow<Uuid, DB>, 
[src]

[src]

impl<DB> Queryable<Json, DB> for Value where
    DB: Backend + HasSqlType<Json>,
    Value: FromSqlRow<Json, DB>, 
[src]

[src]

impl<DB> Queryable<Jsonb, DB> for Value where
    DB: Backend + HasSqlType<Jsonb>,
    Value: FromSqlRow<Jsonb, DB>, 
[src]

[src]

impl<DB> Queryable<Date, DB> for String where
    DB: Backend + HasSqlType<Date>,
    String: FromSqlRow<Date, DB>, 
[src]

[src]

impl<DB> Queryable<Time, DB> for String where
    DB: Backend + HasSqlType<Time>,
    String: FromSqlRow<Time, DB>, 
[src]

[src]

impl<DB> Queryable<Timestamp, DB> for String where
    DB: Backend + HasSqlType<Timestamp>,
    String: FromSqlRow<Timestamp, DB>, 
[src]

[src]

Implementors