pub trait IntoSelectTarget {
type Marker;
}Expand description
Determines the select marker from what was passed to .select().
The marker controls how row types are inferred:
SelectStar— infer R from the table’s Select modelSelectCols<C>— infer R from the column value typesSelectExpr— R must be specified by the user
Implemented automatically for:
()→SelectStarSQL<'a, V>→SelectExprSQLExpr<'a, V, T, N, A>→SelectCols<(Self,)>- Tuples
(A, B, ...)→SelectCols<(A, B, ...)> - Column ZSTs (proc macro generated)
- Table structs (proc macro generated) →
SelectStar
Required Associated Types§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl IntoSelectTarget for ()
select(()) → SelectStar — infer row type from the table.
impl IntoSelectTarget for ()
select(()) → SelectStar — infer row type from the table.
type Marker = SelectStar
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
Source§impl<T0, T1, T2, T3, T4, T5, T6, T7> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7)
impl<T0, T1, T2, T3, T4, T5, T6, T7> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6, T7)
Source§impl<T0, T1, T2, T3, T4, T5, T6> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6)
impl<T0, T1, T2, T3, T4, T5, T6> IntoSelectTarget for (T0, T1, T2, T3, T4, T5, T6)
Source§impl<T0, T1, T2, T3, T4, T5> IntoSelectTarget for (T0, T1, T2, T3, T4, T5)
impl<T0, T1, T2, T3, T4, T5> IntoSelectTarget for (T0, T1, T2, T3, T4, T5)
Source§impl<T0, T1, T2, T3, T4> IntoSelectTarget for (T0, T1, T2, T3, T4)
impl<T0, T1, T2, T3, T4> IntoSelectTarget for (T0, T1, T2, T3, T4)
Source§impl<T0, T1, T2, T3> IntoSelectTarget for (T0, T1, T2, T3)
impl<T0, T1, T2, T3> IntoSelectTarget for (T0, T1, T2, T3)
type Marker = SelectCols<(T0, T1, T2, T3)>
Source§impl<T0, T1, T2> IntoSelectTarget for (T0, T1, T2)
impl<T0, T1, T2> IntoSelectTarget for (T0, T1, T2)
type Marker = SelectCols<(T0, T1, T2)>
Source§impl<T0, T1> IntoSelectTarget for (T0, T1)
impl<T0, T1> IntoSelectTarget for (T0, T1)
type Marker = SelectCols<(T0, T1)>
Source§impl<T0> IntoSelectTarget for (T0,)
impl<T0> IntoSelectTarget for (T0,)
type Marker = SelectCols<(T0,)>
Implementors§
Source§impl<E> IntoSelectTarget for AliasedExpr<E>where
E: ExprValueType,
impl<E> IntoSelectTarget for AliasedExpr<E>where
E: ExprValueType,
type Marker = SelectCols<(AliasedExpr<E>,)>
Source§impl<V: SQLParam, T, N, A> IntoSelectTarget for SQLExpr<'_, V, T, N, A>
select(typed_expr) → SelectCols<(Expr,)> — single typed expression.
impl<V: SQLParam, T, N, A> IntoSelectTarget for SQLExpr<'_, V, T, N, A>
select(typed_expr) → SelectCols<(Expr,)> — single typed expression.
type Marker = SelectCols<(SQLExpr<'_, V, T, N, A>,)>
Source§impl<V: SQLParam> IntoSelectTarget for SQL<'_, V>
select(sql!(...)) → SelectExpr — user must specify row type.
impl<V: SQLParam> IntoSelectTarget for SQL<'_, V>
select(sql!(...)) → SelectExpr — user must specify row type.