Feature gate: #![feature(cfg_eval)]
This is a tracking issue for built-in attribute macro #[cfg_eval] that is used for eagerly expanding all #[cfg] and #[cfg_attr] attributes in its input ("fully configuring" the input).
The effect is identical to effect of #[derive(Foo, Bar)] which also fully configures its input before passing it to macros Foo and Bar.
Public API
#[cfg_eval]
#[my_attr] // Receives `struct S {}` as input, the field is configured away by `#[cfg_eval]`
struct S {
#[cfg(FALSE)]
field: u8,
}
Steps / History
Unresolved Questions
Feature gate:
#![feature(cfg_eval)]This is a tracking issue for built-in attribute macro
#[cfg_eval]that is used for eagerly expanding all#[cfg]and#[cfg_attr]attributes in its input ("fully configuring" the input).The effect is identical to effect of
#[derive(Foo, Bar)]which also fully configures its input before passing it to macrosFooandBar.Public API
Steps / History
#[cfg_eval]+ some refactoring #82682Unresolved Questions