Function marked_yaml::from_node
source · pub fn from_node<'de, T>(node: &'de Node) -> Result<T, FromNodeError>where
T: Deserialize<'de>,Expand description
Deserialize some Node into the requisite type
This permits deserialisation of Nodes into any structure
which serde can deserialize. In addition, if any part of
the type tree is Spanned then the spans are provided
from the requisite marked node.
const YAML: &str = "hello: world\n";
let node = marked_yaml::parse_yaml(0, YAML).unwrap();
#[derive(Deserialize)]
struct Greeting {
hello: Spanned<String>,
}
let greets: Greeting = marked_yaml::from_node(&node).unwrap();
let start = greets.hello.span().start().unwrap();
assert_eq!(start.line(), 1);
assert_eq!(start.column(), 8);