#traits #macro #dx

combine_traits

一个宏,用于创建由现有特质组合而成的特质

3 个版本

0.1.2 2023 年 1 月 2 日
0.1.1 2023 年 1 月 2 日
0.1.0 2023 年 1 月 2 日

1419开发工具

MIT 许可协议

4KB

rust 的 combine_traits 宏

combine_traits! 宏是一个可以用来声明一个新特质的宏,这个新特质仅仅是现有特质的组合。

如何使用

要创建一个新特质,请使用带有名称作为第一个参数的宏 combine_traits!。在 ; 后面,列出所有“子特质”,并用 , 分隔。

示例

use combine_traits::combine_traits;
use std::fmt::{Display, Debug};
combine_traits!(DisplayAndDebug; Display, Debug);
 
fn display_vs_debug<T: DisplayAndDebug>(x: T)->String {
    format!("Display:{}Debug:{:?}", x, x) }
assert_eq!(display_vs_debug(10), "Display:10Debug:10");

无运行时依赖