Skip to main content

FromValue

Trait FromValue 

Source
pub trait FromValue: Sized {
    // Required method
    fn from_value(value: &Value) -> Result<Self>;

    // Provided method
    fn from_value_owned(value: Value) -> Result<Self> { ... }
}
Expand description

Trait for converting database values to Rust types.

This trait enables type-safe decoding of individual column values during row deserialization in the selection API.

Required Methods§

Source

fn from_value(value: &Value) -> Result<Self>

Convert a Value reference to this type.

Returns an error if the value is NULL, has the wrong type, or cannot be converted.

Provided Methods§

Source

fn from_value_owned(value: Value) -> Result<Self>

Convert an owned Value to this type, avoiding clones when possible.

The default implementation delegates to from_value. Types that hold heap data (String, Json, Bytes) override this to take ownership instead of cloning.

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 FromValue for BTreeMap<String, Option<String>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

fn from_value_owned(value: Value) -> Result<Self>

Source§

impl FromValue for Decimal

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for NaiveDateTime

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for String

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

fn from_value_owned(value: Value) -> Result<Self>

Source§

impl FromValue for Uuid

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Value

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

fn from_value_owned(value: Value) -> Result<Self>

Source§

impl FromValue for Vec<BTreeMap<String, Option<String>>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Decimal>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<NaiveDateTime>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<String>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Uuid>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Value>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<BTreeMap<String, Option<String>>>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<Decimal>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<NaiveDateTime>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<String>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<Uuid>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<Value>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<bool>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<f64>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<i32>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<Vec<i64>>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<bool>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<f32>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

fn from_value_owned(value: Value) -> Result<Self>

Source§

impl FromValue for Vec<f64>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<i32>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<i64>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for Vec<u8>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

fn from_value_owned(value: Value) -> Result<Self>

Source§

impl FromValue for bool

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for f32

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for f64

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for i32

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl FromValue for i64

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

impl<T: FromValue> FromValue for Option<T>

Source§

fn from_value(value: &Value) -> Result<Self>

Source§

fn from_value_owned(value: Value) -> Result<Self>

Implementors§