Crate rustc_feature
source · [−]Expand description
Feature gates
This crate declares the set of past and present unstable features in the compiler.
Feature gate checking itself is done in rustc_ast_passes/src/feature_gate.rs
at the moment.
Features are enabled in programs via the crate-level attributes of
#![feature(...)]
with a comma-separated list of features.
For the purpose of future feature-tracking, once a feature gate is added,
even if it is stabilized or removed, do not remove it. Instead, move the
symbol to the accepted
or removed
modules respectively.
Modules
accepted 🔒
List of the accepted feature gates.
active 🔒
List of the active feature gates.
Built-in attributes and
cfg
flag gating.removed 🔒
List of the removed feature gates.
Structs
A template that the attribute input must match.
Only top-level shape (
#[attr]
vs #[attr(...)]
vs #[attr = ...]
) is considered now.A set of features to be used by later passes.
Enums
How to handle multiple duplicate attributes on the same item.
Constants
Those language feature has since been Accepted (it was once Active)
Represents active features that are currently being implemented or
currently being considered for addition/removal.
Attributes that have a special meaning to rustc or rustdoc.
Some features are not allowed to be used together at the same time, if
the two are present, produce an error.
Represents unstable features which have since been removed (it was once Active)
Represents stable features which have since been removed (it was once Accepted)
Statics
Functions
Find a gated cfg determined by the
pred
icate which is given the cfg’s name.