Skip to main content

OutputDatumType

Trait OutputDatumType 

Source
pub trait OutputDatumType<'a, E>: Sized {
    // Required methods
    fn nullable() -> bool;
    fn fallible() -> bool;
    fn into_result(self, temp_storage: &'a RowArena) -> Result<Datum<'a>, E>;
}
Expand description

A bridge between native Rust types and SQL runtime types represented in Datums

Required Methods§

Source

fn nullable() -> bool

Whether this Rust type can represent NULL values

Source

fn fallible() -> bool

Whether this Rust type can represent errors

Source

fn into_result(self, temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Convert this Rust type into a Result containing a Datum, or an error

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'a, E, B: OutputDatumType<'a, E>> OutputDatumType<'a, E> for Option<B>

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E, B: OutputDatumType<'a, E>> OutputDatumType<'a, E> for Result<B, E>

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E, B: ToOwned + ?Sized> OutputDatumType<'a, E> for Cow<'a, B>
where for<'b> B::Owned: OutputDatumType<'b, E>, for<'b> &'b B: OutputDatumType<'b, E>,

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for &'a [u8]

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for &'a str

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for NaiveTime

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for OrderedDecimal<Numeric>

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for String

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for Uuid

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for Vec<u8>

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for bool

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for f32

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for f64

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for i16

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for i32

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for i64

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for u16

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for u32

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Source§

impl<'a, E> OutputDatumType<'a, E> for u64

Source§

fn nullable() -> bool

Source§

fn fallible() -> bool

Source§

fn into_result(self, _temp_storage: &'a RowArena) -> Result<Datum<'a>, E>

Implementors§

Source§

impl<'a, E, B: OutputDatumType<'a, E>> OutputDatumType<'a, E> for ExcludeNull<B>

Source§

impl<'a, E> OutputDatumType<'a, E> for AclItem

Source§

impl<'a, E> OutputDatumType<'a, E> for Array<'a>

Source§

impl<'a, E> OutputDatumType<'a, E> for Char<&'a str>

Source§

impl<'a, E> OutputDatumType<'a, E> for Char<String>

Source§

impl<'a, E> OutputDatumType<'a, E> for CheckedTimestamp<DateTime<Utc>>

Source§

impl<'a, E> OutputDatumType<'a, E> for CheckedTimestamp<NaiveDateTime>

Source§

impl<'a, E> OutputDatumType<'a, E> for Date

Source§

impl<'a, E> OutputDatumType<'a, E> for Datum<'a>

Source§

impl<'a, E> OutputDatumType<'a, E> for DatumList<'a>

Source§

impl<'a, E> OutputDatumType<'a, E> for DatumMap<'a>

Source§

impl<'a, E> OutputDatumType<'a, E> for Int2Vector<'a>

Source§

impl<'a, E> OutputDatumType<'a, E> for Interval

Source§

impl<'a, E> OutputDatumType<'a, E> for Jsonb

Source§

impl<'a, E> OutputDatumType<'a, E> for JsonbRef<'a>

Source§

impl<'a, E> OutputDatumType<'a, E> for MzAclItem

Source§

impl<'a, E> OutputDatumType<'a, E> for Numeric

Source§

impl<'a, E> OutputDatumType<'a, E> for Oid

Source§

impl<'a, E> OutputDatumType<'a, E> for PgLegacyChar

Source§

impl<'a, E> OutputDatumType<'a, E> for PgLegacyName<&'a str>

Source§

impl<'a, E> OutputDatumType<'a, E> for PgLegacyName<String>

Source§

impl<'a, E> OutputDatumType<'a, E> for Range<Datum<'a>>

Source§

impl<'a, E> OutputDatumType<'a, E> for Range<DatumNested<'a>>

Source§

impl<'a, E> OutputDatumType<'a, E> for RegClass

Source§

impl<'a, E> OutputDatumType<'a, E> for RegProc

Source§

impl<'a, E> OutputDatumType<'a, E> for RegType

Source§

impl<'a, E> OutputDatumType<'a, E> for Timestamp

Source§

impl<'a, E> OutputDatumType<'a, E> for VarChar<&'a str>

Source§

impl<'a, E> OutputDatumType<'a, E> for VarChar<String>

Source§

impl<'a, T, E> OutputDatumType<'a, E> for ArrayRustType<T>
where T: OutputDatumType<'a, E>,