Struct syntax::feature_gate::Features  [−][src]
pub struct Features {
    pub declared_stable_lang_features: Vec<(Symbol, Span)>,
    pub declared_lib_features: Vec<(Symbol, Span)>,
    pub asm: bool,
    pub concat_idents: bool,
    pub link_args: bool,
    pub log_syntax: bool,
    pub non_ascii_idents: bool,
    pub plugin_registrar: bool,
    pub thread_local: bool,
    pub trace_macros: bool,
    pub intrinsics: bool,
    pub lang_items: bool,
    pub link_llvm_intrinsics: bool,
    pub linkage: bool,
    pub quote: bool,
    pub rustc_diagnostic_macros: bool,
    pub rustc_const_unstable: bool,
    pub box_syntax: bool,
    pub unboxed_closures: bool,
    pub fundamental: bool,
    pub main: bool,
    pub needs_allocator: bool,
    pub on_unimplemented: bool,
    pub plugin: bool,
    pub simd_ffi: bool,
    pub start: bool,
    pub structural_match: bool,
    pub panic_runtime: bool,
    pub needs_panic_runtime: bool,
    pub optin_builtin_traits: bool,
    pub staged_api: bool,
    pub no_core: bool,
    pub box_patterns: bool,
    pub dropck_parametricity: bool,
    pub dropck_eyepatch: bool,
    pub custom_attribute: bool,
    pub custom_derive: bool,
    pub rustc_attrs: bool,
    pub nll: bool,
    pub allow_internal_unstable: bool,
    pub allow_internal_unsafe: bool,
    pub slice_patterns: bool,
    pub const_fn: bool,
    pub const_let: bool,
    pub prelude_import: bool,
    pub default_type_parameter_fallback: bool,
    pub associated_type_defaults: bool,
    pub repr_simd: bool,
    pub platform_intrinsics: bool,
    pub unwind_attributes: bool,
    pub naked_functions: bool,
    pub no_debug: bool,
    pub omit_gdb_pretty_printer_section: bool,
    pub cfg_target_vendor: bool,
    pub stmt_expr_attributes: bool,
    pub type_ascription: bool,
    pub cfg_target_thread_local: bool,
    pub abi_vectorcall: bool,
    pub exclusive_range_pattern: bool,
    pub specialization: bool,
    pub cfg_target_has_atomic: bool,
    pub never_type: bool,
    pub exhaustive_patterns: bool,
    pub attr_literals: bool,
    pub untagged_unions: bool,
    pub compiler_builtins: bool,
    pub link_cfg: bool,
    pub use_extern_macros: bool,
    pub abi_ptx: bool,
    pub repr128: bool,
    pub abi_unadjusted: bool,
    pub proc_macro: bool,
    pub decl_macro: bool,
    pub static_nobundle: bool,
    pub abi_msp430_interrupt: bool,
    pub sanitizer_runtime: bool,
    pub profiler_runtime: bool,
    pub abi_x86_interrupt: bool,
    pub catch_expr: bool,
    pub used: bool,
    pub global_asm: bool,
    pub overlapping_marker_traits: bool,
    pub macro_vis_matcher: bool,
    pub abi_thiscall: bool,
    pub allow_fail: bool,
    pub unsized_tuple_coercion: bool,
    pub generators: bool,
    pub trait_alias: bool,
    pub allocator_internals: bool,
    pub doc_cfg: bool,
    pub doc_masked: bool,
    pub doc_spotlight: bool,
    pub external_doc: bool,
    pub non_exhaustive: bool,
    pub crate_visibility_modifier: bool,
    pub extern_types: bool,
    pub arbitrary_self_types: bool,
    pub crate_in_paths: bool,
    pub in_band_lifetimes: bool,
    pub generic_associated_types: bool,
    pub extern_absolute_paths: bool,
    pub non_modrs_mods: bool,
    pub extern_in_paths: bool,
    pub macro_at_most_once_rep: bool,
    pub infer_outlives_requirements: bool,
    pub if_while_or_patterns: bool,
    pub pattern_parentheses: bool,
    pub repr_packed: bool,
    pub underscore_imports: bool,
    pub wasm_custom_section: bool,
    pub wasm_import_module: bool,
    pub raw_identifiers: bool,
    pub macros_in_extern: bool,
    pub arm_target_feature: bool,
    pub aarch64_target_feature: bool,
    pub hexagon_target_feature: bool,
    pub powerpc_target_feature: bool,
    pub mips_target_feature: bool,
    pub avx512_target_feature: bool,
    pub mmx_target_feature: bool,
    pub sse4a_target_feature: bool,
    pub tbm_target_feature: bool,
    pub proc_macro_path_invoc: bool,
    pub proc_macro_mod: bool,
    pub proc_macro_expr: bool,
    pub proc_macro_non_items: bool,
    pub proc_macro_gen: bool,
    pub doc_alias: bool,
    pub extern_prelude: bool,
    pub tool_attributes: bool,
    pub tool_lints: bool,
    pub irrefutable_let_patterns: bool,
    pub macro_literal_matcher: bool,
    pub trivial_bounds: bool,
    pub label_break_value: bool,
    pub panic_implementation: bool,
    pub doc_keyword: bool,
    pub async_await: bool,
}A set of features to be used by later passes.
Fields
declared_stable_lang_features: Vec<(Symbol, Span)>
                           #![feature] attrs for stable language features, for error reporting
