diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-08-22 18:37:28 +0200 |
|---|---|---|
| committer | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-08-23 01:39:59 +0200 |
| commit | 1c979ad55256d065a6d035a01910726a16644223 (patch) | |
| tree | 397c013cb2175ec390bd1d01b1bb733251da4a05 | |
| parent | 332a77e6212ccb96800c70d864a20aecce789136 (diff) | |
| download | rust-1c979ad55256d065a6d035a01910726a16644223.tar.gz rust-1c979ad55256d065a6d035a01910726a16644223.zip | |
builtin_attrs.rs: simplify `cfg_fn`.
| -rw-r--r-- | src/libsyntax/feature_gate/builtin_attrs.rs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/libsyntax/feature_gate/builtin_attrs.rs b/src/libsyntax/feature_gate/builtin_attrs.rs index 17e58df89e1..7cd295b1b2c 100644 --- a/src/libsyntax/feature_gate/builtin_attrs.rs +++ b/src/libsyntax/feature_gate/builtin_attrs.rs @@ -16,17 +16,16 @@ use syntax_pos::Span; use rustc_data_structures::fx::FxHashMap; use lazy_static::lazy_static; +type GateFn = fn(&Features) -> bool; + macro_rules! cfg_fn { - ($field: ident) => {{ - fn f(features: &Features) -> bool { - features.$field - } - f as fn(&Features) -> bool - }} + ($field: ident) => { + (|features| { features.$field }) as GateFn + } } -// cfg(...)'s that are feature gated -const GATED_CFGS: &[(Symbol, Symbol, fn(&Features) -> bool)] = &[ +/// `cfg(...)`'s that are feature gated. +const GATED_CFGS: &[(Symbol, Symbol, GateFn)] = &[ // (name in cfg, feature, function to check if the feature is enabled) (sym::target_thread_local, sym::cfg_target_thread_local, cfg_fn!(cfg_target_thread_local)), (sym::target_has_atomic, sym::cfg_target_has_atomic, cfg_fn!(cfg_target_has_atomic)), |
