1 个不稳定版本
0.1.0 | 2021年10月29日 |
---|
在 过程宏 中排名 1491
6KB
54 行
dont-expand
此库提供了rust std库中宏的实现。此库中宏的目的是不执行任何操作。这些宏旨在按需导入以覆盖std宏。当使用 cargo expand
来查看宏可能执行的操作时,这很有用,因为它将有效地隐藏std宏的典型展开,而std宏通常只会污染输出。
包含的宏包括:assert、assert_eq、assert_ne、cfg、column、compile_error、concat、dbg、debug_assert、debug_assert_eq、debug_assert_ne、env、eprint、eprintln、file、format、format_args、include、include_bytes、include_str、is_x86_feature_detected、line、matches、module_path、option_env、panic、print、println、thread_local、todo、unimplemented、unreachable、vec、write、writeln
以及以下 derive 宏:Debug、Default、Clone、Copy、PartialEq、Eq、Hash、PartialOrd、Ord
以下示例将仅显示 Default
宏的展开
use dont_expand::{Debug, Clone};
#[derive(Debug, Clone, Default)]
struct Foo;
glob导入与dont-expand不兼容,因为这将导致编译器抛出错误,因为它们覆盖了std宏。
依赖关系
~4KB