Expand description
YAML 1.2 implementation in pure Rust.
§Usage
This crate is on github and can be used by adding
yaml-rust2
to the dependencies in your project’s Cargo.toml
.
[dependencies]
yaml-rust2 = "0.9.0"
§Examples
Parse a string into Vec<Yaml>
and then serialize it as a YAML string.
use yaml_rust2::{YamlLoader, YamlEmitter};
let docs = YamlLoader::load_from_str("[1, 2, 3]").unwrap();
let doc = &docs[0]; // select the first YAML document
assert_eq!(doc[0].as_i64().unwrap(), 1); // access elements by index
let mut out_str = String::new();
let mut emitter = YamlEmitter::new(&mut out_str);
emitter.dump(doc).unwrap(); // dump the YAML object to a String
§Features
Note: With all features disabled, this crate’s MSRV is 1.65.0
.
§encoding
(enabled by default)
Enables encoding-aware decoding of Yaml documents.
The MSRV for this feature is 1.70.0
.
§debug_prints
Enables the debug
module and usage of debug prints in the scanner and the parser. Do not
enable if you are consuming the crate rather than working on it as this can significantly
decrease performance.
The MSRV for this feature is 1.70.0
.
Re-exports§
pub use crate::emitter::EmitError;
pub use crate::emitter::YamlEmitter;
pub use crate::parser::Event;
pub use crate::scanner::ScanError;
pub use crate::yaml::Yaml;
pub use crate::yaml::YamlLoader;
Modules§
- YAML serialization helpers.
- Home to the YAML Parser.
- Home to the YAML Scanner.
- YAML objects manipulation utilities.