Module stability

Module stability 

Source
Expand description

A pass that annotates every item and method with its stability level, propagating default levels lexically from parent to children ast nodes.

StructsΒ§

CheckTraitImplStable πŸ”’
Checker πŸ”’
MissingStabilityAnnotations πŸ”’

EnumsΒ§

AnnotationKind πŸ”’

ConstantsΒ§

FORCE_UNSTABLE πŸ”’
If the -Z force-unstable-if-unmarked flag is passed then we provide a parent stability annotation which indicates that this is private with the rustc_private feature. This is intended for use when compiling library and rustc_* crates themselves so we can leverage crates.io while maintaining the invariant that all sysroot crates are unstable by default and are unable to be used.

FunctionsΒ§

annotation_kind πŸ”’
check_mod_unstable_api_usage πŸ”’
Cross-references the feature names of unstable APIs with enabled features and possibly prints errors.
check_unused_or_stable_features
Given the list of enabled features that were not language features (i.e., that were expected to be library features), and the list of features used from libraries, identify activated features that don’t exist and error about them.
inherit_const_stability πŸ”’
inherit_deprecation πŸ”’
inherit_stability πŸ”’
is_unstable_reexport πŸ”’
Check whether a path is a use item that has been marked as unstable.
lookup_const_stability πŸ”’
lookup_default_body_stability πŸ”’
lookup_deprecation_entry πŸ”’
lookup_stability πŸ”’
provide πŸ”’
stability_implications πŸ”’
unnecessary_partially_stable_feature_lint πŸ”’
unnecessary_stable_feature_lint πŸ”’