Trait postgres::types::FromSql [] [src]

pub trait FromSql: Sized {
    fn from_sql<R: Read>(ty: &Type, raw: &mut R) -> Result<Self>;
    fn accepts(ty: &Type) -> bool;

    fn from_sql_nullable<R: Read>(ty: &Type, raw: Option<&mut R>) -> Result<Self> { ... }
}

A trait for types that can be created from a Postgres value.

Required Methods

fn from_sql<R: Read>(ty: &Type, raw: &mut R) -> Result<Self>

Creates a new value of this type from a Reader of the binary format of the specified Postgres Type.

The caller of this method is responsible for ensuring that this type is compatible with the Postgres Type.

fn accepts(ty: &Type) -> bool

Determines if a value of this type can be created from the specified Postgres Type.

Provided Methods

fn from_sql_nullable<R: Read>(ty: &Type, raw: Option<&mut R>) -> Result<Self>

Creates a new value of this type from a Read of Postgres data.

If the value was NULL, the Read will be None.

The caller of this method is responsible for ensuring that this type is compatible with the Postgres Type.

The default implementation calls FromSql::from_sql when raw is Some and returns Err(Error::WasNull) when raw is None. It does not typically need to be overridden.

Implementors