Trait diesel::expression::AppearsOnTable
[−]
[src]
pub trait AppearsOnTable<QS: ?Sized>: Expression { }
Indicates that all elements of an expression are valid given a from clause.
This is used to ensure that users.filter(posts::id.eq(1))
fails to
compile. This constraint is only used in places where the nullability of a
SQL type doesn't matter (everything except select
and returning
). For
places where nullability is important, SelectableExpression
is used
instead.
Implementors
impl<T, QS> AppearsOnTable<QS> for Max<T> where
Max<T>: Expression,
T: AppearsOnTable<QS>,impl<T, QS> AppearsOnTable<QS> for Min<T> where
Min<T>: Expression,
T: AppearsOnTable<QS>,impl<T, QS> AppearsOnTable<QS> for Sum<T> where
Sum<T>: Expression,
T: AppearsOnTable<QS>,impl<T, QS> AppearsOnTable<QS> for Avg<T> where
Avg<T>: Expression,
T: AppearsOnTable<QS>,impl<QS> AppearsOnTable<QS> for now where
now: Expression,impl<Expr, QS> AppearsOnTable<QS> for IsNull<Expr> where
IsNull<Expr>: Expression,
Expr: AppearsOnTable<QS>,impl<Expr, QS> AppearsOnTable<QS> for IsNotNull<Expr> where
IsNotNull<Expr>: Expression,
Expr: AppearsOnTable<QS>,impl<Expr, QS> AppearsOnTable<QS> for Asc<Expr> where
Asc<Expr>: Expression,
Expr: AppearsOnTable<QS>,impl<Expr, QS> AppearsOnTable<QS> for Desc<Expr> where
Desc<Expr>: Expression,
Expr: AppearsOnTable<QS>,impl<QS, ST> AppearsOnTable<QS> for SqlLiteral<ST>
impl<T: ?Sized, QS> AppearsOnTable<QS> for Box<T> where
T: AppearsOnTable<QS>,
Box<T>: Expression,impl<'a, T: ?Sized, QS> AppearsOnTable<QS> for &'a T where
T: AppearsOnTable<QS>,
&'a T: Expression,impl<A, QS> AppearsOnTable<QS> for (A,) where
A: AppearsOnTable<QS>,
(A,): Expression,impl<A, B, QS> AppearsOnTable<QS> for (A, B) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
(A, B): Expression,impl<A, B, C, QS> AppearsOnTable<QS> for (A, B, C) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
(A, B, C): Expression,impl<A, B, C, D, QS> AppearsOnTable<QS> for (A, B, C, D) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
(A, B, C, D): Expression,impl<A, B, C, D, E, QS> AppearsOnTable<QS> for (A, B, C, D, E) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
(A, B, C, D, E): Expression,impl<A, B, C, D, E, F, QS> AppearsOnTable<QS> for (A, B, C, D, E, F) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
(A, B, C, D, E, F): Expression,impl<A, B, C, D, E, F, G, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
(A, B, C, D, E, F, G): Expression,impl<A, B, C, D, E, F, G, H, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H): Expression,impl<A, B, C, D, E, F, G, H, I, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I): Expression,impl<A, B, C, D, E, F, G, H, I, J, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I, J) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
J: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I, J): Expression,impl<A, B, C, D, E, F, G, H, I, J, K, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I, J, K) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
J: AppearsOnTable<QS>,
K: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I, J, K): Expression,impl<A, B, C, D, E, F, G, H, I, J, K, L, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I, J, K, L) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
J: AppearsOnTable<QS>,
K: AppearsOnTable<QS>,
L: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I, J, K, L): Expression,impl<A, B, C, D, E, F, G, H, I, J, K, L, M, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I, J, K, L, M) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
J: AppearsOnTable<QS>,
K: AppearsOnTable<QS>,
L: AppearsOnTable<QS>,
M: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I, J, K, L, M): Expression,impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
J: AppearsOnTable<QS>,
K: AppearsOnTable<QS>,
L: AppearsOnTable<QS>,
M: AppearsOnTable<QS>,
N: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I, J, K, L, M, N): Expression,impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
J: AppearsOnTable<QS>,
K: AppearsOnTable<QS>,
L: AppearsOnTable<QS>,
M: AppearsOnTable<QS>,
N: AppearsOnTable<QS>,
O: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O): Expression,impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, QS> AppearsOnTable<QS> for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) where
A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
D: AppearsOnTable<QS>,
E: AppearsOnTable<QS>,
F: AppearsOnTable<QS>,
G: AppearsOnTable<QS>,
H: AppearsOnTable<QS>,
I: AppearsOnTable<QS>,
J: AppearsOnTable<QS>,
K: AppearsOnTable<QS>,
L: AppearsOnTable<QS>,
M: AppearsOnTable<QS>,
N: AppearsOnTable<QS>,
O: AppearsOnTable<QS>,
P: AppearsOnTable<QS>,
(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P): Expression,