#macro #cfg #numbers #match #depending #statement #libcore

match_cfg

一个便利的宏,用于根据大量 #[cfg] 参数定义一个项。类似于 match 语句的结构,第一个匹配的分支是会被输出的项。

1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2019 年 4 月 2 日

1097Rust 模式

Download history 409947/week @ 2024-03-14 408753/week @ 2024-03-21 406140/week @ 2024-03-28 412255/week @ 2024-04-04 410607/week @ 2024-04-11 409040/week @ 2024-04-18 388228/week @ 2024-04-25 381094/week @ 2024-05-02 377550/week @ 2024-05-09 401312/week @ 2024-05-16 395575/week @ 2024-05-23 412038/week @ 2024-05-30 397873/week @ 2024-06-06 404700/week @ 2024-06-13 394089/week @ 2024-06-20 336963/week @ 2024-06-27

1,618,782 每月下载量

MIT/Apache

8KB
129

match_cfg

Build Status

文档

最低支持的 Rust 版本: 1.13.0.

一个便利的宏,用于根据大量 #[cfg] 参数定义一个项。类似于 match 语句的结构,第一个匹配的分支是会被输出的项。

[dependencies]
match_cfg = "0.1"

默认启用 use_core 功能,并使用 #![no_std] 属性构建带有 libcore 作为依赖项的包。当禁用此功能时,使用 #![no_core] 属性构建不带有 libcore 支持的包 - 这使得使用 #![feature(no_core)] 并需要 Rust 的夜间版本。

示例

#[macro_use(match_cfg)]
extern crate match_cfg;

match_cfg! {
    #[cfg(unix)] => {
         fn foo() { /* unix specific functionality */ }
     }
     #[cfg(target_pointer_width = "32")] => {
         fn foo() { /* non-unix, 32-bit functionality */ }
     }
     _ => {
         fn foo() { /* fallback implementation */ }
     }
}

fn main() {
    foo();
}

许可证

此项目许可为以下之一

任选其一。

贡献

除非您明确声明,否则您提交给 Serde 的任何有意贡献,根据 Apache-2.0 许可证定义,将根据上述条款双许可,不附加任何其他条款或条件。

无运行时依赖

功能