Trait diesel::expression::SelectableExpression
[−]
[src]
pub trait SelectableExpression<QS, Type = Self::SqlType>: Expression { }
Indicates that an expression can be selected from a source. The second type argument is optional, but is used to indicate that the right side of a left outer join is nullable, even if it wasn't before.
Columns will implement this for their table. Certain special types, like
CountStar
and Bound
will implement this for
all sources. All other expressions will inherit this from their children.
Implementors
impl<T: Expression, QS> SelectableExpression<QS> for Max<T>
impl<T: Expression, QS> SelectableExpression<QS> for Min<T>
impl<ST, T, QS> SelectableExpression<QS> for Sum<T> where ST: Foldable, T: Expression<SqlType=ST>
impl<ST, T, QS> SelectableExpression<QS> for Avg<T> where ST: Foldable, T: Expression<SqlType=ST>
impl<QS> SelectableExpression<QS> for now
impl<T, QS> SelectableExpression<QS> for IsNull<T> where T: SelectableExpression<QS>
impl<T, QS> SelectableExpression<QS> for IsNotNull<T> where T: SelectableExpression<QS>
impl<T, QS> SelectableExpression<QS> for Asc<T> where T: SelectableExpression<QS>
impl<T, QS> SelectableExpression<QS> for Desc<T> where T: SelectableExpression<QS>
impl<QS, ST> SelectableExpression<QS> for SqlLiteral<ST>
impl<T: ?Sized, ST, QS> SelectableExpression<QS, ST> for Box<T> where T: SelectableExpression<QS, ST>, Box<T>: Expression
impl<'a, T: ?Sized, ST, QS> SelectableExpression<QS, ST> for &'a T where T: SelectableExpression<QS, ST>, &'a T: Expression
impl<A, SA, QS> SelectableExpression<QS, (SA,)> for (A,) where A: SelectableExpression<QS, SA>, (A,): Expression
impl<A, SA, QS> SelectableExpression<QS, Nullable<(SA,)>> for (A,) where SA: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, (A,): Expression
impl<A, B, SA, SB, QS> SelectableExpression<QS, (SA, SB)> for (A, B) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, (A, B): Expression
impl<A, B, SA, SB, QS> SelectableExpression<QS, Nullable<(SA, SB)>> for (A, B) where SA: IntoNullable, SB: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, (A, B): Expression
impl<A, B, C, SA, SB, SC, QS> SelectableExpression<QS, (SA, SB, SC)> for (A, B, C) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, (A, B, C): Expression
impl<A, B, C, SA, SB, SC, QS> SelectableExpression<QS, Nullable<(SA, SB, SC)>> for (A, B, C) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, (A, B, C): Expression
impl<A, B, C, D, SA, SB, SC, SD, QS> SelectableExpression<QS, (SA, SB, SC, SD)> for (A, B, C, D) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, (A, B, C, D): Expression
impl<A, B, C, D, SA, SB, SC, SD, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD)>> for (A, B, C, D) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, (A, B, C, D): Expression
impl<A, B, C, D, E, SA, SB, SC, SD, SE, QS> SelectableExpression<QS, (SA, SB, SC, SD, SE)> for (A, B, C, D, E) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, (A, B, C, D, E): Expression
impl<A, B, C, D, E, SA, SB, SC, SD, SE, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD, SE)>> for (A, B, C, D, E) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, (A, B, C, D, E): Expression
impl<A, B, C, D, E, F, SA, SB, SC, SD, SE, SF, QS> SelectableExpression<QS, (SA, SB, SC, SD, SE, SF)> for (A, B, C, D, E, F) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, (A, B, C, D, E, F): Expression
impl<A, B, C, D, E, F, SA, SB, SC, SD, SE, SF, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD, SE, SF)>> for (A, B, C, D, E, F) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, (A, B, C, D, E, F): Expression
impl<A, B, C, D, E, F, G, SA, SB, SC, SD, SE, SF, SG, QS> SelectableExpression<QS, (SA, SB, SC, SD, SE, SF, SG)> for (A, B, C, D, E, F, G) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, (A, B, C, D, E, F, G): Expression
impl<A, B, C, D, E, F, G, SA, SB, SC, SD, SE, SF, SG, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD, SE, SF, SG)>> for (A, B, C, D, E, F, G) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, (A, B, C, D, E, F, G): Expression
impl<A, B, C, D, E, F, G, H, SA, SB, SC, SD, SE, SF, SG, SH, QS> SelectableExpression<QS, (SA, SB, SC, SD, SE, SF, SG, SH)> for (A, B, C, D, E, F, G, H) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, (A, B, C, D, E, F, G, H): Expression
impl<A, B, C, D, E, F, G, H, SA, SB, SC, SD, SE, SF, SG, SH, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD, SE, SF, SG, SH)>> for (A, B, C, D, E, F, G, H) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, (A, B, C, D, E, F, G, H): Expression
impl<A, B, C, D, E, F, G, H, I, SA, SB, SC, SD, SE, SF, SG, SH, SI, QS> SelectableExpression<QS, (SA, SB, SC, SD, SE, SF, SG, SH, SI)> for (A, B, C, D, E, F, G, H, I) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, (A, B, C, D, E, F, G, H, I): Expression
impl<A, B, C, D, E, F, G, H, I, SA, SB, SC, SD, SE, SF, SG, SH, SI, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD, SE, SF, SG, SH, SI)>> for (A, B, C, D, E, F, G, H, I) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, (A, B, C, D, E, F, G, H, I): Expression
impl<A, B, C, D, E, F, G, H, I, J, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, QS> SelectableExpression<QS, (SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ)> for (A, B, C, D, E, F, G, H, I, J) where A: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, J: SelectableExpression<QS, SJ>, (A, B, C, D, E, F, G, H, I, J): Expression
impl<A, B, C, D, E, F, G, H, I, J, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ)>> for (A, B, C, D, E, F, G, H, I, J) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, SJ: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, J: SelectableExpression<QS, SJ::Nullable, SqlType=SJ>, (A, B, C, D, E, F, G, H, I, 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, QS> SelectableExpression<QS, (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: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, J: SelectableExpression<QS, SJ>, K: SelectableExpression<QS, SK>, (A, B, C, D, E, F, G, H, I, J, K): Expression
impl<A, B, C, D, E, F, G, H, I, J, K, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, QS> SelectableExpression<QS, Nullable<(SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK)>> for (A, B, C, D, E, F, G, H, I, J, K) where SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, SJ: IntoNullable, SK: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, J: SelectableExpression<QS, SJ::Nullable, SqlType=SJ>, K: SelectableExpression<QS, SK::Nullable, SqlType=SK>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, QS> SelectableExpression<QS, (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: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, J: SelectableExpression<QS, SJ>, K: SelectableExpression<QS, SK>, L: SelectableExpression<QS, SL>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, QS> SelectableExpression<QS, Nullable<(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 SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, SJ: IntoNullable, SK: IntoNullable, SL: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, J: SelectableExpression<QS, SJ::Nullable, SqlType=SJ>, K: SelectableExpression<QS, SK::Nullable, SqlType=SK>, L: SelectableExpression<QS, SL::Nullable, SqlType=SL>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, QS> SelectableExpression<QS, (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: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, J: SelectableExpression<QS, SJ>, K: SelectableExpression<QS, SK>, L: SelectableExpression<QS, SL>, M: SelectableExpression<QS, SM>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, QS> SelectableExpression<QS, Nullable<(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 SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, SJ: IntoNullable, SK: IntoNullable, SL: IntoNullable, SM: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, J: SelectableExpression<QS, SJ::Nullable, SqlType=SJ>, K: SelectableExpression<QS, SK::Nullable, SqlType=SK>, L: SelectableExpression<QS, SL::Nullable, SqlType=SL>, M: SelectableExpression<QS, SM::Nullable, SqlType=SM>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, QS> SelectableExpression<QS, (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: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, J: SelectableExpression<QS, SJ>, K: SelectableExpression<QS, SK>, L: SelectableExpression<QS, SL>, M: SelectableExpression<QS, SM>, N: SelectableExpression<QS, SN>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, QS> SelectableExpression<QS, Nullable<(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 SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, SJ: IntoNullable, SK: IntoNullable, SL: IntoNullable, SM: IntoNullable, SN: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, J: SelectableExpression<QS, SJ::Nullable, SqlType=SJ>, K: SelectableExpression<QS, SK::Nullable, SqlType=SK>, L: SelectableExpression<QS, SL::Nullable, SqlType=SL>, M: SelectableExpression<QS, SM::Nullable, SqlType=SM>, N: SelectableExpression<QS, SN::Nullable, SqlType=SN>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, QS> SelectableExpression<QS, (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: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, J: SelectableExpression<QS, SJ>, K: SelectableExpression<QS, SK>, L: SelectableExpression<QS, SL>, M: SelectableExpression<QS, SM>, N: SelectableExpression<QS, SN>, O: SelectableExpression<QS, SO>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, QS> SelectableExpression<QS, Nullable<(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 SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, SJ: IntoNullable, SK: IntoNullable, SL: IntoNullable, SM: IntoNullable, SN: IntoNullable, SO: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, J: SelectableExpression<QS, SJ::Nullable, SqlType=SJ>, K: SelectableExpression<QS, SK::Nullable, SqlType=SK>, L: SelectableExpression<QS, SL::Nullable, SqlType=SL>, M: SelectableExpression<QS, SM::Nullable, SqlType=SM>, N: SelectableExpression<QS, SN::Nullable, SqlType=SN>, O: SelectableExpression<QS, SO::Nullable, SqlType=SO>, (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, SA, SB, SC, SD, SE, SF, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SP, QS> SelectableExpression<QS, (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: SelectableExpression<QS, SA>, B: SelectableExpression<QS, SB>, C: SelectableExpression<QS, SC>, D: SelectableExpression<QS, SD>, E: SelectableExpression<QS, SE>, F: SelectableExpression<QS, SF>, G: SelectableExpression<QS, SG>, H: SelectableExpression<QS, SH>, I: SelectableExpression<QS, SI>, J: SelectableExpression<QS, SJ>, K: SelectableExpression<QS, SK>, L: SelectableExpression<QS, SL>, M: SelectableExpression<QS, SM>, N: SelectableExpression<QS, SN>, O: SelectableExpression<QS, SO>, P: SelectableExpression<QS, SP>, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P): 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, QS> SelectableExpression<QS, Nullable<(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 SA: IntoNullable, SB: IntoNullable, SC: IntoNullable, SD: IntoNullable, SE: IntoNullable, SF: IntoNullable, SG: IntoNullable, SH: IntoNullable, SI: IntoNullable, SJ: IntoNullable, SK: IntoNullable, SL: IntoNullable, SM: IntoNullable, SN: IntoNullable, SO: IntoNullable, SP: IntoNullable, A: SelectableExpression<QS, SA::Nullable, SqlType=SA>, B: SelectableExpression<QS, SB::Nullable, SqlType=SB>, C: SelectableExpression<QS, SC::Nullable, SqlType=SC>, D: SelectableExpression<QS, SD::Nullable, SqlType=SD>, E: SelectableExpression<QS, SE::Nullable, SqlType=SE>, F: SelectableExpression<QS, SF::Nullable, SqlType=SF>, G: SelectableExpression<QS, SG::Nullable, SqlType=SG>, H: SelectableExpression<QS, SH::Nullable, SqlType=SH>, I: SelectableExpression<QS, SI::Nullable, SqlType=SI>, J: SelectableExpression<QS, SJ::Nullable, SqlType=SJ>, K: SelectableExpression<QS, SK::Nullable, SqlType=SK>, L: SelectableExpression<QS, SL::Nullable, SqlType=SL>, M: SelectableExpression<QS, SM::Nullable, SqlType=SM>, N: SelectableExpression<QS, SN::Nullable, SqlType=SN>, O: SelectableExpression<QS, SO::Nullable, SqlType=SO>, P: SelectableExpression<QS, SP::Nullable, SqlType=SP>, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P): Expression