Struct syntax::feature_gate::Features [−][src]
pub struct Features { pub declared_lang_features: Vec<(Symbol, Span, Option<Symbol>)>, 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 format_args_nl: 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 const_fn_union: bool, pub const_raw_ptr_to_usize_cast: bool, pub const_raw_ptr_deref: bool, pub const_compare_raw_pointers: 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 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 infer_static_outlives_requirements: bool, pub if_while_or_patterns: bool, pub pattern_parentheses: bool, pub repr_packed: bool, pub underscore_imports: bool, pub raw_identifiers: bool, pub macros_in_extern: bool, pub existential_type: 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, pub alloc_error_handler: bool, pub abi_amdgpu_kernel: bool, pub impl_header_lifetime_elision: bool, }
A set of features to be used by later passes.
Fields
declared_lang_features: Vec<(Symbol, Span, Option<Symbol>)>
#![feature]
attrs for 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
format_args_nl: 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
const_fn_union: bool
const_raw_ptr_to_usize_cast: bool
const_raw_ptr_deref: bool
const_compare_raw_pointers: 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
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
infer_static_outlives_requirements: bool
if_while_or_patterns: bool
pattern_parentheses: bool
repr_packed: bool
underscore_imports: bool
raw_identifiers: bool
macros_in_extern: bool
existential_type: 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
alloc_error_handler: bool
abi_amdgpu_kernel: bool
impl_header_lifetime_elision: bool
Methods
impl Features
[src]
impl Features
pub fn new() -> Features
[src]
pub fn new() -> Features
pub 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),
pub fn use_extern_macros(&self) -> bool
[src]
pub fn use_extern_macros(&self) -> bool