FromRow

Trait FromRow 

Source
pub trait FromRow<'a>: Sized {
    // Required methods
    fn from_row_text(
        cols: &[FieldDescription<'_>],
        row: DataRow<'a>,
    ) -> Result<Self>;
    fn from_row_binary(
        cols: &[FieldDescription<'_>],
        row: DataRow<'a>,
    ) -> Result<Self>;
}
Expand description

Trait for decoding a PostgreSQL row into a Rust type.

Required Methods§

Source

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Decode a row from text format (simple protocol).

Source

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Decode a row from binary format (extended protocol).

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 FromRow<'_> for ()

Implementation for empty tuple - used for statements that don’t return rows

Source§

fn from_row_text( _cols: &[FieldDescription<'_>], _row: DataRow<'_>, ) -> Result<Self>

Source§

fn from_row_binary( _cols: &[FieldDescription<'_>], _row: DataRow<'_>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>> FromRow<'a> for (T1,)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>> FromRow<'a> for (T1, T2)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>, T6: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5, T6)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>, T6: FromWireValue<'a>, T7: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5, T6, T7)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>, T6: FromWireValue<'a>, T7: FromWireValue<'a>, T8: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5, T6, T7, T8)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>, T6: FromWireValue<'a>, T7: FromWireValue<'a>, T8: FromWireValue<'a>, T9: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5, T6, T7, T8, T9)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>, T6: FromWireValue<'a>, T7: FromWireValue<'a>, T8: FromWireValue<'a>, T9: FromWireValue<'a>, T10: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>, T6: FromWireValue<'a>, T7: FromWireValue<'a>, T8: FromWireValue<'a>, T9: FromWireValue<'a>, T10: FromWireValue<'a>, T11: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

impl<'a, T1: FromWireValue<'a>, T2: FromWireValue<'a>, T3: FromWireValue<'a>, T4: FromWireValue<'a>, T5: FromWireValue<'a>, T6: FromWireValue<'a>, T7: FromWireValue<'a>, T8: FromWireValue<'a>, T9: FromWireValue<'a>, T10: FromWireValue<'a>, T11: FromWireValue<'a>, T12: FromWireValue<'a>> FromRow<'a> for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Source§

fn from_row_text( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Source§

fn from_row_binary( cols: &[FieldDescription<'_>], row: DataRow<'a>, ) -> Result<Self>

Implementors§