From 5f826419d13e74fcdea851947364a1d5d69d152e Mon Sep 17 00:00:00 2001 From: sharkdp Date: Wed, 22 Apr 2020 21:42:09 +0200 Subject: Add YAML example --- examples/yaml.rs | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 examples/yaml.rs (limited to 'examples') diff --git a/examples/yaml.rs b/examples/yaml.rs new file mode 100644 index 00000000..0bfc94db --- /dev/null +++ b/examples/yaml.rs @@ -0,0 +1,33 @@ +/// A program that serializes a Rust structure to YAML and pretty-prints the result +use bat::PrettyPrinter; +use serde::Serialize; + +#[derive(Serialize)] +struct Person { + name: String, + height: f64, + adult: bool, + children: Vec, +} + +fn main() { + let person = Person { + name: String::from("Anne Mustermann"), + height: 1.76f64, + adult: true, + children: vec![Person { + name: String::from("Max Mustermann"), + height: 1.32f64, + adult: false, + children: vec![], + }], + }; + + let bytes = serde_yaml::to_vec(&person).unwrap(); + PrettyPrinter::new() + .language("yaml") + .line_numbers(true) + .input_from_bytes(&bytes) + .print() + .unwrap(); +} -- cgit v1.2.3