declared_lib_features: Vec<(Symbol, Span)>
                           #![feature] attrs for non-language (library) features
asm: bool
                           
                           
                           
                           concat_idents: bool
                           
                           
                           
                           link_args: bool
                           
                           
                           
                           log_syntax: bool
                           
                           
                           
                           non_ascii_idents: bool
                           
                           
                           
                           plugin_registrar: bool
                           
                           
                           
                           thread_local: bool
                           
                           
                           
                           trace_macros: bool
                           
                           
                           
                           intrinsics: bool
                           
                           
                           
                           lang_items: bool
                           
                           
                           
                           link_llvm_intrinsics: bool
                           
                           
                           
                           linkage: bool
                           
                           
                           
                           quote: bool
                           
                           
                           
                           rustc_diagnostic_macros: bool
                           
                           
                           
                           rustc_const_unstable: bool
                           
                           
                           
                           box_syntax: bool
                           
                           
                           
                           unboxed_closures: bool
                           
                           
                           
                           fundamental: bool
                           
                           
                           
                           main: bool
                           
                           
                           
                           needs_allocator: bool
                           
                           
                           
                           on_unimplemented: bool
                           
                           
                           
                           plugin: bool
                           
                           
                           
                           simd_ffi: bool
                           
                           
                           
                           start: bool
                           
                           
                           
                           structural_match: bool
                           
                           
                           
                           panic_runtime: bool
                           
                           
                           
                           needs_panic_runtime: bool
                           
                           
                           
                           optin_builtin_traits: bool
                           
                           
                           
                           staged_api: bool
                           
                           
                           
                           no_core: bool
                           
                           
                           
                           box_patterns: bool
                           
                           
                           
                           dropck_parametricity: bool
                           
                           
                           
                           dropck_eyepatch: bool
                           
                           
                           
                           custom_attribute: bool
                           
                           
                           
                           custom_derive: bool
                           
                           
                           
                           rustc_attrs: bool
                           
                           
                           
                           nll: bool
                           
                           
                           
                           allow_internal_unstable: bool
                           
                           
                           
                           allow_internal_unsafe: bool
                           
                           
                           
                           slice_patterns: bool
                           
                           
                           
                           const_fn: bool
                           
                           
                           
                           const_let: bool
                           
                           
                           
                           prelude_import: bool
                           
                           
                           
                           default_type_parameter_fallback: bool
                           
                           
                           
                           associated_type_defaults: bool
                           
                           
                           
                           repr_simd: bool
                           
                           
                           
                           platform_intrinsics: bool
                           
                           
                           
                           unwind_attributes: bool
                           
                           
                           
                           naked_functions: bool
                           
                           
                           
                           no_debug: bool
                           
                           
                           
                           omit_gdb_pretty_printer_section: bool
                           
                           
                           
                           cfg_target_vendor: bool
                           
                           
                           
                           stmt_expr_attributes: bool
                           
                           
                           
                           type_ascription: bool
                           
                           
                           
                           cfg_target_thread_local: bool
                           
                           
                           
                           abi_vectorcall: bool
                           
                           
                           
                           exclusive_range_pattern: bool
                           
                           
                           
                           specialization: bool
                           
                           
                           
                           cfg_target_has_atomic: bool
                           
                           
                           
                           never_type: bool
                           
                           
                           
                           exhaustive_patterns: bool
                           
                           
                           
                           attr_literals: bool
                           
                           
                           
                           untagged_unions: bool
                           
                           
                           
                           compiler_builtins: bool
                           
                           
                           
                           link_cfg: bool
                           
                           
                           
                           use_extern_macros: bool
                           
                           
                           
                           abi_ptx: bool
                           
                           
                           
                           repr128: bool
                           
                           
                           
                           abi_unadjusted: bool
                           
                           
                           
                           proc_macro: bool
                           
                           
                           
                           decl_macro: bool
                           
                           
                           
                           static_nobundle: bool
                           
                           
                           
                           abi_msp430_interrupt: bool
                           
                           
                           
                           sanitizer_runtime: bool
                           
                           
                           
                           profiler_runtime: bool
                           
                           
                           
                           abi_x86_interrupt: bool
                           
                           
                           
                           catch_expr: bool
                           
                           
                           
                           used: bool
                           
                           
                           
                           global_asm: bool
                           
                           
                           
                           overlapping_marker_traits: bool
                           
                           
                           
                           macro_vis_matcher: bool
                           
                           
                           
                           abi_thiscall: bool
                           
                           
                           
                           allow_fail: bool
                           
                           
                           
                           unsized_tuple_coercion: bool
                           
                           
                           
                           generators: bool
                           
                           
                           
                           trait_alias: bool
                           
                           
                           
                           allocator_internals: bool
                           
                           
                           
                           doc_cfg: bool
                           
                           
                           
                           doc_masked: bool
                           
                           
                           
                           doc_spotlight: bool
                           
                           
                           
                           external_doc: bool
                           
                           
                           
                           non_exhaustive: bool
                           
                           
                           
                           crate_visibility_modifier: bool
                           
                           
                           
                           extern_types: bool
                           
                           
                           
                           arbitrary_self_types: bool
                           
                           
                           
                           crate_in_paths: bool
                           
                           
                           
                           in_band_lifetimes: bool
                           
                           
                           
                           generic_associated_types: bool
                           
                           
                           
                           extern_absolute_paths: bool
                           
                           
                           
                           non_modrs_mods: bool
                           
                           
                           
                           extern_in_paths: bool
                           
                           
                           
                           macro_at_most_once_rep: bool
                           
                           
                           
                           infer_outlives_requirements: bool
                           
                           
                           
                           if_while_or_patterns: bool
                           
                           
                           
                           pattern_parentheses: bool
                           
                           
                           
                           repr_packed: bool
                           
                           
                           
                           underscore_imports: bool
                           
                           
                           
                           wasm_custom_section: bool
                           
                           
                           
                           wasm_import_module: bool
                           
                           
                           
                           raw_identifiers: bool
                           
                           
                           
                           macros_in_extern: bool
                           
                           
                           
                           arm_target_feature: bool
                           
                           
                           
                           aarch64_target_feature: bool
                           
                           
                           
                           hexagon_target_feature: bool
                           
                           
                           
                           powerpc_target_feature: bool
                           
                           
                           
                           mips_target_feature: bool
                           
                           
                           
                           avx512_target_feature: bool
                           
                           
                           
                           mmx_target_feature: bool
                           
                           
                           
                           sse4a_target_feature: bool
                           
                           
                           
                           tbm_target_feature: bool
                           
                           
                           
                           proc_macro_path_invoc: bool
                           
                           
                           
                           proc_macro_mod: bool
                           
                           
                           
                           proc_macro_expr: bool
                           
                           
                           
                           proc_macro_non_items: bool
                           
                           
                           
                           proc_macro_gen: bool
                           
                           
                           
                           doc_alias: bool
                           
                           
                           
                           extern_prelude: bool
                           
                           
                           
                           tool_attributes: bool
                           
                           
                           
                           tool_lints: bool
                           
                           
                           
                           irrefutable_let_patterns: bool
                           
                           
                           
                           macro_literal_matcher: bool
                           
                           
                           
                           trivial_bounds: bool
                           
                           
                           
                           label_break_value: bool
                           
                           
                           
                           panic_implementation: bool
                           
                           
                           
                           doc_keyword: bool
                           
                           
                           
                           async_await: bool
                           
                    Methods
impl Features[src] 
impl Featurespub fn new() -> Features[src] 
pub fn new() -> Featurespub fn walk_feature_fields<F>(&self, f: F) where
    F: FnMut(&str, bool), [src] 
pub fn walk_feature_fields<F>(&self, f: F) where
    F: FnMut(&str, bool),