pub trait Decode<'r, DB: Database>: Sized {
// Required method
fn decode(
value: <DB as HasValueRef<'r>>::ValueRef,
) -> Result<Self, BoxDynError>;
}Expand description
A type that can be decoded from the database.
§How can I implement Decode?
A manual implementation of Decode can be useful when adding support for
types externally to SQLx.
The following showcases how to implement Decode to be generic over Database. The
implementation can be marginally simpler if you remove the DB type parameter and explicitly
use the concrete ValueRef and TypeInfo types.
struct MyType;
// DB is the database driver
// `'r` is the lifetime of the `Row` being decoded
impl<'r, DB: Database> Decode<'r, DB> for MyType
where
// we want to delegate some of the work to string decoding so let's make sure strings
// are supported by the database
&'r str: Decode<'r, DB>
{
fn decode(
value: <DB as HasValueRef<'r>>::ValueRef,
) -> Result<MyType, Box<dyn Error + 'static + Send + Sync>> {
// the interface of ValueRef is largely unstable at the moment
// so this is not directly implementable
// however, you can delegate to a type that matches the format of the type you want
// to decode (such as a UTF-8 string)
let value = <&str as Decode<DB>>::decode(value)?;
// now you can parse this into your type (assuming there is a `FromStr`)
Ok(value.parse()?)
}
}Required Methods§
Sourcefn decode(value: <DB as HasValueRef<'r>>::ValueRef) -> Result<Self, BoxDynError>
fn decode(value: <DB as HasValueRef<'r>>::ValueRef) -> Result<Self, BoxDynError>
Decode a new value of this type using a raw value from the database.
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 Decode<'_, Mssql> for bool
Available on crate feature mssql only.
impl Decode<'_, Mssql> for bool
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Mssql> for f32
Available on crate feature mssql only.
impl Decode<'_, Mssql> for f32
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Mssql> for f64
Available on crate feature mssql only.
impl Decode<'_, Mssql> for f64
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Mssql> for i8
Available on crate feature mssql only.
impl Decode<'_, Mssql> for i8
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Mssql> for i16
Available on crate feature mssql only.
impl Decode<'_, Mssql> for i16
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Mssql> for i32
Available on crate feature mssql only.
impl Decode<'_, Mssql> for i32
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Mssql> for i64
Available on crate feature mssql only.
impl Decode<'_, Mssql> for i64
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Mssql> for String
Available on crate feature mssql only.
impl Decode<'_, Mssql> for String
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for bool
Available on crate feature mysql only.
impl Decode<'_, MySql> for bool
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for f32
Available on crate feature mysql only.
impl Decode<'_, MySql> for f32
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for f64
Available on crate feature mysql only.
impl Decode<'_, MySql> for f64
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for i8
Available on crate feature mysql only.
impl Decode<'_, MySql> for i8
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for i16
Available on crate feature mysql only.
impl Decode<'_, MySql> for i16
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for i32
Available on crate feature mysql only.
impl Decode<'_, MySql> for i32
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for i64
Available on crate feature mysql only.
impl Decode<'_, MySql> for i64
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for u8
Available on crate feature mysql only.
impl Decode<'_, MySql> for u8
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for u16
Available on crate feature mysql only.
impl Decode<'_, MySql> for u16
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for u32
Available on crate feature mysql only.
impl Decode<'_, MySql> for u32
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for u64
Available on crate feature mysql only.
impl Decode<'_, MySql> for u64
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for String
Available on crate feature mysql only.
impl Decode<'_, MySql> for String
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for Vec<u8>
Available on crate feature mysql only.
impl Decode<'_, MySql> for Vec<u8>
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for BigDecimal
Available on crate feature mysql only.
impl Decode<'_, MySql> for BigDecimal
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for Decimal
Available on crate feature mysql only.
impl Decode<'_, MySql> for Decimal
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for Hyphenated
Available on crate feature mysql only.
impl Decode<'_, MySql> for Hyphenated
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, MySql> for Uuid
Available on crate feature mysql only.
impl Decode<'_, MySql> for Uuid
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for IpNetwork
Available on crate feature postgres only.
impl Decode<'_, Postgres> for IpNetwork
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for bool
Available on crate feature postgres only.
impl Decode<'_, Postgres> for bool
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for f32
Available on crate feature postgres only.
impl Decode<'_, Postgres> for f32
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for f64
Available on crate feature postgres only.
impl Decode<'_, Postgres> for f64
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for i8
Available on crate feature postgres only.
impl Decode<'_, Postgres> for i8
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for i16
Available on crate feature postgres only.
impl Decode<'_, Postgres> for i16
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for i32
Available on crate feature postgres only.
impl Decode<'_, Postgres> for i32
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for i64
Available on crate feature postgres only.
impl Decode<'_, Postgres> for i64
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for String
Available on crate feature postgres only.
impl Decode<'_, Postgres> for String
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for Vec<u8>
Available on crate feature postgres only.
impl Decode<'_, Postgres> for Vec<u8>
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for BigDecimal
Available on crate feature postgres only.
impl Decode<'_, Postgres> for BigDecimal
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for BitVec
Available on crate feature postgres only.
impl Decode<'_, Postgres> for BitVec
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for MacAddress
Available on crate feature postgres only.
impl Decode<'_, Postgres> for MacAddress
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for Decimal
Available on crate feature postgres only.
impl Decode<'_, Postgres> for Decimal
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Postgres> for Uuid
Available on crate feature postgres only.
impl Decode<'_, Postgres> for Uuid
Available on crate feature
postgres only.fn decode(value: PgValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Sqlite> for Hyphenated
Available on crate feature sqlite only.
impl Decode<'_, Sqlite> for Hyphenated
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl Decode<'_, Sqlite> for Uuid
Available on crate feature sqlite only.
impl Decode<'_, Sqlite> for Uuid
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'_>) -> Result<Self, BoxDynError>
Source§impl<'db> Decode<'db, Postgres> for IpAddr
Available on crate feature postgres only.
impl<'db> Decode<'db, Postgres> for IpAddr
Available on crate feature
postgres only.fn decode(value: PgValueRef<'db>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for &'r str
impl<'r> Decode<'r, Any> for &'r str
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for bool
impl<'r> Decode<'r, Any> for bool
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for f32
impl<'r> Decode<'r, Any> for f32
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for f64
impl<'r> Decode<'r, Any> for f64
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for i16
impl<'r> Decode<'r, Any> for i16
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for i32
impl<'r> Decode<'r, Any> for i32
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for i64
impl<'r> Decode<'r, Any> for i64
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Any> for String
impl<'r> Decode<'r, Any> for String
fn decode(value: AnyValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Mssql> for Cow<'r, str>
Available on crate feature mssql only.
impl<'r> Decode<'r, Mssql> for Cow<'r, str>
Available on crate feature
mssql only.fn decode(value: MssqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for &'r str
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for &'r str
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for &'r [u8]
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for &'r [u8]
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for Cow<'r, str>
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for Cow<'r, str>
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for DateTime<Local>
Available on crate feature mysql only.Note: assumes the connection’s time_zone is set to +00:00 (UTC).
impl<'r> Decode<'r, MySql> for DateTime<Local>
Available on crate feature
mysql only.Note: assumes the connection’s time_zone is set to +00:00 (UTC).
fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for DateTime<Utc>
Available on crate feature mysql only.Note: assumes the connection’s time_zone is set to +00:00 (UTC).
impl<'r> Decode<'r, MySql> for DateTime<Utc>
Available on crate feature
mysql only.Note: assumes the connection’s time_zone is set to +00:00 (UTC).
fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for NaiveDate
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for NaiveDate
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for NaiveDateTime
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for NaiveDateTime
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for NaiveTime
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for NaiveTime
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for Date
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for Date
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for OffsetDateTime
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for OffsetDateTime
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for PrimitiveDateTime
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for PrimitiveDateTime
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, MySql> for Time
Available on crate feature mysql only.
impl<'r> Decode<'r, MySql> for Time
Available on crate feature
mysql only.fn decode(value: MySqlValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for &'r str
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for &'r str
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for &'r [u8]
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for &'r [u8]
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for Cow<'r, str>
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for Cow<'r, str>
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for ()
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for ()
Available on crate feature
postgres only.fn decode(_value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for DateTime<FixedOffset>
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for DateTime<FixedOffset>
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for DateTime<Local>
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for DateTime<Local>
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for DateTime<Utc>
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for DateTime<Utc>
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for NaiveDate
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for NaiveDate
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for NaiveDateTime
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for NaiveDateTime
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for NaiveTime
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for NaiveTime
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for Date
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for Date
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for OffsetDateTime
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for OffsetDateTime
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for PrimitiveDateTime
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for PrimitiveDateTime
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Postgres> for Time
Available on crate feature postgres only.
impl<'r> Decode<'r, Postgres> for Time
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for &'r str
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for &'r str
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for &'r [u8]
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for &'r [u8]
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for Cow<'r, str>
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for Cow<'r, str>
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for bool
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for bool
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<bool, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for f32
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for f32
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<f32, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for f64
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for f64
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<f64, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for i8
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for i8
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for i16
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for i16
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for i32
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for i32
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for i64
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for i64
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for u8
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for u8
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for u16
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for u16
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for u32
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for u32
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for String
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for String
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for Vec<u8>
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for Vec<u8>
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for DateTime<FixedOffset>
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for DateTime<FixedOffset>
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for DateTime<Local>
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for DateTime<Local>
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for DateTime<Utc>
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for DateTime<Utc>
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for NaiveDate
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for NaiveDate
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for NaiveDateTime
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for NaiveDateTime
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r> Decode<'r, Sqlite> for NaiveTime
Available on crate feature sqlite only.
impl<'r> Decode<'r, Sqlite> for NaiveTime
Available on crate feature
sqlite only.fn decode(value: SqliteValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, DB, T> Decode<'r, DB> for Option<T>
impl<'r, DB, T> Decode<'r, DB> for Option<T>
fn decode(value: <DB as HasValueRef<'r>>::ValueRef) -> Result<Self, BoxDynError>
Source§impl<'r, T1> Decode<'r, Postgres> for (T1,)
Available on crate feature postgres only.
impl<'r, T1> Decode<'r, Postgres> for (T1,)
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2> Decode<'r, Postgres> for (T1, T2)
Available on crate feature postgres only.
impl<'r, T1, T2> Decode<'r, Postgres> for (T1, T2)
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2, T3> Decode<'r, Postgres> for (T1, T2, T3)
Available on crate feature postgres only.
impl<'r, T1, T2, T3> Decode<'r, Postgres> for (T1, T2, T3)
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2, T3, T4> Decode<'r, Postgres> for (T1, T2, T3, T4)
Available on crate feature postgres only.
impl<'r, T1, T2, T3, T4> Decode<'r, Postgres> for (T1, T2, T3, T4)
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2, T3, T4, T5> Decode<'r, Postgres> for (T1, T2, T3, T4, T5)
Available on crate feature postgres only.
impl<'r, T1, T2, T3, T4, T5> Decode<'r, Postgres> for (T1, T2, T3, T4, T5)
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2, T3, T4, T5, T6> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature postgres only.
impl<'r, T1, T2, T3, T4, T5, T6> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2, T3, T4, T5, T6, T7> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6, T7)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T7: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature postgres only.
impl<'r, T1, T2, T3, T4, T5, T6, T7> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6, T7)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T7: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2, T3, T4, T5, T6, T7, T8> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6, T7, T8)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T7: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T8: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature postgres only.
impl<'r, T1, T2, T3, T4, T5, T6, T7, T8> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6, T7, T8)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T7: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T8: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T1, T2, T3, T4, T5, T6, T7, T8, T9> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6, T7, T8, T9)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T7: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T8: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T9: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature postgres only.
impl<'r, T1, T2, T3, T4, T5, T6, T7, T8, T9> Decode<'r, Postgres> for (T1, T2, T3, T4, T5, T6, T7, T8, T9)where
T1: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T2: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T3: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T4: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T5: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T6: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T7: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T8: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
T9: 'r + Type<Postgres> + for<'a> Decode<'a, Postgres>,
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Source§impl<'r, T> Decode<'r, Postgres> for Vec<T>
Available on crate feature postgres only.
impl<'r, T> Decode<'r, Postgres> for Vec<T>
Available on crate feature
postgres only.fn decode(value: PgValueRef<'r>) -> Result<Self, BoxDynError>
Implementors§
impl Decode<'_, Postgres> for Oid
Available on crate feature
postgres only.impl Decode<'_, Postgres> for PgMoney
Available on crate feature
postgres only.impl<'de> Decode<'de, Postgres> for PgInterval
Available on crate feature
postgres only.impl<'r> Decode<'r, Postgres> for PgLQuery
Available on crate feature
postgres only.impl<'r> Decode<'r, Postgres> for PgLTree
Available on crate feature
postgres only.impl<'r> Decode<'r, Postgres> for PgTimeTz<NaiveTime, FixedOffset>
Available on crate feature
postgres only.impl<'r> Decode<'r, Postgres> for PgTimeTz<Time, UtcOffset>
Available on crate feature
postgres only.impl<'r, DB> Decode<'r, DB> for &'r JsonRawValue
Available on crate feature
json only.impl<'r, DB> Decode<'r, DB> for JsonValue
Available on crate feature
json only.impl<'r, T> Decode<'r, MySql> for Json<T>where
T: 'r + Deserialize<'r>,
Available on crate feature
mysql only.impl<'r, T> Decode<'r, Postgres> for PgRange<T>
Available on crate feature
postgres only.impl<'r, T> Decode<'r, Postgres> for Json<T>where
T: Deserialize<'r> + 'r,
Available on crate feature
postgres only.impl<'r, T> Decode<'r, Sqlite> for Json<T>where
T: 'r + Deserialize<'r>,
Available on crate feature
sqlite only.