Module syntax::feature_gate [] [src]

🔬 This is a nightly-only experimental API. (rustc_private)

Feature gating

This module implements the gating necessary for preventing certain compiler features from being used by default. This module will crawl a pre-expanded AST to ensure that there are no features which are used that are not enabled.

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 code for detection of feature gate usage is added, do not remove it again even once the feature becomes stable.

Structs

Features [
Experimental
]

A set of features to be used by later passes.

GatedCfg [
Experimental
]

Enums

AttributeGate [
Experimental
]
AttributeType [
Experimental
]
GateIssue [
Experimental
]
Stability [
Experimental
]
UnstableFeatures [
Experimental
]

Constants

BUILTIN_ATTRIBUTES [
Experimental
]
CLOSURE_TO_FN_COERCION [
Experimental
]
EXPLAIN_ALLOW_INTERNAL_UNSTABLE [
Experimental
]
EXPLAIN_ASM [
Experimental
]
EXPLAIN_CONCAT_IDENTS [
Experimental
]
EXPLAIN_CUSTOM_DERIVE [
Experimental
]
EXPLAIN_DEPR_CUSTOM_DERIVE [
Experimental
]
EXPLAIN_DERIVE_UNDERSCORE [
Experimental
]
EXPLAIN_LOG_SYNTAX [
Experimental
]
EXPLAIN_PLACEMENT_IN [
Experimental
]
EXPLAIN_STMT_ATTR_SYNTAX [
Experimental
]
EXPLAIN_TRACE_MACROS [
Experimental
]

Functions

check_attribute [
Experimental
]
check_crate [
Experimental
]
deprecated_attributes [
Experimental
]
emit_feature_err [
Experimental
]
feature_err [
Experimental
]
find_lang_feature_accepted_version [
Experimental
]
get_features [
Experimental
]
is_builtin_attr [
Experimental
]