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<T, QS> AppearsOnTable<QS> for IsNull<T> where IsNull<T>: Expression,
T: AppearsOnTable<QS>impl<T, QS> AppearsOnTable<QS> for IsNotNull<T> where IsNotNull<T>: Expression,
T: AppearsOnTable<QS>impl<T, QS> AppearsOnTable<QS> for Asc<T> where Asc<T>: Expression,
T: AppearsOnTable<QS>impl<T, QS> AppearsOnTable<QS> for Desc<T> where Desc<T>: Expression,
T: 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>: Expressionimpl<'a, T: ?Sized, QS> AppearsOnTable<QS> for &'a T where T: AppearsOnTable<QS>,
&'a T: Expressionimpl<A, QS> AppearsOnTable<QS> for (A,) where A: AppearsOnTable<QS>,
(A,): Expressionimpl<A, B, QS> AppearsOnTable<QS> for (A, B) where A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
(A, B): Expressionimpl<A, B, C, QS> AppearsOnTable<QS> for (A, B, C) where A: AppearsOnTable<QS>,
B: AppearsOnTable<QS>,
C: AppearsOnTable<QS>,
(A, B, C): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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): Expressionimpl<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