Crate serde_yaml[−][src]
This crate is a Rust library for using the Serde serialization framework with data in YAML file format.
This library does not reimplement a YAML parser; it uses yaml-rust which is a pure Rust YAML 1.2 implementation.
Examples
extern crate serde_yaml; use std::collections::BTreeMap; // You have some type. let mut map = BTreeMap::new(); map.insert("x".to_string(), 1.0); map.insert("y".to_string(), 2.0); // Serialize it to a YAML string. let s = serde_yaml::to_string(&map).unwrap(); assert_eq!(s, "---\nx: 1.0\n\"y\": 2.0"); // Deserialize it back to a Rust type. let deserialized_map: BTreeMap<String, f64> = serde_yaml::from_str(&s).unwrap(); assert_eq!(map, deserialized_map);
Using serde derive
It can also be used with Serde's serialization code generator serde_derive
to
handle structs and enums defined in your own program.
#[macro_use] extern crate serde_derive; extern crate serde_yaml; #[derive(Debug, PartialEq, Serialize, Deserialize)] struct Point { x: f64, y: f64 } let point = Point { x: 1.0, y: 2.0 }; let s = serde_yaml::to_string(&point).unwrap(); assert_eq!(s, "---\nx: 1.0\n\"y\": 2.0"); let deserialized_point: Point = serde_yaml::from_str(&s).unwrap(); assert_eq!(point, deserialized_point);
Structs
Error |
This type represents all possible errors that can occur when serializing or deserializing YAML data. |
Location |
This type represents the location that an error occured. |
Mapping |
A YAML mapping in which the keys and values are both |
Number |
Represents a YAML number, whether integer or floating point. |
Enums
Value |
Represents any valid YAML value. |
Functions
from_reader |
Deserialize an instance of type |
from_slice |
Deserialize an instance of type |
from_str |
Deserialize an instance of type |
from_value |
Interpret a |
to_string |
Serialize the given data structure as a String of YAML. |
to_value |
Convert a |
to_vec |
Serialize the given data structure as a YAML byte vector. |
to_writer |
Serialize the given data structure as YAML into the IO stream. |
Type Definitions
Result |
Alias for a |
Sequence |
A YAML sequence in which the elements are |