3个版本
0.1.2 | 2019年9月28日 |
---|---|
0.1.1 | 2019年9月27日 |
0.1.0 | 2019年8月30日 |
在 过程宏 中排名第 718
12KB
132 行
tt-equal
这个库是 tt_call
系列模块化互操作tt-muncher构建块的一部分。
包含过程宏 tt_equal
,该宏用于判断两个token树是否相等。适用于 tt_if
。
use tt_equal::tt_equal;
use tt_call::tt_if;
macro_rules! same_ident{
{
$id1:ident, $id2:ident
} => {
tt_if!{
condition = [{tt_equal}]
input = [{ $id1 $id2 }] // The two identifiers are here passed to 'tt_equal'
true = [{
const $id1: bool = true;
}]
false = [{
const $id1: bool = false;
}]
}
}
}
same_ident!(AN_IDENT, AN_IDENT); // Equal identifiers result in a true constant
same_ident!(A_DIFFERENT_IDENT, AN_IDENT); // Different identifiers result in a false constant
fn main() {
assert_eq!(AN_IDENT, true);
assert_eq!(A_DIFFERENT_IDENT, false);
}
许可证
根据您的选择,在以下任一许可证下授权:[Apache许可证,版本2.0] 或 [MIT许可证]。除非您明确声明,否则根据Apache-2.0许可证定义的,您有意提交给本crate的贡献将根据上述许可证双授权,不附加任何额外条款或条件。
依赖
~105KB