Trait diesel::expression::AsExpression [−][src]
pub trait AsExpression<T> { type Expression: Expression<SqlType = T>; fn as_expression(self) -> Self::Expression; }
Expand description
Converts a type to its representation for use in Diesel’s query builder.
This trait is used directly. Apps should typically use IntoSql
instead.
Implementations of this trait will generally do one of 3 things:
-
Return
self
for types which are already parts of Diesel’s query builder -
Perform some implicit coercion (for example, allowing
now
to be used as bothTimestamp
andTimestamptz
. -
Indicate that the type has data which will be sent separately from the query. This is generally referred as a “bind parameter”. Types which implement
ToSql
will generally implementAsExpression
this way.
Deriving
This trait can be automatically derived for any type which implements ToSql
.
The type must be annotated with #[sql_type = "SomeType"]
.
If that annotation appears multiple times,
implementations will be generated for each one of them.
This will generate the following impls:
impl AsExpression<SqlType> for YourType
impl AsExpression<Nullable<SqlType>> for YourType
impl AsExpression<SqlType> for &'a YourType
impl AsExpression<Nullable<SqlType>> for &'a YourType
impl AsExpression<SqlType> for &'a &'b YourType
impl AsExpression<Nullable<SqlType>> for &'a &'b YourType
If your type is unsized,
you can specify this by adding the annotation #[diesel(not_sized)]
.
This will skip the impls for non-reference types.
Associated Types
type Expression: Expression<SqlType = T>
[src]
type Expression: Expression<SqlType = T>
[src]The expression being returned
Required methods
fn as_expression(self) -> Self::Expression
[src]
fn as_expression(self) -> Self::Expression
[src]Perform the conversion
Implementations on Foreign Types
type Expression = Bound<Array<ST>, Self>
type Expression = Bound<Nullable<Array<ST>>, Self>
type Expression = Bound<Array<ST>, Self>
type Expression = Bound<Nullable<Array<ST>>, Self>
type Expression = Bound<Array<ST>, Self>
type Expression = Bound<Nullable<Array<ST>>, Self>
type Expression = Bound<Array<ST>, Self>
type Expression = Bound<Nullable<Array<ST>>, Self>
type Expression = Bound<Array<ST>, Self>
type Expression = Bound<Nullable<Array<ST>>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Json, Self>
type Expression = Bound<Nullable<Json>, Self>
type Expression = Bound<Json, Self>
type Expression = Bound<Nullable<Json>, Self>
type Expression = Bound<Json, Self>
type Expression = Bound<Nullable<Json>, Self>
type Expression = Bound<Jsonb, Self>
type Expression = Bound<Nullable<Jsonb>, Self>
type Expression = Bound<Jsonb, Self>
type Expression = Bound<Nullable<Jsonb>, Self>
type Expression = Bound<Jsonb, Self>
type Expression = Bound<Nullable<Jsonb>, Self>
type Expression = Bound<MacAddr, Self>
type Expression = Bound<Nullable<MacAddr>, Self>
type Expression = Bound<MacAddr, Self>
type Expression = Bound<Nullable<MacAddr>, Self>
type Expression = Bound<MacAddr, Self>
type Expression = Bound<Nullable<MacAddr>, Self>
type Expression = Bound<Inet, Self>
type Expression = Bound<Nullable<Inet>, Self>
type Expression = Bound<Inet, Self>
type Expression = Bound<Nullable<Inet>, Self>
type Expression = Bound<Inet, Self>
type Expression = Bound<Nullable<Inet>, Self>
type Expression = Bound<Cidr, Self>
type Expression = Bound<Nullable<Cidr>, Self>
type Expression = Bound<Cidr, Self>
type Expression = Bound<Nullable<Cidr>, Self>
type Expression = Bound<Cidr, Self>
type Expression = Bound<Nullable<Cidr>, Self>
type Expression = SqlBound<Range<ST>, Self>
type Expression = SqlBound<Range<ST>, Self>
type Expression = SqlBound<Nullable<Range<ST>>, Self>
type Expression = SqlBound<Nullable<Range<ST>>, Self>
impl<A, SA> AsExpression<Record<(SA,)>> for (A,) where
A: AsExpression<SA>,
PgTuple<(A::Expression,)>: Expression<SqlType = Record<(SA,)>>,
[src]
impl<A, SA> AsExpression<Record<(SA,)>> for (A,) where
A: AsExpression<SA>,
PgTuple<(A::Expression,)>: Expression<SqlType = Record<(SA,)>>,
[src]type Expression = PgTuple<(A::Expression,)>
impl<A, B, SA, SB> AsExpression<Record<(SA, SB)>> for (A, B) where
A: AsExpression<SA>,
B: AsExpression<SB>,
PgTuple<(A::Expression, B::Expression)>: Expression<SqlType = Record<(SA, SB)>>,
[src]
impl<A, B, SA, SB> AsExpression<Record<(SA, SB)>> for (A, B) where
A: AsExpression<SA>,
B: AsExpression<SB>,
PgTuple<(A::Expression, B::Expression)>: Expression<SqlType = Record<(SA, SB)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression)>
impl<A, B, C, SA, SB, SC> AsExpression<Record<(SA, SB, SC)>> for (A, B, C) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
PgTuple<(A::Expression, B::Expression, C::Expression)>: Expression<SqlType = Record<(SA, SB, SC)>>,
[src]
impl<A, B, C, SA, SB, SC> AsExpression<Record<(SA, SB, SC)>> for (A, B, C) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
PgTuple<(A::Expression, B::Expression, C::Expression)>: Expression<SqlType = Record<(SA, SB, SC)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression)>
impl<A, B, C, D, SA, SB, SC, SD> AsExpression<Record<(SA, SB, SC, SD)>> for (A, B, C, D) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD)>>,
[src]
impl<A, B, C, D, SA, SB, SC, SD> AsExpression<Record<(SA, SB, SC, SD)>> for (A, B, C, D) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression)>
impl<A, B, C, D, E, SA, SB, SC, SD, SE> AsExpression<Record<(SA, SB, SC, SD, SE)>> for (A, B, C, D, E) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE)>>,
[src]
impl<A, B, C, D, E, SA, SB, SC, SD, SE> AsExpression<Record<(SA, SB, SC, SD, SE)>> for (A, B, C, D, E) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression)>
impl<A, B, C, D, E, F, SA, SB, SC, SD, SE, SF> AsExpression<Record<(SA, SB, SC, SD, SE, SF)>> for (A, B, C, D, E, F) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF)>>,
[src]
impl<A, B, C, D, E, F, SA, SB, SC, SD, SE, SF> AsExpression<Record<(SA, SB, SC, SD, SE, SF)>> for (A, B, C, D, E, F) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression)>
impl<A, B, C, D, E, F, G, SA, SB, SC, SD, SE, SF, SG> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG)>> for (A, B, C, D, E, F, G) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG)>>,
[src]
impl<A, B, C, D, E, F, G, SA, SB, SC, SD, SE, SF, SG> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG)>> for (A, B, C, D, E, F, G) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression)>
impl<A, B, C, D, E, F, G, H, SA, SB, SC, SD, SE, SF, SG, SH> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH)>> for (A, B, C, D, E, F, G, H) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH)>>,
[src]
impl<A, B, C, D, E, F, G, H, SA, SB, SC, SD, SE, SF, SG, SH> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH)>> for (A, B, C, D, E, F, G, H) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression)>
impl<A, B, C, D, E, F, G, H, I, SA, SB, SC, SD, SE, SF, SG, SH, SI> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI)>> for (A, B, C, D, E, F, G, H, I) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI)>>,
[src]
impl<A, B, C, D, E, F, G, H, I, SA, SB, SC, SD, SE, SF, SG, SH, SI> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI)>> for (A, B, C, D, E, F, G, H, I) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression)>
impl<A, B, C, D, E, F, G, H, I, J, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ)>> for (A, B, C, D, E, F, G, H, I, J) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ)>>,
[src]
impl<A, B, C, D, E, F, G, H, I, J, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ)>> for (A, B, C, D, E, F, G, H, I, J) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression)>
impl<A, B, C, D, E, F, G, H, I, J, K, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK)>> for (A, B, C, D, E, F, G, H, I, J, K) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK)>>,
[src]
impl<A, B, C, D, E, F, G, H, I, J, K, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK)>> for (A, B, C, D, E, F, G, H, I, J, K) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression)>
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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL)>> for (A, B, C, D, E, F, G, H, I, J, K, L) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL)>>,
[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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL)>> for (A, B, C, D, E, F, G, H, I, J, K, L) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression)>
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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM)>>,
[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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression)>
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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
N: AsExpression<SN>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN)>>,
[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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
N: AsExpression<SN>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression)>
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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
N: AsExpression<SN>,
O: AsExpression<SO>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression, O::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO)>>,
[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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
N: AsExpression<SN>,
O: AsExpression<SO>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression, O::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression, O::Expression)>
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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
N: AsExpression<SN>,
O: AsExpression<SO>,
P: AsExpression<SP>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression, O::Expression, P::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP)>>,
[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> AsExpression<Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP)>> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
A: AsExpression<SA>,
B: AsExpression<SB>,
C: AsExpression<SC>,
D: AsExpression<SD>,
E: AsExpression<SE>,
F: AsExpression<SF>,
G: AsExpression<SG>,
H: AsExpression<SH>,
I: AsExpression<SI>,
J: AsExpression<SJ>,
K: AsExpression<SK>,
L: AsExpression<SL>,
M: AsExpression<SM>,
N: AsExpression<SN>,
O: AsExpression<SO>,
P: AsExpression<SP>,
PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression, O::Expression, P::Expression)>: Expression<SqlType = Record<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP)>>,
[src]type Expression = PgTuple<(A::Expression, B::Expression, C::Expression, D::Expression, E::Expression, F::Expression, G::Expression, H::Expression, I::Expression, J::Expression, K::Expression, L::Expression, M::Expression, N::Expression, O::Expression, P::Expression)>
type Expression = Bound<Uuid, Self>
type Expression = Bound<Nullable<Uuid>, Self>
type Expression = Bound<Uuid, Self>
type Expression = Bound<Nullable<Uuid>, Self>
type Expression = Bound<Uuid, Self>
type Expression = Bound<Nullable<Uuid>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Datetime, Self>
type Expression = Bound<Nullable<Datetime>, Self>
type Expression = Bound<Datetime, Self>
type Expression = Bound<Nullable<Datetime>, Self>
type Expression = Bound<Datetime, Self>
type Expression = Bound<Nullable<Datetime>, Self>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Timestamptz, Self>
impl<'expr2, 'expr, Tz: TimeZone> AsExpression<Nullable<Timestamptz>> for &'expr2 &'expr DateTime<Tz>
[src]
impl<'expr2, 'expr, Tz: TimeZone> AsExpression<Nullable<Timestamptz>> for &'expr2 &'expr DateTime<Tz>
[src]type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Numeric, Self>
type Expression = Bound<Nullable<Numeric>, Self>
type Expression = Bound<Numeric, Self>
type Expression = Bound<Nullable<Numeric>, Self>
type Expression = Bound<Numeric, Self>
type Expression = Bound<Nullable<Numeric>, Self>
type Expression = Bound<Nullable<ST>, Self>
type Expression = Bound<Nullable<ST>, Self>
type Expression = Bound<Bool, Self>
type Expression = Bound<Nullable<Bool>, Self>
type Expression = Bound<Bool, Self>
type Expression = Bound<Nullable<Bool>, Self>
type Expression = Bound<Bool, Self>
type Expression = Bound<Nullable<Bool>, Self>
type Expression = Bound<TinyInt, Self>
type Expression = Bound<Nullable<TinyInt>, Self>
type Expression = Bound<TinyInt, Self>
type Expression = Bound<Nullable<TinyInt>, Self>
type Expression = Bound<TinyInt, Self>
type Expression = Bound<Nullable<TinyInt>, Self>
type Expression = Bound<SmallInt, Self>
type Expression = Bound<Nullable<SmallInt>, Self>
type Expression = Bound<SmallInt, Self>
type Expression = Bound<Nullable<SmallInt>, Self>
type Expression = Bound<SmallInt, Self>
type Expression = Bound<Nullable<SmallInt>, Self>
type Expression = Bound<Integer, Self>
type Expression = Bound<Nullable<Integer>, Self>
type Expression = Bound<Integer, Self>
type Expression = Bound<Nullable<Integer>, Self>
type Expression = Bound<Integer, Self>
type Expression = Bound<Nullable<Integer>, Self>
type Expression = Bound<BigInt, Self>
type Expression = Bound<Nullable<BigInt>, Self>
type Expression = Bound<BigInt, Self>
type Expression = Bound<Nullable<BigInt>, Self>
type Expression = Bound<BigInt, Self>
type Expression = Bound<Nullable<BigInt>, Self>
type Expression = Bound<Unsigned<TinyInt>, Self>
type Expression = Bound<Nullable<Unsigned<TinyInt>>, Self>
type Expression = Bound<Unsigned<TinyInt>, Self>
type Expression = Bound<Nullable<Unsigned<TinyInt>>, Self>
type Expression = Bound<Unsigned<TinyInt>, Self>
type Expression = Bound<Nullable<Unsigned<TinyInt>>, Self>
type Expression = Bound<Unsigned<SmallInt>, Self>
type Expression = Bound<Nullable<Unsigned<SmallInt>>, Self>
type Expression = Bound<Unsigned<SmallInt>, Self>
type Expression = Bound<Nullable<Unsigned<SmallInt>>, Self>
type Expression = Bound<Unsigned<SmallInt>, Self>
type Expression = Bound<Nullable<Unsigned<SmallInt>>, Self>
type Expression = Bound<Unsigned<Integer>, Self>
type Expression = Bound<Nullable<Unsigned<Integer>>, Self>
type Expression = Bound<Unsigned<Integer>, Self>
type Expression = Bound<Nullable<Unsigned<Integer>>, Self>
type Expression = Bound<Unsigned<Integer>, Self>
type Expression = Bound<Nullable<Unsigned<Integer>>, Self>
type Expression = Bound<Oid, Self>
type Expression = Bound<Nullable<Oid>, Self>
type Expression = Bound<Oid, Self>
type Expression = Bound<Nullable<Oid>, Self>
type Expression = Bound<Oid, Self>
type Expression = Bound<Nullable<Oid>, Self>
type Expression = Bound<Unsigned<BigInt>, Self>
type Expression = Bound<Nullable<Unsigned<BigInt>>, Self>
type Expression = Bound<Unsigned<BigInt>, Self>
type Expression = Bound<Nullable<Unsigned<BigInt>>, Self>
type Expression = Bound<Unsigned<BigInt>, Self>
type Expression = Bound<Nullable<Unsigned<BigInt>>, Self>
type Expression = Bound<Float, Self>
type Expression = Bound<Nullable<Float>, Self>
type Expression = Bound<Float, Self>
type Expression = Bound<Nullable<Float>, Self>
type Expression = Bound<Float, Self>
type Expression = Bound<Nullable<Float>, Self>
type Expression = Bound<Double, Self>
type Expression = Bound<Nullable<Double>, Self>
type Expression = Bound<Double, Self>
type Expression = Bound<Nullable<Double>, Self>
type Expression = Bound<Double, Self>
type Expression = Bound<Nullable<Double>, Self>
type Expression = Bound<Text, Self>
type Expression = Bound<Nullable<Text>, Self>
type Expression = Bound<Text, Self>
type Expression = Bound<Nullable<Text>, Self>
type Expression = Bound<Text, Self>
type Expression = Bound<Nullable<Text>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Text, Self>
type Expression = Bound<Nullable<Text>, Self>
type Expression = Bound<Text, Self>
type Expression = Bound<Nullable<Text>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Binary, Self>
type Expression = Bound<Nullable<Binary>, Self>
type Expression = Bound<Binary, Self>
type Expression = Bound<Nullable<Binary>, Self>
type Expression = Bound<Binary, Self>
type Expression = Bound<Nullable<Binary>, Self>
type Expression = Bound<Binary, Self>
type Expression = Bound<Nullable<Binary>, Self>
type Expression = Bound<Binary, Self>
type Expression = Bound<Nullable<Binary>, Self>
impl<'a, T: ?Sized, ST> AsExpression<ST> for Cow<'a, T> where
T: 'a + ToOwned,
Bound<ST, Cow<'a, T>>: Expression<SqlType = ST>,
[src]
impl<'a, T: ?Sized, ST> AsExpression<ST> for Cow<'a, T> where
T: 'a + ToOwned,
Bound<ST, Cow<'a, T>>: Expression<SqlType = ST>,
[src]type Expression = Bound<ST, Self>
impl<'a, 'b, T: ?Sized, ST> AsExpression<ST> for &'b Cow<'a, T> where
T: 'a + ToOwned,
Bound<ST, &'b T>: Expression<SqlType = ST>,
[src]
impl<'a, 'b, T: ?Sized, ST> AsExpression<ST> for &'b Cow<'a, T> where
T: 'a + ToOwned,
Bound<ST, &'b T>: Expression<SqlType = ST>,
[src]type Expression = Bound<ST, &'b T>
Implementors
type Expression = Bound<Money, Self>
type Expression = Coerce<now, Timestamptz>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Interval, Self>
type Expression = Bound<Nullable<Money>, Self>
type Expression = Coerce<now, Nullable<Timestamptz>>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Nullable<Interval>, Self>
type Expression = Bound<Nullable<Numeric>, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Coerce<now, Nullable<Timestamp>>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Numeric, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Money, Self>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Interval, Self>
type Expression = Bound<Nullable<Money>, Self>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Nullable<Interval>, Self>
type Expression = Bound<Nullable<Numeric>, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Numeric, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Bound<Money, Self>
type Expression = Bound<Timestamptz, Self>
type Expression = Bound<Date, Self>
type Expression = Bound<Interval, Self>
type Expression = Bound<Nullable<Money>, Self>
type Expression = Bound<Nullable<Timestamptz>, Self>
type Expression = Bound<Nullable<Date>, Self>
type Expression = Bound<Nullable<Interval>, Self>
type Expression = Bound<Nullable<Numeric>, Self>
type Expression = Bound<Nullable<Time>, Self>
type Expression = Bound<Nullable<Timestamp>, Self>
type Expression = Bound<Numeric, Self>
type Expression = Bound<Time, Self>
type Expression = Bound<Timestamp, Self>
type Expression = Self