Skip to main content

Row

Trait Row 

Source
pub trait Row<'a> {
    type ReadResult;

    // Required methods
    fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>;
    fn cast(bytes: &'a [u8]) -> Self::ReadResult;
}

Required Associated Types§

Required Methods§

Source

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source

fn cast(bytes: &'a [u8]) -> Self::ReadResult

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 Row<'_> for bool

Source§

type ReadResult = bool

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl Row<'_> for NaiveDate

Source§

type ReadResult = Result<NaiveDate, Error>

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl Row<'_> for NaiveDateTime

Source§

type ReadResult = Result<NaiveDateTime, Error>

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for f32

Source§

type ReadResult = f32

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for f64

Source§

type ReadResult = f64

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for i8

Source§

type ReadResult = i8

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for i16

Source§

type ReadResult = i16

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for i32

Source§

type ReadResult = i32

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for i64

Source§

type ReadResult = i64

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &[u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for String

Source§

type ReadResult = &'a str

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &'a [u8]) -> Self::ReadResult

Source§

impl<'a> Row<'a> for Vec<u8>

Source§

type ReadResult = &'a [u8]

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(bytes: &'a [u8]) -> Self::ReadResult

Source§

impl<'a, T1: Row<'a> + Ord, T2: Row<'a> + Ord> Row<'a> for BTreeMap<T1, T2>

Source§

type ReadResult = MapGetter<'a, T1, T2>

Source§

fn write<'b>(v: &Self, writer: &mut Writer<'b>) -> Result<(), Error>

Source§

fn cast(row: &'a [u8]) -> Self::ReadResult

Source§

impl<'a, T: Row<'a>> Row<'a> for Vec<T>

Source§

type ReadResult = ArrayGetter<'a, T>

Source§

fn write<'b>(v: &Self, writer: &mut Writer<'b>) -> Result<(), Error>

Source§

fn cast(row: &'a [u8]) -> Self::ReadResult

Source§

impl<'a, T: Row<'a>, const N: usize> Row<'a> for [T; N]

Source§

type ReadResult = FixedArrayGetter<'a, T, N>

Source§

fn write(v: &Self, writer: &mut Writer<'_>) -> Result<(), Error>

Source§

fn cast(row: &'a [u8]) -> Self::ReadResult

Implementors§