mirror of
https://github.com/sharkdp/bat
synced 2025-02-16 21:08:29 +00:00
34 lines
773 B
Rust
34 lines
773 B
Rust
|
/// 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<Person>,
|
||
|
}
|
||
|
|
||
|
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();
|
||
|
}
|