[][src]Trait gtmpl_value::FromValue

pub trait FromValue<T> {
    pub fn from_value(val: &Value) -> Option<T>;
}

Convert Value into something.

Required methods

pub fn from_value(val: &Value) -> Option<T>[src]

Tries to retrieve T from Value.

Loading content...

Implementations on Foreign Types

impl FromValue<i64> for i64[src]

pub fn from_value(val: &Value) -> Option<i64>[src]

Tries to retrieve i64 from Value.

Examples:

use gtmpl_value::{FromValue, Value};

let v: Value = 23i64.into();
let i = i64::from_value(&v);
assert_eq!(i, Some(23i64));

impl FromValue<u64> for u64[src]

pub fn from_value(val: &Value) -> Option<u64>[src]

Tries to retrieve u64 from Value.

Examples:

use gtmpl_value::{FromValue, Value};

let v: Value = 23u64.into();
let i = u64::from_value(&v);
assert_eq!(i, Some(23u64));

impl FromValue<f64> for f64[src]

pub fn from_value(val: &Value) -> Option<f64>[src]

Tries to retrieve f64 from Value.

Examples:

use gtmpl_value::{FromValue, Value};

let v: Value = 23.1f64.into();
let i = f64::from_value(&v);
assert_eq!(i, Some(23.1f64));

impl FromValue<String> for String[src]

pub fn from_value(val: &Value) -> Option<String>[src]

Tries to retrieve String from Value.

Examples:

use gtmpl_value::{FromValue, Value};

let v: Value = "foobar".into();
let s = String::from_value(&v);
assert_eq!(s, Some("foobar".to_owned()));

impl<T> FromValue<Vec<T, Global>> for Vec<T> where
    T: FromValue<T>, 
[src]

pub fn from_value(val: &Value) -> Option<Vec<T>>[src]

Tries to retrieve Vec<T> from Value.

Examples:

use gtmpl_value::{FromValue, Value};

let v: Value = vec!(1, 2, 3).into();
let v: Option<Vec<i64>> = Vec::from_value(&v);
assert_eq!(v, Some(vec!(1, 2, 3)));

impl<T> FromValue<HashMap<String, T, RandomState>> for HashMap<String, T> where
    T: FromValue<T>, 
[src]

pub fn from_value(val: &Value) -> Option<HashMap<String, T>>[src]

Tries to retrieve HashMap<String, T> from Value.

Examples:

use gtmpl_value::{FromValue, Value};
use std::collections::HashMap;

let mut m = HashMap::new();
m.insert("a".to_owned(), 1);
let v: Value = m.into();
let m: Option<HashMap<String, i64>> = HashMap::from_value(&v);
assert!(m.is_some());
if let Some(m) = m {
  assert_eq!(m.get("a"), Some(&1));
}
Loading content...

Implementors

Loading content...