2 个不稳定版本
0.2.0 | 2022年8月9日 |
---|---|
0.1.0 | 2021年8月6日 |
#181 in 值格式化
1,193 每月下载量
用于 tomldoc
10KB
188 行
Nesty
一个小型crate,帮助从Rust生成可读代码。
主要的接口是 code!
宏,其看起来如下
code!{
[0] "fn main() {";
[1] "println!(\"hello, world\");";
[0] "}"
}
括号中的数字给出了该行的期望缩进量。
代码块也可以嵌套,如下
let if_expr = code!{
[0] "if x > 0 {";
[1] "println(\"found one!\")";
[0] "}"
}
code!{
[0] "fn main() {";
[1] if_expr;
[0] "}"
}
这将产生
fn main() {
if x > 0 {
println!("found one!");
}
}
代码宏还支持字符串,以及字符串向量,这些将被正确缩进(向量假设为行向量,字符串在每个换行符后缩进)
使用 diff_assert
功能,crate还包含一个 assert_same_code
宏,用于检查两个字符串是否相等,如果它们不同,则打印出差异并在panic之前打印。
依赖项
~0–11MB
~64K SLoC