FromStaticSqlRow

Trait FromStaticSqlRow 

Source
pub trait FromStaticSqlRow<ST, DB: Backend>: Sized {
    // Required method
    fn build_from_row<'a>(row: &impl Row<'a, DB>) -> Result<Self>;
}
Expand description

A helper trait to deserialize a statically sized row into a tuple

If you see an error message mentioning this trait you are likely trying to map the result of a query to a struct with mismatching field types. Recheck your field order and the concrete field types.

You should not need to implement this trait directly. Diesel provides wild card implementations for any supported tuple size and for any type that implements FromSql<ST, DB>.

Required Methods§

Source

fn build_from_row<'a>(row: &impl Row<'a, DB>) -> Result<Self>

See the trait documentation

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T, ST, __DB> FromStaticSqlRow<(ST,), __DB> for (T₁, T₂, …, Tₙ)
where __DB: Backend, ST: CompatibleType<T, __DB>, T: FromSqlRow<<ST as CompatibleType<T, __DB>>::SqlType, __DB>,

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28, ST29, ST30, ST31, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28, ST29, ST30, ST31)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28, ST29, ST30, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28, ST29, ST30)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28, ST29, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28, ST29)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, ST28)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, ST27)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, ST26)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, ST25)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, ST24)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, ST23)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, ST22)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, ST21)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, ST20)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, ST19)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, ST18)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, ST17)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, ST16)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, ST15)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, ST14)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, ST13)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, ST12)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, ST11)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, ST10)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, ST9)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, ST8)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6, ST7)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, ST6, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5, ST6)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, ST5, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4, ST5)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, ST4, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3, ST4)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, ST3, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2, ST3)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, ST2, __DB> FromStaticSqlRow<Nullable<(ST, ST1, ST2)>, __DB> for Option<__T>

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, ST1, __DB> FromStaticSqlRow<Nullable<(ST, ST1)>, __DB> for Option<__T>
where __DB: Backend, (ST, ST1): SqlType, __T: FromSqlRow<(ST, ST1), __DB>,

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Source§

impl<__T, ST, __DB> FromStaticSqlRow<Nullable<(ST,)>, __DB> for Option<__T>
where __DB: Backend, (ST,): SqlType, __T: FromSqlRow<(ST,), __DB>,

Source§

fn build_from_row<'a>(row: &impl Row<'a, __DB>) -> Result<Self>

Implementors§

Source§

impl<T, ST, DB> FromStaticSqlRow<ST, DB> for T
where DB: Backend, T: FromSql<ST, DB>, ST: SingleValue,