如何检查在Rust编译时是否实现了特征?

时间:2018-08-12 19:24:07

标签: reflection rust polymorphism output traits

如果要实现,我想打印一个具有Display特征的变量,否则,要打印具有Debug特征的变量。所有类型在编译时都是已知的。

let display = MyDisplayType::new(); // implements Display
let debug = MyDebugType::new(); // implements Debug

output!(display); // uses Display a.k.a. println!("{}", display);
output!(debug); // uses Debug a.k.a. println!("{:?}", debug);

最干净的方法是什么?

0 个答案:

没有答案