22 个版本
0.10.0 | 2024 年 8 月 4 日 |
---|---|
0.9.1 | 2024 年 5 月 30 日 |
0.9.0 | 2024 年 2 月 4 日 |
0.8.2 | 2023 年 7 月 16 日 |
0.1.0 | 2019 年 6 月 15 日 |
#769 在 过程宏 中
204,455 每月下载量
用于 199 个 crate(4 个直接使用)
81KB
2.5K SLoC
parse-display
此 crate 提供 derive 宏 Display
和 FromStr
。这些宏使用常见的辅助属性来指定格式。
安装
将其添加到您的 Cargo.toml 中
[dependencies]
parse-display = "0.10.0"
文档
有关详细信息,请参阅 #[derive(Display)]
文档。
示例
use parse_display::{Display, FromStr};
#[derive(Display, FromStr, PartialEq, Debug)]
#[display("{a}-{b}")]
struct X {
a: u32,
b: u32,
}
assert_eq!(X { a:10, b:20 }.to_string(), "10-20");
assert_eq!("10-20".parse(), Ok(X { a:10, b:20 }));
#[derive(Display, FromStr, PartialEq, Debug)]
#[display(style = "snake_case")]
enum Y {
VarA,
VarB,
}
assert_eq!(Y::VarA.to_string(), "var_a");
assert_eq!("var_a".parse(), Ok(Y::VarA));
许可协议
本项目采用 Apache-2.0/MIT 双许可协议。有关详细信息,请参阅两个 LICENSE-* 文件。
贡献
除非您明确声明,否则根据 Apache-2.0 许可证定义,您有意提交以包含在作品中的任何贡献都将按上述方式双重许可,不附加任何额外条款或条件。
依赖项
~2.4–4MB
~70K SLoC