json_to_usv/leaf.rs
1use serde::{Serialize, Deserialize};
2use std::fmt::Display;
3
4#[derive(Debug, Serialize, Deserialize)]
5#[serde(untagged)]
6pub enum Leaf {
7 Bool(bool),
8 String(String),
9 Number(serde_json::Number),
10}
11
12impl Display for Leaf {
13 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
14 match self {
15 Leaf::Bool(x) => {
16 write!(f, "{}", x)
17 },
18 Leaf::Number(x) => {
19 write!(f, "{}", x)
20 },
21 Leaf::String(x) => {
22 write!(f, "{}", x)
23 },
24 }
25 }
26}