10 个版本 (稳定)
1.1.2 | 2024 年 6 月 11 日 |
---|---|
1.0.3 | 2024 年 6 月 11 日 |
0.3.0 | 2024 年 6 月 11 日 |
0.2.0 | 2024 年 6 月 11 日 |
0.1.0 | 2024 年 6 月 10 日 |
#1225 in 编码
每月 110 次下载
10KB
210 行
toml_pretty
一个将 serde-serializable 值格式化序列化为 toml 的函数。
可以将结构体序列化为单个块中的 toml(与 toml crate 不同,后者非常适合反序列化,但不太适合格式化序列化)
不支持超过 2 层嵌套的数组字段。
注意。数组中的所有项目都在新的一行,并缩进。 toml_pretty::to_string
默认使用 \t
作为制表符。可以使用 Options
(如示例所示)使用替代的制表符符号(例如,2 个空格)。
示例
给定可序列化的结构体
#[derive(Serialize)]
struct User {
name: String,
nicknames: Vec<String>,
birthday: Birthday,
more: Vec<Birthday>,
}
#[derive(Serialize)]
struct Birthday {
day: u8,
month: u8,
year: u16,
}
可以使用 toml_pretty::to_string
let user = User {
name: String::from("Jonathan"),
nicknames: vec![String::from("Jack"), String::from("Jon")],
birthday: Birthday {
day: 0,
month: 0,
year: 1980,
},
more: vec![
Birthday {
day: 0,
month: 0,
year: 1980,
},
Birthday {
day: 0,
month: 0,
year: 1980,
},
],
};
println!(
"{}",
toml_pretty::to_string(&user, toml_pretty::Options::default().tab(" "))
.context("failed to serialize user pretty")
.unwrap()
);
依赖关系
~2.2–3.5MB
~58K SLoC