5 个版本

0.1.0 2022年1月10日
0.0.8 2021年12月7日
0.0.7 2021年11月29日
0.0.6 2021年11月29日
0.0.4 2021年11月29日

#2006算法

Download history 24/week @ 2024-03-30 7/week @ 2024-04-06

2,185 每月下载量

MIT 许可证

15KB
98

module::instance_of

宏:回答它是否实现了特质的提问?

该解决方案存在局限性

  • 如果实体是一个函数并且 trait 是 Fn/FnMut/FnOnce 且当前实体未实现,你将得到编译时错误而不是 false

这是 module::implements 的别名。

示例

use instance_of::*;

dbg!( instance_of!( 13_i32 => Copy ) );
// < instance_of!( 13_i32 => Copy ) : true
dbg!( instance_of!( Box::new( 13_i32 ) => Copy ) );
// < instance_of!( 13_i32 => Copy ) : false

添加到您的项目中

cargo add implements

从仓库中试用

git clone https://github.com/Wandalen/wTools
cd wTools
cd sample/rust/implements_trivial
cargo run

lib.rs:

宏:回答它是否实现了特质的提问?

该解决方案存在局限性

  • 如果实体是一个函数并且 trait 是 Fn/FnMut/FnOnce 且当前实体未实现,你将得到编译时错误而不是 false

依赖