Macro std::cfg

1.0.0 · source ·
macro_rules! cfg {
    ($($cfg:tt)*) => { ... };
}
Expand description

在编译时评估配置标志的布尔组合。

除了 #[cfg] 属性,还提供了此宏,以允许对配置标志进行布尔表达式评估。 这通常会减少重复的代码。

该宏的语法与 cfg 属性的语法相同。

cfg!#[cfg] 不同,它不会删除任何代码,只会评估为 true 或 false。 例如,当将 cfg! 用作条件时,无论 cfg! 正在评估什么,if/else 表达式中的所有块都必须有效。

Examples

let my_directory = if cfg!(windows) {
    "windows-specific-directory"
} else {
    "unix-directory"
};
Run