canonicalize/canonicalize.rs
1use std::error;
2use std::io;
3
4// Example: convert YAML to canonical form.
5fn main() -> Result<(), Box<dyn error::Error>> {
6 // Parser with default configuration.
7 let parser = libyaml::Parser::new(io::stdin())?;
8
9 // Emitter with custom configuration: enable canonical output.
10 let mut emitter = libyaml::EmitterBuilder::new(io::stdout())?
11 .canonical(true)
12 .finish();
13
14 // Parser implements IntoIterator and thus can be used in a for loop.
15 for event in parser {
16 emitter.emit(event?)?;
17 }
18
19 Ok(())
20}