3个版本
0.1.2 | 2020年11月23日 |
---|---|
0.1.1 | 2020年11月20日 |
0.1.0 | 2020年11月19日 |
在 过程宏 中排名第1897
5KB
derive_display_from_debug
这是一个简单的Rust宏,用于为任何具有Debug特质的类型派生Display特质。
正如其名一样简单
它所做的只是生成一个使用对象Debug表示形式的Display实现。
为什么有人会使用这个宏呢?
我创建这个宏是为了减少必须实现std::error::Error(这要求Display)但不需要定义用户界面文本的类型(例如)的冗余代码:
- 个人测试程序
- 仅由开发者使用的软件的早期版本
以及可能
- 国际化软件,其中所有用户界面字符串都由本地化资源确定。
您可以在任何认为Debug文本输出对于Display用途足够或不想实现Display但必须满足接口要求的地方使用它。
如何使用它
use derive_display_from_debug::Display;
#[derive(Debug, Display)]
struct NewStruct {}
就这样。现在
println!("{:?}", NewStruct{});
和
println!("{}", NewStruct{});
将具有相同的输出。
依赖项
~1.5MB
~35K SLoC