Crate nereon_derive[][src]

A Nereon Value can be converted into another type using the FromValue trait.

#[macro_use]
extern crate nereon_derive;
extern crate nereon;
use nereon::{parse_noc, FromValue, Value};

#[derive(FromValue, PartialEq, Debug)]
struct User {
    uid: u32,
    name: String,
}

let noc = r#"
    uid 1000 + 10
    name "John Doe"
"#;

let expected = User { uid: 1010, name: "John Doe".to_owned() };
let user = parse_noc(noc).and_then(|v| User::from_value(&v));
assert_eq!(user, Ok(expected));