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

#![feature] attrs for stable language features, for error reporting

#![feature] attrs for non-language (library) features

Methods

impl Features
[src]

Trait Implementations

impl Clone for Features
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Auto Trait Implementations

impl !Send for Features

impl !Sync for Features