1use std::hash::{BuildHasher, Hash, Hasher};
6use std::{fmt, str};
7
8use rustc_arena::DroplessArena;
9use rustc_data_structures::fx::FxBuildHasher;
10use rustc_data_structures::hash_table::{Entry, HashTable};
11use rustc_data_structures::stable_hash::{StableCompare, StableHash, StableHashCtxt, StableHasher};
12use rustc_data_structures::sync::Lock;
13use rustc_macros::{Decodable, Encodable, StableHash, symbols};
14
15use crate::edit_distance::find_best_match_for_name;
16use crate::{DUMMY_SP, Edition, Span, with_session_globals};
17
18#[cfg(test)]
19mod tests;
20
21const SYMBOL_DIGITS_BASE: u32 = 2308u32;
const SYMBOL_UPPERCASE_LETTERS_BASE: u32 = 2318u32;
const SYMBOL_LOWERCASE_LETTERS_BASE: u32 = 2344u32;
#[doc = r" The number of predefined symbols; this is the first index for"]
#[doc = r" extra pre-interned symbols in an Interner created via"]
#[doc = r" [`Interner::with_extra_symbols`]."]
pub const PREDEFINED_SYMBOLS_COUNT: u32 = 2371u32;
#[doc(hidden)]
#[allow(non_upper_case_globals)]
mod kw_generated {
use super::Symbol;
pub const DollarCrate: Symbol = Symbol::new(0u32);
pub const PathRoot: Symbol = Symbol::new(1u32);
pub const Underscore: Symbol = Symbol::new(2u32);
pub const As: Symbol = Symbol::new(3u32);
pub const Break: Symbol = Symbol::new(4u32);
pub const Const: Symbol = Symbol::new(5u32);
pub const Continue: Symbol = Symbol::new(6u32);
pub const Crate: Symbol = Symbol::new(7u32);
pub const Else: Symbol = Symbol::new(8u32);
pub const Enum: Symbol = Symbol::new(9u32);
pub const Extern: Symbol = Symbol::new(10u32);
pub const False: Symbol = Symbol::new(11u32);
pub const Fn: Symbol = Symbol::new(12u32);
pub const For: Symbol = Symbol::new(13u32);
pub const If: Symbol = Symbol::new(14u32);
pub const Impl: Symbol = Symbol::new(15u32);
pub const In: Symbol = Symbol::new(16u32);
pub const Let: Symbol = Symbol::new(17u32);
pub const Loop: Symbol = Symbol::new(18u32);
pub const Match: Symbol = Symbol::new(19u32);
pub const Mod: Symbol = Symbol::new(20u32);
pub const Move: Symbol = Symbol::new(21u32);
pub const Mut: Symbol = Symbol::new(22u32);
pub const Pub: Symbol = Symbol::new(23u32);
pub const Ref: Symbol = Symbol::new(24u32);
pub const Return: Symbol = Symbol::new(25u32);
pub const SelfLower: Symbol = Symbol::new(26u32);
pub const SelfUpper: Symbol = Symbol::new(27u32);
pub const Static: Symbol = Symbol::new(28u32);
pub const Struct: Symbol = Symbol::new(29u32);
pub const Super: Symbol = Symbol::new(30u32);
pub const Trait: Symbol = Symbol::new(31u32);
pub const True: Symbol = Symbol::new(32u32);
pub const Type: Symbol = Symbol::new(33u32);
pub const Unsafe: Symbol = Symbol::new(34u32);
pub const Use: Symbol = Symbol::new(35u32);
pub const Where: Symbol = Symbol::new(36u32);
pub const While: Symbol = Symbol::new(37u32);
pub const Abstract: Symbol = Symbol::new(38u32);
pub const Become: Symbol = Symbol::new(39u32);
pub const Box: Symbol = Symbol::new(40u32);
pub const Do: Symbol = Symbol::new(41u32);
pub const Final: Symbol = Symbol::new(42u32);
pub const Macro: Symbol = Symbol::new(43u32);
pub const Override: Symbol = Symbol::new(44u32);
pub const Priv: Symbol = Symbol::new(45u32);
pub const Typeof: Symbol = Symbol::new(46u32);
pub const Unsized: Symbol = Symbol::new(47u32);
pub const Virtual: Symbol = Symbol::new(48u32);
pub const Yield: Symbol = Symbol::new(49u32);
pub const Async: Symbol = Symbol::new(50u32);
pub const Await: Symbol = Symbol::new(51u32);
pub const Dyn: Symbol = Symbol::new(52u32);
pub const Gen: Symbol = Symbol::new(53u32);
pub const Try: Symbol = Symbol::new(54u32);
pub const StaticLifetime: Symbol = Symbol::new(55u32);
pub const UnderscoreLifetime: Symbol = Symbol::new(56u32);
pub const Auto: Symbol = Symbol::new(57u32);
pub const Builtin: Symbol = Symbol::new(58u32);
pub const Catch: Symbol = Symbol::new(59u32);
pub const ContractEnsures: Symbol = Symbol::new(60u32);
pub const ContractRequires: Symbol = Symbol::new(61u32);
pub const Default: Symbol = Symbol::new(62u32);
pub const MacroRules: Symbol = Symbol::new(63u32);
pub const Pin: Symbol = Symbol::new(64u32);
pub const Raw: Symbol = Symbol::new(65u32);
pub const Reuse: Symbol = Symbol::new(66u32);
pub const Safe: Symbol = Symbol::new(67u32);
pub const Union: Symbol = Symbol::new(68u32);
pub const Yeet: Symbol = Symbol::new(69u32);
}
#[allow(non_upper_case_globals)]
#[doc(hidden)]
pub mod sym_generated {
use super::Symbol;
pub const Abi: Symbol = Symbol::new(70u32);
pub const AcqRel: Symbol = Symbol::new(71u32);
pub const Acquire: Symbol = Symbol::new(72u32);
pub const Active: Symbol = Symbol::new(73u32);
pub const ActiveOnly: Symbol = Symbol::new(74u32);
pub const Alignment: Symbol = Symbol::new(75u32);
pub const Arc: Symbol = Symbol::new(76u32);
pub const ArcWeak: Symbol = Symbol::new(77u32);
pub const Array: Symbol = Symbol::new(78u32);
pub const AsMut: Symbol = Symbol::new(79u32);
pub const AsRef: Symbol = Symbol::new(80u32);
pub const AssertParamIsClone: Symbol = Symbol::new(81u32);
pub const AssertParamIsCopy: Symbol = Symbol::new(82u32);
pub const AssertParamIsEq: Symbol = Symbol::new(83u32);
pub const AsyncGenFinished: Symbol = Symbol::new(84u32);
pub const AsyncGenPending: Symbol = Symbol::new(85u32);
pub const AsyncGenReady: Symbol = Symbol::new(86u32);
pub const Atomic: Symbol = Symbol::new(87u32);
pub const BTreeMap: Symbol = Symbol::new(88u32);
pub const Bool: Symbol = Symbol::new(89u32);
pub const Borrow: Symbol = Symbol::new(90u32);
pub const BorrowMut: Symbol = Symbol::new(91u32);
pub const Break: Symbol = Symbol::new(92u32);
pub const BuildHasher: Symbol = Symbol::new(93u32);
pub const CStr: Symbol = Symbol::new(94u32);
pub const CallOnceFuture: Symbol = Symbol::new(95u32);
pub const CallRefFuture: Symbol = Symbol::new(96u32);
pub const Capture: Symbol = Symbol::new(97u32);
pub const Cell: Symbol = Symbol::new(98u32);
pub const Char: Symbol = Symbol::new(99u32);
pub const Cleanup: Symbol = Symbol::new(100u32);
pub const Client: Symbol = Symbol::new(101u32);
pub const Clone: Symbol = Symbol::new(102u32);
pub const CoercePointee: Symbol = Symbol::new(103u32);
pub const CoercePointeeValidated: Symbol = Symbol::new(104u32);
pub const CoerceShared: Symbol = Symbol::new(105u32);
pub const CoerceUnsized: Symbol = Symbol::new(106u32);
pub const Const: Symbol = Symbol::new(107u32);
pub const ConstParamTy: Symbol = Symbol::new(108u32);
pub const ConstParamTy_: Symbol = Symbol::new(109u32);
pub const Context: Symbol = Symbol::new(110u32);
pub const Continue: Symbol = Symbol::new(111u32);
pub const ControlFlow: Symbol = Symbol::new(112u32);
pub const Copy: Symbol = Symbol::new(113u32);
pub const Cow: Symbol = Symbol::new(114u32);
pub const Debug: Symbol = Symbol::new(115u32);
pub const Default: Symbol = Symbol::new(116u32);
pub const Deref: Symbol = Symbol::new(117u32);
pub const DispatchFromDyn: Symbol = Symbol::new(118u32);
pub const Display: Symbol = Symbol::new(119u32);
pub const Dual: Symbol = Symbol::new(120u32);
pub const DualOnly: Symbol = Symbol::new(121u32);
pub const Dualv: Symbol = Symbol::new(122u32);
pub const DualvOnly: Symbol = Symbol::new(123u32);
pub const Duplicated: Symbol = Symbol::new(124u32);
pub const DuplicatedOnly: Symbol = Symbol::new(125u32);
pub const DynTrait: Symbol = Symbol::new(126u32);
pub const Enum: Symbol = Symbol::new(127u32);
pub const Eq: Symbol = Symbol::new(128u32);
pub const Equal: Symbol = Symbol::new(129u32);
pub const Err: Symbol = Symbol::new(130u32);
pub const Expected: Symbol = Symbol::new(131u32);
pub const ExternC: Symbol = Symbol::new(132u32);
pub const ExternRust: Symbol = Symbol::new(133u32);
pub const Float: Symbol = Symbol::new(134u32);
pub const FmtArgumentsNew: Symbol = Symbol::new(135u32);
pub const Fn: Symbol = Symbol::new(136u32);
pub const FnMut: Symbol = Symbol::new(137u32);
pub const FnOnce: Symbol = Symbol::new(138u32);
pub const FnPtr: Symbol = Symbol::new(139u32);
pub const Formatter: Symbol = Symbol::new(140u32);
pub const Forward: Symbol = Symbol::new(141u32);
pub const Found: Symbol = Symbol::new(142u32);
pub const From: Symbol = Symbol::new(143u32);
pub const FromIterator: Symbol = Symbol::new(144u32);
pub const FromResidual: Symbol = Symbol::new(145u32);
pub const GlobalAlloc: Symbol = Symbol::new(146u32);
pub const Hash: Symbol = Symbol::new(147u32);
pub const HashMap: Symbol = Symbol::new(148u32);
pub const HashSet: Symbol = Symbol::new(149u32);
pub const Hasher: Symbol = Symbol::new(150u32);
pub const InCleanup: Symbol = Symbol::new(151u32);
pub const IndexOutput: Symbol = Symbol::new(152u32);
pub const Input: Symbol = Symbol::new(153u32);
pub const Int: Symbol = Symbol::new(154u32);
pub const Into: Symbol = Symbol::new(155u32);
pub const IntoAsyncIterator: Symbol = Symbol::new(156u32);
pub const IntoFuture: Symbol = Symbol::new(157u32);
pub const IntoIterator: Symbol = Symbol::new(158u32);
pub const IntoIteratorItem: Symbol = Symbol::new(159u32);
pub const IoBufReader: Symbol = Symbol::new(160u32);
pub const IrTyKind: Symbol = Symbol::new(161u32);
pub const Item: Symbol = Symbol::new(162u32);
pub const ItemContext: Symbol = Symbol::new(163u32);
pub const Iterator: Symbol = Symbol::new(164u32);
pub const IteratorItem: Symbol = Symbol::new(165u32);
pub const IteratorMap: Symbol = Symbol::new(166u32);
pub const Layout: Symbol = Symbol::new(167u32);
pub const Lifetime: Symbol = Symbol::new(168u32);
pub const LintPass: Symbol = Symbol::new(169u32);
pub const LocalKey: Symbol = Symbol::new(170u32);
pub const Mutex: Symbol = Symbol::new(171u32);
pub const MutexGuard: Symbol = Symbol::new(172u32);
pub const Named: Symbol = Symbol::new(173u32);
pub const NonZero: Symbol = Symbol::new(174u32);
pub const None: Symbol = Symbol::new(175u32);
pub const Normal: Symbol = Symbol::new(176u32);
pub const Ok: Symbol = Symbol::new(177u32);
pub const Option: Symbol = Symbol::new(178u32);
pub const Ord: Symbol = Symbol::new(179u32);
pub const Ordering: Symbol = Symbol::new(180u32);
pub const Other: Symbol = Symbol::new(181u32);
pub const Output: Symbol = Symbol::new(182u32);
pub const ParamSet: Symbol = Symbol::new(183u32);
pub const PartialEq: Symbol = Symbol::new(184u32);
pub const PartialOrd: Symbol = Symbol::new(185u32);
pub const Pending: Symbol = Symbol::new(186u32);
pub const PinDerefMutHelper: Symbol = Symbol::new(187u32);
pub const PinMacroHelper: Symbol = Symbol::new(188u32);
pub const Pointer: Symbol = Symbol::new(189u32);
pub const Poll: Symbol = Symbol::new(190u32);
pub const Range: Symbol = Symbol::new(191u32);
pub const RangeCopy: Symbol = Symbol::new(192u32);
pub const RangeFrom: Symbol = Symbol::new(193u32);
pub const RangeFromCopy: Symbol = Symbol::new(194u32);
pub const RangeFull: Symbol = Symbol::new(195u32);
pub const RangeInclusive: Symbol = Symbol::new(196u32);
pub const RangeInclusiveCopy: Symbol = Symbol::new(197u32);
pub const RangeMax: Symbol = Symbol::new(198u32);
pub const RangeMin: Symbol = Symbol::new(199u32);
pub const RangeSub: Symbol = Symbol::new(200u32);
pub const RangeTo: Symbol = Symbol::new(201u32);
pub const RangeToInclusive: Symbol = Symbol::new(202u32);
pub const RangeToInclusiveCopy: Symbol = Symbol::new(203u32);
pub const Rc: Symbol = Symbol::new(204u32);
pub const RcWeak: Symbol = Symbol::new(205u32);
pub const Ready: Symbol = Symbol::new(206u32);
pub const Reborrow: Symbol = Symbol::new(207u32);
pub const RefCell: Symbol = Symbol::new(208u32);
pub const Reference: Symbol = Symbol::new(209u32);
pub const Relaxed: Symbol = Symbol::new(210u32);
pub const Release: Symbol = Symbol::new(211u32);
pub const Result: Symbol = Symbol::new(212u32);
pub const ResumeTy: Symbol = Symbol::new(213u32);
pub const Reverse: Symbol = Symbol::new(214u32);
pub const Rust: Symbol = Symbol::new(215u32);
pub const RustEmbed: Symbol = Symbol::new(216u32);
pub const RustaceansAreAwesome: Symbol = Symbol::new(217u32);
pub const RwLock: Symbol = Symbol::new(218u32);
pub const RwLockReadGuard: Symbol = Symbol::new(219u32);
pub const RwLockWriteGuard: Symbol = Symbol::new(220u32);
pub const SelfTy: Symbol = Symbol::new(221u32);
pub const Send: Symbol = Symbol::new(222u32);
pub const SeqCst: Symbol = Symbol::new(223u32);
pub const Sized: Symbol = Symbol::new(224u32);
pub const Slice: Symbol = Symbol::new(225u32);
pub const SliceIndex: Symbol = Symbol::new(226u32);
pub const Some: Symbol = Symbol::new(227u32);
pub const Source: Symbol = Symbol::new(228u32);
pub const SpanCtxt: Symbol = Symbol::new(229u32);
pub const StdinLock: Symbol = Symbol::new(230u32);
pub const Str: Symbol = Symbol::new(231u32);
pub const String: Symbol = Symbol::new(232u32);
pub const Struct: Symbol = Symbol::new(233u32);
pub const StructuralPartialEq: Symbol = Symbol::new(234u32);
pub const SymbolIntern: Symbol = Symbol::new(235u32);
pub const Sync: Symbol = Symbol::new(236u32);
pub const SyncUnsafeCell: Symbol = Symbol::new(237u32);
pub const Target: Symbol = Symbol::new(238u32);
pub const This: Symbol = Symbol::new(239u32);
pub const TokenStream: Symbol = Symbol::new(240u32);
pub const TrivialClone: Symbol = Symbol::new(241u32);
pub const Try: Symbol = Symbol::new(242u32);
pub const TryCaptureGeneric: Symbol = Symbol::new(243u32);
pub const TryCapturePrintable: Symbol = Symbol::new(244u32);
pub const TryFrom: Symbol = Symbol::new(245u32);
pub const TryInto: Symbol = Symbol::new(246u32);
pub const Tuple: Symbol = Symbol::new(247u32);
pub const Ty: Symbol = Symbol::new(248u32);
pub const TyCtxt: Symbol = Symbol::new(249u32);
pub const TyKind: Symbol = Symbol::new(250u32);
pub const Type: Symbol = Symbol::new(251u32);
pub const Union: Symbol = Symbol::new(252u32);
pub const Unresolved: Symbol = Symbol::new(253u32);
pub const Unsize: Symbol = Symbol::new(254u32);
pub const Vec: Symbol = Symbol::new(255u32);
pub const Wrapper: Symbol = Symbol::new(256u32);
pub const _DECLS: Symbol = Symbol::new(257u32);
pub const __H: Symbol = Symbol::new(258u32);
pub const __S: Symbol = Symbol::new(259u32);
pub const __awaitee: Symbol = Symbol::new(260u32);
pub const __try_var: Symbol = Symbol::new(261u32);
pub const _t: Symbol = Symbol::new(262u32);
pub const _task_context: Symbol = Symbol::new(263u32);
pub const a32: Symbol = Symbol::new(264u32);
pub const aarch64: Symbol = Symbol::new(265u32);
pub const aarch64_target_feature: Symbol = Symbol::new(266u32);
pub const aarch64_unstable_target_feature: Symbol = Symbol::new(267u32);
pub const aarch64_ver_target_feature: Symbol = Symbol::new(268u32);
pub const abi: Symbol = Symbol::new(269u32);
pub const abi_amdgpu_kernel: Symbol = Symbol::new(270u32);
pub const abi_avr_interrupt: Symbol = Symbol::new(271u32);
pub const abi_c_cmse_nonsecure_call: Symbol = Symbol::new(272u32);
pub const abi_cmse_nonsecure_call: Symbol = Symbol::new(273u32);
pub const abi_custom: Symbol = Symbol::new(274u32);
pub const abi_efiapi: Symbol = Symbol::new(275u32);
pub const abi_gpu_kernel: Symbol = Symbol::new(276u32);
pub const abi_msp430_interrupt: Symbol = Symbol::new(277u32);
pub const abi_ptx: Symbol = Symbol::new(278u32);
pub const abi_riscv_interrupt: Symbol = Symbol::new(279u32);
pub const abi_swift: Symbol = Symbol::new(280u32);
pub const abi_sysv64: Symbol = Symbol::new(281u32);
pub const abi_thiscall: Symbol = Symbol::new(282u32);
pub const abi_unadjusted: Symbol = Symbol::new(283u32);
pub const abi_vectorcall: Symbol = Symbol::new(284u32);
pub const abi_x86_interrupt: Symbol = Symbol::new(285u32);
pub const abort: Symbol = Symbol::new(286u32);
pub const add: Symbol = Symbol::new(287u32);
pub const add_assign: Symbol = Symbol::new(288u32);
pub const add_with_overflow: Symbol = Symbol::new(289u32);
pub const address: Symbol = Symbol::new(290u32);
pub const adt_const_params: Symbol = Symbol::new(291u32);
pub const advanced_slice_patterns: Symbol = Symbol::new(292u32);
pub const adx_target_feature: Symbol = Symbol::new(293u32);
pub const aes: Symbol = Symbol::new(294u32);
pub const aggregate_raw_ptr: Symbol = Symbol::new(295u32);
pub const alias: Symbol = Symbol::new(296u32);
pub const align: Symbol = Symbol::new(297u32);
pub const align_of: Symbol = Symbol::new(298u32);
pub const align_of_val: Symbol = Symbol::new(299u32);
pub const alignment: Symbol = Symbol::new(300u32);
pub const all: Symbol = Symbol::new(301u32);
pub const alloc: Symbol = Symbol::new(302u32);
pub const alloc_error_handler: Symbol = Symbol::new(303u32);
pub const alloc_layout: Symbol = Symbol::new(304u32);
pub const alloc_zeroed: Symbol = Symbol::new(305u32);
pub const allocator: Symbol = Symbol::new(306u32);
pub const allocator_api: Symbol = Symbol::new(307u32);
pub const allocator_internals: Symbol = Symbol::new(308u32);
pub const allow: Symbol = Symbol::new(309u32);
pub const allow_fail: Symbol = Symbol::new(310u32);
pub const allow_internal_unsafe: Symbol = Symbol::new(311u32);
pub const allow_internal_unstable: Symbol = Symbol::new(312u32);
pub const altivec: Symbol = Symbol::new(313u32);
pub const alu32: Symbol = Symbol::new(314u32);
pub const always: Symbol = Symbol::new(315u32);
pub const amdgpu: Symbol = Symbol::new(316u32);
pub const amdgpu_dispatch_ptr: Symbol = Symbol::new(317u32);
pub const analysis: Symbol = Symbol::new(318u32);
pub const and: Symbol = Symbol::new(319u32);
pub const and_then: Symbol = Symbol::new(320u32);
pub const anon: Symbol = Symbol::new(321u32);
pub const anon_assoc: Symbol = Symbol::new(322u32);
pub const anonymous_lifetime_in_impl_trait: Symbol = Symbol::new(323u32);
pub const any: Symbol = Symbol::new(324u32);
pub const apx_target_feature: Symbol = Symbol::new(325u32);
pub const arbitrary_enum_discriminant: Symbol = Symbol::new(326u32);
pub const arbitrary_self_types: Symbol = Symbol::new(327u32);
pub const arbitrary_self_types_pointers: Symbol = Symbol::new(328u32);
pub const areg: Symbol = Symbol::new(329u32);
pub const args: Symbol = Symbol::new(330u32);
pub const arith_offset: Symbol = Symbol::new(331u32);
pub const arm: Symbol = Symbol::new(332u32);
pub const arm64ec: Symbol = Symbol::new(333u32);
pub const arm_a32: Symbol = Symbol::new(334u32);
pub const arm_t32: Symbol = Symbol::new(335u32);
pub const arm_target_feature: Symbol = Symbol::new(336u32);
pub const array: Symbol = Symbol::new(337u32);
pub const as_dash_needed: Symbol = Symbol::new(338u32);
pub const as_ref: Symbol = Symbol::new(339u32);
pub const asm: Symbol = Symbol::new(340u32);
pub const asm_cfg: Symbol = Symbol::new(341u32);
pub const asm_const: Symbol = Symbol::new(342u32);
pub const asm_const_ptr: Symbol = Symbol::new(343u32);
pub const asm_experimental_arch: Symbol = Symbol::new(344u32);
pub const asm_experimental_reg: Symbol = Symbol::new(345u32);
pub const asm_goto: Symbol = Symbol::new(346u32);
pub const asm_goto_with_outputs: Symbol = Symbol::new(347u32);
pub const asm_sym: Symbol = Symbol::new(348u32);
pub const asm_unwind: Symbol = Symbol::new(349u32);
pub const assert: Symbol = Symbol::new(350u32);
pub const assert_eq: Symbol = Symbol::new(351u32);
pub const assert_eq_macro: Symbol = Symbol::new(352u32);
pub const assert_fields_are_eq: Symbol = Symbol::new(353u32);
pub const assert_inhabited: Symbol = Symbol::new(354u32);
pub const assert_macro: Symbol = Symbol::new(355u32);
pub const assert_mem_uninitialized_valid: Symbol = Symbol::new(356u32);
pub const assert_ne_macro: Symbol = Symbol::new(357u32);
pub const assert_receiver_is_total_eq: Symbol = Symbol::new(358u32);
pub const assert_zero_valid: Symbol = Symbol::new(359u32);
pub const asserting: Symbol = Symbol::new(360u32);
pub const associated_const_equality: Symbol = Symbol::new(361u32);
pub const associated_consts: Symbol = Symbol::new(362u32);
pub const associated_type_bounds: Symbol = Symbol::new(363u32);
pub const associated_type_defaults: Symbol = Symbol::new(364u32);
pub const associated_types: Symbol = Symbol::new(365u32);
pub const assume: Symbol = Symbol::new(366u32);
pub const assume_init: Symbol = Symbol::new(367u32);
pub const asterisk: Symbol = Symbol::new(368u32);
pub const async_await: Symbol = Symbol::new(369u32);
pub const async_call: Symbol = Symbol::new(370u32);
pub const async_call_mut: Symbol = Symbol::new(371u32);
pub const async_call_once: Symbol = Symbol::new(372u32);
pub const async_closure: Symbol = Symbol::new(373u32);
pub const async_drop: Symbol = Symbol::new(374u32);
pub const async_drop_in_place: Symbol = Symbol::new(375u32);
pub const async_fn: Symbol = Symbol::new(376u32);
pub const async_fn_in_dyn_trait: Symbol = Symbol::new(377u32);
pub const async_fn_in_trait: Symbol = Symbol::new(378u32);
pub const async_fn_kind_helper: Symbol = Symbol::new(379u32);
pub const async_fn_kind_upvars: Symbol = Symbol::new(380u32);
pub const async_fn_mut: Symbol = Symbol::new(381u32);
pub const async_fn_once: Symbol = Symbol::new(382u32);
pub const async_fn_once_output: Symbol = Symbol::new(383u32);
pub const async_fn_track_caller: Symbol = Symbol::new(384u32);
pub const async_fn_traits: Symbol = Symbol::new(385u32);
pub const async_for_loop: Symbol = Symbol::new(386u32);
pub const async_gen_internals: Symbol = Symbol::new(387u32);
pub const async_iterator: Symbol = Symbol::new(388u32);
pub const async_iterator_poll_next: Symbol = Symbol::new(389u32);
pub const async_trait_bounds: Symbol = Symbol::new(390u32);
pub const atomic: Symbol = Symbol::new(391u32);
pub const atomic_and: Symbol = Symbol::new(392u32);
pub const atomic_cxchg: Symbol = Symbol::new(393u32);
pub const atomic_cxchgweak: Symbol = Symbol::new(394u32);
pub const atomic_fence: Symbol = Symbol::new(395u32);
pub const atomic_load: Symbol = Symbol::new(396u32);
pub const atomic_max: Symbol = Symbol::new(397u32);
pub const atomic_min: Symbol = Symbol::new(398u32);
pub const atomic_nand: Symbol = Symbol::new(399u32);
pub const atomic_or: Symbol = Symbol::new(400u32);
pub const atomic_singlethreadfence: Symbol = Symbol::new(401u32);
pub const atomic_store: Symbol = Symbol::new(402u32);
pub const atomic_umax: Symbol = Symbol::new(403u32);
pub const atomic_umin: Symbol = Symbol::new(404u32);
pub const atomic_xadd: Symbol = Symbol::new(405u32);
pub const atomic_xchg: Symbol = Symbol::new(406u32);
pub const atomic_xor: Symbol = Symbol::new(407u32);
pub const atomic_xsub: Symbol = Symbol::new(408u32);
pub const atomics: Symbol = Symbol::new(409u32);
pub const att_syntax: Symbol = Symbol::new(410u32);
pub const attr: Symbol = Symbol::new(411u32);
pub const attr_literals: Symbol = Symbol::new(412u32);
pub const attribute: Symbol = Symbol::new(413u32);
pub const attributes: Symbol = Symbol::new(414u32);
pub const audit_that: Symbol = Symbol::new(415u32);
pub const augmented_assignments: Symbol = Symbol::new(416u32);
pub const auto_cfg: Symbol = Symbol::new(417u32);
pub const auto_traits: Symbol = Symbol::new(418u32);
pub const autodiff: Symbol = Symbol::new(419u32);
pub const autodiff_forward: Symbol = Symbol::new(420u32);
pub const autodiff_reverse: Symbol = Symbol::new(421u32);
pub const automatically_derived: Symbol = Symbol::new(422u32);
pub const available_externally: Symbol = Symbol::new(423u32);
pub const avr: Symbol = Symbol::new(424u32);
pub const avr_target_feature: Symbol = Symbol::new(425u32);
pub const avx: Symbol = Symbol::new(426u32);
pub const avx10_target_feature: Symbol = Symbol::new(427u32);
pub const avx512_target_feature: Symbol = Symbol::new(428u32);
pub const avx512bw: Symbol = Symbol::new(429u32);
pub const avx512f: Symbol = Symbol::new(430u32);
pub const await_macro: Symbol = Symbol::new(431u32);
pub const backchain: Symbol = Symbol::new(432u32);
pub const backend_repr: Symbol = Symbol::new(433u32);
pub const begin_panic: Symbol = Symbol::new(434u32);
pub const bench: Symbol = Symbol::new(435u32);
pub const bevy_ecs: Symbol = Symbol::new(436u32);
pub const bikeshed: Symbol = Symbol::new(437u32);
pub const bikeshed_guaranteed_no_drop: Symbol = Symbol::new(438u32);
pub const bin: Symbol = Symbol::new(439u32);
pub const bind_by_move_pattern_guards: Symbol = Symbol::new(440u32);
pub const bindings_after_at: Symbol = Symbol::new(441u32);
pub const bitand: Symbol = Symbol::new(442u32);
pub const bitand_assign: Symbol = Symbol::new(443u32);
pub const bitor: Symbol = Symbol::new(444u32);
pub const bitor_assign: Symbol = Symbol::new(445u32);
pub const bitreverse: Symbol = Symbol::new(446u32);
pub const bits: Symbol = Symbol::new(447u32);
pub const bitxor: Symbol = Symbol::new(448u32);
pub const bitxor_assign: Symbol = Symbol::new(449u32);
pub const black_box: Symbol = Symbol::new(450u32);
pub const block: Symbol = Symbol::new(451u32);
pub const blocking: Symbol = Symbol::new(452u32);
pub const bool: Symbol = Symbol::new(453u32);
pub const borrowck_graphviz_format: Symbol = Symbol::new(454u32);
pub const borrowck_graphviz_postflow: Symbol = Symbol::new(455u32);
pub const box_new: Symbol = Symbol::new(456u32);
pub const box_patterns: Symbol = Symbol::new(457u32);
pub const box_syntax: Symbol = Symbol::new(458u32);
pub const boxed_slice: Symbol = Symbol::new(459u32);
pub const bpf: Symbol = Symbol::new(460u32);
pub const bpf_target_feature: Symbol = Symbol::new(461u32);
pub const braced_empty_structs: Symbol = Symbol::new(462u32);
pub const branch: Symbol = Symbol::new(463u32);
pub const breakpoint: Symbol = Symbol::new(464u32);
pub const breg: Symbol = Symbol::new(465u32);
pub const bridge: Symbol = Symbol::new(466u32);
pub const bswap: Symbol = Symbol::new(467u32);
pub const built: Symbol = Symbol::new(468u32);
pub const builtin_syntax: Symbol = Symbol::new(469u32);
pub const bundle: Symbol = Symbol::new(470u32);
pub const c_dash_variadic: Symbol = Symbol::new(471u32);
pub const c_str_literals: Symbol = Symbol::new(472u32);
pub const c_unwind: Symbol = Symbol::new(473u32);
pub const c_variadic: Symbol = Symbol::new(474u32);
pub const c_variadic_experimental_arch: Symbol = Symbol::new(475u32);
pub const c_variadic_naked_functions: Symbol = Symbol::new(476u32);
pub const c_void: Symbol = Symbol::new(477u32);
pub const call: Symbol = Symbol::new(478u32);
pub const call_mut: Symbol = Symbol::new(479u32);
pub const call_once: Symbol = Symbol::new(480u32);
pub const call_once_future: Symbol = Symbol::new(481u32);
pub const call_ref_future: Symbol = Symbol::new(482u32);
pub const caller: Symbol = Symbol::new(483u32);
pub const caller_location: Symbol = Symbol::new(484u32);
pub const capture_disjoint_fields: Symbol = Symbol::new(485u32);
pub const carrying_mul_add: Symbol = Symbol::new(486u32);
pub const carryless_mul: Symbol = Symbol::new(487u32);
pub const catch_unwind: Symbol = Symbol::new(488u32);
pub const cause: Symbol = Symbol::new(489u32);
pub const cdylib: Symbol = Symbol::new(490u32);
pub const ceilf16: Symbol = Symbol::new(491u32);
pub const ceilf32: Symbol = Symbol::new(492u32);
pub const ceilf64: Symbol = Symbol::new(493u32);
pub const ceilf128: Symbol = Symbol::new(494u32);
pub const cfg: Symbol = Symbol::new(495u32);
pub const cfg_accessible: Symbol = Symbol::new(496u32);
pub const cfg_attr: Symbol = Symbol::new(497u32);
pub const cfg_attr_multi: Symbol = Symbol::new(498u32);
pub const cfg_boolean_literals: Symbol = Symbol::new(499u32);
pub const cfg_contract_checks: Symbol = Symbol::new(500u32);
pub const cfg_doctest: Symbol = Symbol::new(501u32);
pub const cfg_eval: Symbol = Symbol::new(502u32);
pub const cfg_overflow_checks: Symbol = Symbol::new(503u32);
pub const cfg_panic: Symbol = Symbol::new(504u32);
pub const cfg_relocation_model: Symbol = Symbol::new(505u32);
pub const cfg_sanitize: Symbol = Symbol::new(506u32);
pub const cfg_sanitizer_cfi: Symbol = Symbol::new(507u32);
pub const cfg_select: Symbol = Symbol::new(508u32);
pub const cfg_target_abi: Symbol = Symbol::new(509u32);
pub const cfg_target_compact: Symbol = Symbol::new(510u32);
pub const cfg_target_feature: Symbol = Symbol::new(511u32);
pub const cfg_target_has_atomic: Symbol = Symbol::new(512u32);
pub const cfg_target_has_atomic_equal_alignment: Symbol =
Symbol::new(513u32);
pub const cfg_target_has_reliable_f16_f128: Symbol = Symbol::new(514u32);
pub const cfg_target_has_threads: Symbol = Symbol::new(515u32);
pub const cfg_target_object_format: Symbol = Symbol::new(516u32);
pub const cfg_target_thread_local: Symbol = Symbol::new(517u32);
pub const cfg_target_vendor: Symbol = Symbol::new(518u32);
pub const cfg_ub_checks: Symbol = Symbol::new(519u32);
pub const cfg_version: Symbol = Symbol::new(520u32);
pub const cfi: Symbol = Symbol::new(521u32);
pub const cfi_encoding: Symbol = Symbol::new(522u32);
pub const char: Symbol = Symbol::new(523u32);
pub const checked_type_aliases: Symbol = Symbol::new(524u32);
pub const clflushopt_target_feature: Symbol = Symbol::new(525u32);
pub const client: Symbol = Symbol::new(526u32);
pub const clippy: Symbol = Symbol::new(527u32);
pub const clobber_abi: Symbol = Symbol::new(528u32);
pub const clone: Symbol = Symbol::new(529u32);
pub const clone_closures: Symbol = Symbol::new(530u32);
pub const clone_fn: Symbol = Symbol::new(531u32);
pub const clone_from: Symbol = Symbol::new(532u32);
pub const close_fn: Symbol = Symbol::new(533u32);
pub const closure: Symbol = Symbol::new(534u32);
pub const closure_lifetime_binder: Symbol = Symbol::new(535u32);
pub const closure_to_fn_coercion: Symbol = Symbol::new(536u32);
pub const closure_track_caller: Symbol = Symbol::new(537u32);
pub const cmp: Symbol = Symbol::new(538u32);
pub const cmp_ord_max: Symbol = Symbol::new(539u32);
pub const cmp_ord_min: Symbol = Symbol::new(540u32);
pub const cmp_partialeq_eq: Symbol = Symbol::new(541u32);
pub const cmp_partialeq_ne: Symbol = Symbol::new(542u32);
pub const cmp_partialord_cmp: Symbol = Symbol::new(543u32);
pub const cmp_partialord_ge: Symbol = Symbol::new(544u32);
pub const cmp_partialord_gt: Symbol = Symbol::new(545u32);
pub const cmp_partialord_le: Symbol = Symbol::new(546u32);
pub const cmp_partialord_lt: Symbol = Symbol::new(547u32);
pub const cmpxchg16b_target_feature: Symbol = Symbol::new(548u32);
pub const cmse_nonsecure_entry: Symbol = Symbol::new(549u32);
pub const code: Symbol = Symbol::new(550u32);
pub const coerce_pointee_validated: Symbol = Symbol::new(551u32);
pub const coerce_shared: Symbol = Symbol::new(552u32);
pub const coerce_shared_target: Symbol = Symbol::new(553u32);
pub const coerce_unsized: Symbol = Symbol::new(554u32);
pub const coff: Symbol = Symbol::new(555u32);
pub const cold: Symbol = Symbol::new(556u32);
pub const cold_path: Symbol = Symbol::new(557u32);
pub const collapse_debuginfo: Symbol = Symbol::new(558u32);
pub const column: Symbol = Symbol::new(559u32);
pub const common: Symbol = Symbol::new(560u32);
pub const compare_bytes: Symbol = Symbol::new(561u32);
pub const compare_exchange: Symbol = Symbol::new(562u32);
pub const compare_exchange_weak: Symbol = Symbol::new(563u32);
pub const compile_error: Symbol = Symbol::new(564u32);
pub const compiler: Symbol = Symbol::new(565u32);
pub const compiler_builtins: Symbol = Symbol::new(566u32);
pub const compiler_copy: Symbol = Symbol::new(567u32);
pub const compiler_fence: Symbol = Symbol::new(568u32);
pub const compiler_move: Symbol = Symbol::new(569u32);
pub const complex: Symbol = Symbol::new(570u32);
pub const concat: Symbol = Symbol::new(571u32);
pub const concat_bytes: Symbol = Symbol::new(572u32);
pub const conservative_impl_trait: Symbol = Symbol::new(573u32);
pub const console: Symbol = Symbol::new(574u32);
pub const const_allocate: Symbol = Symbol::new(575u32);
pub const const_async_blocks: Symbol = Symbol::new(576u32);
pub const const_block_items: Symbol = Symbol::new(577u32);
pub const const_c_variadic: Symbol = Symbol::new(578u32);
pub const const_closures: Symbol = Symbol::new(579u32);
pub const const_compare_raw_pointers: Symbol = Symbol::new(580u32);
pub const const_constructor: Symbol = Symbol::new(581u32);
pub const const_continue: Symbol = Symbol::new(582u32);
pub const const_deallocate: Symbol = Symbol::new(583u32);
pub const const_destruct: Symbol = Symbol::new(584u32);
pub const const_eval_limit: Symbol = Symbol::new(585u32);
pub const const_eval_select: Symbol = Symbol::new(586u32);
pub const const_evaluatable_checked: Symbol = Symbol::new(587u32);
pub const const_extern_fn: Symbol = Symbol::new(588u32);
pub const const_fn: Symbol = Symbol::new(589u32);
pub const const_fn_floating_point_arithmetic: Symbol =
Symbol::new(590u32);
pub const const_fn_fn_ptr_basics: Symbol = Symbol::new(591u32);
pub const const_fn_trait_bound: Symbol = Symbol::new(592u32);
pub const const_fn_transmute: Symbol = Symbol::new(593u32);
pub const const_fn_union: Symbol = Symbol::new(594u32);
pub const const_fn_unsize: Symbol = Symbol::new(595u32);
pub const const_for: Symbol = Symbol::new(596u32);
pub const const_format_args: Symbol = Symbol::new(597u32);
pub const const_generics: Symbol = Symbol::new(598u32);
pub const const_generics_defaults: Symbol = Symbol::new(599u32);
pub const const_if_match: Symbol = Symbol::new(600u32);
pub const const_impl_trait: Symbol = Symbol::new(601u32);
pub const const_in_array_repeat_expressions: Symbol = Symbol::new(602u32);
pub const const_indexing: Symbol = Symbol::new(603u32);
pub const const_let: Symbol = Symbol::new(604u32);
pub const const_loop: Symbol = Symbol::new(605u32);
pub const const_make_global: Symbol = Symbol::new(606u32);
pub const const_mut_refs: Symbol = Symbol::new(607u32);
pub const const_panic: Symbol = Symbol::new(608u32);
pub const const_panic_fmt: Symbol = Symbol::new(609u32);
pub const const_param_ty: Symbol = Symbol::new(610u32);
pub const const_param_ty_unchecked: Symbol = Symbol::new(611u32);
pub const const_precise_live_drops: Symbol = Symbol::new(612u32);
pub const const_ptr_cast: Symbol = Symbol::new(613u32);
pub const const_raw_ptr_deref: Symbol = Symbol::new(614u32);
pub const const_raw_ptr_to_usize_cast: Symbol = Symbol::new(615u32);
pub const const_refs_to_cell: Symbol = Symbol::new(616u32);
pub const const_refs_to_static: Symbol = Symbol::new(617u32);
pub const const_trait_bound_opt_out: Symbol = Symbol::new(618u32);
pub const const_trait_impl: Symbol = Symbol::new(619u32);
pub const const_try: Symbol = Symbol::new(620u32);
pub const const_ty_placeholder: Symbol = Symbol::new(621u32);
pub const constant: Symbol = Symbol::new(622u32);
pub const constructor: Symbol = Symbol::new(623u32);
pub const contract_build_check_ensures: Symbol = Symbol::new(624u32);
pub const contract_check_ensures: Symbol = Symbol::new(625u32);
pub const contract_check_requires: Symbol = Symbol::new(626u32);
pub const contract_checks: Symbol = Symbol::new(627u32);
pub const contracts: Symbol = Symbol::new(628u32);
pub const contracts_ensures: Symbol = Symbol::new(629u32);
pub const contracts_internals: Symbol = Symbol::new(630u32);
pub const contracts_requires: Symbol = Symbol::new(631u32);
pub const convert: Symbol = Symbol::new(632u32);
pub const coprocessor: Symbol = Symbol::new(633u32);
pub const copy: Symbol = Symbol::new(634u32);
pub const copy_closures: Symbol = Symbol::new(635u32);
pub const copy_nonoverlapping: Symbol = Symbol::new(636u32);
pub const copysignf16: Symbol = Symbol::new(637u32);
pub const copysignf32: Symbol = Symbol::new(638u32);
pub const copysignf64: Symbol = Symbol::new(639u32);
pub const copysignf128: Symbol = Symbol::new(640u32);
pub const core: Symbol = Symbol::new(641u32);
pub const core_panic: Symbol = Symbol::new(642u32);
pub const core_panic_2015_macro: Symbol = Symbol::new(643u32);
pub const core_panic_macro: Symbol = Symbol::new(644u32);
pub const coroutine: Symbol = Symbol::new(645u32);
pub const coroutine_clone: Symbol = Symbol::new(646u32);
pub const coroutine_resume: Symbol = Symbol::new(647u32);
pub const coroutine_return: Symbol = Symbol::new(648u32);
pub const coroutine_state: Symbol = Symbol::new(649u32);
pub const coroutine_yield: Symbol = Symbol::new(650u32);
pub const coroutines: Symbol = Symbol::new(651u32);
pub const cos: Symbol = Symbol::new(652u32);
pub const count: Symbol = Symbol::new(653u32);
pub const covariant_unsafe_cell: Symbol = Symbol::new(654u32);
pub const coverage: Symbol = Symbol::new(655u32);
pub const coverage_attribute: Symbol = Symbol::new(656u32);
pub const cr: Symbol = Symbol::new(657u32);
pub const crate_in_paths: Symbol = Symbol::new(658u32);
pub const crate_local: Symbol = Symbol::new(659u32);
pub const crate_name: Symbol = Symbol::new(660u32);
pub const crate_type: Symbol = Symbol::new(661u32);
pub const crate_visibility_modifier: Symbol = Symbol::new(662u32);
pub const crt_dash_static: Symbol = Symbol::new(663u32);
pub const csky: Symbol = Symbol::new(664u32);
pub const csky_target_feature: Symbol = Symbol::new(665u32);
pub const cstr_type: Symbol = Symbol::new(666u32);
pub const cstring_type: Symbol = Symbol::new(667u32);
pub const ctlz: Symbol = Symbol::new(668u32);
pub const ctlz_nonzero: Symbol = Symbol::new(669u32);
pub const ctpop: Symbol = Symbol::new(670u32);
pub const ctr: Symbol = Symbol::new(671u32);
pub const cttz: Symbol = Symbol::new(672u32);
pub const cttz_nonzero: Symbol = Symbol::new(673u32);
pub const custom_attribute: Symbol = Symbol::new(674u32);
pub const custom_code_classes_in_docs: Symbol = Symbol::new(675u32);
pub const custom_derive: Symbol = Symbol::new(676u32);
pub const custom_inner_attributes: Symbol = Symbol::new(677u32);
pub const custom_mir: Symbol = Symbol::new(678u32);
pub const custom_test_frameworks: Symbol = Symbol::new(679u32);
pub const d32: Symbol = Symbol::new(680u32);
pub const dead_code: Symbol = Symbol::new(681u32);
pub const dead_code_pub_in_binary: Symbol = Symbol::new(682u32);
pub const dealloc: Symbol = Symbol::new(683u32);
pub const debug: Symbol = Symbol::new(684u32);
pub const debug_assert_eq_macro: Symbol = Symbol::new(685u32);
pub const debug_assert_macro: Symbol = Symbol::new(686u32);
pub const debug_assert_ne_macro: Symbol = Symbol::new(687u32);
pub const debug_assertions: Symbol = Symbol::new(688u32);
pub const debug_struct_fields_finish: Symbol = Symbol::new(689u32);
pub const debug_tuple_fields_finish: Symbol = Symbol::new(690u32);
pub const debugger_visualizer: Symbol = Symbol::new(691u32);
pub const decl_macro: Symbol = Symbol::new(692u32);
pub const declare_lint_pass: Symbol = Symbol::new(693u32);
pub const decorated: Symbol = Symbol::new(694u32);
pub const default_alloc_error_handler: Symbol = Symbol::new(695u32);
pub const default_field_values: Symbol = Symbol::new(696u32);
pub const default_fn: Symbol = Symbol::new(697u32);
pub const default_lib_allocator: Symbol = Symbol::new(698u32);
pub const default_method_body_is_const: Symbol = Symbol::new(699u32);
pub const default_trait1: Symbol = Symbol::new(700u32);
pub const default_trait2: Symbol = Symbol::new(701u32);
pub const default_trait3: Symbol = Symbol::new(702u32);
pub const default_trait4: Symbol = Symbol::new(703u32);
pub const default_type_parameter_fallback: Symbol = Symbol::new(704u32);
pub const default_type_params: Symbol = Symbol::new(705u32);
pub const define_opaque: Symbol = Symbol::new(706u32);
pub const deny: Symbol = Symbol::new(707u32);
pub const deprecated: Symbol = Symbol::new(708u32);
pub const deprecated_safe: Symbol = Symbol::new(709u32);
pub const deprecated_suggestion: Symbol = Symbol::new(710u32);
pub const deref: Symbol = Symbol::new(711u32);
pub const deref_method: Symbol = Symbol::new(712u32);
pub const deref_mut: Symbol = Symbol::new(713u32);
pub const deref_patterns: Symbol = Symbol::new(714u32);
pub const deref_pure: Symbol = Symbol::new(715u32);
pub const deref_target: Symbol = Symbol::new(716u32);
pub const derive: Symbol = Symbol::new(717u32);
pub const derive_const: Symbol = Symbol::new(718u32);
pub const derive_const_issue: Symbol = Symbol::new(719u32);
pub const derive_default_enum: Symbol = Symbol::new(720u32);
pub const derive_from: Symbol = Symbol::new(721u32);
pub const derive_smart_pointer: Symbol = Symbol::new(722u32);
pub const destruct: Symbol = Symbol::new(723u32);
pub const destructuring_assignment: Symbol = Symbol::new(724u32);
pub const diagnostic: Symbol = Symbol::new(725u32);
pub const diagnostic_namespace: Symbol = Symbol::new(726u32);
pub const diagnostic_on_const: Symbol = Symbol::new(727u32);
pub const diagnostic_on_move: Symbol = Symbol::new(728u32);
pub const diagnostic_on_type_error: Symbol = Symbol::new(729u32);
pub const diagnostic_on_unknown: Symbol = Symbol::new(730u32);
pub const diagnostic_on_unmatch_args: Symbol = Symbol::new(731u32);
pub const diagnostic_on_unmatched_args: Symbol = Symbol::new(732u32);
pub const diagnostic_opaque: Symbol = Symbol::new(733u32);
pub const dialect: Symbol = Symbol::new(734u32);
pub const direct: Symbol = Symbol::new(735u32);
pub const direct_const_arg: Symbol = Symbol::new(736u32);
pub const discriminant_kind: Symbol = Symbol::new(737u32);
pub const discriminant_type: Symbol = Symbol::new(738u32);
pub const discriminant_value: Symbol = Symbol::new(739u32);
pub const disjoint_bitor: Symbol = Symbol::new(740u32);
pub const dispatch_from_dyn: Symbol = Symbol::new(741u32);
pub const div: Symbol = Symbol::new(742u32);
pub const div_assign: Symbol = Symbol::new(743u32);
pub const diverging_block_default: Symbol = Symbol::new(744u32);
pub const dl: Symbol = Symbol::new(745u32);
pub const do_not_recommend: Symbol = Symbol::new(746u32);
pub const doc: Symbol = Symbol::new(747u32);
pub const doc_alias: Symbol = Symbol::new(748u32);
pub const doc_auto_cfg: Symbol = Symbol::new(749u32);
pub const doc_cfg: Symbol = Symbol::new(750u32);
pub const doc_cfg_hide: Symbol = Symbol::new(751u32);
pub const doc_keyword: Symbol = Symbol::new(752u32);
pub const doc_masked: Symbol = Symbol::new(753u32);
pub const doc_notable_trait: Symbol = Symbol::new(754u32);
pub const doc_primitive: Symbol = Symbol::new(755u32);
pub const doc_spotlight: Symbol = Symbol::new(756u32);
pub const doctest: Symbol = Symbol::new(757u32);
pub const dotdot_in_tuple_patterns: Symbol = Symbol::new(758u32);
pub const dotdoteq_in_patterns: Symbol = Symbol::new(759u32);
pub const dreg: Symbol = Symbol::new(760u32);
pub const dreg_low8: Symbol = Symbol::new(761u32);
pub const dreg_low16: Symbol = Symbol::new(762u32);
pub const drop: Symbol = Symbol::new(763u32);
pub const drop_glue: Symbol = Symbol::new(764u32);
pub const drop_in_place: Symbol = Symbol::new(765u32);
pub const drop_types_in_const: Symbol = Symbol::new(766u32);
pub const dropck_eyepatch: Symbol = Symbol::new(767u32);
pub const dropck_parametricity: Symbol = Symbol::new(768u32);
pub const dummy: Symbol = Symbol::new(769u32);
pub const dummy_cgu_name: Symbol = Symbol::new(770u32);
pub const dylib: Symbol = Symbol::new(771u32);
pub const dyn_compatible_for_dispatch: Symbol = Symbol::new(772u32);
pub const dyn_metadata: Symbol = Symbol::new(773u32);
pub const dyn_star: Symbol = Symbol::new(774u32);
pub const dyn_trait: Symbol = Symbol::new(775u32);
pub const dynamic_no_pic: Symbol = Symbol::new(776u32);
pub const edition_panic: Symbol = Symbol::new(777u32);
pub const effective_target_features: Symbol = Symbol::new(778u32);
pub const effects: Symbol = Symbol::new(779u32);
pub const eh_personality: Symbol = Symbol::new(780u32);
pub const eii: Symbol = Symbol::new(781u32);
pub const eii_declaration: Symbol = Symbol::new(782u32);
pub const eii_internals: Symbol = Symbol::new(783u32);
pub const eii_shared_macro: Symbol = Symbol::new(784u32);
pub const element_ty: Symbol = Symbol::new(785u32);
pub const elf: Symbol = Symbol::new(786u32);
pub const empty: Symbol = Symbol::new(787u32);
pub const empty_braces: Symbol = Symbol::new(788u32);
pub const empty_brackets: Symbol = Symbol::new(789u32);
pub const empty_parens: Symbol = Symbol::new(790u32);
pub const enable: Symbol = Symbol::new(791u32);
pub const end: Symbol = Symbol::new(792u32);
pub const entry_nops: Symbol = Symbol::new(793u32);
pub const env: Symbol = Symbol::new(794u32);
pub const eq: Symbol = Symbol::new(795u32);
pub const ergonomic_clones: Symbol = Symbol::new(796u32);
pub const ermsb_target_feature: Symbol = Symbol::new(797u32);
pub const exact_div: Symbol = Symbol::new(798u32);
pub const except: Symbol = Symbol::new(799u32);
pub const exception: Symbol = Symbol::new(800u32);
pub const exception_handling: Symbol = Symbol::new(801u32);
pub const exclusive_range_pattern: Symbol = Symbol::new(802u32);
pub const exhaustive_integer_patterns: Symbol = Symbol::new(803u32);
pub const exhaustive_patterns: Symbol = Symbol::new(804u32);
pub const existential_type: Symbol = Symbol::new(805u32);
pub const exists: Symbol = Symbol::new(806u32);
pub const exp: Symbol = Symbol::new(807u32);
pub const exp2: Symbol = Symbol::new(808u32);
pub const expand1: Symbol = Symbol::new(809u32);
pub const expand2: Symbol = Symbol::new(810u32);
pub const expect: Symbol = Symbol::new(811u32);
pub const expected: Symbol = Symbol::new(812u32);
pub const explicit_extern_abis: Symbol = Symbol::new(813u32);
pub const explicit_generic_args_with_impl_trait: Symbol =
Symbol::new(814u32);
pub const explicit_tail_calls: Symbol = Symbol::new(815u32);
pub const export_name: Symbol = Symbol::new(816u32);
pub const export_stable: Symbol = Symbol::new(817u32);
pub const export_symbols: Symbol = Symbol::new(818u32);
pub const expr: Symbol = Symbol::new(819u32);
pub const expr_2021: Symbol = Symbol::new(820u32);
pub const expr_fragment_specifier_2024: Symbol = Symbol::new(821u32);
pub const extended_key_value_attributes: Symbol = Symbol::new(822u32);
pub const extended_varargs_abi_support: Symbol = Symbol::new(823u32);
pub const extendedl32r: Symbol = Symbol::new(824u32);
pub const extern_absolute_paths: Symbol = Symbol::new(825u32);
pub const extern_crate_item_prelude: Symbol = Symbol::new(826u32);
pub const extern_crate_self: Symbol = Symbol::new(827u32);
pub const extern_in_paths: Symbol = Symbol::new(828u32);
pub const extern_item_impls: Symbol = Symbol::new(829u32);
pub const extern_prelude: Symbol = Symbol::new(830u32);
pub const extern_system_varargs: Symbol = Symbol::new(831u32);
pub const extern_types: Symbol = Symbol::new(832u32);
pub const extern_weak: Symbol = Symbol::new(833u32);
pub const external: Symbol = Symbol::new(834u32);
pub const external_doc: Symbol = Symbol::new(835u32);
pub const f16: Symbol = Symbol::new(836u32);
pub const f16_nan: Symbol = Symbol::new(837u32);
pub const f16c_target_feature: Symbol = Symbol::new(838u32);
pub const f32: Symbol = Symbol::new(839u32);
pub const f32_nan: Symbol = Symbol::new(840u32);
pub const f64: Symbol = Symbol::new(841u32);
pub const f64_nan: Symbol = Symbol::new(842u32);
pub const f128: Symbol = Symbol::new(843u32);
pub const f128_nan: Symbol = Symbol::new(844u32);
pub const fabs: Symbol = Symbol::new(845u32);
pub const fadd_algebraic: Symbol = Symbol::new(846u32);
pub const fadd_fast: Symbol = Symbol::new(847u32);
pub const fake_variadic: Symbol = Symbol::new(848u32);
pub const fallback: Symbol = Symbol::new(849u32);
pub const fdiv_algebraic: Symbol = Symbol::new(850u32);
pub const fdiv_fast: Symbol = Symbol::new(851u32);
pub const feature: Symbol = Symbol::new(852u32);
pub const fence: Symbol = Symbol::new(853u32);
pub const ferris: Symbol = Symbol::new(854u32);
pub const fetch_update: Symbol = Symbol::new(855u32);
pub const ffi_const: Symbol = Symbol::new(856u32);
pub const ffi_pure: Symbol = Symbol::new(857u32);
pub const ffi_returns_twice: Symbol = Symbol::new(858u32);
pub const ffr: Symbol = Symbol::new(859u32);
pub const field: Symbol = Symbol::new(860u32);
pub const field_base: Symbol = Symbol::new(861u32);
pub const field_init_shorthand: Symbol = Symbol::new(862u32);
pub const field_of: Symbol = Symbol::new(863u32);
pub const field_offset: Symbol = Symbol::new(864u32);
pub const field_projections: Symbol = Symbol::new(865u32);
pub const field_representing_type: Symbol = Symbol::new(866u32);
pub const field_representing_type_actual_type_id: Symbol =
Symbol::new(867u32);
pub const field_representing_type_name: Symbol = Symbol::new(868u32);
pub const field_representing_type_offset: Symbol = Symbol::new(869u32);
pub const field_representing_type_raw: Symbol = Symbol::new(870u32);
pub const field_type: Symbol = Symbol::new(871u32);
pub const fields: Symbol = Symbol::new(872u32);
pub const file: Symbol = Symbol::new(873u32);
pub const final_associated_functions: Symbol = Symbol::new(874u32);
pub const float_to_int_unchecked: Symbol = Symbol::new(875u32);
pub const floorf16: Symbol = Symbol::new(876u32);
pub const floorf32: Symbol = Symbol::new(877u32);
pub const floorf64: Symbol = Symbol::new(878u32);
pub const floorf128: Symbol = Symbol::new(879u32);
pub const fma4_target_feature: Symbol = Symbol::new(880u32);
pub const fmaf16: Symbol = Symbol::new(881u32);
pub const fmaf32: Symbol = Symbol::new(882u32);
pub const fmaf64: Symbol = Symbol::new(883u32);
pub const fmaf128: Symbol = Symbol::new(884u32);
pub const fmt: Symbol = Symbol::new(885u32);
pub const fmt_debug: Symbol = Symbol::new(886u32);
pub const fmul_algebraic: Symbol = Symbol::new(887u32);
pub const fmul_fast: Symbol = Symbol::new(888u32);
pub const fmuladdf16: Symbol = Symbol::new(889u32);
pub const fmuladdf32: Symbol = Symbol::new(890u32);
pub const fmuladdf64: Symbol = Symbol::new(891u32);
pub const fmuladdf128: Symbol = Symbol::new(892u32);
pub const fn_align: Symbol = Symbol::new(893u32);
pub const fn_body: Symbol = Symbol::new(894u32);
pub const fn_delegation: Symbol = Symbol::new(895u32);
pub const fn_must_use: Symbol = Symbol::new(896u32);
pub const fn_mut: Symbol = Symbol::new(897u32);
pub const fn_once: Symbol = Symbol::new(898u32);
pub const fn_once_output: Symbol = Symbol::new(899u32);
pub const fn_ptr_as_ptr: Symbol = Symbol::new(900u32);
pub const fn_ptr_from_ptr: Symbol = Symbol::new(901u32);
pub const fn_ptr_trait: Symbol = Symbol::new(902u32);
pub const fn_static: Symbol = Symbol::new(903u32);
pub const forall: Symbol = Symbol::new(904u32);
pub const forbid: Symbol = Symbol::new(905u32);
pub const force_target_feature: Symbol = Symbol::new(906u32);
pub const forget: Symbol = Symbol::new(907u32);
pub const format_args: Symbol = Symbol::new(908u32);
pub const format_args_capture: Symbol = Symbol::new(909u32);
pub const format_args_nl: Symbol = Symbol::new(910u32);
pub const format_argument: Symbol = Symbol::new(911u32);
pub const format_arguments: Symbol = Symbol::new(912u32);
pub const format_macro: Symbol = Symbol::new(913u32);
pub const format_placeholder: Symbol = Symbol::new(914u32);
pub const format_unsafe_arg: Symbol = Symbol::new(915u32);
pub const fp: Symbol = Symbol::new(916u32);
pub const fpregs: Symbol = Symbol::new(917u32);
pub const framework: Symbol = Symbol::new(918u32);
pub const freeze: Symbol = Symbol::new(919u32);
pub const freeze_impls: Symbol = Symbol::new(920u32);
pub const freg: Symbol = Symbol::new(921u32);
pub const frem_algebraic: Symbol = Symbol::new(922u32);
pub const frem_fast: Symbol = Symbol::new(923u32);
pub const from: Symbol = Symbol::new(924u32);
pub const from_desugaring: Symbol = Symbol::new(925u32);
pub const from_iter: Symbol = Symbol::new(926u32);
pub const from_output: Symbol = Symbol::new(927u32);
pub const from_residual: Symbol = Symbol::new(928u32);
pub const from_size_align_unchecked: Symbol = Symbol::new(929u32);
pub const from_size_alignment_unchecked: Symbol = Symbol::new(930u32);
pub const from_str: Symbol = Symbol::new(931u32);
pub const from_str_nonconst: Symbol = Symbol::new(932u32);
pub const from_usize: Symbol = Symbol::new(933u32);
pub const from_yeet: Symbol = Symbol::new(934u32);
pub const frontmatter: Symbol = Symbol::new(935u32);
pub const fsub_algebraic: Symbol = Symbol::new(936u32);
pub const fsub_fast: Symbol = Symbol::new(937u32);
pub const full: Symbol = Symbol::new(938u32);
pub const fundamental: Symbol = Symbol::new(939u32);
pub const fused_iterator: Symbol = Symbol::new(940u32);
pub const future_output: Symbol = Symbol::new(941u32);
pub const future_trait: Symbol = Symbol::new(942u32);
pub const fxsr: Symbol = Symbol::new(943u32);
pub const gdb_script_file: Symbol = Symbol::new(944u32);
pub const ge: Symbol = Symbol::new(945u32);
pub const gen_blocks: Symbol = Symbol::new(946u32);
pub const gen_future: Symbol = Symbol::new(947u32);
pub const generator_clone: Symbol = Symbol::new(948u32);
pub const generators: Symbol = Symbol::new(949u32);
pub const generic_arg_infer: Symbol = Symbol::new(950u32);
pub const generic_assert: Symbol = Symbol::new(951u32);
pub const generic_associated_types: Symbol = Symbol::new(952u32);
pub const generic_associated_types_extended: Symbol = Symbol::new(953u32);
pub const generic_const_args: Symbol = Symbol::new(954u32);
pub const generic_const_exprs: Symbol = Symbol::new(955u32);
pub const generic_const_items: Symbol = Symbol::new(956u32);
pub const generic_const_parameter_types: Symbol = Symbol::new(957u32);
pub const generic_param_attrs: Symbol = Symbol::new(958u32);
pub const generic_pattern_types: Symbol = Symbol::new(959u32);
pub const generics: Symbol = Symbol::new(960u32);
pub const get_context: Symbol = Symbol::new(961u32);
pub const global_alloc_ty: Symbol = Symbol::new(962u32);
pub const global_allocator: Symbol = Symbol::new(963u32);
pub const global_asm: Symbol = Symbol::new(964u32);
pub const global_registration: Symbol = Symbol::new(965u32);
pub const globs: Symbol = Symbol::new(966u32);
pub const gpu_kernel: Symbol = Symbol::new(967u32);
pub const gpu_launch_sized_workgroup_mem: Symbol = Symbol::new(968u32);
pub const gt: Symbol = Symbol::new(969u32);
pub const guard: Symbol = Symbol::new(970u32);
pub const guard_patterns: Symbol = Symbol::new(971u32);
pub const half_open_range_patterns: Symbol = Symbol::new(972u32);
pub const half_open_range_patterns_in_slices: Symbol =
Symbol::new(973u32);
pub const hash: Symbol = Symbol::new(974u32);
pub const hexagon: Symbol = Symbol::new(975u32);
pub const hexagon_target_feature: Symbol = Symbol::new(976u32);
pub const hidden: Symbol = Symbol::new(977u32);
pub const hide: Symbol = Symbol::new(978u32);
pub const highpriinterrupts: Symbol = Symbol::new(979u32);
pub const hint: Symbol = Symbol::new(980u32);
pub const homogeneous_aggregate: Symbol = Symbol::new(981u32);
pub const html_favicon_url: Symbol = Symbol::new(982u32);
pub const html_logo_url: Symbol = Symbol::new(983u32);
pub const html_no_source: Symbol = Symbol::new(984u32);
pub const html_playground_url: Symbol = Symbol::new(985u32);
pub const html_root_url: Symbol = Symbol::new(986u32);
pub const hvx: Symbol = Symbol::new(987u32);
pub const hvx_length64b: Symbol = Symbol::new(988u32);
pub const hvx_length128b: Symbol = Symbol::new(989u32);
pub const hwaddress: Symbol = Symbol::new(990u32);
pub const i8: Symbol = Symbol::new(991u32);
pub const i16: Symbol = Symbol::new(992u32);
pub const i32: Symbol = Symbol::new(993u32);
pub const i64: Symbol = Symbol::new(994u32);
pub const i128: Symbol = Symbol::new(995u32);
pub const i128_type: Symbol = Symbol::new(996u32);
pub const ident: Symbol = Symbol::new(997u32);
pub const if_let: Symbol = Symbol::new(998u32);
pub const if_let_guard: Symbol = Symbol::new(999u32);
pub const if_let_rescope: Symbol = Symbol::new(1000u32);
pub const if_while_or_patterns: Symbol = Symbol::new(1001u32);
pub const ignore: Symbol = Symbol::new(1002u32);
pub const immediate_abort: Symbol = Symbol::new(1003u32);
pub const impl_header_lifetime_elision: Symbol = Symbol::new(1004u32);
pub const impl_lint_pass: Symbol = Symbol::new(1005u32);
pub const impl_restriction: Symbol = Symbol::new(1006u32);
pub const impl_trait_in_assoc_type: Symbol = Symbol::new(1007u32);
pub const impl_trait_in_bindings: Symbol = Symbol::new(1008u32);
pub const impl_trait_in_fn_trait_return: Symbol = Symbol::new(1009u32);
pub const impl_trait_projections: Symbol = Symbol::new(1010u32);
pub const implied_by: Symbol = Symbol::new(1011u32);
pub const import: Symbol = Symbol::new(1012u32);
pub const import_name_type: Symbol = Symbol::new(1013u32);
pub const import_shadowing: Symbol = Symbol::new(1014u32);
pub const import_trait_associated_functions: Symbol =
Symbol::new(1015u32);
pub const imported_main: Symbol = Symbol::new(1016u32);
pub const in_band_lifetimes: Symbol = Symbol::new(1017u32);
pub const include: Symbol = Symbol::new(1018u32);
pub const include_bytes: Symbol = Symbol::new(1019u32);
pub const include_str: Symbol = Symbol::new(1020u32);
pub const inclusive_range_syntax: Symbol = Symbol::new(1021u32);
pub const incomplete_features: Symbol = Symbol::new(1022u32);
pub const index: Symbol = Symbol::new(1023u32);
pub const index_mut: Symbol = Symbol::new(1024u32);
pub const infer_outlives_requirements: Symbol = Symbol::new(1025u32);
pub const infer_static_outlives_requirements: Symbol =
Symbol::new(1026u32);
pub const inherent_associated_types: Symbol = Symbol::new(1027u32);
pub const initial: Symbol = Symbol::new(1028u32);
pub const inlateout: Symbol = Symbol::new(1029u32);
pub const inline: Symbol = Symbol::new(1030u32);
pub const inline_const: Symbol = Symbol::new(1031u32);
pub const inline_const_pat: Symbol = Symbol::new(1032u32);
pub const inout: Symbol = Symbol::new(1033u32);
pub const inputs: Symbol = Symbol::new(1034u32);
pub const instruction_set: Symbol = Symbol::new(1035u32);
pub const instrument_fn: Symbol = Symbol::new(1036u32);
pub const integer_: Symbol = Symbol::new(1037u32);
pub const integer_max: Symbol = Symbol::new(1038u32);
pub const integer_min: Symbol = Symbol::new(1039u32);
pub const integral: Symbol = Symbol::new(1040u32);
pub const internal: Symbol = Symbol::new(1041u32);
pub const internal_eq_trait_method_impls: Symbol = Symbol::new(1042u32);
pub const internal_features: Symbol = Symbol::new(1043u32);
pub const interrupt: Symbol = Symbol::new(1044u32);
pub const into_async_iter_into_iter: Symbol = Symbol::new(1045u32);
pub const into_future: Symbol = Symbol::new(1046u32);
pub const into_iter: Symbol = Symbol::new(1047u32);
pub const into_try_type: Symbol = Symbol::new(1048u32);
pub const intra_doc_pointers: Symbol = Symbol::new(1049u32);
pub const intrinsics: Symbol = Symbol::new(1050u32);
pub const irrefutable_let_patterns: Symbol = Symbol::new(1051u32);
pub const is: Symbol = Symbol::new(1052u32);
pub const is_auto: Symbol = Symbol::new(1053u32);
pub const is_splatted: Symbol = Symbol::new(1054u32);
pub const is_val_statically_known: Symbol = Symbol::new(1055u32);
pub const isa_attribute: Symbol = Symbol::new(1056u32);
pub const isize: Symbol = Symbol::new(1057u32);
pub const issue: Symbol = Symbol::new(1058u32);
pub const issue_5723_bootstrap: Symbol = Symbol::new(1059u32);
pub const issue_tracker_base_url: Symbol = Symbol::new(1060u32);
pub const item: Symbol = Symbol::new(1061u32);
pub const item_like_imports: Symbol = Symbol::new(1062u32);
pub const iter: Symbol = Symbol::new(1063u32);
pub const iter_mut: Symbol = Symbol::new(1064u32);
pub const iterator: Symbol = Symbol::new(1065u32);
pub const iterator_collect_fn: Symbol = Symbol::new(1066u32);
pub const kcfi: Symbol = Symbol::new(1067u32);
pub const kernel_address: Symbol = Symbol::new(1068u32);
pub const kernel_hwaddress: Symbol = Symbol::new(1069u32);
pub const keylocker_x86: Symbol = Symbol::new(1070u32);
pub const keyword: Symbol = Symbol::new(1071u32);
pub const kind: Symbol = Symbol::new(1072u32);
pub const kreg: Symbol = Symbol::new(1073u32);
pub const kreg0: Symbol = Symbol::new(1074u32);
pub const label: Symbol = Symbol::new(1075u32);
pub const label_break_value: Symbol = Symbol::new(1076u32);
pub const lahfsahf_target_feature: Symbol = Symbol::new(1077u32);
pub const lang: Symbol = Symbol::new(1078u32);
pub const lang_items: Symbol = Symbol::new(1079u32);
pub const large_assignments: Symbol = Symbol::new(1080u32);
pub const largest_niche: Symbol = Symbol::new(1081u32);
pub const last: Symbol = Symbol::new(1082u32);
pub const lasx: Symbol = Symbol::new(1083u32);
pub const late_bound_turbofishing: Symbol = Symbol::new(1084u32);
pub const lateout: Symbol = Symbol::new(1085u32);
pub const lazy_normalization_consts: Symbol = Symbol::new(1086u32);
pub const lazy_type_alias: Symbol = Symbol::new(1087u32);
pub const le: Symbol = Symbol::new(1088u32);
pub const legacy_receiver: Symbol = Symbol::new(1089u32);
pub const len: Symbol = Symbol::new(1090u32);
pub const let_chains: Symbol = Symbol::new(1091u32);
pub const let_else: Symbol = Symbol::new(1092u32);
pub const lhs: Symbol = Symbol::new(1093u32);
pub const lib: Symbol = Symbol::new(1094u32);
pub const libc: Symbol = Symbol::new(1095u32);
pub const lifetime: Symbol = Symbol::new(1096u32);
pub const lifetime_capture_rules_2024: Symbol = Symbol::new(1097u32);
pub const lifetimes: Symbol = Symbol::new(1098u32);
pub const line: Symbol = Symbol::new(1099u32);
pub const link: Symbol = Symbol::new(1100u32);
pub const link_arg_attribute: Symbol = Symbol::new(1101u32);
pub const link_args: Symbol = Symbol::new(1102u32);
pub const link_cfg: Symbol = Symbol::new(1103u32);
pub const link_dash_arg: Symbol = Symbol::new(1104u32);
pub const link_llvm_intrinsics: Symbol = Symbol::new(1105u32);
pub const link_name: Symbol = Symbol::new(1106u32);
pub const link_ordinal: Symbol = Symbol::new(1107u32);
pub const link_section: Symbol = Symbol::new(1108u32);
pub const linkage: Symbol = Symbol::new(1109u32);
pub const linker: Symbol = Symbol::new(1110u32);
pub const linker_info: Symbol = Symbol::new(1111u32);
pub const linker_messages: Symbol = Symbol::new(1112u32);
pub const linkonce: Symbol = Symbol::new(1113u32);
pub const linkonce_odr: Symbol = Symbol::new(1114u32);
pub const lint_reasons: Symbol = Symbol::new(1115u32);
pub const literal: Symbol = Symbol::new(1116u32);
pub const little: Symbol = Symbol::new(1117u32);
pub const big: Symbol = Symbol::new(1118u32);
pub const load: Symbol = Symbol::new(1119u32);
pub const loaded_from_disk: Symbol = Symbol::new(1120u32);
pub const local: Symbol = Symbol::new(1121u32);
pub const local_inner_macros: Symbol = Symbol::new(1122u32);
pub const log: Symbol = Symbol::new(1123u32);
pub const log2: Symbol = Symbol::new(1124u32);
pub const log10: Symbol = Symbol::new(1125u32);
pub const log_syntax: Symbol = Symbol::new(1126u32);
pub const loongarch32: Symbol = Symbol::new(1127u32);
pub const loongarch64: Symbol = Symbol::new(1128u32);
pub const loongarch_target_feature: Symbol = Symbol::new(1129u32);
pub const loop_break_value: Symbol = Symbol::new(1130u32);
pub const loop_hints: Symbol = Symbol::new(1131u32);
pub const loop_match: Symbol = Symbol::new(1132u32);
pub const lr: Symbol = Symbol::new(1133u32);
pub const lsx: Symbol = Symbol::new(1134u32);
pub const lt: Symbol = Symbol::new(1135u32);
pub const m68k: Symbol = Symbol::new(1136u32);
pub const m68k_target_feature: Symbol = Symbol::new(1137u32);
pub const mac16: Symbol = Symbol::new(1138u32);
pub const macho: Symbol = Symbol::new(1139u32);
pub const macro_at_most_once_rep: Symbol = Symbol::new(1140u32);
pub const macro_attr: Symbol = Symbol::new(1141u32);
pub const macro_attributes_in_derive_output: Symbol =
Symbol::new(1142u32);
pub const macro_derive: Symbol = Symbol::new(1143u32);
pub const macro_escape: Symbol = Symbol::new(1144u32);
pub const macro_export: Symbol = Symbol::new(1145u32);
pub const macro_guard_matcher: Symbol = Symbol::new(1146u32);
pub const macro_lifetime_matcher: Symbol = Symbol::new(1147u32);
pub const macro_literal_matcher: Symbol = Symbol::new(1148u32);
pub const macro_metavar_expr: Symbol = Symbol::new(1149u32);
pub const macro_metavar_expr_concat: Symbol = Symbol::new(1150u32);
pub const macro_reexport: Symbol = Symbol::new(1151u32);
pub const macro_use: Symbol = Symbol::new(1152u32);
pub const macro_vis_matcher: Symbol = Symbol::new(1153u32);
pub const macroless_generic_const_args: Symbol = Symbol::new(1154u32);
pub const macros_in_extern: Symbol = Symbol::new(1155u32);
pub const main: Symbol = Symbol::new(1156u32);
pub const managed_boxes: Symbol = Symbol::new(1157u32);
pub const manually_drop: Symbol = Symbol::new(1158u32);
pub const map: Symbol = Symbol::new(1159u32);
pub const map_err: Symbol = Symbol::new(1160u32);
pub const marker: Symbol = Symbol::new(1161u32);
pub const marker_trait_attr: Symbol = Symbol::new(1162u32);
pub const masked: Symbol = Symbol::new(1163u32);
pub const match_beginning_vert: Symbol = Symbol::new(1164u32);
pub const match_default_bindings: Symbol = Symbol::new(1165u32);
pub const maximum_number_nsz_f16: Symbol = Symbol::new(1166u32);
pub const maximum_number_nsz_f32: Symbol = Symbol::new(1167u32);
pub const maximum_number_nsz_f64: Symbol = Symbol::new(1168u32);
pub const maximum_number_nsz_f128: Symbol = Symbol::new(1169u32);
pub const maximumf16: Symbol = Symbol::new(1170u32);
pub const maximumf32: Symbol = Symbol::new(1171u32);
pub const maximumf64: Symbol = Symbol::new(1172u32);
pub const maximumf128: Symbol = Symbol::new(1173u32);
pub const may_dangle: Symbol = Symbol::new(1174u32);
pub const may_unwind: Symbol = Symbol::new(1175u32);
pub const maybe_dangling: Symbol = Symbol::new(1176u32);
pub const maybe_uninit: Symbol = Symbol::new(1177u32);
pub const maybe_uninit_uninit: Symbol = Symbol::new(1178u32);
pub const maybe_uninit_zeroed: Symbol = Symbol::new(1179u32);
pub const mem: Symbol = Symbol::new(1180u32);
pub const mem_align_const: Symbol = Symbol::new(1181u32);
pub const mem_discriminant: Symbol = Symbol::new(1182u32);
pub const mem_drop: Symbol = Symbol::new(1183u32);
pub const mem_forget: Symbol = Symbol::new(1184u32);
pub const mem_size_const: Symbol = Symbol::new(1185u32);
pub const mem_swap: Symbol = Symbol::new(1186u32);
pub const mem_uninitialized: Symbol = Symbol::new(1187u32);
pub const mem_variant_count: Symbol = Symbol::new(1188u32);
pub const mem_zeroed: Symbol = Symbol::new(1189u32);
pub const member_constraints: Symbol = Symbol::new(1190u32);
pub const memory: Symbol = Symbol::new(1191u32);
pub const memtag: Symbol = Symbol::new(1192u32);
pub const message: Symbol = Symbol::new(1193u32);
pub const meta: Symbol = Symbol::new(1194u32);
pub const meta_sized: Symbol = Symbol::new(1195u32);
pub const metadata_type: Symbol = Symbol::new(1196u32);
pub const mgca_type_const_syntax: Symbol = Symbol::new(1197u32);
pub const min_adt_const_params: Symbol = Symbol::new(1198u32);
pub const min_const_fn: Symbol = Symbol::new(1199u32);
pub const min_const_generics: Symbol = Symbol::new(1200u32);
pub const min_const_unsafe_fn: Symbol = Symbol::new(1201u32);
pub const min_exhaustive_patterns: Symbol = Symbol::new(1202u32);
pub const min_generic_const_args: Symbol = Symbol::new(1203u32);
pub const min_specialization: Symbol = Symbol::new(1204u32);
pub const min_type_alias_impl_trait: Symbol = Symbol::new(1205u32);
pub const minimum_number_nsz_f16: Symbol = Symbol::new(1206u32);
pub const minimum_number_nsz_f32: Symbol = Symbol::new(1207u32);
pub const minimum_number_nsz_f64: Symbol = Symbol::new(1208u32);
pub const minimum_number_nsz_f128: Symbol = Symbol::new(1209u32);
pub const minimumf16: Symbol = Symbol::new(1210u32);
pub const minimumf32: Symbol = Symbol::new(1211u32);
pub const minimumf64: Symbol = Symbol::new(1212u32);
pub const minimumf128: Symbol = Symbol::new(1213u32);
pub const mips: Symbol = Symbol::new(1214u32);
pub const mips32r6: Symbol = Symbol::new(1215u32);
pub const mips64: Symbol = Symbol::new(1216u32);
pub const mips64r6: Symbol = Symbol::new(1217u32);
pub const mips_target_feature: Symbol = Symbol::new(1218u32);
pub const mir_assume: Symbol = Symbol::new(1219u32);
pub const mir_basic_block: Symbol = Symbol::new(1220u32);
pub const mir_call: Symbol = Symbol::new(1221u32);
pub const mir_cast_ptr_to_ptr: Symbol = Symbol::new(1222u32);
pub const mir_cast_transmute: Symbol = Symbol::new(1223u32);
pub const mir_cast_unsize: Symbol = Symbol::new(1224u32);
pub const mir_checked: Symbol = Symbol::new(1225u32);
pub const mir_debuginfo: Symbol = Symbol::new(1226u32);
pub const mir_discriminant: Symbol = Symbol::new(1227u32);
pub const mir_drop: Symbol = Symbol::new(1228u32);
pub const mir_field: Symbol = Symbol::new(1229u32);
pub const mir_goto: Symbol = Symbol::new(1230u32);
pub const mir_make_place: Symbol = Symbol::new(1231u32);
pub const mir_move: Symbol = Symbol::new(1232u32);
pub const mir_offset: Symbol = Symbol::new(1233u32);
pub const mir_ptr_metadata: Symbol = Symbol::new(1234u32);
pub const mir_return: Symbol = Symbol::new(1235u32);
pub const mir_return_to: Symbol = Symbol::new(1236u32);
pub const mir_set_discriminant: Symbol = Symbol::new(1237u32);
pub const mir_static: Symbol = Symbol::new(1238u32);
pub const mir_static_mut: Symbol = Symbol::new(1239u32);
pub const mir_storage_dead: Symbol = Symbol::new(1240u32);
pub const mir_storage_live: Symbol = Symbol::new(1241u32);
pub const mir_tail_call: Symbol = Symbol::new(1242u32);
pub const mir_unreachable: Symbol = Symbol::new(1243u32);
pub const mir_unwind_cleanup: Symbol = Symbol::new(1244u32);
pub const mir_unwind_continue: Symbol = Symbol::new(1245u32);
pub const mir_unwind_resume: Symbol = Symbol::new(1246u32);
pub const mir_unwind_terminate: Symbol = Symbol::new(1247u32);
pub const mir_unwind_terminate_reason: Symbol = Symbol::new(1248u32);
pub const mir_unwind_unreachable: Symbol = Symbol::new(1249u32);
pub const mir_variant: Symbol = Symbol::new(1250u32);
pub const miri: Symbol = Symbol::new(1251u32);
pub const misc: Symbol = Symbol::new(1252u32);
pub const miscsr: Symbol = Symbol::new(1253u32);
pub const mmx_reg: Symbol = Symbol::new(1254u32);
pub const modifiers: Symbol = Symbol::new(1255u32);
pub const module: Symbol = Symbol::new(1256u32);
pub const module_path: Symbol = Symbol::new(1257u32);
pub const more_maybe_bounds: Symbol = Symbol::new(1258u32);
pub const more_qualified_paths: Symbol = Symbol::new(1259u32);
pub const more_struct_aliases: Symbol = Symbol::new(1260u32);
pub const movbe_target_feature: Symbol = Symbol::new(1261u32);
pub const move_expr: Symbol = Symbol::new(1262u32);
pub const move_ref_pattern: Symbol = Symbol::new(1263u32);
pub const move_size_limit: Symbol = Symbol::new(1264u32);
pub const movrs_target_feature: Symbol = Symbol::new(1265u32);
pub const msa: Symbol = Symbol::new(1266u32);
pub const msp430: Symbol = Symbol::new(1267u32);
pub const mul: Symbol = Symbol::new(1268u32);
pub const mul_assign: Symbol = Symbol::new(1269u32);
pub const mul_with_overflow: Symbol = Symbol::new(1270u32);
pub const multiple_supertrait_upcastable: Symbol = Symbol::new(1271u32);
pub const must_not_suspend: Symbol = Symbol::new(1272u32);
pub const must_use: Symbol = Symbol::new(1273u32);
pub const mut_preserve_binding_mode_2024: Symbol = Symbol::new(1274u32);
pub const mut_ref: Symbol = Symbol::new(1275u32);
pub const mut_restriction: Symbol = Symbol::new(1276u32);
pub const mutable: Symbol = Symbol::new(1277u32);
pub const naked: Symbol = Symbol::new(1278u32);
pub const naked_asm: Symbol = Symbol::new(1279u32);
pub const naked_functions: Symbol = Symbol::new(1280u32);
pub const naked_functions_rustic_abi: Symbol = Symbol::new(1281u32);
pub const naked_functions_target_feature: Symbol = Symbol::new(1282u32);
pub const name: Symbol = Symbol::new(1283u32);
pub const named_fn_trait_parameters: Symbol = Symbol::new(1284u32);
pub const names: Symbol = Symbol::new(1285u32);
pub const native_link_modifiers: Symbol = Symbol::new(1286u32);
pub const native_link_modifiers_as_needed: Symbol = Symbol::new(1287u32);
pub const native_link_modifiers_bundle: Symbol = Symbol::new(1288u32);
pub const native_link_modifiers_verbatim: Symbol = Symbol::new(1289u32);
pub const native_link_modifiers_whole_archive: Symbol =
Symbol::new(1290u32);
pub const natvis_file: Symbol = Symbol::new(1291u32);
pub const ne: Symbol = Symbol::new(1292u32);
pub const needs_allocator: Symbol = Symbol::new(1293u32);
pub const needs_drop: Symbol = Symbol::new(1294u32);
pub const needs_panic_runtime: Symbol = Symbol::new(1295u32);
pub const neg: Symbol = Symbol::new(1296u32);
pub const negate_unsigned: Symbol = Symbol::new(1297u32);
pub const negative_bounds: Symbol = Symbol::new(1298u32);
pub const negative_impls: Symbol = Symbol::new(1299u32);
pub const neon: Symbol = Symbol::new(1300u32);
pub const nested: Symbol = Symbol::new(1301u32);
pub const never: Symbol = Symbol::new(1302u32);
pub const never_patterns: Symbol = Symbol::new(1303u32);
pub const never_type: Symbol = Symbol::new(1304u32);
pub const never_type_fallback: Symbol = Symbol::new(1305u32);
pub const new: Symbol = Symbol::new(1306u32);
pub const new_binary: Symbol = Symbol::new(1307u32);
pub const new_debug: Symbol = Symbol::new(1308u32);
pub const new_debug_noop: Symbol = Symbol::new(1309u32);
pub const new_display: Symbol = Symbol::new(1310u32);
pub const new_lower_exp: Symbol = Symbol::new(1311u32);
pub const new_lower_hex: Symbol = Symbol::new(1312u32);
pub const new_octal: Symbol = Symbol::new(1313u32);
pub const new_pointer: Symbol = Symbol::new(1314u32);
pub const new_range: Symbol = Symbol::new(1315u32);
pub const new_unchecked: Symbol = Symbol::new(1316u32);
pub const new_upper_exp: Symbol = Symbol::new(1317u32);
pub const new_upper_hex: Symbol = Symbol::new(1318u32);
pub const next: Symbol = Symbol::new(1319u32);
pub const niko: Symbol = Symbol::new(1320u32);
pub const nll: Symbol = Symbol::new(1321u32);
pub const no: Symbol = Symbol::new(1322u32);
pub const no_builtins: Symbol = Symbol::new(1323u32);
pub const no_core: Symbol = Symbol::new(1324u32);
pub const no_coverage: Symbol = Symbol::new(1325u32);
pub const no_crate_inject: Symbol = Symbol::new(1326u32);
pub const no_debug: Symbol = Symbol::new(1327u32);
pub const no_default_passes: Symbol = Symbol::new(1328u32);
pub const no_implicit_prelude: Symbol = Symbol::new(1329u32);
pub const no_inline: Symbol = Symbol::new(1330u32);
pub const no_link: Symbol = Symbol::new(1331u32);
pub const no_main: Symbol = Symbol::new(1332u32);
pub const no_mangle: Symbol = Symbol::new(1333u32);
pub const no_sanitize: Symbol = Symbol::new(1334u32);
pub const no_stack_check: Symbol = Symbol::new(1335u32);
pub const no_std: Symbol = Symbol::new(1336u32);
pub const nomem: Symbol = Symbol::new(1337u32);
pub const non_ascii_idents: Symbol = Symbol::new(1338u32);
pub const non_exhaustive: Symbol = Symbol::new(1339u32);
pub const non_exhaustive_omitted_patterns_lint: Symbol =
Symbol::new(1340u32);
pub const non_lifetime_binders: Symbol = Symbol::new(1341u32);
pub const non_modrs_mods: Symbol = Symbol::new(1342u32);
pub const non_null: Symbol = Symbol::new(1343u32);
pub const nonblocking: Symbol = Symbol::new(1344u32);
pub const none: Symbol = Symbol::new(1345u32);
pub const nontemporal_store: Symbol = Symbol::new(1346u32);
pub const noop_method_borrow: Symbol = Symbol::new(1347u32);
pub const noop_method_clone: Symbol = Symbol::new(1348u32);
pub const noop_method_deref: Symbol = Symbol::new(1349u32);
pub const noprefix: Symbol = Symbol::new(1350u32);
pub const noreturn: Symbol = Symbol::new(1351u32);
pub const nostack: Symbol = Symbol::new(1352u32);
pub const not: Symbol = Symbol::new(1353u32);
pub const notable_trait: Symbol = Symbol::new(1354u32);
pub const note: Symbol = Symbol::new(1355u32);
pub const null: Symbol = Symbol::new(1356u32);
pub const nvptx64: Symbol = Symbol::new(1357u32);
pub const nvptx_target_feature: Symbol = Symbol::new(1358u32);
pub const object_safe_for_dispatch: Symbol = Symbol::new(1359u32);
pub const of: Symbol = Symbol::new(1360u32);
pub const off: Symbol = Symbol::new(1361u32);
pub const offload: Symbol = Symbol::new(1362u32);
pub const offload_get_num_devices: Symbol = Symbol::new(1363u32);
pub const offload_kernel: Symbol = Symbol::new(1364u32);
pub const offset: Symbol = Symbol::new(1365u32);
pub const offset_of: Symbol = Symbol::new(1366u32);
pub const offset_of_enum: Symbol = Symbol::new(1367u32);
pub const offset_of_nested: Symbol = Symbol::new(1368u32);
pub const offset_of_slice: Symbol = Symbol::new(1369u32);
pub const ok_or_else: Symbol = Symbol::new(1370u32);
pub const old_name: Symbol = Symbol::new(1371u32);
pub const omit_gdb_pretty_printer_section: Symbol = Symbol::new(1372u32);
pub const on: Symbol = Symbol::new(1373u32);
pub const on_const: Symbol = Symbol::new(1374u32);
pub const on_move: Symbol = Symbol::new(1375u32);
pub const on_type_error: Symbol = Symbol::new(1376u32);
pub const on_unimplemented: Symbol = Symbol::new(1377u32);
pub const on_unknown: Symbol = Symbol::new(1378u32);
pub const on_unmatched_args: Symbol = Symbol::new(1379u32);
pub const opaque: Symbol = Symbol::new(1380u32);
pub const opaque_module_name_placeholder: Symbol = Symbol::new(1381u32);
pub const ops: Symbol = Symbol::new(1382u32);
pub const opt_out_copy: Symbol = Symbol::new(1383u32);
pub const optimize: Symbol = Symbol::new(1384u32);
pub const optimize_attribute: Symbol = Symbol::new(1385u32);
pub const optimized: Symbol = Symbol::new(1386u32);
pub const optin_builtin_traits: Symbol = Symbol::new(1387u32);
pub const option: Symbol = Symbol::new(1388u32);
pub const option_env: Symbol = Symbol::new(1389u32);
pub const options: Symbol = Symbol::new(1390u32);
pub const or: Symbol = Symbol::new(1391u32);
pub const or_patterns: Symbol = Symbol::new(1392u32);
pub const ord_cmp_method: Symbol = Symbol::new(1393u32);
pub const other: Symbol = Symbol::new(1394u32);
pub const out: Symbol = Symbol::new(1395u32);
pub const output: Symbol = Symbol::new(1396u32);
pub const overflow_checks: Symbol = Symbol::new(1397u32);
pub const overlapping_marker_traits: Symbol = Symbol::new(1398u32);
pub const owned_box: Symbol = Symbol::new(1399u32);
pub const packed: Symbol = Symbol::new(1400u32);
pub const packed_bundled_libs: Symbol = Symbol::new(1401u32);
pub const panic: Symbol = Symbol::new(1402u32);
pub const panic_2015: Symbol = Symbol::new(1403u32);
pub const panic_2021: Symbol = Symbol::new(1404u32);
pub const panic_abort: Symbol = Symbol::new(1405u32);
pub const panic_bounds_check: Symbol = Symbol::new(1406u32);
pub const panic_cannot_unwind: Symbol = Symbol::new(1407u32);
pub const panic_const_add_overflow: Symbol = Symbol::new(1408u32);
pub const panic_const_async_fn_resumed: Symbol = Symbol::new(1409u32);
pub const panic_const_async_fn_resumed_drop: Symbol =
Symbol::new(1410u32);
pub const panic_const_async_fn_resumed_panic: Symbol =
Symbol::new(1411u32);
pub const panic_const_async_gen_fn_resumed: Symbol = Symbol::new(1412u32);
pub const panic_const_async_gen_fn_resumed_drop: Symbol =
Symbol::new(1413u32);
pub const panic_const_async_gen_fn_resumed_panic: Symbol =
Symbol::new(1414u32);
pub const panic_const_coroutine_resumed: Symbol = Symbol::new(1415u32);
pub const panic_const_coroutine_resumed_drop: Symbol =
Symbol::new(1416u32);
pub const panic_const_coroutine_resumed_panic: Symbol =
Symbol::new(1417u32);
pub const panic_const_div_by_zero: Symbol = Symbol::new(1418u32);
pub const panic_const_div_overflow: Symbol = Symbol::new(1419u32);
pub const panic_const_gen_fn_none: Symbol = Symbol::new(1420u32);
pub const panic_const_gen_fn_none_drop: Symbol = Symbol::new(1421u32);
pub const panic_const_gen_fn_none_panic: Symbol = Symbol::new(1422u32);
pub const panic_const_mul_overflow: Symbol = Symbol::new(1423u32);
pub const panic_const_neg_overflow: Symbol = Symbol::new(1424u32);
pub const panic_const_rem_by_zero: Symbol = Symbol::new(1425u32);
pub const panic_const_rem_overflow: Symbol = Symbol::new(1426u32);
pub const panic_const_shl_overflow: Symbol = Symbol::new(1427u32);
pub const panic_const_shr_overflow: Symbol = Symbol::new(1428u32);
pub const panic_const_sub_overflow: Symbol = Symbol::new(1429u32);
pub const panic_display: Symbol = Symbol::new(1430u32);
pub const panic_fmt: Symbol = Symbol::new(1431u32);
pub const panic_handler: Symbol = Symbol::new(1432u32);
pub const panic_impl: Symbol = Symbol::new(1433u32);
pub const panic_implementation: Symbol = Symbol::new(1434u32);
pub const panic_in_cleanup: Symbol = Symbol::new(1435u32);
pub const panic_info: Symbol = Symbol::new(1436u32);
pub const panic_invalid_enum_construction: Symbol = Symbol::new(1437u32);
pub const panic_location: Symbol = Symbol::new(1438u32);
pub const panic_misaligned_pointer_dereference: Symbol =
Symbol::new(1439u32);
pub const panic_nounwind: Symbol = Symbol::new(1440u32);
pub const panic_null_pointer_dereference: Symbol = Symbol::new(1441u32);
pub const panic_null_reference_constructed: Symbol = Symbol::new(1442u32);
pub const panic_runtime: Symbol = Symbol::new(1443u32);
pub const panic_str_2015: Symbol = Symbol::new(1444u32);
pub const panic_unwind: Symbol = Symbol::new(1445u32);
pub const panicking: Symbol = Symbol::new(1446u32);
pub const param_attrs: Symbol = Symbol::new(1447u32);
pub const parent_label: Symbol = Symbol::new(1448u32);
pub const partial_cmp: Symbol = Symbol::new(1449u32);
pub const partial_ord: Symbol = Symbol::new(1450u32);
pub const passes: Symbol = Symbol::new(1451u32);
pub const pat: Symbol = Symbol::new(1452u32);
pub const pat_param: Symbol = Symbol::new(1453u32);
pub const patchable_function_entry: Symbol = Symbol::new(1454u32);
pub const path: Symbol = Symbol::new(1455u32);
pub const pattern_complexity_limit: Symbol = Symbol::new(1456u32);
pub const pattern_parentheses: Symbol = Symbol::new(1457u32);
pub const pattern_type: Symbol = Symbol::new(1458u32);
pub const pattern_type_range_trait: Symbol = Symbol::new(1459u32);
pub const pattern_types: Symbol = Symbol::new(1460u32);
pub const phantom_data: Symbol = Symbol::new(1461u32);
pub const phase: Symbol = Symbol::new(1462u32);
pub const pic: Symbol = Symbol::new(1463u32);
pub const pie: Symbol = Symbol::new(1464u32);
pub const pin_drop: Symbol = Symbol::new(1465u32);
pub const pin_ergonomics: Symbol = Symbol::new(1466u32);
pub const pin_v2: Symbol = Symbol::new(1467u32);
pub const platform_intrinsics: Symbol = Symbol::new(1468u32);
pub const plugin: Symbol = Symbol::new(1469u32);
pub const plugin_registrar: Symbol = Symbol::new(1470u32);
pub const plugins: Symbol = Symbol::new(1471u32);
pub const pointee: Symbol = Symbol::new(1472u32);
pub const pointee_sized: Symbol = Symbol::new(1473u32);
pub const pointee_trait: Symbol = Symbol::new(1474u32);
pub const pointer: Symbol = Symbol::new(1475u32);
pub const poll: Symbol = Symbol::new(1476u32);
pub const post_cleanup: Symbol = Symbol::new(1477u32);
pub const post_dash_lto: Symbol = Symbol::new(1478u32);
pub const postfix_match: Symbol = Symbol::new(1479u32);
pub const powerpc: Symbol = Symbol::new(1480u32);
pub const powerpc64: Symbol = Symbol::new(1481u32);
pub const powerpc_target_feature: Symbol = Symbol::new(1482u32);
pub const powf16: Symbol = Symbol::new(1483u32);
pub const powf32: Symbol = Symbol::new(1484u32);
pub const powf64: Symbol = Symbol::new(1485u32);
pub const powf128: Symbol = Symbol::new(1486u32);
pub const powif16: Symbol = Symbol::new(1487u32);
pub const powif32: Symbol = Symbol::new(1488u32);
pub const powif64: Symbol = Symbol::new(1489u32);
pub const powif128: Symbol = Symbol::new(1490u32);
pub const pre_dash_lto: Symbol = Symbol::new(1491u32);
pub const precise_capturing: Symbol = Symbol::new(1492u32);
pub const precise_capturing_in_traits: Symbol = Symbol::new(1493u32);
pub const precise_pointer_size_matching: Symbol = Symbol::new(1494u32);
pub const predicates: Symbol = Symbol::new(1495u32);
pub const pref_align_of: Symbol = Symbol::new(1496u32);
pub const prefetch_read_data: Symbol = Symbol::new(1497u32);
pub const prefetch_read_instruction: Symbol = Symbol::new(1498u32);
pub const prefetch_write_data: Symbol = Symbol::new(1499u32);
pub const prefetch_write_instruction: Symbol = Symbol::new(1500u32);
pub const prefix_nops: Symbol = Symbol::new(1501u32);
pub const preg: Symbol = Symbol::new(1502u32);
pub const prelude: Symbol = Symbol::new(1503u32);
pub const prelude_import: Symbol = Symbol::new(1504u32);
pub const preserves_flags: Symbol = Symbol::new(1505u32);
pub const prfchw_target_feature: Symbol = Symbol::new(1506u32);
pub const prid: Symbol = Symbol::new(1507u32);
pub const primitive: Symbol = Symbol::new(1508u32);
pub const proc_dash_macro: Symbol = Symbol::new(1509u32);
pub const proc_macro: Symbol = Symbol::new(1510u32);
pub const proc_macro_attribute: Symbol = Symbol::new(1511u32);
pub const proc_macro_derive: Symbol = Symbol::new(1512u32);
pub const proc_macro_expr: Symbol = Symbol::new(1513u32);
pub const proc_macro_gen: Symbol = Symbol::new(1514u32);
pub const proc_macro_hygiene: Symbol = Symbol::new(1515u32);
pub const proc_macro_internals: Symbol = Symbol::new(1516u32);
pub const proc_macro_mod: Symbol = Symbol::new(1517u32);
pub const proc_macro_non_items: Symbol = Symbol::new(1518u32);
pub const proc_macro_path_invoc: Symbol = Symbol::new(1519u32);
pub const profiler_runtime: Symbol = Symbol::new(1520u32);
pub const ptr: Symbol = Symbol::new(1521u32);
pub const ptr_cast: Symbol = Symbol::new(1522u32);
pub const ptr_cast_const: Symbol = Symbol::new(1523u32);
pub const ptr_cast_mut: Symbol = Symbol::new(1524u32);
pub const ptr_const_is_null: Symbol = Symbol::new(1525u32);
pub const ptr_copy: Symbol = Symbol::new(1526u32);
pub const ptr_copy_nonoverlapping: Symbol = Symbol::new(1527u32);
pub const ptr_drop_in_place: Symbol = Symbol::new(1528u32);
pub const ptr_drop_in_place_self: Symbol = Symbol::new(1529u32);
pub const ptr_from_ref: Symbol = Symbol::new(1530u32);
pub const ptr_guaranteed_cmp: Symbol = Symbol::new(1531u32);
pub const ptr_is_null: Symbol = Symbol::new(1532u32);
pub const ptr_mask: Symbol = Symbol::new(1533u32);
pub const ptr_metadata: Symbol = Symbol::new(1534u32);
pub const ptr_null: Symbol = Symbol::new(1535u32);
pub const ptr_null_mut: Symbol = Symbol::new(1536u32);
pub const ptr_offset_from: Symbol = Symbol::new(1537u32);
pub const ptr_offset_from_unsigned: Symbol = Symbol::new(1538u32);
pub const ptr_read: Symbol = Symbol::new(1539u32);
pub const ptr_read_unaligned: Symbol = Symbol::new(1540u32);
pub const ptr_replace: Symbol = Symbol::new(1541u32);
pub const ptr_swap: Symbol = Symbol::new(1542u32);
pub const ptr_swap_nonoverlapping: Symbol = Symbol::new(1543u32);
pub const ptr_write: Symbol = Symbol::new(1544u32);
pub const ptr_write_bytes: Symbol = Symbol::new(1545u32);
pub const ptr_write_unaligned: Symbol = Symbol::new(1546u32);
pub const ptr_write_volatile: Symbol = Symbol::new(1547u32);
pub const pub_macro_rules: Symbol = Symbol::new(1548u32);
pub const pub_restricted: Symbol = Symbol::new(1549u32);
pub const public: Symbol = Symbol::new(1550u32);
pub const pure: Symbol = Symbol::new(1551u32);
pub const pushpop_unsafe: Symbol = Symbol::new(1552u32);
pub const qreg: Symbol = Symbol::new(1553u32);
pub const qreg_low4: Symbol = Symbol::new(1554u32);
pub const qreg_low8: Symbol = Symbol::new(1555u32);
pub const quad_precision_float: Symbol = Symbol::new(1556u32);
pub const question_mark: Symbol = Symbol::new(1557u32);
pub const quote: Symbol = Symbol::new(1558u32);
pub const range_inclusive_new: Symbol = Symbol::new(1559u32);
pub const raw_dash_dylib: Symbol = Symbol::new(1560u32);
pub const raw_dylib: Symbol = Symbol::new(1561u32);
pub const raw_dylib_elf: Symbol = Symbol::new(1562u32);
pub const raw_eq: Symbol = Symbol::new(1563u32);
pub const raw_identifiers: Symbol = Symbol::new(1564u32);
pub const raw_ref_op: Symbol = Symbol::new(1565u32);
pub const re_rebalance_coherence: Symbol = Symbol::new(1566u32);
pub const read_via_copy: Symbol = Symbol::new(1567u32);
pub const readonly: Symbol = Symbol::new(1568u32);
pub const realloc: Symbol = Symbol::new(1569u32);
pub const realtime: Symbol = Symbol::new(1570u32);
pub const reason: Symbol = Symbol::new(1571u32);
pub const reborrow: Symbol = Symbol::new(1572u32);
pub const receiver: Symbol = Symbol::new(1573u32);
pub const receiver_target: Symbol = Symbol::new(1574u32);
pub const recursion_limit: Symbol = Symbol::new(1575u32);
pub const reexport_test_harness_main: Symbol = Symbol::new(1576u32);
pub const ref_pat_eat_one_layer_2024: Symbol = Symbol::new(1577u32);
pub const ref_pat_eat_one_layer_2024_structural: Symbol =
Symbol::new(1578u32);
pub const ref_pat_everywhere: Symbol = Symbol::new(1579u32);
pub const ref_unwind_safe_trait: Symbol = Symbol::new(1580u32);
pub const reference: Symbol = Symbol::new(1581u32);
pub const reflect: Symbol = Symbol::new(1582u32);
pub const reg: Symbol = Symbol::new(1583u32);
pub const reg16: Symbol = Symbol::new(1584u32);
pub const reg32: Symbol = Symbol::new(1585u32);
pub const reg64: Symbol = Symbol::new(1586u32);
pub const reg_abcd: Symbol = Symbol::new(1587u32);
pub const reg_addr: Symbol = Symbol::new(1588u32);
pub const reg_byte: Symbol = Symbol::new(1589u32);
pub const reg_data: Symbol = Symbol::new(1590u32);
pub const reg_iw: Symbol = Symbol::new(1591u32);
pub const reg_nonzero: Symbol = Symbol::new(1592u32);
pub const reg_pair: Symbol = Symbol::new(1593u32);
pub const reg_ptr: Symbol = Symbol::new(1594u32);
pub const reg_upper: Symbol = Symbol::new(1595u32);
pub const register_attr: Symbol = Symbol::new(1596u32);
pub const register_attribute_tool: Symbol = Symbol::new(1597u32);
pub const register_lint_tool: Symbol = Symbol::new(1598u32);
pub const register_tool: Symbol = Symbol::new(1599u32);
pub const relaxed_adts: Symbol = Symbol::new(1600u32);
pub const relaxed_struct_unsize: Symbol = Symbol::new(1601u32);
pub const relocation_model: Symbol = Symbol::new(1602u32);
pub const rem: Symbol = Symbol::new(1603u32);
pub const rem_assign: Symbol = Symbol::new(1604u32);
pub const repr: Symbol = Symbol::new(1605u32);
pub const repr128: Symbol = Symbol::new(1606u32);
pub const repr_align: Symbol = Symbol::new(1607u32);
pub const repr_align_enum: Symbol = Symbol::new(1608u32);
pub const repr_packed: Symbol = Symbol::new(1609u32);
pub const repr_simd: Symbol = Symbol::new(1610u32);
pub const repr_transparent: Symbol = Symbol::new(1611u32);
pub const require: Symbol = Symbol::new(1612u32);
pub const reserve_x18: Symbol = Symbol::new(1613u32);
pub const residual: Symbol = Symbol::new(1614u32);
pub const result: Symbol = Symbol::new(1615u32);
pub const result_ffi_guarantees: Symbol = Symbol::new(1616u32);
pub const return_address: Symbol = Symbol::new(1617u32);
pub const return_position_impl_trait_in_trait: Symbol =
Symbol::new(1618u32);
pub const return_type_notation: Symbol = Symbol::new(1619u32);
pub const right_arrow: Symbol = Symbol::new(1620u32);
pub const riscv32: Symbol = Symbol::new(1621u32);
pub const riscv64: Symbol = Symbol::new(1622u32);
pub const riscv_target_feature: Symbol = Symbol::new(1623u32);
pub const rlib: Symbol = Symbol::new(1624u32);
pub const ropi: Symbol = Symbol::new(1625u32);
pub const ropi_rwpi: Symbol = Symbol::new(1626u32);
pub const rotate_left: Symbol = Symbol::new(1627u32);
pub const rotate_right: Symbol = Symbol::new(1628u32);
pub const round_ties_even_f16: Symbol = Symbol::new(1629u32);
pub const round_ties_even_f32: Symbol = Symbol::new(1630u32);
pub const round_ties_even_f64: Symbol = Symbol::new(1631u32);
pub const round_ties_even_f128: Symbol = Symbol::new(1632u32);
pub const roundf16: Symbol = Symbol::new(1633u32);
pub const roundf32: Symbol = Symbol::new(1634u32);
pub const roundf64: Symbol = Symbol::new(1635u32);
pub const roundf128: Symbol = Symbol::new(1636u32);
pub const rtm_target_feature: Symbol = Symbol::new(1637u32);
pub const runtime: Symbol = Symbol::new(1638u32);
pub const rust: Symbol = Symbol::new(1639u32);
pub const rust_2015: Symbol = Symbol::new(1640u32);
pub const rust_2018: Symbol = Symbol::new(1641u32);
pub const rust_2018_preview: Symbol = Symbol::new(1642u32);
pub const rust_2021: Symbol = Symbol::new(1643u32);
pub const rust_2024: Symbol = Symbol::new(1644u32);
pub const rust_analyzer: Symbol = Symbol::new(1645u32);
pub const rust_begin_unwind: Symbol = Symbol::new(1646u32);
pub const rust_cold_cc: Symbol = Symbol::new(1647u32);
pub const rust_dash_call: Symbol = Symbol::new(1648u32);
pub const rust_eh_personality: Symbol = Symbol::new(1649u32);
pub const rust_future: Symbol = Symbol::new(1650u32);
pub const rust_logo: Symbol = Symbol::new(1651u32);
pub const rust_out: Symbol = Symbol::new(1652u32);
pub const rust_preserve_none_cc: Symbol = Symbol::new(1653u32);
pub const rust_tail_cc: Symbol = Symbol::new(1654u32);
pub const rustc: Symbol = Symbol::new(1655u32);
pub const rustc_abi: Symbol = Symbol::new(1656u32);
pub const rustc_align: Symbol = Symbol::new(1657u32);
pub const rustc_align_static: Symbol = Symbol::new(1658u32);
pub const rustc_allocator: Symbol = Symbol::new(1659u32);
pub const rustc_allocator_zeroed: Symbol = Symbol::new(1660u32);
pub const rustc_allocator_zeroed_variant: Symbol = Symbol::new(1661u32);
pub const rustc_allow_const_fn_unstable: Symbol = Symbol::new(1662u32);
pub const rustc_allow_incoherent_impl: Symbol = Symbol::new(1663u32);
pub const rustc_allow_lifetime_dependent_specialization: Symbol =
Symbol::new(1664u32);
pub const rustc_allowed_through_unstable_modules: Symbol =
Symbol::new(1665u32);
pub const rustc_as_ptr: Symbol = Symbol::new(1666u32);
pub const rustc_attrs: Symbol = Symbol::new(1667u32);
pub const rustc_autodiff: Symbol = Symbol::new(1668u32);
pub const rustc_builtin_macro: Symbol = Symbol::new(1669u32);
pub const rustc_canonical_symbol: Symbol = Symbol::new(1670u32);
pub const rustc_capture_analysis: Symbol = Symbol::new(1671u32);
pub const rustc_clean: Symbol = Symbol::new(1672u32);
pub const rustc_coherence_is_core: Symbol = Symbol::new(1673u32);
pub const rustc_coinductive: Symbol = Symbol::new(1674u32);
pub const rustc_comptime: Symbol = Symbol::new(1675u32);
pub const rustc_confusables: Symbol = Symbol::new(1676u32);
pub const rustc_const_stable: Symbol = Symbol::new(1677u32);
pub const rustc_const_stable_indirect: Symbol = Symbol::new(1678u32);
pub const rustc_const_unstable: Symbol = Symbol::new(1679u32);
pub const rustc_conversion_suggestion: Symbol = Symbol::new(1680u32);
pub const rustc_deallocator: Symbol = Symbol::new(1681u32);
pub const rustc_default_body_unstable: Symbol = Symbol::new(1682u32);
pub const rustc_delayed_bug_from_inside_query: Symbol =
Symbol::new(1683u32);
pub const rustc_deny_explicit_impl: Symbol = Symbol::new(1684u32);
pub const rustc_deprecated_safe_2024: Symbol = Symbol::new(1685u32);
pub const rustc_diagnostic_item: Symbol = Symbol::new(1686u32);
pub const rustc_diagnostic_macros: Symbol = Symbol::new(1687u32);
pub const rustc_diagnostic_opaque: Symbol = Symbol::new(1688u32);
pub const rustc_do_not_const_check: Symbol = Symbol::new(1689u32);
pub const rustc_doc_primitive: Symbol = Symbol::new(1690u32);
pub const rustc_driver: Symbol = Symbol::new(1691u32);
pub const rustc_dummy: Symbol = Symbol::new(1692u32);
pub const rustc_dump_clauses: Symbol = Symbol::new(1693u32);
pub const rustc_dump_def_parents: Symbol = Symbol::new(1694u32);
pub const rustc_dump_def_path: Symbol = Symbol::new(1695u32);
pub const rustc_dump_generics: Symbol = Symbol::new(1696u32);
pub const rustc_dump_hidden_type_of_opaques: Symbol =
Symbol::new(1697u32);
pub const rustc_dump_inferred_outlives: Symbol = Symbol::new(1698u32);
pub const rustc_dump_item_bounds: Symbol = Symbol::new(1699u32);
pub const rustc_dump_layout: Symbol = Symbol::new(1700u32);
pub const rustc_dump_object_lifetime_defaults: Symbol =
Symbol::new(1701u32);
pub const rustc_dump_symbol_name: Symbol = Symbol::new(1702u32);
pub const rustc_dump_user_args: Symbol = Symbol::new(1703u32);
pub const rustc_dump_variances: Symbol = Symbol::new(1704u32);
pub const rustc_dump_variances_of_opaques: Symbol = Symbol::new(1705u32);
pub const rustc_dump_vtable: Symbol = Symbol::new(1706u32);
pub const rustc_dyn_incompatible_trait: Symbol = Symbol::new(1707u32);
pub const rustc_effective_visibility: Symbol = Symbol::new(1708u32);
pub const rustc_eii_foreign_item: Symbol = Symbol::new(1709u32);
pub const rustc_evaluate_where_clauses: Symbol = Symbol::new(1710u32);
pub const rustc_expected_cgu_reuse: Symbol = Symbol::new(1711u32);
pub const rustc_force_inline: Symbol = Symbol::new(1712u32);
pub const rustc_has_incoherent_inherent_impls: Symbol =
Symbol::new(1713u32);
pub const rustc_if_this_changed: Symbol = Symbol::new(1714u32);
pub const rustc_inherit_overflow_checks: Symbol = Symbol::new(1715u32);
pub const rustc_insignificant_dtor: Symbol = Symbol::new(1716u32);
pub const rustc_intrinsic: Symbol = Symbol::new(1717u32);
pub const rustc_intrinsic_const_stable_indirect: Symbol =
Symbol::new(1718u32);
pub const rustc_legacy_const_generics: Symbol = Symbol::new(1719u32);
pub const rustc_lint_opt_deny_field_access: Symbol = Symbol::new(1720u32);
pub const rustc_lint_opt_ty: Symbol = Symbol::new(1721u32);
pub const rustc_lint_query_instability: Symbol = Symbol::new(1722u32);
pub const rustc_lint_untracked_query_information: Symbol =
Symbol::new(1723u32);
pub const rustc_macro_transparency: Symbol = Symbol::new(1724u32);
pub const rustc_main: Symbol = Symbol::new(1725u32);
pub const rustc_mir: Symbol = Symbol::new(1726u32);
pub const rustc_must_implement_one_of: Symbol = Symbol::new(1727u32);
pub const rustc_must_match_exhaustively: Symbol = Symbol::new(1728u32);
pub const rustc_never_returns_null_ptr: Symbol = Symbol::new(1729u32);
pub const rustc_no_implicit_autorefs: Symbol = Symbol::new(1730u32);
pub const rustc_no_implicit_bounds: Symbol = Symbol::new(1731u32);
pub const rustc_no_mir_inline: Symbol = Symbol::new(1732u32);
pub const rustc_no_writable: Symbol = Symbol::new(1733u32);
pub const rustc_non_const_trait_method: Symbol = Symbol::new(1734u32);
pub const rustc_nonnull_optimization_guaranteed: Symbol =
Symbol::new(1735u32);
pub const rustc_nounwind: Symbol = Symbol::new(1736u32);
pub const rustc_objc_class: Symbol = Symbol::new(1737u32);
pub const rustc_objc_selector: Symbol = Symbol::new(1738u32);
pub const rustc_offload_kernel: Symbol = Symbol::new(1739u32);
pub const rustc_on_unimplemented: Symbol = Symbol::new(1740u32);
pub const rustc_panics_when_zero: Symbol = Symbol::new(1741u32);
pub const rustc_paren_sugar: Symbol = Symbol::new(1742u32);
pub const rustc_partition_codegened: Symbol = Symbol::new(1743u32);
pub const rustc_partition_reused: Symbol = Symbol::new(1744u32);
pub const rustc_pass_by_value: Symbol = Symbol::new(1745u32);
pub const rustc_pass_indirectly_in_non_rustic_abis: Symbol =
Symbol::new(1746u32);
pub const rustc_peek: Symbol = Symbol::new(1747u32);
pub const rustc_peek_liveness: Symbol = Symbol::new(1748u32);
pub const rustc_peek_maybe_init: Symbol = Symbol::new(1749u32);
pub const rustc_peek_maybe_uninit: Symbol = Symbol::new(1750u32);
pub const rustc_preserve_ub_checks: Symbol = Symbol::new(1751u32);
pub const rustc_private: Symbol = Symbol::new(1752u32);
pub const rustc_proc_macro_decls: Symbol = Symbol::new(1753u32);
pub const rustc_promotable: Symbol = Symbol::new(1754u32);
pub const rustc_pub_transparent: Symbol = Symbol::new(1755u32);
pub const rustc_reallocator: Symbol = Symbol::new(1756u32);
pub const rustc_regions: Symbol = Symbol::new(1757u32);
pub const rustc_scalable_vector: Symbol = Symbol::new(1758u32);
pub const rustc_should_not_be_called_on_const_items: Symbol =
Symbol::new(1759u32);
pub const rustc_simd_monomorphize_lane_limit: Symbol =
Symbol::new(1760u32);
pub const rustc_skip_during_method_dispatch: Symbol =
Symbol::new(1761u32);
pub const rustc_specialization_trait: Symbol = Symbol::new(1762u32);
pub const rustc_splat: Symbol = Symbol::new(1763u32);
pub const rustc_std_internal_symbol: Symbol = Symbol::new(1764u32);
pub const rustc_strict_coherence: Symbol = Symbol::new(1765u32);
pub const rustc_test_marker: Symbol = Symbol::new(1766u32);
pub const rustc_then_this_would_need: Symbol = Symbol::new(1767u32);
pub const rustc_trivial_field_reads: Symbol = Symbol::new(1768u32);
pub const rustc_unroll: Symbol = Symbol::new(1769u32);
pub const rustdoc: Symbol = Symbol::new(1770u32);
pub const rustdoc_internals: Symbol = Symbol::new(1771u32);
pub const rustdoc_missing_doc_code_examples: Symbol =
Symbol::new(1772u32);
pub const rustfmt: Symbol = Symbol::new(1773u32);
pub const rvalue_static_promotion: Symbol = Symbol::new(1774u32);
pub const rvector: Symbol = Symbol::new(1775u32);
pub const rwpi: Symbol = Symbol::new(1776u32);
pub const s32c1i: Symbol = Symbol::new(1777u32);
pub const s390x: Symbol = Symbol::new(1778u32);
pub const s390x_target_feature: Symbol = Symbol::new(1779u32);
pub const s390x_target_feature_vector: Symbol = Symbol::new(1780u32);
pub const safestack: Symbol = Symbol::new(1781u32);
pub const safety: Symbol = Symbol::new(1782u32);
pub const sanitize: Symbol = Symbol::new(1783u32);
pub const sanitizer_cfi_generalize_pointers: Symbol =
Symbol::new(1784u32);
pub const sanitizer_cfi_normalize_integers: Symbol = Symbol::new(1785u32);
pub const sanitizer_runtime: Symbol = Symbol::new(1786u32);
pub const saturating_add: Symbol = Symbol::new(1787u32);
pub const saturating_sub: Symbol = Symbol::new(1788u32);
pub const sdylib: Symbol = Symbol::new(1789u32);
pub const search_unbox: Symbol = Symbol::new(1790u32);
pub const section: Symbol = Symbol::new(1791u32);
pub const select_unpredictable: Symbol = Symbol::new(1792u32);
pub const self_in_typedefs: Symbol = Symbol::new(1793u32);
pub const self_struct_ctor: Symbol = Symbol::new(1794u32);
pub const semiopaque: Symbol = Symbol::new(1795u32);
pub const sgpr32: Symbol = Symbol::new(1796u32);
pub const sgpr64: Symbol = Symbol::new(1797u32);
pub const sgpr96: Symbol = Symbol::new(1798u32);
pub const sgpr128: Symbol = Symbol::new(1799u32);
pub const sgpr256: Symbol = Symbol::new(1800u32);
pub const sgpr512: Symbol = Symbol::new(1801u32);
pub const sha2: Symbol = Symbol::new(1802u32);
pub const sha3: Symbol = Symbol::new(1803u32);
pub const sha512_sm_x86: Symbol = Symbol::new(1804u32);
pub const shadow_call_stack: Symbol = Symbol::new(1805u32);
pub const shallow: Symbol = Symbol::new(1806u32);
pub const shl: Symbol = Symbol::new(1807u32);
pub const shl_assign: Symbol = Symbol::new(1808u32);
pub const shorter_tail_lifetimes: Symbol = Symbol::new(1809u32);
pub const should_panic: Symbol = Symbol::new(1810u32);
pub const show: Symbol = Symbol::new(1811u32);
pub const shr: Symbol = Symbol::new(1812u32);
pub const shr_assign: Symbol = Symbol::new(1813u32);
pub const signed: Symbol = Symbol::new(1814u32);
pub const simd: Symbol = Symbol::new(1815u32);
pub const simd_add: Symbol = Symbol::new(1816u32);
pub const simd_and: Symbol = Symbol::new(1817u32);
pub const simd_arith_offset: Symbol = Symbol::new(1818u32);
pub const simd_as: Symbol = Symbol::new(1819u32);
pub const simd_bitmask: Symbol = Symbol::new(1820u32);
pub const simd_bitreverse: Symbol = Symbol::new(1821u32);
pub const simd_bswap: Symbol = Symbol::new(1822u32);
pub const simd_carryless_mul: Symbol = Symbol::new(1823u32);
pub const simd_cast: Symbol = Symbol::new(1824u32);
pub const simd_cast_ptr: Symbol = Symbol::new(1825u32);
pub const simd_ceil: Symbol = Symbol::new(1826u32);
pub const simd_ctlz: Symbol = Symbol::new(1827u32);
pub const simd_ctpop: Symbol = Symbol::new(1828u32);
pub const simd_cttz: Symbol = Symbol::new(1829u32);
pub const simd_div: Symbol = Symbol::new(1830u32);
pub const simd_eq: Symbol = Symbol::new(1831u32);
pub const simd_expose_provenance: Symbol = Symbol::new(1832u32);
pub const simd_extract: Symbol = Symbol::new(1833u32);
pub const simd_extract_dyn: Symbol = Symbol::new(1834u32);
pub const simd_fabs: Symbol = Symbol::new(1835u32);
pub const simd_fcos: Symbol = Symbol::new(1836u32);
pub const simd_fexp: Symbol = Symbol::new(1837u32);
pub const simd_fexp2: Symbol = Symbol::new(1838u32);
pub const simd_ffi: Symbol = Symbol::new(1839u32);
pub const simd_flog: Symbol = Symbol::new(1840u32);
pub const simd_flog2: Symbol = Symbol::new(1841u32);
pub const simd_flog10: Symbol = Symbol::new(1842u32);
pub const simd_floor: Symbol = Symbol::new(1843u32);
pub const simd_fma: Symbol = Symbol::new(1844u32);
pub const simd_fsin: Symbol = Symbol::new(1845u32);
pub const simd_fsqrt: Symbol = Symbol::new(1846u32);
pub const simd_funnel_shl: Symbol = Symbol::new(1847u32);
pub const simd_funnel_shr: Symbol = Symbol::new(1848u32);
pub const simd_gather: Symbol = Symbol::new(1849u32);
pub const simd_ge: Symbol = Symbol::new(1850u32);
pub const simd_gt: Symbol = Symbol::new(1851u32);
pub const simd_insert: Symbol = Symbol::new(1852u32);
pub const simd_insert_dyn: Symbol = Symbol::new(1853u32);
pub const simd_le: Symbol = Symbol::new(1854u32);
pub const simd_lt: Symbol = Symbol::new(1855u32);
pub const simd_masked_load: Symbol = Symbol::new(1856u32);
pub const simd_masked_store: Symbol = Symbol::new(1857u32);
pub const simd_maximum_number_nsz: Symbol = Symbol::new(1858u32);
pub const simd_minimum_number_nsz: Symbol = Symbol::new(1859u32);
pub const simd_mul: Symbol = Symbol::new(1860u32);
pub const simd_ne: Symbol = Symbol::new(1861u32);
pub const simd_neg: Symbol = Symbol::new(1862u32);
pub const simd_or: Symbol = Symbol::new(1863u32);
pub const simd_reduce_add_ordered: Symbol = Symbol::new(1864u32);
pub const simd_reduce_add_unordered: Symbol = Symbol::new(1865u32);
pub const simd_reduce_all: Symbol = Symbol::new(1866u32);
pub const simd_reduce_and: Symbol = Symbol::new(1867u32);
pub const simd_reduce_any: Symbol = Symbol::new(1868u32);
pub const simd_reduce_max: Symbol = Symbol::new(1869u32);
pub const simd_reduce_min: Symbol = Symbol::new(1870u32);
pub const simd_reduce_mul_ordered: Symbol = Symbol::new(1871u32);
pub const simd_reduce_mul_unordered: Symbol = Symbol::new(1872u32);
pub const simd_reduce_or: Symbol = Symbol::new(1873u32);
pub const simd_reduce_xor: Symbol = Symbol::new(1874u32);
pub const simd_relaxed_fma: Symbol = Symbol::new(1875u32);
pub const simd_rem: Symbol = Symbol::new(1876u32);
pub const simd_round: Symbol = Symbol::new(1877u32);
pub const simd_round_ties_even: Symbol = Symbol::new(1878u32);
pub const simd_saturating_add: Symbol = Symbol::new(1879u32);
pub const simd_saturating_sub: Symbol = Symbol::new(1880u32);
pub const simd_scatter: Symbol = Symbol::new(1881u32);
pub const simd_select: Symbol = Symbol::new(1882u32);
pub const simd_select_bitmask: Symbol = Symbol::new(1883u32);
pub const simd_shl: Symbol = Symbol::new(1884u32);
pub const simd_shr: Symbol = Symbol::new(1885u32);
pub const simd_shuffle: Symbol = Symbol::new(1886u32);
pub const simd_shuffle_const_generic: Symbol = Symbol::new(1887u32);
pub const simd_splat: Symbol = Symbol::new(1888u32);
pub const simd_sub: Symbol = Symbol::new(1889u32);
pub const simd_trunc: Symbol = Symbol::new(1890u32);
pub const simd_with_exposed_provenance: Symbol = Symbol::new(1891u32);
pub const simd_xor: Symbol = Symbol::new(1892u32);
pub const sin: Symbol = Symbol::new(1893u32);
pub const since: Symbol = Symbol::new(1894u32);
pub const size: Symbol = Symbol::new(1895u32);
pub const size_of: Symbol = Symbol::new(1896u32);
pub const size_of_type_id: Symbol = Symbol::new(1897u32);
pub const size_of_val: Symbol = Symbol::new(1898u32);
pub const sized: Symbol = Symbol::new(1899u32);
pub const sized_hierarchy: Symbol = Symbol::new(1900u32);
pub const slice: Symbol = Symbol::new(1901u32);
pub const slice_from_raw_parts: Symbol = Symbol::new(1902u32);
pub const slice_from_raw_parts_mut: Symbol = Symbol::new(1903u32);
pub const slice_get_unchecked: Symbol = Symbol::new(1904u32);
pub const slice_len_fn: Symbol = Symbol::new(1905u32);
pub const slice_patterns: Symbol = Symbol::new(1906u32);
pub const slicing_syntax: Symbol = Symbol::new(1907u32);
pub const soft_float: Symbol = Symbol::new(1908u32);
pub const sparc: Symbol = Symbol::new(1909u32);
pub const sparc64: Symbol = Symbol::new(1910u32);
pub const sparc_target_feature: Symbol = Symbol::new(1911u32);
pub const spe_acc: Symbol = Symbol::new(1912u32);
pub const specialization: Symbol = Symbol::new(1913u32);
pub const speed: Symbol = Symbol::new(1914u32);
pub const spirv: Symbol = Symbol::new(1915u32);
pub const splat: Symbol = Symbol::new(1916u32);
pub const splatted_index: Symbol = Symbol::new(1917u32);
pub const spotlight: Symbol = Symbol::new(1918u32);
pub const sqrtf16: Symbol = Symbol::new(1919u32);
pub const sqrtf32: Symbol = Symbol::new(1920u32);
pub const sqrtf64: Symbol = Symbol::new(1921u32);
pub const sqrtf128: Symbol = Symbol::new(1922u32);
pub const sreg: Symbol = Symbol::new(1923u32);
pub const sreg_low16: Symbol = Symbol::new(1924u32);
pub const sse: Symbol = Symbol::new(1925u32);
pub const sse2: Symbol = Symbol::new(1926u32);
pub const sse4a_target_feature: Symbol = Symbol::new(1927u32);
pub const stable: Symbol = Symbol::new(1928u32);
pub const staged_api: Symbol = Symbol::new(1929u32);
pub const start: Symbol = Symbol::new(1930u32);
pub const state: Symbol = Symbol::new(1931u32);
pub const static_align: Symbol = Symbol::new(1932u32);
pub const static_in_const: Symbol = Symbol::new(1933u32);
pub const static_nobundle: Symbol = Symbol::new(1934u32);
pub const static_recursion: Symbol = Symbol::new(1935u32);
pub const staticlib: Symbol = Symbol::new(1936u32);
pub const std: Symbol = Symbol::new(1937u32);
pub const std_lib_injection: Symbol = Symbol::new(1938u32);
pub const std_panic: Symbol = Symbol::new(1939u32);
pub const std_panic_2015_macro: Symbol = Symbol::new(1940u32);
pub const std_panic_macro: Symbol = Symbol::new(1941u32);
pub const stmt: Symbol = Symbol::new(1942u32);
pub const stmt_expr_attributes: Symbol = Symbol::new(1943u32);
pub const stop_after_dataflow: Symbol = Symbol::new(1944u32);
pub const store: Symbol = Symbol::new(1945u32);
pub const str: Symbol = Symbol::new(1946u32);
pub const str_from_utf8: Symbol = Symbol::new(1947u32);
pub const str_from_utf8_mut: Symbol = Symbol::new(1948u32);
pub const str_from_utf8_unchecked: Symbol = Symbol::new(1949u32);
pub const str_from_utf8_unchecked_mut: Symbol = Symbol::new(1950u32);
pub const str_inherent_from_utf8: Symbol = Symbol::new(1951u32);
pub const str_inherent_from_utf8_mut: Symbol = Symbol::new(1952u32);
pub const str_inherent_from_utf8_unchecked: Symbol = Symbol::new(1953u32);
pub const str_inherent_from_utf8_unchecked_mut: Symbol =
Symbol::new(1954u32);
pub const strict_provenance_lints: Symbol = Symbol::new(1955u32);
pub const string_deref_patterns: Symbol = Symbol::new(1956u32);
pub const stringify: Symbol = Symbol::new(1957u32);
pub const struct_field_attributes: Symbol = Symbol::new(1958u32);
pub const struct_inherit: Symbol = Symbol::new(1959u32);
pub const struct_variant: Symbol = Symbol::new(1960u32);
pub const structural_match: Symbol = Symbol::new(1961u32);
pub const structural_peq: Symbol = Symbol::new(1962u32);
pub const sub: Symbol = Symbol::new(1963u32);
pub const sub_assign: Symbol = Symbol::new(1964u32);
pub const sub_with_overflow: Symbol = Symbol::new(1965u32);
pub const suggestion: Symbol = Symbol::new(1966u32);
pub const super_let: Symbol = Symbol::new(1967u32);
pub const supertrait_item_shadowing: Symbol = Symbol::new(1968u32);
pub const sve: Symbol = Symbol::new(1969u32);
pub const sve_cast: Symbol = Symbol::new(1970u32);
pub const sve_tuple_create2: Symbol = Symbol::new(1971u32);
pub const sve_tuple_create3: Symbol = Symbol::new(1972u32);
pub const sve_tuple_create4: Symbol = Symbol::new(1973u32);
pub const sve_tuple_get: Symbol = Symbol::new(1974u32);
pub const sve_tuple_set: Symbol = Symbol::new(1975u32);
pub const sym: Symbol = Symbol::new(1976u32);
pub const sync: Symbol = Symbol::new(1977u32);
pub const synthetic: Symbol = Symbol::new(1978u32);
pub const t32: Symbol = Symbol::new(1979u32);
pub const target: Symbol = Symbol::new(1980u32);
pub const target_abi: Symbol = Symbol::new(1981u32);
pub const target_arch: Symbol = Symbol::new(1982u32);
pub const target_endian: Symbol = Symbol::new(1983u32);
pub const target_env: Symbol = Symbol::new(1984u32);
pub const target_family: Symbol = Symbol::new(1985u32);
pub const target_feature: Symbol = Symbol::new(1986u32);
pub const target_feature_11: Symbol = Symbol::new(1987u32);
pub const target_feature_inline_always: Symbol = Symbol::new(1988u32);
pub const target_has_atomic: Symbol = Symbol::new(1989u32);
pub const target_has_atomic_load_store: Symbol = Symbol::new(1990u32);
pub const target_has_atomic_primitive_alignment: Symbol =
Symbol::new(1991u32);
pub const target_has_reliable_f16: Symbol = Symbol::new(1992u32);
pub const target_has_reliable_f16_math: Symbol = Symbol::new(1993u32);
pub const target_has_reliable_f128: Symbol = Symbol::new(1994u32);
pub const target_has_reliable_f128_math: Symbol = Symbol::new(1995u32);
pub const target_has_threads: Symbol = Symbol::new(1996u32);
pub const target_object_format: Symbol = Symbol::new(1997u32);
pub const target_os: Symbol = Symbol::new(1998u32);
pub const target_pointer_width: Symbol = Symbol::new(1999u32);
pub const target_thread_local: Symbol = Symbol::new(2000u32);
pub const target_vendor: Symbol = Symbol::new(2001u32);
pub const tbm_target_feature: Symbol = Symbol::new(2002u32);
pub const termination: Symbol = Symbol::new(2003u32);
pub const termination_trait: Symbol = Symbol::new(2004u32);
pub const termination_trait_test: Symbol = Symbol::new(2005u32);
pub const test: Symbol = Symbol::new(2006u32);
pub const test_2018_feature: Symbol = Symbol::new(2007u32);
pub const test_accepted_feature: Symbol = Symbol::new(2008u32);
pub const test_binder_constraints: Symbol = Symbol::new(2009u32);
pub const test_case: Symbol = Symbol::new(2010u32);
pub const test_incomplete_feature: Symbol = Symbol::new(2011u32);
pub const test_removed_feature: Symbol = Symbol::new(2012u32);
pub const test_runner: Symbol = Symbol::new(2013u32);
pub const test_unstable_lint: Symbol = Symbol::new(2014u32);
pub const thread: Symbol = Symbol::new(2015u32);
pub const thread_local: Symbol = Symbol::new(2016u32);
pub const threadptr: Symbol = Symbol::new(2017u32);
pub const three_way_compare: Symbol = Symbol::new(2018u32);
pub const thumb2: Symbol = Symbol::new(2019u32);
pub const thumb_mode: Symbol = Symbol::new(2020u32);
pub const time: Symbol = Symbol::new(2021u32);
pub const tmm_reg: Symbol = Symbol::new(2022u32);
pub const to_owned_method: Symbol = Symbol::new(2023u32);
pub const to_string: Symbol = Symbol::new(2024u32);
pub const to_vec: Symbol = Symbol::new(2025u32);
pub const tool_attributes: Symbol = Symbol::new(2026u32);
pub const tool_lints: Symbol = Symbol::new(2027u32);
pub const trace_macros: Symbol = Symbol::new(2028u32);
pub const track_caller: Symbol = Symbol::new(2029u32);
pub const trait_alias: Symbol = Symbol::new(2030u32);
pub const trait_ty: Symbol = Symbol::new(2031u32);
pub const trait_upcasting: Symbol = Symbol::new(2032u32);
pub const transmute: Symbol = Symbol::new(2033u32);
pub const transmute_generic_consts: Symbol = Symbol::new(2034u32);
pub const transmute_opts: Symbol = Symbol::new(2035u32);
pub const transmute_trait: Symbol = Symbol::new(2036u32);
pub const transmute_unchecked: Symbol = Symbol::new(2037u32);
pub const transparent: Symbol = Symbol::new(2038u32);
pub const transparent_enums: Symbol = Symbol::new(2039u32);
pub const transparent_unions: Symbol = Symbol::new(2040u32);
pub const trivial_bounds: Symbol = Symbol::new(2041u32);
pub const trivial_clone: Symbol = Symbol::new(2042u32);
pub const truncf16: Symbol = Symbol::new(2043u32);
pub const truncf32: Symbol = Symbol::new(2044u32);
pub const truncf64: Symbol = Symbol::new(2045u32);
pub const truncf128: Symbol = Symbol::new(2046u32);
pub const try_as_dyn: Symbol = Symbol::new(2047u32);
pub const try_blocks: Symbol = Symbol::new(2048u32);
pub const try_blocks_heterogeneous: Symbol = Symbol::new(2049u32);
pub const try_capture: Symbol = Symbol::new(2050u32);
pub const try_from: Symbol = Symbol::new(2051u32);
pub const try_into: Symbol = Symbol::new(2052u32);
pub const try_trait_v2: Symbol = Symbol::new(2053u32);
pub const try_trait_v2_residual: Symbol = Symbol::new(2054u32);
pub const try_update: Symbol = Symbol::new(2055u32);
pub const tt: Symbol = Symbol::new(2056u32);
pub const tuple: Symbol = Symbol::new(2057u32);
pub const tuple_indexing: Symbol = Symbol::new(2058u32);
pub const tuple_trait: Symbol = Symbol::new(2059u32);
pub const two_phase: Symbol = Symbol::new(2060u32);
pub const ty: Symbol = Symbol::new(2061u32);
pub const type_alias_enum_variants: Symbol = Symbol::new(2062u32);
pub const type_alias_impl_trait: Symbol = Symbol::new(2063u32);
pub const type_ascribe: Symbol = Symbol::new(2064u32);
pub const type_ascription: Symbol = Symbol::new(2065u32);
pub const type_changing_struct_update: Symbol = Symbol::new(2066u32);
pub const type_id: Symbol = Symbol::new(2067u32);
pub const type_id_eq: Symbol = Symbol::new(2068u32);
pub const type_id_field_representing_type: Symbol = Symbol::new(2069u32);
pub const type_id_fields: Symbol = Symbol::new(2070u32);
pub const type_id_generics: Symbol = Symbol::new(2071u32);
pub const type_id_is_signed: Symbol = Symbol::new(2072u32);
pub const type_id_variants: Symbol = Symbol::new(2073u32);
pub const type_id_vtable: Symbol = Symbol::new(2074u32);
pub const type_info: Symbol = Symbol::new(2075u32);
pub const type_info_generic: Symbol = Symbol::new(2076u32);
pub const type_ir: Symbol = Symbol::new(2077u32);
pub const type_ir_infer_ctxt_like: Symbol = Symbol::new(2078u32);
pub const type_ir_inherent: Symbol = Symbol::new(2079u32);
pub const type_ir_interner: Symbol = Symbol::new(2080u32);
pub const type_length_limit: Symbol = Symbol::new(2081u32);
pub const type_macros: Symbol = Symbol::new(2082u32);
pub const type_name: Symbol = Symbol::new(2083u32);
pub const type_of: Symbol = Symbol::new(2084u32);
pub const type_privacy_lints: Symbol = Symbol::new(2085u32);
pub const typed_swap_nonoverlapping: Symbol = Symbol::new(2086u32);
pub const u8: Symbol = Symbol::new(2087u32);
pub const u8_legacy_const_max: Symbol = Symbol::new(2088u32);
pub const u8_legacy_const_min: Symbol = Symbol::new(2089u32);
pub const u8_legacy_fn_max_value: Symbol = Symbol::new(2090u32);
pub const u8_legacy_fn_min_value: Symbol = Symbol::new(2091u32);
pub const u8_legacy_mod: Symbol = Symbol::new(2092u32);
pub const u16: Symbol = Symbol::new(2093u32);
pub const u16_legacy_const_max: Symbol = Symbol::new(2094u32);
pub const u16_legacy_const_min: Symbol = Symbol::new(2095u32);
pub const u16_legacy_fn_max_value: Symbol = Symbol::new(2096u32);
pub const u16_legacy_fn_min_value: Symbol = Symbol::new(2097u32);
pub const u16_legacy_mod: Symbol = Symbol::new(2098u32);
pub const u32: Symbol = Symbol::new(2099u32);
pub const u32_legacy_const_max: Symbol = Symbol::new(2100u32);
pub const u32_legacy_const_min: Symbol = Symbol::new(2101u32);
pub const u32_legacy_fn_max_value: Symbol = Symbol::new(2102u32);
pub const u32_legacy_fn_min_value: Symbol = Symbol::new(2103u32);
pub const u32_legacy_mod: Symbol = Symbol::new(2104u32);
pub const u64: Symbol = Symbol::new(2105u32);
pub const u64_legacy_const_max: Symbol = Symbol::new(2106u32);
pub const u64_legacy_const_min: Symbol = Symbol::new(2107u32);
pub const u64_legacy_fn_max_value: Symbol = Symbol::new(2108u32);
pub const u64_legacy_fn_min_value: Symbol = Symbol::new(2109u32);
pub const u64_legacy_mod: Symbol = Symbol::new(2110u32);
pub const u128: Symbol = Symbol::new(2111u32);
pub const u128_legacy_const_max: Symbol = Symbol::new(2112u32);
pub const u128_legacy_const_min: Symbol = Symbol::new(2113u32);
pub const u128_legacy_fn_max_value: Symbol = Symbol::new(2114u32);
pub const u128_legacy_fn_min_value: Symbol = Symbol::new(2115u32);
pub const u128_legacy_mod: Symbol = Symbol::new(2116u32);
pub const ub_checks: Symbol = Symbol::new(2117u32);
pub const unaligned_volatile_load: Symbol = Symbol::new(2118u32);
pub const unaligned_volatile_store: Symbol = Symbol::new(2119u32);
pub const unboxed_closures: Symbol = Symbol::new(2120u32);
pub const unchecked_add: Symbol = Symbol::new(2121u32);
pub const unchecked_div: Symbol = Symbol::new(2122u32);
pub const unchecked_funnel_shl: Symbol = Symbol::new(2123u32);
pub const unchecked_funnel_shr: Symbol = Symbol::new(2124u32);
pub const unchecked_mul: Symbol = Symbol::new(2125u32);
pub const unchecked_rem: Symbol = Symbol::new(2126u32);
pub const unchecked_shl: Symbol = Symbol::new(2127u32);
pub const unchecked_shr: Symbol = Symbol::new(2128u32);
pub const unchecked_sub: Symbol = Symbol::new(2129u32);
pub const undecorated: Symbol = Symbol::new(2130u32);
pub const underscore_const_names: Symbol = Symbol::new(2131u32);
pub const underscore_imports: Symbol = Symbol::new(2132u32);
pub const underscore_lifetimes: Symbol = Symbol::new(2133u32);
pub const uniform_paths: Symbol = Symbol::new(2134u32);
pub const unimplemented: Symbol = Symbol::new(2135u32);
pub const unit: Symbol = Symbol::new(2136u32);
pub const universal_impl_trait: Symbol = Symbol::new(2137u32);
pub const unix: Symbol = Symbol::new(2138u32);
pub const unlikely: Symbol = Symbol::new(2139u32);
pub const unmarked_api: Symbol = Symbol::new(2140u32);
pub const unnamed_enum_variants: Symbol = Symbol::new(2141u32);
pub const unnamed_fields: Symbol = Symbol::new(2142u32);
pub const unpin: Symbol = Symbol::new(2143u32);
pub const unqualified_local_imports: Symbol = Symbol::new(2144u32);
pub const unreachable: Symbol = Symbol::new(2145u32);
pub const unreachable_2015: Symbol = Symbol::new(2146u32);
pub const unreachable_2015_macro: Symbol = Symbol::new(2147u32);
pub const unreachable_2021: Symbol = Symbol::new(2148u32);
pub const unreachable_code: Symbol = Symbol::new(2149u32);
pub const unreachable_display: Symbol = Symbol::new(2150u32);
pub const unreachable_macro: Symbol = Symbol::new(2151u32);
pub const unrestricted_attribute_tokens: Symbol = Symbol::new(2152u32);
pub const unsafe_attributes: Symbol = Symbol::new(2153u32);
pub const unsafe_binders: Symbol = Symbol::new(2154u32);
pub const unsafe_block_in_unsafe_fn: Symbol = Symbol::new(2155u32);
pub const unsafe_cell: Symbol = Symbol::new(2156u32);
pub const unsafe_cell_raw_get: Symbol = Symbol::new(2157u32);
pub const unsafe_eii: Symbol = Symbol::new(2158u32);
pub const unsafe_extern_blocks: Symbol = Symbol::new(2159u32);
pub const unsafe_fields: Symbol = Symbol::new(2160u32);
pub const unsafe_no_drop_flag: Symbol = Symbol::new(2161u32);
pub const unsafe_pinned: Symbol = Symbol::new(2162u32);
pub const unsafe_unpin: Symbol = Symbol::new(2163u32);
pub const unsafety: Symbol = Symbol::new(2164u32);
pub const unsize: Symbol = Symbol::new(2165u32);
pub const unsized_const_param_ty: Symbol = Symbol::new(2166u32);
pub const unsized_const_params: Symbol = Symbol::new(2167u32);
pub const unsized_fn_params: Symbol = Symbol::new(2168u32);
pub const unsized_locals: Symbol = Symbol::new(2169u32);
pub const unsized_tuple_coercion: Symbol = Symbol::new(2170u32);
pub const unstable: Symbol = Symbol::new(2171u32);
pub const unstable_feature_bound: Symbol = Symbol::new(2172u32);
pub const unstable_location_reason_default: Symbol = Symbol::new(2173u32);
pub const unstable_removed: Symbol = Symbol::new(2174u32);
pub const untagged_unions: Symbol = Symbol::new(2175u32);
pub const unused_imports: Symbol = Symbol::new(2176u32);
pub const unwind: Symbol = Symbol::new(2177u32);
pub const unwind_attributes: Symbol = Symbol::new(2178u32);
pub const unwind_safe_trait: Symbol = Symbol::new(2179u32);
pub const unwrap: Symbol = Symbol::new(2180u32);
pub const unwrap_binder: Symbol = Symbol::new(2181u32);
pub const unwrap_or: Symbol = Symbol::new(2182u32);
pub const update: Symbol = Symbol::new(2183u32);
pub const use_cloned: Symbol = Symbol::new(2184u32);
pub const use_extern_macros: Symbol = Symbol::new(2185u32);
pub const use_nested_groups: Symbol = Symbol::new(2186u32);
pub const used: Symbol = Symbol::new(2187u32);
pub const used_with_arg: Symbol = Symbol::new(2188u32);
pub const using: Symbol = Symbol::new(2189u32);
pub const usize: Symbol = Symbol::new(2190u32);
pub const usize_legacy_const_max: Symbol = Symbol::new(2191u32);
pub const usize_legacy_const_min: Symbol = Symbol::new(2192u32);
pub const usize_legacy_fn_max_value: Symbol = Symbol::new(2193u32);
pub const usize_legacy_fn_min_value: Symbol = Symbol::new(2194u32);
pub const usize_legacy_mod: Symbol = Symbol::new(2195u32);
pub const v1: Symbol = Symbol::new(2196u32);
pub const v8plus: Symbol = Symbol::new(2197u32);
pub const v9: Symbol = Symbol::new(2198u32);
pub const va_arg: Symbol = Symbol::new(2199u32);
pub const va_arg_safe: Symbol = Symbol::new(2200u32);
pub const va_copy: Symbol = Symbol::new(2201u32);
pub const va_end: Symbol = Symbol::new(2202u32);
pub const va_list: Symbol = Symbol::new(2203u32);
pub const val: Symbol = Symbol::new(2204u32);
pub const validity: Symbol = Symbol::new(2205u32);
pub const value: Symbol = Symbol::new(2206u32);
pub const values: Symbol = Symbol::new(2207u32);
pub const var: Symbol = Symbol::new(2208u32);
pub const variadic: Symbol = Symbol::new(2209u32);
pub const variant_count: Symbol = Symbol::new(2210u32);
pub const variant_name: Symbol = Symbol::new(2211u32);
pub const variant_non_exhaustive: Symbol = Symbol::new(2212u32);
pub const variants: Symbol = Symbol::new(2213u32);
pub const vec: Symbol = Symbol::new(2214u32);
pub const vector: Symbol = Symbol::new(2215u32);
pub const verbatim: Symbol = Symbol::new(2216u32);
pub const version: Symbol = Symbol::new(2217u32);
pub const vfp2: Symbol = Symbol::new(2218u32);
pub const vgpr16: Symbol = Symbol::new(2219u32);
pub const vgpr32: Symbol = Symbol::new(2220u32);
pub const vgpr64: Symbol = Symbol::new(2221u32);
pub const vgpr96: Symbol = Symbol::new(2222u32);
pub const vgpr128: Symbol = Symbol::new(2223u32);
pub const vgpr160: Symbol = Symbol::new(2224u32);
pub const vgpr192: Symbol = Symbol::new(2225u32);
pub const vgpr224: Symbol = Symbol::new(2226u32);
pub const vgpr256: Symbol = Symbol::new(2227u32);
pub const vgpr288: Symbol = Symbol::new(2228u32);
pub const vgpr320: Symbol = Symbol::new(2229u32);
pub const vgpr352: Symbol = Symbol::new(2230u32);
pub const vgpr384: Symbol = Symbol::new(2231u32);
pub const vgpr512: Symbol = Symbol::new(2232u32);
pub const vgpr1024: Symbol = Symbol::new(2233u32);
pub const view_type: Symbol = Symbol::new(2234u32);
pub const view_types: Symbol = Symbol::new(2235u32);
pub const vis: Symbol = Symbol::new(2236u32);
pub const visible_private_types: Symbol = Symbol::new(2237u32);
pub const volatile: Symbol = Symbol::new(2238u32);
pub const volatile_copy_memory: Symbol = Symbol::new(2239u32);
pub const volatile_copy_nonoverlapping_memory: Symbol =
Symbol::new(2240u32);
pub const volatile_load: Symbol = Symbol::new(2241u32);
pub const volatile_set_memory: Symbol = Symbol::new(2242u32);
pub const volatile_store: Symbol = Symbol::new(2243u32);
pub const vreg: Symbol = Symbol::new(2244u32);
pub const vreg_low16: Symbol = Symbol::new(2245u32);
pub const vreg_pair: Symbol = Symbol::new(2246u32);
pub const vsreg: Symbol = Symbol::new(2247u32);
pub const vsx: Symbol = Symbol::new(2248u32);
pub const vtable_align: Symbol = Symbol::new(2249u32);
pub const vtable_size: Symbol = Symbol::new(2250u32);
pub const warn: Symbol = Symbol::new(2251u32);
pub const wasip2: Symbol = Symbol::new(2252u32);
pub const wasm: Symbol = Symbol::new(2253u32);
pub const wasm32: Symbol = Symbol::new(2254u32);
pub const wasm64: Symbol = Symbol::new(2255u32);
pub const wasm_abi: Symbol = Symbol::new(2256u32);
pub const wasm_import_module: Symbol = Symbol::new(2257u32);
pub const wasm_target_feature: Symbol = Symbol::new(2258u32);
pub const weak: Symbol = Symbol::new(2259u32);
pub const weak_odr: Symbol = Symbol::new(2260u32);
pub const where_clause_attrs: Symbol = Symbol::new(2261u32);
pub const while_let: Symbol = Symbol::new(2262u32);
pub const whole_dash_archive: Symbol = Symbol::new(2263u32);
pub const width: Symbol = Symbol::new(2264u32);
pub const windowed: Symbol = Symbol::new(2265u32);
pub const windows: Symbol = Symbol::new(2266u32);
pub const windows_subsystem: Symbol = Symbol::new(2267u32);
pub const with_negative_coherence: Symbol = Symbol::new(2268u32);
pub const wrap_binder: Symbol = Symbol::new(2269u32);
pub const wrapping_add: Symbol = Symbol::new(2270u32);
pub const wrapping_div: Symbol = Symbol::new(2271u32);
pub const wrapping_mul: Symbol = Symbol::new(2272u32);
pub const wrapping_rem: Symbol = Symbol::new(2273u32);
pub const wrapping_rem_euclid: Symbol = Symbol::new(2274u32);
pub const wrapping_sub: Symbol = Symbol::new(2275u32);
pub const wreg: Symbol = Symbol::new(2276u32);
pub const write_box_via_move: Symbol = Symbol::new(2277u32);
pub const write_bytes: Symbol = Symbol::new(2278u32);
pub const write_fmt: Symbol = Symbol::new(2279u32);
pub const write_macro: Symbol = Symbol::new(2280u32);
pub const write_str: Symbol = Symbol::new(2281u32);
pub const write_via_move: Symbol = Symbol::new(2282u32);
pub const writeln_macro: Symbol = Symbol::new(2283u32);
pub const x86: Symbol = Symbol::new(2284u32);
pub const x86_64: Symbol = Symbol::new(2285u32);
pub const x86_amx_intrinsics: Symbol = Symbol::new(2286u32);
pub const x87_reg: Symbol = Symbol::new(2287u32);
pub const x87_target_feature: Symbol = Symbol::new(2288u32);
pub const xcoff: Symbol = Symbol::new(2289u32);
pub const xer: Symbol = Symbol::new(2290u32);
pub const xloop: Symbol = Symbol::new(2291u32);
pub const xmm_reg: Symbol = Symbol::new(2292u32);
pub const xop_target_feature: Symbol = Symbol::new(2293u32);
pub const xreg: Symbol = Symbol::new(2294u32);
pub const xtensa: Symbol = Symbol::new(2295u32);
pub const xtensa_target_feature: Symbol = Symbol::new(2296u32);
pub const yeet_desugar_details: Symbol = Symbol::new(2297u32);
pub const yeet_expr: Symbol = Symbol::new(2298u32);
pub const yes: Symbol = Symbol::new(2299u32);
pub const yield_expr: Symbol = Symbol::new(2300u32);
pub const ymm_reg: Symbol = Symbol::new(2301u32);
pub const yreg: Symbol = Symbol::new(2302u32);
pub const zca: Symbol = Symbol::new(2303u32);
pub const zfh: Symbol = Symbol::new(2304u32);
pub const zfhmin: Symbol = Symbol::new(2305u32);
pub const zmm_reg: Symbol = Symbol::new(2306u32);
pub const ztso: Symbol = Symbol::new(2307u32);
pub const env_CFG_RELEASE: Symbol = Symbol::new(2370u32);
}
impl Interner {
#[doc =
r" Creates an `Interner` with the predefined symbols from the `symbols!` macro and"]
#[doc = r" any extra symbols provided by external drivers such as Clippy"]
pub(crate) fn with_extra_symbols(extra_symbols: &[&'static str]) -> Self {
Interner::prefill(&["$crate", "{{root}}", "_", "as", "break", "const",
"continue", "crate", "else", "enum", "extern", "false",
"fn", "for", "if", "impl", "in", "let", "loop", "match",
"mod", "move", "mut", "pub", "ref", "return", "self",
"Self", "static", "struct", "super", "trait", "true",
"type", "unsafe", "use", "where", "while", "abstract",
"become", "box", "do", "final", "macro", "override", "priv",
"typeof", "unsized", "virtual", "yield", "async", "await",
"dyn", "gen", "try", "'static", "'_", "auto", "builtin",
"catch", "contract_ensures", "contract_requires", "default",
"macro_rules", "pin", "raw", "reuse", "safe", "union",
"yeet", "Abi", "AcqRel", "Acquire", "Active", "ActiveOnly",
"Alignment", "Arc", "ArcWeak", "Array", "AsMut", "AsRef",
"AssertParamIsClone", "AssertParamIsCopy",
"AssertParamIsEq", "AsyncGenFinished", "AsyncGenPending",
"AsyncGenReady", "Atomic", "BTreeMap", "Bool", "Borrow",
"BorrowMut", "Break", "BuildHasher", "CStr",
"CallOnceFuture", "CallRefFuture", "Capture", "Cell",
"Char", "Cleanup", "Client", "Clone", "CoercePointee",
"CoercePointeeValidated", "CoerceShared", "CoerceUnsized",
"Const", "ConstParamTy", "ConstParamTy_", "Context",
"Continue", "ControlFlow", "Copy", "Cow", "Debug",
"Default", "Deref", "DispatchFromDyn", "Display", "Dual",
"DualOnly", "Dualv", "DualvOnly", "Duplicated",
"DuplicatedOnly", "DynTrait", "Enum", "Eq", "Equal", "Err",
"Expected", "ExternC", "ExternRust", "Float",
"FmtArgumentsNew", "Fn", "FnMut", "FnOnce", "FnPtr",
"Formatter", "Forward", "Found", "From", "FromIterator",
"FromResidual", "GlobalAlloc", "Hash", "HashMap", "HashSet",
"Hasher", "InCleanup", "IndexOutput", "Input", "Int",
"Into", "IntoAsyncIterator", "IntoFuture", "IntoIterator",
"IntoIteratorItem", "IoBufReader", "IrTyKind", "Item",
"ItemContext", "Iterator", "IteratorItem", "IteratorMap",
"Layout", "Lifetime", "LintPass", "LocalKey", "Mutex",
"MutexGuard", "Named", "NonZero", "None", "Normal", "Ok",
"Option", "Ord", "Ordering", "Other", "Output", "ParamSet",
"PartialEq", "PartialOrd", "Pending", "PinDerefMutHelper",
"PinMacroHelper", "Pointer", "Poll", "Range", "RangeCopy",
"RangeFrom", "RangeFromCopy", "RangeFull", "RangeInclusive",
"RangeInclusiveCopy", "RangeMax", "RangeMin", "RangeSub",
"RangeTo", "RangeToInclusive", "RangeToInclusiveCopy", "Rc",
"RcWeak", "Ready", "Reborrow", "RefCell", "Reference",
"Relaxed", "Release", "Result", "ResumeTy", "Reverse",
"Rust", "RustEmbed", "RustaceansAreAwesome", "RwLock",
"RwLockReadGuard", "RwLockWriteGuard", "SelfTy", "Send",
"SeqCst", "Sized", "Slice", "SliceIndex", "Some", "Source",
"SpanCtxt", "StdinLock", "Str", "String", "Struct",
"StructuralPartialEq", "SymbolIntern", "Sync",
"SyncUnsafeCell", "Target", "This", "TokenStream",
"TrivialClone", "Try", "TryCaptureGeneric",
"TryCapturePrintable", "TryFrom", "TryInto", "Tuple", "Ty",
"TyCtxt", "TyKind", "Type", "Union", "Unresolved", "Unsize",
"Vec", "Wrapper", "_DECLS", "__H", "__S", "__awaitee",
"__try_var", "_t", "_task_context", "a32", "aarch64",
"aarch64_target_feature", "aarch64_unstable_target_feature",
"aarch64_ver_target_feature", "abi", "abi_amdgpu_kernel",
"abi_avr_interrupt", "abi_c_cmse_nonsecure_call",
"abi_cmse_nonsecure_call", "abi_custom", "abi_efiapi",
"abi_gpu_kernel", "abi_msp430_interrupt", "abi_ptx",
"abi_riscv_interrupt", "abi_swift", "abi_sysv64",
"abi_thiscall", "abi_unadjusted", "abi_vectorcall",
"abi_x86_interrupt", "abort", "add", "add_assign",
"add_with_overflow", "address", "adt_const_params",
"advanced_slice_patterns", "adx_target_feature", "aes",
"aggregate_raw_ptr", "alias", "align", "align_of",
"align_of_val", "alignment", "all", "alloc",
"alloc_error_handler", "alloc_layout", "alloc_zeroed",
"allocator", "allocator_api", "allocator_internals",
"allow", "allow_fail", "allow_internal_unsafe",
"allow_internal_unstable", "altivec", "alu32", "always",
"amdgpu", "amdgpu_dispatch_ptr", "analysis", "and",
"and_then", "anon", "anon_assoc",
"anonymous_lifetime_in_impl_trait", "any",
"apx_target_feature", "arbitrary_enum_discriminant",
"arbitrary_self_types", "arbitrary_self_types_pointers",
"areg", "args", "arith_offset", "arm", "arm64ec",
"arm::a32", "arm::t32", "arm_target_feature", "array",
"as-needed", "as_ref", "asm", "asm_cfg", "asm_const",
"asm_const_ptr", "asm_experimental_arch",
"asm_experimental_reg", "asm_goto", "asm_goto_with_outputs",
"asm_sym", "asm_unwind", "assert", "assert_eq",
"assert_eq_macro", "assert_fields_are_eq",
"assert_inhabited", "assert_macro",
"assert_mem_uninitialized_valid", "assert_ne_macro",
"assert_receiver_is_total_eq", "assert_zero_valid",
"asserting", "associated_const_equality",
"associated_consts", "associated_type_bounds",
"associated_type_defaults", "associated_types", "assume",
"assume_init", "*", "async_await", "async_call",
"async_call_mut", "async_call_once", "async_closure",
"async_drop", "async_drop_in_place", "async_fn",
"async_fn_in_dyn_trait", "async_fn_in_trait",
"async_fn_kind_helper", "async_fn_kind_upvars",
"async_fn_mut", "async_fn_once", "async_fn_once_output",
"async_fn_track_caller", "async_fn_traits",
"async_for_loop", "async_gen_internals", "async_iterator",
"async_iterator_poll_next", "async_trait_bounds", "atomic",
"atomic_and", "atomic_cxchg", "atomic_cxchgweak",
"atomic_fence", "atomic_load", "atomic_max", "atomic_min",
"atomic_nand", "atomic_or", "atomic_singlethreadfence",
"atomic_store", "atomic_umax", "atomic_umin", "atomic_xadd",
"atomic_xchg", "atomic_xor", "atomic_xsub", "atomics",
"att_syntax", "attr", "attr_literals", "attribute",
"attributes", "audit_that", "augmented_assignments",
"auto_cfg", "auto_traits", "autodiff", "autodiff_forward",
"autodiff_reverse", "automatically_derived",
"available_externally", "avr", "avr_target_feature", "avx",
"avx10_target_feature", "avx512_target_feature", "avx512bw",
"avx512f", "await_macro", "backchain", "backend_repr",
"begin_panic", "bench", "bevy_ecs", "bikeshed",
"bikeshed_guaranteed_no_drop", "bin",
"bind_by_move_pattern_guards", "bindings_after_at",
"bitand", "bitand_assign", "bitor", "bitor_assign",
"bitreverse", "bits", "bitxor", "bitxor_assign",
"black_box", "block", "blocking", "bool",
"borrowck_graphviz_format", "borrowck_graphviz_postflow",
"box_new", "box_patterns", "box_syntax", "boxed_slice",
"bpf", "bpf_target_feature", "braced_empty_structs",
"branch", "breakpoint", "breg", "bridge", "bswap", "built",
"builtin_syntax", "bundle", "c_dash_variadic",
"c_str_literals", "c_unwind", "c_variadic",
"c_variadic_experimental_arch",
"c_variadic_naked_functions", "c_void", "call", "call_mut",
"call_once", "call_once_future", "call_ref_future",
"caller", "caller_location", "capture_disjoint_fields",
"carrying_mul_add", "carryless_mul", "catch_unwind",
"cause", "cdylib", "ceilf16", "ceilf32", "ceilf64",
"ceilf128", "cfg", "cfg_accessible", "cfg_attr",
"cfg_attr_multi", "cfg_boolean_literals",
"cfg_contract_checks", "cfg_doctest", "cfg_eval",
"cfg_overflow_checks", "cfg_panic", "cfg_relocation_model",
"cfg_sanitize", "cfg_sanitizer_cfi", "cfg_select",
"cfg_target_abi", "cfg_target_compact",
"cfg_target_feature", "cfg_target_has_atomic",
"cfg_target_has_atomic_equal_alignment",
"cfg_target_has_reliable_f16_f128",
"cfg_target_has_threads", "cfg_target_object_format",
"cfg_target_thread_local", "cfg_target_vendor",
"cfg_ub_checks", "cfg_version", "cfi", "cfi_encoding",
"char", "checked_type_aliases", "clflushopt_target_feature",
"client", "clippy", "clobber_abi", "clone",
"clone_closures", "clone_fn", "clone_from", "close_fn",
"closure", "closure_lifetime_binder",
"closure_to_fn_coercion", "closure_track_caller", "cmp",
"cmp_ord_max", "cmp_ord_min", "cmp_partialeq_eq",
"cmp_partialeq_ne", "cmp_partialord_cmp",
"cmp_partialord_ge", "cmp_partialord_gt",
"cmp_partialord_le", "cmp_partialord_lt",
"cmpxchg16b_target_feature", "cmse_nonsecure_entry", "code",
"coerce_pointee_validated", "coerce_shared",
"coerce_shared_target", "coerce_unsized", "coff", "cold",
"cold_path", "collapse_debuginfo", "column", "common",
"compare_bytes", "compare_exchange",
"compare_exchange_weak", "compile_error", "compiler",
"compiler_builtins", "compiler_copy", "compiler_fence",
"compiler_move", "complex", "concat", "concat_bytes",
"conservative_impl_trait", "console", "const_allocate",
"const_async_blocks", "const_block_items",
"const_c_variadic", "const_closures",
"const_compare_raw_pointers", "const_constructor",
"const_continue", "const_deallocate", "const_destruct",
"const_eval_limit", "const_eval_select",
"const_evaluatable_checked", "const_extern_fn", "const_fn",
"const_fn_floating_point_arithmetic",
"const_fn_fn_ptr_basics", "const_fn_trait_bound",
"const_fn_transmute", "const_fn_union", "const_fn_unsize",
"const_for", "const_format_args", "const_generics",
"const_generics_defaults", "const_if_match",
"const_impl_trait", "const_in_array_repeat_expressions",
"const_indexing", "const_let", "const_loop",
"const_make_global", "const_mut_refs", "const_panic",
"const_panic_fmt", "const_param_ty",
"const_param_ty_unchecked", "const_precise_live_drops",
"const_ptr_cast", "const_raw_ptr_deref",
"const_raw_ptr_to_usize_cast", "const_refs_to_cell",
"const_refs_to_static", "const_trait_bound_opt_out",
"const_trait_impl", "const_try", "<const_ty>", "constant",
"constructor", "contract_build_check_ensures",
"contract_check_ensures", "contract_check_requires",
"contract_checks", "contracts", "contracts_ensures",
"contracts_internals", "contracts_requires", "convert",
"coprocessor", "copy", "copy_closures",
"copy_nonoverlapping", "copysignf16", "copysignf32",
"copysignf64", "copysignf128", "core", "core_panic",
"core_panic_2015_macro", "core_panic_macro", "coroutine",
"coroutine_clone", "coroutine_resume", "coroutine_return",
"coroutine_state", "coroutine_yield", "coroutines", "cos",
"count", "covariant_unsafe_cell", "coverage",
"coverage_attribute", "cr", "crate_in_paths", "crate_local",
"crate_name", "crate_type", "crate_visibility_modifier",
"crt-static", "csky", "csky_target_feature", "cstr_type",
"cstring_type", "ctlz", "ctlz_nonzero", "ctpop", "ctr",
"cttz", "cttz_nonzero", "custom_attribute",
"custom_code_classes_in_docs", "custom_derive",
"custom_inner_attributes", "custom_mir",
"custom_test_frameworks", "d32", "dead_code",
"dead_code_pub_in_binary", "dealloc", "debug",
"debug_assert_eq_macro", "debug_assert_macro",
"debug_assert_ne_macro", "debug_assertions",
"debug_struct_fields_finish", "debug_tuple_fields_finish",
"debugger_visualizer", "decl_macro", "declare_lint_pass",
"decorated", "default_alloc_error_handler",
"default_field_values", "default_fn",
"default_lib_allocator", "default_method_body_is_const",
"default_trait1", "default_trait2", "default_trait3",
"default_trait4", "default_type_parameter_fallback",
"default_type_params", "define_opaque", "deny",
"deprecated", "deprecated_safe", "deprecated_suggestion",
"deref", "deref_method", "deref_mut", "deref_patterns",
"deref_pure", "deref_target", "derive", "derive_const",
"118304", "derive_default_enum", "derive_from",
"derive_smart_pointer", "destruct",
"destructuring_assignment", "diagnostic",
"diagnostic_namespace", "diagnostic_on_const",
"diagnostic_on_move", "diagnostic_on_type_error",
"diagnostic_on_unknown", "diagnostic_on_unmatch_args",
"diagnostic_on_unmatched_args", "diagnostic_opaque",
"dialect", "direct", "direct_const_arg",
"discriminant_kind", "discriminant_type",
"discriminant_value", "disjoint_bitor", "dispatch_from_dyn",
"div", "div_assign", "diverging_block_default", "dl",
"do_not_recommend", "doc", "doc_alias", "doc_auto_cfg",
"doc_cfg", "doc_cfg_hide", "doc_keyword", "doc_masked",
"doc_notable_trait", "doc_primitive", "doc_spotlight",
"doctest", "dotdot_in_tuple_patterns",
"dotdoteq_in_patterns", "dreg", "dreg_low8", "dreg_low16",
"drop", "drop_glue", "drop_in_place", "drop_types_in_const",
"dropck_eyepatch", "dropck_parametricity", "<!dummy!>",
"dummy_cgu_name", "dylib", "dyn_compatible_for_dispatch",
"dyn_metadata", "dyn_star", "dyn_trait", "dynamic-no-pic",
"edition_panic", "effective_target_features", "effects",
"eh_personality", "eii", "eii_declaration", "eii_internals",
"eii_shared_macro", "element_ty", "elf", "", "{}", "[]",
"()", "enable", "end", "entry_nops", "env", "eq",
"ergonomic_clones", "ermsb_target_feature", "exact_div",
"except", "exception", "exception-handling",
"exclusive_range_pattern", "exhaustive_integer_patterns",
"exhaustive_patterns", "existential_type", "exists", "exp",
"exp2", "expand1", "expand2", "expect", "expected",
"explicit_extern_abis",
"explicit_generic_args_with_impl_trait",
"explicit_tail_calls", "export_name", "export_stable",
"export-symbols", "expr", "expr_2021",
"expr_fragment_specifier_2024",
"extended_key_value_attributes",
"extended_varargs_abi_support", "extendedl32r",
"extern_absolute_paths", "extern_crate_item_prelude",
"extern_crate_self", "extern_in_paths", "extern_item_impls",
"extern_prelude", "extern_system_varargs", "extern_types",
"extern_weak", "external", "external_doc", "f16", "f16_nan",
"f16c_target_feature", "f32", "f32_nan", "f64", "f64_nan",
"f128", "f128_nan", "fabs", "fadd_algebraic", "fadd_fast",
"fake_variadic", "fallback", "fdiv_algebraic", "fdiv_fast",
"feature", "fence", "🦀", "fetch_update", "ffi_const",
"ffi_pure", "ffi_returns_twice", "ffr", "field",
"field_base", "field_init_shorthand", "field_of",
"field_offset", "field_projections",
"field_representing_type",
"field_representing_type_actual_type_id",
"field_representing_type_name",
"field_representing_type_offset",
"field_representing_type_raw", "field_type", "fields",
"file", "final_associated_functions",
"float_to_int_unchecked", "floorf16", "floorf32",
"floorf64", "floorf128", "fma4_target_feature", "fmaf16",
"fmaf32", "fmaf64", "fmaf128", "fmt", "fmt_debug",
"fmul_algebraic", "fmul_fast", "fmuladdf16", "fmuladdf32",
"fmuladdf64", "fmuladdf128", "fn_align", "fn_body",
"fn_delegation", "fn_must_use", "fn_mut", "fn_once",
"fn_once_output", "fn_ptr_as_ptr", "fn_ptr_from_ptr",
"fn_ptr_trait", "fn_static", "forall", "forbid",
"force_target_feature", "forget", "format_args",
"format_args_capture", "format_args_nl", "format_argument",
"format_arguments", "format_macro", "format_placeholder",
"format_unsafe_arg", "fp", "fpregs", "framework", "freeze",
"freeze_impls", "freg", "frem_algebraic", "frem_fast",
"from", "from_desugaring", "from_iter", "from_output",
"from_residual", "from_size_align_unchecked",
"from_size_alignment_unchecked", "from_str",
"from_str_nonconst", "from_usize", "from_yeet",
"frontmatter", "fsub_algebraic", "fsub_fast", "full",
"fundamental", "fused_iterator", "future_output",
"future_trait", "fxsr", "gdb_script_file", "ge",
"gen_blocks", "gen_future", "generator_clone", "generators",
"generic_arg_infer", "generic_assert",
"generic_associated_types",
"generic_associated_types_extended", "generic_const_args",
"generic_const_exprs", "generic_const_items",
"generic_const_parameter_types", "generic_param_attrs",
"generic_pattern_types", "generics", "get_context",
"global_alloc_ty", "global_allocator", "global_asm",
"global_registration", "globs", "gpu-kernel",
"gpu_launch_sized_workgroup_mem", "gt", "guard",
"guard_patterns", "half_open_range_patterns",
"half_open_range_patterns_in_slices", "hash", "hexagon",
"hexagon_target_feature", "hidden", "hide",
"highpriinterrupts", "hint", "homogeneous_aggregate",
"html_favicon_url", "html_logo_url", "html_no_source",
"html_playground_url", "html_root_url", "hvx",
"hvx-length64b", "hvx-length128b", "hwaddress", "i8", "i16",
"i32", "i64", "i128", "i128_type", "ident", "if_let",
"if_let_guard", "if_let_rescope", "if_while_or_patterns",
"ignore", "immediate-abort", "impl_header_lifetime_elision",
"impl_lint_pass", "impl_restriction",
"impl_trait_in_assoc_type", "impl_trait_in_bindings",
"impl_trait_in_fn_trait_return", "impl_trait_projections",
"implied_by", "import", "import_name_type",
"import_shadowing", "import_trait_associated_functions",
"imported_main", "in_band_lifetimes", "include",
"include_bytes", "include_str", "inclusive_range_syntax",
"incomplete_features", "index", "index_mut",
"infer_outlives_requirements",
"infer_static_outlives_requirements",
"inherent_associated_types", "initial", "inlateout",
"inline", "inline_const", "inline_const_pat", "inout",
"inputs", "instruction_set", "instrument_fn", "integer",
"integer_max", "integer_min", "integral", "internal",
"internal_eq_trait_method_impls", "internal_features",
"interrupt", "into_async_iter_into_iter", "into_future",
"into_iter", "into_try_type", "intra_doc_pointers",
"intrinsics", "irrefutable_let_patterns", "is", "is_auto",
"is_splatted", "is_val_statically_known", "isa_attribute",
"isize", "issue", "issue_5723_bootstrap",
"issue_tracker_base_url", "item", "item_like_imports",
"iter", "iter_mut", "iterator", "iterator_collect_fn",
"kcfi", "kernel_address", "kernel_hwaddress",
"keylocker_x86", "keyword", "kind", "kreg", "kreg0",
"label", "label_break_value", "lahfsahf_target_feature",
"lang", "lang_items", "large_assignments", "largest_niche",
"last", "lasx", "late_bound_turbofishing", "lateout",
"lazy_normalization_consts", "lazy_type_alias", "le",
"legacy_receiver", "len", "let_chains", "let_else", "lhs",
"lib", "libc", "lifetime", "lifetime_capture_rules_2024",
"lifetimes", "line", "link", "link_arg_attribute",
"link_args", "link_cfg", "link-arg", "link_llvm_intrinsics",
"link_name", "link_ordinal", "link_section", "linkage",
"linker", "linker_info", "linker_messages", "linkonce",
"linkonce_odr", "lint_reasons", "literal", "little", "big",
"load", "loaded_from_disk", "local", "local_inner_macros",
"log", "log2", "log10", "log_syntax", "loongarch32",
"loongarch64", "loongarch_target_feature",
"loop_break_value", "loop_hints", "loop_match", "lr", "lsx",
"lt", "m68k", "m68k_target_feature", "mac16", "mach-o",
"macro_at_most_once_rep", "macro_attr",
"macro_attributes_in_derive_output", "macro_derive",
"macro_escape", "macro_export", "macro_guard_matcher",
"macro_lifetime_matcher", "macro_literal_matcher",
"macro_metavar_expr", "macro_metavar_expr_concat",
"macro_reexport", "macro_use", "macro_vis_matcher",
"macroless_generic_const_args", "macros_in_extern", "main",
"managed_boxes", "manually_drop", "map", "map_err",
"marker", "marker_trait_attr", "masked",
"match_beginning_vert", "match_default_bindings",
"maximum_number_nsz_f16", "maximum_number_nsz_f32",
"maximum_number_nsz_f64", "maximum_number_nsz_f128",
"maximumf16", "maximumf32", "maximumf64", "maximumf128",
"may_dangle", "may_unwind", "maybe_dangling",
"maybe_uninit", "maybe_uninit_uninit",
"maybe_uninit_zeroed", "mem", "mem_align_const",
"mem_discriminant", "mem_drop", "mem_forget",
"mem_size_const", "mem_swap", "mem_uninitialized",
"mem_variant_count", "mem_zeroed", "member_constraints",
"memory", "memtag", "message", "meta", "meta_sized",
"metadata_type", "mgca_type_const_syntax",
"min_adt_const_params", "min_const_fn",
"min_const_generics", "min_const_unsafe_fn",
"min_exhaustive_patterns", "min_generic_const_args",
"min_specialization", "min_type_alias_impl_trait",
"minimum_number_nsz_f16", "minimum_number_nsz_f32",
"minimum_number_nsz_f64", "minimum_number_nsz_f128",
"minimumf16", "minimumf32", "minimumf64", "minimumf128",
"mips", "mips32r6", "mips64", "mips64r6",
"mips_target_feature", "mir_assume", "mir_basic_block",
"mir_call", "mir_cast_ptr_to_ptr", "mir_cast_transmute",
"mir_cast_unsize", "mir_checked", "mir_debuginfo",
"mir_discriminant", "mir_drop", "mir_field", "mir_goto",
"mir_make_place", "mir_move", "mir_offset",
"mir_ptr_metadata", "mir_return", "mir_return_to",
"mir_set_discriminant", "mir_static", "mir_static_mut",
"mir_storage_dead", "mir_storage_live", "mir_tail_call",
"mir_unreachable", "mir_unwind_cleanup",
"mir_unwind_continue", "mir_unwind_resume",
"mir_unwind_terminate", "mir_unwind_terminate_reason",
"mir_unwind_unreachable", "mir_variant", "miri", "misc",
"miscsr", "mmx_reg", "modifiers", "module", "module_path",
"more_maybe_bounds", "more_qualified_paths",
"more_struct_aliases", "movbe_target_feature", "move_expr",
"move_ref_pattern", "move_size_limit",
"movrs_target_feature", "msa", "msp430", "mul",
"mul_assign", "mul_with_overflow",
"multiple_supertrait_upcastable", "must_not_suspend",
"must_use", "mut_preserve_binding_mode_2024", "mut_ref",
"mut_restriction", "mutable", "naked", "naked_asm",
"naked_functions", "naked_functions_rustic_abi",
"naked_functions_target_feature", "name",
"named_fn_trait_parameters", "names",
"native_link_modifiers", "native_link_modifiers_as_needed",
"native_link_modifiers_bundle",
"native_link_modifiers_verbatim",
"native_link_modifiers_whole_archive", "natvis_file", "ne",
"needs_allocator", "needs_drop", "needs_panic_runtime",
"neg", "negate_unsigned", "negative_bounds",
"negative_impls", "neon", "nested", "never",
"never_patterns", "never_type", "never_type_fallback",
"new", "new_binary", "new_debug", "new_debug_noop",
"new_display", "new_lower_exp", "new_lower_hex",
"new_octal", "new_pointer", "new_range", "new_unchecked",
"new_upper_exp", "new_upper_hex", "next", "niko", "nll",
"no", "no_builtins", "no_core", "no_coverage",
"no_crate_inject", "no_debug", "no_default_passes",
"no_implicit_prelude", "no_inline", "no_link", "no_main",
"no_mangle", "no_sanitize", "no_stack_check", "no_std",
"nomem", "non_ascii_idents", "non_exhaustive",
"non_exhaustive_omitted_patterns_lint",
"non_lifetime_binders", "non_modrs_mods", "non_null",
"nonblocking", "none", "nontemporal_store",
"noop_method_borrow", "noop_method_clone",
"noop_method_deref", "noprefix", "noreturn", "nostack",
"not", "notable_trait", "note", "null", "nvptx64",
"nvptx_target_feature", "object_safe_for_dispatch", "of",
"off", "offload", "offload_get_num_devices",
"offload_kernel", "offset", "offset_of", "offset_of_enum",
"offset_of_nested", "offset_of_slice", "ok_or_else",
"old_name", "omit_gdb_pretty_printer_section", "on",
"on_const", "on_move", "on_type_error", "on_unimplemented",
"on_unknown", "on_unmatched_args", "opaque", "<opaque>",
"ops", "opt_out_copy", "optimize", "optimize_attribute",
"optimized", "optin_builtin_traits", "option", "option_env",
"options", "or", "or_patterns", "ord_cmp_method", "other",
"out", "output", "overflow_checks",
"overlapping_marker_traits", "owned_box", "packed",
"packed_bundled_libs", "panic", "panic_2015", "panic_2021",
"panic_abort", "panic_bounds_check", "panic_cannot_unwind",
"panic_const_add_overflow", "panic_const_async_fn_resumed",
"panic_const_async_fn_resumed_drop",
"panic_const_async_fn_resumed_panic",
"panic_const_async_gen_fn_resumed",
"panic_const_async_gen_fn_resumed_drop",
"panic_const_async_gen_fn_resumed_panic",
"panic_const_coroutine_resumed",
"panic_const_coroutine_resumed_drop",
"panic_const_coroutine_resumed_panic",
"panic_const_div_by_zero", "panic_const_div_overflow",
"panic_const_gen_fn_none", "panic_const_gen_fn_none_drop",
"panic_const_gen_fn_none_panic", "panic_const_mul_overflow",
"panic_const_neg_overflow", "panic_const_rem_by_zero",
"panic_const_rem_overflow", "panic_const_shl_overflow",
"panic_const_shr_overflow", "panic_const_sub_overflow",
"panic_display", "panic_fmt", "panic_handler", "panic_impl",
"panic_implementation", "panic_in_cleanup", "panic_info",
"panic_invalid_enum_construction", "panic_location",
"panic_misaligned_pointer_dereference", "panic_nounwind",
"panic_null_pointer_dereference",
"panic_null_reference_constructed", "panic_runtime",
"panic_str_2015", "panic_unwind", "panicking",
"param_attrs", "parent_label", "partial_cmp", "partial_ord",
"passes", "pat", "pat_param", "patchable_function_entry",
"path", "pattern_complexity_limit", "pattern_parentheses",
"pattern_type", "pattern_type_range_trait", "pattern_types",
"phantom_data", "phase", "pic", "pie", "pin_drop",
"pin_ergonomics", "pin_v2", "platform_intrinsics", "plugin",
"plugin_registrar", "plugins", "pointee", "pointee_sized",
"pointee_trait", "pointer", "poll", "post-cleanup",
"post-lto", "postfix_match", "powerpc", "powerpc64",
"powerpc_target_feature", "powf16", "powf32", "powf64",
"powf128", "powif16", "powif32", "powif64", "powif128",
"pre-lto", "precise_capturing",
"precise_capturing_in_traits",
"precise_pointer_size_matching", "predicates",
"pref_align_of", "prefetch_read_data",
"prefetch_read_instruction", "prefetch_write_data",
"prefetch_write_instruction", "prefix_nops", "preg",
"prelude", "prelude_import", "preserves_flags",
"prfchw_target_feature", "prid", "primitive", "proc-macro",
"proc_macro", "proc_macro_attribute", "proc_macro_derive",
"proc_macro_expr", "proc_macro_gen", "proc_macro_hygiene",
"proc_macro_internals", "proc_macro_mod",
"proc_macro_non_items", "proc_macro_path_invoc",
"profiler_runtime", "ptr", "ptr_cast", "ptr_cast_const",
"ptr_cast_mut", "ptr_const_is_null", "ptr_copy",
"ptr_copy_nonoverlapping", "ptr_drop_in_place",
"ptr_drop_in_place_self", "ptr_from_ref",
"ptr_guaranteed_cmp", "ptr_is_null", "ptr_mask",
"ptr_metadata", "ptr_null", "ptr_null_mut",
"ptr_offset_from", "ptr_offset_from_unsigned", "ptr_read",
"ptr_read_unaligned", "ptr_replace", "ptr_swap",
"ptr_swap_nonoverlapping", "ptr_write", "ptr_write_bytes",
"ptr_write_unaligned", "ptr_write_volatile",
"pub_macro_rules", "pub_restricted", "public", "pure",
"pushpop_unsafe", "qreg", "qreg_low4", "qreg_low8",
"quad_precision_float", "question_mark", "quote",
"range_inclusive_new", "raw-dylib", "raw_dylib",
"raw_dylib_elf", "raw_eq", "raw_identifiers", "raw_ref_op",
"re_rebalance_coherence", "read_via_copy", "readonly",
"realloc", "realtime", "reason", "reborrow", "receiver",
"receiver_target", "recursion_limit",
"reexport_test_harness_main", "ref_pat_eat_one_layer_2024",
"ref_pat_eat_one_layer_2024_structural",
"ref_pat_everywhere", "ref_unwind_safe_trait", "reference",
"reflect", "reg", "reg16", "reg32", "reg64", "reg_abcd",
"reg_addr", "reg_byte", "reg_data", "reg_iw", "reg_nonzero",
"reg_pair", "reg_ptr", "reg_upper", "register_attr",
"register_attribute_tool", "register_lint_tool",
"register_tool", "relaxed_adts", "relaxed_struct_unsize",
"relocation_model", "rem", "rem_assign", "repr", "repr128",
"repr_align", "repr_align_enum", "repr_packed", "repr_simd",
"repr_transparent", "require", "reserve-x18", "residual",
"result", "result_ffi_guarantees", "return_address",
"return_position_impl_trait_in_trait",
"return_type_notation", "->", "riscv32", "riscv64",
"riscv_target_feature", "rlib", "ropi", "ropi-rwpi",
"rotate_left", "rotate_right", "round_ties_even_f16",
"round_ties_even_f32", "round_ties_even_f64",
"round_ties_even_f128", "roundf16", "roundf32", "roundf64",
"roundf128", "rtm_target_feature", "runtime", "rust",
"rust_2015", "rust_2018", "rust_2018_preview", "rust_2021",
"rust_2024", "rust_analyzer", "rust_begin_unwind",
"rust_cold_cc", "rust-call", "rust_eh_personality",
"rust_future", "rust_logo", "rust_out",
"rust_preserve_none_cc", "rust_tail_cc", "rustc",
"rustc_abi", "rustc_align", "rustc_align_static",
"rustc_allocator", "rustc_allocator_zeroed",
"rustc_allocator_zeroed_variant",
"rustc_allow_const_fn_unstable",
"rustc_allow_incoherent_impl",
"rustc_allow_lifetime_dependent_specialization",
"rustc_allowed_through_unstable_modules", "rustc_as_ptr",
"rustc_attrs", "rustc_autodiff", "rustc_builtin_macro",
"rustc_canonical_symbol", "rustc_capture_analysis",
"rustc_clean", "rustc_coherence_is_core",
"rustc_coinductive", "rustc_comptime", "rustc_confusables",
"rustc_const_stable", "rustc_const_stable_indirect",
"rustc_const_unstable", "rustc_conversion_suggestion",
"rustc_deallocator", "rustc_default_body_unstable",
"rustc_delayed_bug_from_inside_query",
"rustc_deny_explicit_impl", "rustc_deprecated_safe_2024",
"rustc_diagnostic_item", "rustc_diagnostic_macros",
"rustc_diagnostic_opaque", "rustc_do_not_const_check",
"rustc_doc_primitive", "rustc_driver", "rustc_dummy",
"rustc_dump_clauses", "rustc_dump_def_parents",
"rustc_dump_def_path", "rustc_dump_generics",
"rustc_dump_hidden_type_of_opaques",
"rustc_dump_inferred_outlives", "rustc_dump_item_bounds",
"rustc_dump_layout", "rustc_dump_object_lifetime_defaults",
"rustc_dump_symbol_name", "rustc_dump_user_args",
"rustc_dump_variances", "rustc_dump_variances_of_opaques",
"rustc_dump_vtable", "rustc_dyn_incompatible_trait",
"rustc_effective_visibility", "rustc_eii_foreign_item",
"rustc_evaluate_where_clauses", "rustc_expected_cgu_reuse",
"rustc_force_inline", "rustc_has_incoherent_inherent_impls",
"rustc_if_this_changed", "rustc_inherit_overflow_checks",
"rustc_insignificant_dtor", "rustc_intrinsic",
"rustc_intrinsic_const_stable_indirect",
"rustc_legacy_const_generics",
"rustc_lint_opt_deny_field_access", "rustc_lint_opt_ty",
"rustc_lint_query_instability",
"rustc_lint_untracked_query_information",
"rustc_macro_transparency", "rustc_main", "rustc_mir",
"rustc_must_implement_one_of",
"rustc_must_match_exhaustively",
"rustc_never_returns_null_ptr",
"rustc_no_implicit_autorefs", "rustc_no_implicit_bounds",
"rustc_no_mir_inline", "rustc_no_writable",
"rustc_non_const_trait_method",
"rustc_nonnull_optimization_guaranteed", "rustc_nounwind",
"rustc_objc_class", "rustc_objc_selector",
"rustc_offload_kernel", "rustc_on_unimplemented",
"rustc_panics_when_zero", "rustc_paren_sugar",
"rustc_partition_codegened", "rustc_partition_reused",
"rustc_pass_by_value",
"rustc_pass_indirectly_in_non_rustic_abis", "rustc_peek",
"rustc_peek_liveness", "rustc_peek_maybe_init",
"rustc_peek_maybe_uninit", "rustc_preserve_ub_checks",
"rustc_private", "rustc_proc_macro_decls",
"rustc_promotable", "rustc_pub_transparent",
"rustc_reallocator", "rustc_regions",
"rustc_scalable_vector",
"rustc_should_not_be_called_on_const_items",
"rustc_simd_monomorphize_lane_limit",
"rustc_skip_during_method_dispatch",
"rustc_specialization_trait", "rustc_splat",
"rustc_std_internal_symbol", "rustc_strict_coherence",
"rustc_test_marker", "rustc_then_this_would_need",
"rustc_trivial_field_reads", "rustc_unroll", "rustdoc",
"rustdoc_internals", "rustdoc_missing_doc_code_examples",
"rustfmt", "rvalue_static_promotion", "rvector", "rwpi",
"s32c1i", "s390x", "s390x_target_feature",
"s390x_target_feature_vector", "safestack", "safety",
"sanitize", "sanitizer_cfi_generalize_pointers",
"sanitizer_cfi_normalize_integers", "sanitizer_runtime",
"saturating_add", "saturating_sub", "sdylib",
"search_unbox", "section", "select_unpredictable",
"self_in_typedefs", "self_struct_ctor", "semiopaque",
"sgpr32", "sgpr64", "sgpr96", "sgpr128", "sgpr256",
"sgpr512", "sha2", "sha3", "sha512_sm_x86",
"shadow_call_stack", "shallow", "shl", "shl_assign",
"shorter_tail_lifetimes", "should_panic", "show", "shr",
"shr_assign", "signed", "simd", "simd_add", "simd_and",
"simd_arith_offset", "simd_as", "simd_bitmask",
"simd_bitreverse", "simd_bswap", "simd_carryless_mul",
"simd_cast", "simd_cast_ptr", "simd_ceil", "simd_ctlz",
"simd_ctpop", "simd_cttz", "simd_div", "simd_eq",
"simd_expose_provenance", "simd_extract",
"simd_extract_dyn", "simd_fabs", "simd_fcos", "simd_fexp",
"simd_fexp2", "simd_ffi", "simd_flog", "simd_flog2",
"simd_flog10", "simd_floor", "simd_fma", "simd_fsin",
"simd_fsqrt", "simd_funnel_shl", "simd_funnel_shr",
"simd_gather", "simd_ge", "simd_gt", "simd_insert",
"simd_insert_dyn", "simd_le", "simd_lt", "simd_masked_load",
"simd_masked_store", "simd_maximum_number_nsz",
"simd_minimum_number_nsz", "simd_mul", "simd_ne",
"simd_neg", "simd_or", "simd_reduce_add_ordered",
"simd_reduce_add_unordered", "simd_reduce_all",
"simd_reduce_and", "simd_reduce_any", "simd_reduce_max",
"simd_reduce_min", "simd_reduce_mul_ordered",
"simd_reduce_mul_unordered", "simd_reduce_or",
"simd_reduce_xor", "simd_relaxed_fma", "simd_rem",
"simd_round", "simd_round_ties_even", "simd_saturating_add",
"simd_saturating_sub", "simd_scatter", "simd_select",
"simd_select_bitmask", "simd_shl", "simd_shr",
"simd_shuffle", "simd_shuffle_const_generic", "simd_splat",
"simd_sub", "simd_trunc", "simd_with_exposed_provenance",
"simd_xor", "sin", "since", "size", "size_of",
"size_of_type_id", "size_of_val", "sized",
"sized_hierarchy", "slice", "slice_from_raw_parts",
"slice_from_raw_parts_mut", "slice_get_unchecked",
"slice_len_fn", "slice_patterns", "slicing_syntax",
"soft-float", "sparc", "sparc64", "sparc_target_feature",
"spe_acc", "specialization", "speed", "spirv", "splat",
"splatted_index", "spotlight", "sqrtf16", "sqrtf32",
"sqrtf64", "sqrtf128", "sreg", "sreg_low16", "sse", "sse2",
"sse4a_target_feature", "stable", "staged_api", "start",
"state", "static_align", "static_in_const",
"static_nobundle", "static_recursion", "staticlib", "std",
"std_lib_injection", "std_panic", "std_panic_2015_macro",
"std_panic_macro", "stmt", "stmt_expr_attributes",
"stop_after_dataflow", "store", "str", "str_from_utf8",
"str_from_utf8_mut", "str_from_utf8_unchecked",
"str_from_utf8_unchecked_mut", "str_inherent_from_utf8",
"str_inherent_from_utf8_mut",
"str_inherent_from_utf8_unchecked",
"str_inherent_from_utf8_unchecked_mut",
"strict_provenance_lints", "string_deref_patterns",
"stringify", "struct_field_attributes", "struct_inherit",
"struct_variant", "structural_match", "structural_peq",
"sub", "sub_assign", "sub_with_overflow", "suggestion",
"super_let", "supertrait_item_shadowing", "sve", "sve_cast",
"sve_tuple_create2", "sve_tuple_create3",
"sve_tuple_create4", "sve_tuple_get", "sve_tuple_set",
"sym", "sync", "synthetic", "t32", "target", "target_abi",
"target_arch", "target_endian", "target_env",
"target_family", "target_feature", "target_feature_11",
"target_feature_inline_always", "target_has_atomic",
"target_has_atomic_load_store",
"target_has_atomic_primitive_alignment",
"target_has_reliable_f16", "target_has_reliable_f16_math",
"target_has_reliable_f128", "target_has_reliable_f128_math",
"target_has_threads", "target_object_format", "target_os",
"target_pointer_width", "target_thread_local",
"target_vendor", "tbm_target_feature", "termination",
"termination_trait", "termination_trait_test", "test",
"test_2018_feature", "test_accepted_feature",
"test_binder_constraints", "test_case",
"test_incomplete_feature", "test_removed_feature",
"test_runner", "test_unstable_lint", "thread",
"thread_local", "threadptr", "three_way_compare", "thumb2",
"thumb-mode", "time", "tmm_reg", "to_owned_method",
"to_string", "to_vec", "tool_attributes", "tool_lints",
"trace_macros", "track_caller", "trait_alias", "trait_ty",
"trait_upcasting", "transmute", "transmute_generic_consts",
"transmute_opts", "transmute_trait", "transmute_unchecked",
"transparent", "transparent_enums", "transparent_unions",
"trivial_bounds", "trivial_clone", "truncf16", "truncf32",
"truncf64", "truncf128", "try_as_dyn", "try_blocks",
"try_blocks_heterogeneous", "try_capture", "try_from",
"try_into", "try_trait_v2", "try_trait_v2_residual",
"try_update", "tt", "tuple", "tuple_indexing",
"tuple_trait", "two_phase", "ty",
"type_alias_enum_variants", "type_alias_impl_trait",
"type_ascribe", "type_ascription",
"type_changing_struct_update", "type_id", "type_id_eq",
"type_id_field_representing_type", "type_id_fields",
"type_id_generics", "type_id_is_signed", "type_id_variants",
"type_id_vtable", "type_info", "type_info_generic",
"type_ir", "type_ir_infer_ctxt_like", "type_ir_inherent",
"type_ir_interner", "type_length_limit", "type_macros",
"type_name", "type_of", "type_privacy_lints",
"typed_swap_nonoverlapping", "u8", "u8_legacy_const_max",
"u8_legacy_const_min", "u8_legacy_fn_max_value",
"u8_legacy_fn_min_value", "u8_legacy_mod", "u16",
"u16_legacy_const_max", "u16_legacy_const_min",
"u16_legacy_fn_max_value", "u16_legacy_fn_min_value",
"u16_legacy_mod", "u32", "u32_legacy_const_max",
"u32_legacy_const_min", "u32_legacy_fn_max_value",
"u32_legacy_fn_min_value", "u32_legacy_mod", "u64",
"u64_legacy_const_max", "u64_legacy_const_min",
"u64_legacy_fn_max_value", "u64_legacy_fn_min_value",
"u64_legacy_mod", "u128", "u128_legacy_const_max",
"u128_legacy_const_min", "u128_legacy_fn_max_value",
"u128_legacy_fn_min_value", "u128_legacy_mod", "ub_checks",
"unaligned_volatile_load", "unaligned_volatile_store",
"unboxed_closures", "unchecked_add", "unchecked_div",
"unchecked_funnel_shl", "unchecked_funnel_shr",
"unchecked_mul", "unchecked_rem", "unchecked_shl",
"unchecked_shr", "unchecked_sub", "undecorated",
"underscore_const_names", "underscore_imports",
"underscore_lifetimes", "uniform_paths", "unimplemented",
"unit", "universal_impl_trait", "unix", "unlikely",
"unmarked_api", "unnamed_enum_variants", "unnamed_fields",
"unpin", "unqualified_local_imports", "unreachable",
"unreachable_2015", "unreachable_2015_macro",
"unreachable_2021", "unreachable_code",
"unreachable_display", "unreachable_macro",
"unrestricted_attribute_tokens", "unsafe_attributes",
"unsafe_binders", "unsafe_block_in_unsafe_fn",
"unsafe_cell", "unsafe_cell_raw_get", "unsafe_eii",
"unsafe_extern_blocks", "unsafe_fields",
"unsafe_no_drop_flag", "unsafe_pinned", "unsafe_unpin",
"unsafety", "unsize", "unsized_const_param_ty",
"unsized_const_params", "unsized_fn_params",
"unsized_locals", "unsized_tuple_coercion", "unstable",
"unstable_feature_bound",
"this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?",
"unstable_removed", "untagged_unions", "unused_imports",
"unwind", "unwind_attributes", "unwind_safe_trait",
"unwrap", "unwrap_binder", "unwrap_or", "update",
"use_cloned", "use_extern_macros", "use_nested_groups",
"used", "used_with_arg", "using", "usize",
"usize_legacy_const_max", "usize_legacy_const_min",
"usize_legacy_fn_max_value", "usize_legacy_fn_min_value",
"usize_legacy_mod", "v1", "v8plus", "v9", "va_arg",
"va_arg_safe", "va_copy", "va_end", "va_list", "val",
"validity", "value", "values", "var", "variadic",
"variant_count", "variant_name", "variant_non_exhaustive",
"variants", "vec", "vector", "verbatim", "version", "vfp2",
"vgpr16", "vgpr32", "vgpr64", "vgpr96", "vgpr128",
"vgpr160", "vgpr192", "vgpr224", "vgpr256", "vgpr288",
"vgpr320", "vgpr352", "vgpr384", "vgpr512", "vgpr1024",
"view_type", "view_types", "vis", "visible_private_types",
"volatile", "volatile_copy_memory",
"volatile_copy_nonoverlapping_memory", "volatile_load",
"volatile_set_memory", "volatile_store", "vreg",
"vreg_low16", "vreg_pair", "vsreg", "vsx", "vtable_align",
"vtable_size", "warn", "wasip2", "wasm", "wasm32", "wasm64",
"wasm_abi", "wasm_import_module", "wasm_target_feature",
"weak", "weak_odr", "where_clause_attrs", "while_let",
"whole-archive", "width", "windowed", "windows",
"windows_subsystem", "with_negative_coherence",
"wrap_binder", "wrapping_add", "wrapping_div",
"wrapping_mul", "wrapping_rem", "wrapping_rem_euclid",
"wrapping_sub", "wreg", "write_box_via_move", "write_bytes",
"write_fmt", "write_macro", "write_str", "write_via_move",
"writeln_macro", "x86", "x86_64", "x86_amx_intrinsics",
"x87_reg", "x87_target_feature", "xcoff", "xer", "xloop",
"xmm_reg", "xop_target_feature", "xreg", "xtensa",
"xtensa_target_feature", "yeet_desugar_details",
"yeet_expr", "yes", "yield_expr", "ymm_reg", "yreg", "zca",
"zfh", "zfhmin", "zmm_reg", "ztso", "0", "1", "2", "3", "4",
"5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S",
"T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e",
"f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q",
"r", "s", "t", "u", "v", "w", "x", "y", "z",
"1.100.0-nightly"], extra_symbols)
}
}symbols! {
23 Keywords {
32 DollarCrate: "$crate",
38 PathRoot: "{{root}}",
39 Underscore: "_",
40 As: "as",
46 Break: "break",
47 Const: "const",
48 Continue: "continue",
49 Crate: "crate",
50 Else: "else",
51 Enum: "enum",
52 Extern: "extern",
53 False: "false",
54 Fn: "fn",
55 For: "for",
56 If: "if",
57 Impl: "impl",
58 In: "in",
59 Let: "let",
60 Loop: "loop",
61 Match: "match",
62 Mod: "mod",
63 Move: "move",
64 Mut: "mut",
65 Pub: "pub",
66 Ref: "ref",
67 Return: "return",
68 SelfLower: "self",
69 SelfUpper: "Self",
70 Static: "static",
71 Struct: "struct",
72 Super: "super",
73 Trait: "trait",
74 True: "true",
75 Type: "type",
76 Unsafe: "unsafe",
77 Use: "use",
78 Where: "where",
79 While: "while",
80 Abstract: "abstract",
86 Become: "become",
87 Box: "box",
88 Do: "do",
89 Final: "final",
90 Macro: "macro",
91 Override: "override",
92 Priv: "priv",
93 Typeof: "typeof",
94 Unsized: "unsized",
95 Virtual: "virtual",
96 Yield: "yield",
97 Async: "async", Await: "await", Dyn: "dyn", Gen: "gen", Try: "try", StaticLifetime: "'static",
120 UnderscoreLifetime: "'_",
121 Auto: "auto",
127 Builtin: "builtin",
128 Catch: "catch",
129 ContractEnsures: "contract_ensures",
130 ContractRequires: "contract_requires",
131 Default: "default",
132 MacroRules: "macro_rules",
133 Pin: "pin",
134 Raw: "raw",
135 Reuse: "reuse",
136 Safe: "safe",
137 Union: "union",
138 Yeet: "yeet",
139 }
141
142 Symbols {
156 Abi,
158 AcqRel,
159 Acquire,
160 Active,
161 ActiveOnly,
162 Alignment,
163 Arc,
164 ArcWeak,
165 Array,
166 AsMut,
167 AsRef,
168 AssertParamIsClone,
169 AssertParamIsCopy,
170 AssertParamIsEq,
171 AsyncGenFinished,
172 AsyncGenPending,
173 AsyncGenReady,
174 Atomic,
175 BTreeMap,
176 Bool,
177 Borrow,
178 BorrowMut,
179 Break,
180 BuildHasher,
181 CStr,
182 CallOnceFuture,
183 CallRefFuture,
184 Capture,
185 Cell,
186 Char,
187 Cleanup,
188 Client,
189 Clone,
190 CoercePointee,
191 CoercePointeeValidated,
192 CoerceShared,
193 CoerceUnsized,
194 Const,
195 ConstParamTy,
196 ConstParamTy_,
197 Context,
198 Continue,
199 ControlFlow,
200 Copy,
201 Cow,
202 Debug,
203 Default,
204 Deref,
205 DispatchFromDyn,
206 Display,
207 Dual,
208 DualOnly,
209 Dualv,
210 DualvOnly,
211 Duplicated,
212 DuplicatedOnly,
213 DynTrait,
214 Enum,
215 Eq,
216 Equal,
217 Err,
218 Expected,
219 ExternC,
220 ExternRust,
221 Float,
222 FmtArgumentsNew,
223 Fn,
224 FnMut,
225 FnOnce,
226 FnPtr,
227 Formatter,
228 Forward,
229 Found,
230 From,
231 FromIterator,
232 FromResidual,
233 GlobalAlloc,
234 Hash,
235 HashMap,
236 HashSet,
237 Hasher,
238 InCleanup,
239 IndexOutput,
240 Input,
241 Int,
242 Into,
243 IntoAsyncIterator,
244 IntoFuture,
245 IntoIterator,
246 IntoIteratorItem,
247 IoBufReader,
248 IrTyKind,
249 Item,
250 ItemContext,
251 Iterator,
252 IteratorItem,
253 IteratorMap,
254 Layout,
255 Lifetime,
256 LintPass,
257 LocalKey,
258 Mutex,
259 MutexGuard,
260 Named,
261 NonZero,
262 None,
263 Normal,
264 Ok,
265 Option,
266 Ord,
267 Ordering,
268 Other,
269 Output,
270 ParamSet,
271 PartialEq,
272 PartialOrd,
273 Pending,
274 PinDerefMutHelper,
275 PinMacroHelper,
276 Pointer,
277 Poll,
278 Range,
279 RangeCopy,
280 RangeFrom,
281 RangeFromCopy,
282 RangeFull,
283 RangeInclusive,
284 RangeInclusiveCopy,
285 RangeMax,
286 RangeMin,
287 RangeSub,
288 RangeTo,
289 RangeToInclusive,
290 RangeToInclusiveCopy,
291 Rc,
292 RcWeak,
293 Ready,
294 Reborrow,
295 RefCell,
296 Reference,
297 Relaxed,
298 Release,
299 Result,
300 ResumeTy,
301 Reverse,
302 Rust,
303 RustEmbed,
305 RustaceansAreAwesome,
306 RwLock,
307 RwLockReadGuard,
308 RwLockWriteGuard,
309 SelfTy,
310 Send,
311 SeqCst,
312 Sized,
313 Slice,
314 SliceIndex,
315 Some,
316 Source,
317 SpanCtxt,
318 StdinLock,
319 Str,
320 String,
321 Struct,
322 StructuralPartialEq,
323 SymbolIntern,
324 Sync,
325 SyncUnsafeCell,
326 Target,
327 This,
328 TokenStream,
329 TrivialClone,
330 Try,
331 TryCaptureGeneric,
332 TryCapturePrintable,
333 TryFrom,
334 TryInto,
335 Tuple,
336 Ty,
337 TyCtxt,
338 TyKind,
339 Type,
340 Union,
341 Unresolved,
342 Unsize,
343 Vec,
344 Wrapper,
345 _DECLS,
346 __H,
347 __S,
348 __awaitee,
349 __try_var,
350 _t,
351 _task_context,
352 a32,
353 aarch64,
354 aarch64_target_feature,
355 aarch64_unstable_target_feature,
356 aarch64_ver_target_feature,
357 abi,
358 abi_amdgpu_kernel,
359 abi_avr_interrupt,
360 abi_c_cmse_nonsecure_call,
361 abi_cmse_nonsecure_call,
362 abi_custom,
363 abi_efiapi,
364 abi_gpu_kernel,
365 abi_msp430_interrupt,
366 abi_ptx,
367 abi_riscv_interrupt,
368 abi_swift,
369 abi_sysv64,
370 abi_thiscall,
371 abi_unadjusted,
372 abi_vectorcall,
373 abi_x86_interrupt,
374 abort,
375 add,
376 add_assign,
377 add_with_overflow,
378 address,
379 adt_const_params,
380 advanced_slice_patterns,
381 adx_target_feature,
382 aes,
383 aggregate_raw_ptr,
384 alias,
385 align,
386 align_of,
387 align_of_val,
388 alignment,
389 all,
390 alloc,
391 alloc_error_handler,
392 alloc_layout,
393 alloc_zeroed,
394 allocator,
395 allocator_api,
396 allocator_internals,
397 allow,
398 allow_fail,
399 allow_internal_unsafe,
400 allow_internal_unstable,
401 altivec,
402 alu32,
403 always,
404 amdgpu,
405 amdgpu_dispatch_ptr,
406 analysis,
407 and,
408 and_then,
409 anon,
410 anon_assoc,
411 anonymous_lifetime_in_impl_trait,
412 any,
413 apx_target_feature,
414 arbitrary_enum_discriminant,
415 arbitrary_self_types,
416 arbitrary_self_types_pointers,
417 areg,
418 args,
419 arith_offset,
420 arm,
421 arm64ec,
422 arm_a32: "arm::a32",
423 arm_t32: "arm::t32",
424 arm_target_feature,
425 array,
426 as_dash_needed: "as-needed",
427 as_ref,
428 asm,
429 asm_cfg,
430 asm_const,
431 asm_const_ptr,
432 asm_experimental_arch,
433 asm_experimental_reg,
434 asm_goto,
435 asm_goto_with_outputs,
436 asm_sym,
437 asm_unwind,
438 assert,
439 assert_eq,
440 assert_eq_macro,
441 assert_fields_are_eq,
442 assert_inhabited,
443 assert_macro,
444 assert_mem_uninitialized_valid,
445 assert_ne_macro,
446 assert_receiver_is_total_eq,
447 assert_zero_valid,
448 asserting,
449 associated_const_equality,
450 associated_consts,
451 associated_type_bounds,
452 associated_type_defaults,
453 associated_types,
454 assume,
455 assume_init,
456 asterisk: "*",
457 async_await,
458 async_call,
459 async_call_mut,
460 async_call_once,
461 async_closure,
462 async_drop,
463 async_drop_in_place,
464 async_fn,
465 async_fn_in_dyn_trait,
466 async_fn_in_trait,
467 async_fn_kind_helper,
468 async_fn_kind_upvars,
469 async_fn_mut,
470 async_fn_once,
471 async_fn_once_output,
472 async_fn_track_caller,
473 async_fn_traits,
474 async_for_loop,
475 async_gen_internals,
476 async_iterator,
477 async_iterator_poll_next,
478 async_trait_bounds,
479 atomic,
480 atomic_and,
481 atomic_cxchg,
482 atomic_cxchgweak,
483 atomic_fence,
484 atomic_load,
485 atomic_max,
486 atomic_min,
487 atomic_nand,
488 atomic_or,
489 atomic_singlethreadfence,
490 atomic_store,
491 atomic_umax,
492 atomic_umin,
493 atomic_xadd,
494 atomic_xchg,
495 atomic_xor,
496 atomic_xsub,
497 atomics,
498 att_syntax,
499 attr,
500 attr_literals,
501 attribute,
502 attributes,
503 audit_that,
504 augmented_assignments,
505 auto_cfg,
506 auto_traits,
507 autodiff,
508 autodiff_forward,
509 autodiff_reverse,
510 automatically_derived,
511 available_externally,
512 avr,
513 avr_target_feature,
514 avx,
515 avx10_target_feature,
516 avx512_target_feature,
517 avx512bw,
518 avx512f,
519 await_macro,
520 backchain,
521 backend_repr,
522 begin_panic,
523 bench,
524 bevy_ecs,
525 bikeshed,
526 bikeshed_guaranteed_no_drop,
527 bin,
528 bind_by_move_pattern_guards,
529 bindings_after_at,
530 bitand,
531 bitand_assign,
532 bitor,
533 bitor_assign,
534 bitreverse,
535 bits,
536 bitxor,
537 bitxor_assign,
538 black_box,
539 block,
540 blocking,
541 bool,
542 borrowck_graphviz_format,
543 borrowck_graphviz_postflow,
544 box_new,
545 box_patterns,
546 box_syntax,
547 boxed_slice,
548 bpf,
549 bpf_target_feature,
550 braced_empty_structs,
551 branch,
552 breakpoint,
553 breg,
554 bridge,
555 bswap,
556 built,
557 builtin_syntax,
558 bundle,
559 c_dash_variadic,
560 c_str_literals,
561 c_unwind,
562 c_variadic,
563 c_variadic_experimental_arch,
564 c_variadic_naked_functions,
565 c_void,
566 call,
567 call_mut,
568 call_once,
569 call_once_future,
570 call_ref_future,
571 caller,
572 caller_location,
573 capture_disjoint_fields,
574 carrying_mul_add,
575 carryless_mul,
576 catch_unwind,
577 cause,
578 cdylib,
579 ceilf16,
580 ceilf32,
581 ceilf64,
582 ceilf128,
583 cfg,
584 cfg_accessible,
585 cfg_attr,
586 cfg_attr_multi,
587 cfg_boolean_literals,
588 cfg_contract_checks,
589 cfg_doctest,
590 cfg_eval,
591 cfg_overflow_checks,
592 cfg_panic,
593 cfg_relocation_model,
594 cfg_sanitize,
595 cfg_sanitizer_cfi,
596 cfg_select,
597 cfg_target_abi,
598 cfg_target_compact,
599 cfg_target_feature,
600 cfg_target_has_atomic,
601 cfg_target_has_atomic_equal_alignment,
602 cfg_target_has_reliable_f16_f128,
603 cfg_target_has_threads,
604 cfg_target_object_format,
605 cfg_target_thread_local,
606 cfg_target_vendor,
607 cfg_ub_checks,
608 cfg_version,
609 cfi,
610 cfi_encoding,
611 char,
612 checked_type_aliases,
613 clflushopt_target_feature,
614 client,
615 clippy,
616 clobber_abi,
617 clone,
618 clone_closures,
619 clone_fn,
620 clone_from,
621 close_fn,
622 closure,
623 closure_lifetime_binder,
624 closure_to_fn_coercion,
625 closure_track_caller,
626 cmp,
627 cmp_ord_max,
628 cmp_ord_min,
629 cmp_partialeq_eq,
630 cmp_partialeq_ne,
631 cmp_partialord_cmp,
632 cmp_partialord_ge,
633 cmp_partialord_gt,
634 cmp_partialord_le,
635 cmp_partialord_lt,
636 cmpxchg16b_target_feature,
637 cmse_nonsecure_entry,
638 code,
639 coerce_pointee_validated,
640 coerce_shared,
641 coerce_shared_target,
642 coerce_unsized,
643 coff,
644 cold,
645 cold_path,
646 collapse_debuginfo,
647 column,
648 common,
649 compare_bytes,
650 compare_exchange,
651 compare_exchange_weak,
652 compile_error,
653 compiler,
654 compiler_builtins,
655 compiler_copy,
656 compiler_fence,
657 compiler_move,
658 complex,
659 concat,
660 concat_bytes,
661 conservative_impl_trait,
662 console,
663 const_allocate,
664 const_async_blocks,
665 const_block_items,
666 const_c_variadic,
667 const_closures,
668 const_compare_raw_pointers,
669 const_constructor,
670 const_continue,
671 const_deallocate,
672 const_destruct,
673 const_eval_limit,
674 const_eval_select,
675 const_evaluatable_checked,
676 const_extern_fn,
677 const_fn,
678 const_fn_floating_point_arithmetic,
679 const_fn_fn_ptr_basics,
680 const_fn_trait_bound,
681 const_fn_transmute,
682 const_fn_union,
683 const_fn_unsize,
684 const_for,
685 const_format_args,
686 const_generics,
687 const_generics_defaults,
688 const_if_match,
689 const_impl_trait,
690 const_in_array_repeat_expressions,
691 const_indexing,
692 const_let,
693 const_loop,
694 const_make_global,
695 const_mut_refs,
696 const_panic,
697 const_panic_fmt,
698 const_param_ty,
699 const_param_ty_unchecked,
700 const_precise_live_drops,
701 const_ptr_cast,
702 const_raw_ptr_deref,
703 const_raw_ptr_to_usize_cast,
704 const_refs_to_cell,
705 const_refs_to_static,
706 const_trait_bound_opt_out,
707 const_trait_impl,
708 const_try,
709 const_ty_placeholder: "<const_ty>",
710 constant,
711 constructor,
712 contract_build_check_ensures,
713 contract_check_ensures,
714 contract_check_requires,
715 contract_checks,
716 contracts,
717 contracts_ensures,
718 contracts_internals,
719 contracts_requires,
720 convert,
721 coprocessor,
722 copy,
723 copy_closures,
724 copy_nonoverlapping,
725 copysignf16,
726 copysignf32,
727 copysignf64,
728 copysignf128,
729 core,
730 core_panic,
731 core_panic_2015_macro,
732 core_panic_macro,
733 coroutine,
734 coroutine_clone,
735 coroutine_resume,
736 coroutine_return,
737 coroutine_state,
738 coroutine_yield,
739 coroutines,
740 cos,
741 count,
742 covariant_unsafe_cell,
743 coverage,
744 coverage_attribute,
745 cr,
746 crate_in_paths,
747 crate_local,
748 crate_name,
749 crate_type,
750 crate_visibility_modifier,
751 crt_dash_static: "crt-static",
752 csky,
753 csky_target_feature,
754 cstr_type,
755 cstring_type,
756 ctlz,
757 ctlz_nonzero,
758 ctpop,
759 ctr,
760 cttz,
761 cttz_nonzero,
762 custom_attribute,
763 custom_code_classes_in_docs,
764 custom_derive,
765 custom_inner_attributes,
766 custom_mir,
767 custom_test_frameworks,
768 d32,
769 dead_code,
770 dead_code_pub_in_binary,
771 dealloc,
772 debug,
773 debug_assert_eq_macro,
774 debug_assert_macro,
775 debug_assert_ne_macro,
776 debug_assertions,
777 debug_struct_fields_finish,
778 debug_tuple_fields_finish,
779 debugger_visualizer,
780 decl_macro,
781 declare_lint_pass,
782 decorated,
783 default_alloc_error_handler,
784 default_field_values,
785 default_fn,
786 default_lib_allocator,
787 default_method_body_is_const,
788 default_trait1,
793 default_trait2,
794 default_trait3,
795 default_trait4,
796 default_type_parameter_fallback,
798 default_type_params,
799 define_opaque,
800 deny,
801 deprecated,
802 deprecated_safe,
803 deprecated_suggestion,
804 deref,
805 deref_method,
806 deref_mut,
807 deref_patterns,
808 deref_pure,
809 deref_target,
810 derive,
811 derive_const,
812 derive_const_issue: "118304",
813 derive_default_enum,
814 derive_from,
815 derive_smart_pointer,
816 destruct,
817 destructuring_assignment,
818 diagnostic,
819 diagnostic_namespace,
820 diagnostic_on_const,
821 diagnostic_on_move,
822 diagnostic_on_type_error,
823 diagnostic_on_unknown,
824 diagnostic_on_unmatch_args,
825 diagnostic_on_unmatched_args,
826 diagnostic_opaque,
827 dialect,
828 direct,
829 direct_const_arg,
830 discriminant_kind,
831 discriminant_type,
832 discriminant_value,
833 disjoint_bitor,
834 dispatch_from_dyn,
835 div,
836 div_assign,
837 diverging_block_default,
838 dl,
839 do_not_recommend,
840 doc,
841 doc_alias,
842 doc_auto_cfg,
843 doc_cfg,
844 doc_cfg_hide,
845 doc_keyword,
846 doc_masked,
847 doc_notable_trait,
848 doc_primitive,
849 doc_spotlight,
850 doctest,
851 dotdot_in_tuple_patterns,
852 dotdoteq_in_patterns,
853 dreg,
854 dreg_low8,
855 dreg_low16,
856 drop,
857 drop_glue,
858 drop_in_place,
859 drop_types_in_const,
860 dropck_eyepatch,
861 dropck_parametricity,
862 dummy: "<!dummy!>", dummy_cgu_name,
864 dylib,
865 dyn_compatible_for_dispatch,
866 dyn_metadata,
867 dyn_star,
868 dyn_trait,
869 dynamic_no_pic: "dynamic-no-pic",
870 edition_panic,
871 effective_target_features,
872 effects,
873 eh_personality,
874 eii,
875 eii_declaration,
876 eii_internals,
877 eii_shared_macro,
878 element_ty,
879 elf,
880 empty: "",
888 empty_braces: "{}",
889 empty_brackets: "[]",
890 empty_parens: "()",
891 enable,
892 end,
893 entry_nops,
894 env,
895 env_CFG_RELEASE: env!("CFG_RELEASE"),
896 eq,
897 ergonomic_clones,
898 ermsb_target_feature,
899 exact_div,
900 except,
901 exception,
902 exception_handling: "exception-handling",
903 exclusive_range_pattern,
904 exhaustive_integer_patterns,
905 exhaustive_patterns,
906 existential_type,
907 exists,
908 exp,
909 exp2,
910 expand1,
911 expand2,
912 expect,
913 expected,
914 explicit_extern_abis,
915 explicit_generic_args_with_impl_trait,
916 explicit_tail_calls,
917 export_name,
918 export_stable,
919 export_symbols: "export-symbols",
920 expr,
921 expr_2021,
922 expr_fragment_specifier_2024,
923 extended_key_value_attributes,
924 extended_varargs_abi_support,
925 extendedl32r,
926 extern_absolute_paths,
927 extern_crate_item_prelude,
928 extern_crate_self,
929 extern_in_paths,
930 extern_item_impls,
931 extern_prelude,
932 extern_system_varargs,
933 extern_types,
934 extern_weak,
935 external,
936 external_doc,
937 f16,
938 f16_nan,
939 f16c_target_feature,
940 f32,
941 f32_nan,
942 f64,
943 f64_nan,
944 f128,
945 f128_nan,
946 fabs,
947 fadd_algebraic,
948 fadd_fast,
949 fake_variadic,
950 fallback,
951 fdiv_algebraic,
952 fdiv_fast,
953 feature,
954 fence,
955 ferris: "🦀",
956 fetch_update,
957 ffi_const,
958 ffi_pure,
959 ffi_returns_twice,
960 ffr,
961 field,
962 field_base,
963 field_init_shorthand,
964 field_of,
965 field_offset,
966 field_projections,
967 field_representing_type,
968 field_representing_type_actual_type_id,
969 field_representing_type_name,
970 field_representing_type_offset,
971 field_representing_type_raw,
972 field_type,
973 fields,
974 file,
975 final_associated_functions,
976 float_to_int_unchecked,
977 floorf16,
978 floorf32,
979 floorf64,
980 floorf128,
981 fma4_target_feature,
982 fmaf16,
983 fmaf32,
984 fmaf64,
985 fmaf128,
986 fmt,
987 fmt_debug,
988 fmul_algebraic,
989 fmul_fast,
990 fmuladdf16,
991 fmuladdf32,
992 fmuladdf64,
993 fmuladdf128,
994 fn_align,
995 fn_body,
996 fn_delegation,
997 fn_must_use,
998 fn_mut,
999 fn_once,
1000 fn_once_output,
1001 fn_ptr_as_ptr,
1002 fn_ptr_from_ptr,
1003 fn_ptr_trait,
1004 fn_static,
1005 forall,
1006 forbid,
1007 force_target_feature,
1008 forget,
1009 format_args,
1010 format_args_capture,
1011 format_args_nl,
1012 format_argument,
1013 format_arguments,
1014 format_macro,
1015 format_placeholder,
1016 format_unsafe_arg,
1017 fp,
1018 fpregs,
1019 framework,
1020 freeze,
1021 freeze_impls,
1022 freg,
1023 frem_algebraic,
1024 frem_fast,
1025 from,
1026 from_desugaring,
1027 from_iter,
1028 from_output,
1029 from_residual,
1030 from_size_align_unchecked,
1031 from_size_alignment_unchecked,
1032 from_str,
1033 from_str_nonconst,
1034 from_usize,
1035 from_yeet,
1036 frontmatter,
1037 fsub_algebraic,
1038 fsub_fast,
1039 full,
1040 fundamental,
1041 fused_iterator,
1042 future_output,
1043 future_trait,
1044 fxsr,
1045 gdb_script_file,
1046 ge,
1047 gen_blocks,
1048 gen_future,
1049 generator_clone,
1050 generators,
1051 generic_arg_infer,
1052 generic_assert,
1053 generic_associated_types,
1054 generic_associated_types_extended,
1055 generic_const_args,
1056 generic_const_exprs,
1057 generic_const_items,
1058 generic_const_parameter_types,
1059 generic_param_attrs,
1060 generic_pattern_types,
1061 generics,
1062 get_context,
1063 global_alloc_ty,
1064 global_allocator,
1065 global_asm,
1066 global_registration,
1067 globs,
1068 gpu_kernel: "gpu-kernel",
1069 gpu_launch_sized_workgroup_mem,
1070 gt,
1071 guard,
1072 guard_patterns,
1073 half_open_range_patterns,
1074 half_open_range_patterns_in_slices,
1075 hash,
1076 hexagon,
1077 hexagon_target_feature,
1078 hidden,
1079 hide,
1080 highpriinterrupts,
1081 hint,
1082 homogeneous_aggregate,
1083 html_favicon_url,
1084 html_logo_url,
1085 html_no_source,
1086 html_playground_url,
1087 html_root_url,
1088 hvx,
1089 hvx_length64b: "hvx-length64b",
1090 hvx_length128b: "hvx-length128b",
1091 hwaddress,
1092 i8,
1093 i16,
1094 i32,
1095 i64,
1096 i128,
1097 i128_type,
1098 ident,
1099 if_let,
1100 if_let_guard,
1101 if_let_rescope,
1102 if_while_or_patterns,
1103 ignore,
1104 immediate_abort: "immediate-abort",
1105 impl_header_lifetime_elision,
1106 impl_lint_pass,
1107 impl_restriction,
1108 impl_trait_in_assoc_type,
1109 impl_trait_in_bindings,
1110 impl_trait_in_fn_trait_return,
1111 impl_trait_projections,
1112 implied_by,
1113 import,
1114 import_name_type,
1115 import_shadowing,
1116 import_trait_associated_functions,
1117 imported_main,
1118 in_band_lifetimes,
1119 include,
1120 include_bytes,
1121 include_str,
1122 inclusive_range_syntax,
1123 incomplete_features,
1124 index,
1125 index_mut,
1126 infer_outlives_requirements,
1127 infer_static_outlives_requirements,
1128 inherent_associated_types,
1129 initial,
1130 inlateout,
1131 inline,
1132 inline_const,
1133 inline_const_pat,
1134 inout,
1135 inputs,
1136 instruction_set,
1137 instrument_fn,
1138 integer_: "integer", integer_max,
1140 integer_min,
1141 integral,
1142 internal,
1143 internal_eq_trait_method_impls,
1144 internal_features,
1145 interrupt,
1146 into_async_iter_into_iter,
1147 into_future,
1148 into_iter,
1149 into_try_type,
1150 intra_doc_pointers,
1151 intrinsics,
1152 irrefutable_let_patterns,
1153 is,
1154 is_auto,
1155 is_splatted,
1156 is_val_statically_known,
1157 isa_attribute,
1158 isize,
1159 issue,
1160 issue_5723_bootstrap,
1161 issue_tracker_base_url,
1162 item,
1163 item_like_imports,
1164 iter,
1165 iter_mut,
1166 iterator,
1167 iterator_collect_fn,
1168 kcfi,
1169 kernel_address,
1170 kernel_hwaddress,
1171 keylocker_x86,
1172 keyword,
1173 kind,
1174 kreg,
1175 kreg0,
1176 label,
1177 label_break_value,
1178 lahfsahf_target_feature,
1179 lang,
1180 lang_items,
1181 large_assignments,
1182 largest_niche,
1183 last,
1184 lasx,
1185 late_bound_turbofishing,
1186 lateout,
1187 lazy_normalization_consts,
1188 lazy_type_alias,
1189 le,
1190 legacy_receiver,
1191 len,
1192 let_chains,
1193 let_else,
1194 lhs,
1195 lib,
1196 libc,
1197 lifetime,
1198 lifetime_capture_rules_2024,
1199 lifetimes,
1200 line,
1201 link,
1202 link_arg_attribute,
1203 link_args,
1204 link_cfg,
1205 link_dash_arg: "link-arg",
1206 link_llvm_intrinsics,
1207 link_name,
1208 link_ordinal,
1209 link_section,
1210 linkage,
1211 linker,
1212 linker_info,
1213 linker_messages,
1214 linkonce,
1215 linkonce_odr,
1216 lint_reasons,
1217 literal,
1218 little, big,
1219 load,
1220 loaded_from_disk,
1221 local,
1222 local_inner_macros,
1223 log,
1224 log2,
1225 log10,
1226 log_syntax,
1227 loongarch32,
1228 loongarch64,
1229 loongarch_target_feature,
1230 loop_break_value,
1231 loop_hints,
1232 loop_match,
1233 lr,
1234 lsx,
1235 lt,
1236 m68k,
1237 m68k_target_feature,
1238 mac16,
1239 macho: "mach-o",
1240 macro_at_most_once_rep,
1241 macro_attr,
1242 macro_attributes_in_derive_output,
1243 macro_derive,
1244 macro_escape,
1245 macro_export,
1246 macro_guard_matcher,
1247 macro_lifetime_matcher,
1248 macro_literal_matcher,
1249 macro_metavar_expr,
1250 macro_metavar_expr_concat,
1251 macro_reexport,
1252 macro_use,
1253 macro_vis_matcher,
1254 macroless_generic_const_args,
1255 macros_in_extern,
1256 main,
1257 managed_boxes,
1258 manually_drop,
1259 map,
1260 map_err,
1261 marker,
1262 marker_trait_attr,
1263 masked,
1264 match_beginning_vert,
1265 match_default_bindings,
1266 maximum_number_nsz_f16,
1267 maximum_number_nsz_f32,
1268 maximum_number_nsz_f64,
1269 maximum_number_nsz_f128,
1270 maximumf16,
1271 maximumf32,
1272 maximumf64,
1273 maximumf128,
1274 may_dangle,
1275 may_unwind,
1276 maybe_dangling,
1277 maybe_uninit,
1278 maybe_uninit_uninit,
1279 maybe_uninit_zeroed,
1280 mem,
1281 mem_align_const,
1282 mem_discriminant,
1283 mem_drop,
1284 mem_forget,
1285 mem_size_const,
1286 mem_swap,
1287 mem_uninitialized,
1288 mem_variant_count,
1289 mem_zeroed,
1290 member_constraints,
1291 memory,
1292 memtag,
1293 message,
1294 meta,
1295 meta_sized,
1296 metadata_type,
1297 mgca_type_const_syntax,
1298 min_adt_const_params,
1299 min_const_fn,
1300 min_const_generics,
1301 min_const_unsafe_fn,
1302 min_exhaustive_patterns,
1303 min_generic_const_args,
1304 min_specialization,
1305 min_type_alias_impl_trait,
1306 minimum_number_nsz_f16,
1307 minimum_number_nsz_f32,
1308 minimum_number_nsz_f64,
1309 minimum_number_nsz_f128,
1310 minimumf16,
1311 minimumf32,
1312 minimumf64,
1313 minimumf128,
1314 mips,
1315 mips32r6,
1316 mips64,
1317 mips64r6,
1318 mips_target_feature,
1319 mir_assume,
1320 mir_basic_block,
1321 mir_call,
1322 mir_cast_ptr_to_ptr,
1323 mir_cast_transmute,
1324 mir_cast_unsize,
1325 mir_checked,
1326 mir_debuginfo,
1327 mir_discriminant,
1328 mir_drop,
1329 mir_field,
1330 mir_goto,
1331 mir_make_place,
1332 mir_move,
1333 mir_offset,
1334 mir_ptr_metadata,
1335 mir_return,
1336 mir_return_to,
1337 mir_set_discriminant,
1338 mir_static,
1339 mir_static_mut,
1340 mir_storage_dead,
1341 mir_storage_live,
1342 mir_tail_call,
1343 mir_unreachable,
1344 mir_unwind_cleanup,
1345 mir_unwind_continue,
1346 mir_unwind_resume,
1347 mir_unwind_terminate,
1348 mir_unwind_terminate_reason,
1349 mir_unwind_unreachable,
1350 mir_variant,
1351 miri,
1352 misc,
1353 miscsr,
1354 mmx_reg,
1355 modifiers,
1356 module,
1357 module_path,
1358 more_maybe_bounds,
1359 more_qualified_paths,
1360 more_struct_aliases,
1361 movbe_target_feature,
1362 move_expr,
1363 move_ref_pattern,
1364 move_size_limit,
1365 movrs_target_feature,
1366 msa,
1367 msp430,
1368 mul,
1369 mul_assign,
1370 mul_with_overflow,
1371 multiple_supertrait_upcastable,
1372 must_not_suspend,
1373 must_use,
1374 mut_preserve_binding_mode_2024,
1375 mut_ref,
1376 mut_restriction,
1377 mutable,
1378 naked,
1379 naked_asm,
1380 naked_functions,
1381 naked_functions_rustic_abi,
1382 naked_functions_target_feature,
1383 name,
1384 named_fn_trait_parameters,
1385 names,
1386 native_link_modifiers,
1387 native_link_modifiers_as_needed,
1388 native_link_modifiers_bundle,
1389 native_link_modifiers_verbatim,
1390 native_link_modifiers_whole_archive,
1391 natvis_file,
1392 ne,
1393 needs_allocator,
1394 needs_drop,
1395 needs_panic_runtime,
1396 neg,
1397 negate_unsigned,
1398 negative_bounds,
1399 negative_impls,
1400 neon,
1401 nested,
1402 never,
1403 never_patterns,
1404 never_type,
1405 never_type_fallback,
1406 new,
1407 new_binary,
1408 new_debug,
1409 new_debug_noop,
1410 new_display,
1411 new_lower_exp,
1412 new_lower_hex,
1413 new_octal,
1414 new_pointer,
1415 new_range,
1416 new_unchecked,
1417 new_upper_exp,
1418 new_upper_hex,
1419 next,
1420 niko,
1421 nll,
1422 no,
1423 no_builtins,
1424 no_core,
1425 no_coverage,
1426 no_crate_inject,
1427 no_debug,
1428 no_default_passes,
1429 no_implicit_prelude,
1430 no_inline,
1431 no_link,
1432 no_main,
1433 no_mangle,
1434 no_sanitize,
1435 no_stack_check,
1436 no_std,
1437 nomem,
1438 non_ascii_idents,
1439 non_exhaustive,
1440 non_exhaustive_omitted_patterns_lint,
1441 non_lifetime_binders,
1442 non_modrs_mods,
1443 non_null,
1444 nonblocking,
1445 none,
1446 nontemporal_store,
1447 noop_method_borrow,
1448 noop_method_clone,
1449 noop_method_deref,
1450 noprefix,
1451 noreturn,
1452 nostack,
1453 not,
1454 notable_trait,
1455 note,
1456 null,
1457 nvptx64,
1458 nvptx_target_feature,
1459 object_safe_for_dispatch,
1460 of,
1461 off,
1462 offload,
1463 offload_get_num_devices,
1464 offload_kernel,
1465 offset,
1466 offset_of,
1467 offset_of_enum,
1468 offset_of_nested,
1469 offset_of_slice,
1470 ok_or_else,
1471 old_name,
1472 omit_gdb_pretty_printer_section,
1473 on,
1474 on_const,
1475 on_move,
1476 on_type_error,
1477 on_unimplemented,
1478 on_unknown,
1479 on_unmatched_args,
1480 opaque,
1481 opaque_module_name_placeholder: "<opaque>",
1482 ops,
1483 opt_out_copy,
1484 optimize,
1485 optimize_attribute,
1486 optimized,
1487 optin_builtin_traits,
1488 option,
1489 option_env,
1490 options,
1491 or,
1492 or_patterns,
1493 ord_cmp_method,
1494 other,
1495 out,
1496 output,
1497 overflow_checks,
1498 overlapping_marker_traits,
1499 owned_box,
1500 packed,
1501 packed_bundled_libs,
1502 panic,
1503 panic_2015,
1504 panic_2021,
1505 panic_abort,
1506 panic_bounds_check,
1507 panic_cannot_unwind,
1508 panic_const_add_overflow,
1509 panic_const_async_fn_resumed,
1510 panic_const_async_fn_resumed_drop,
1511 panic_const_async_fn_resumed_panic,
1512 panic_const_async_gen_fn_resumed,
1513 panic_const_async_gen_fn_resumed_drop,
1514 panic_const_async_gen_fn_resumed_panic,
1515 panic_const_coroutine_resumed,
1516 panic_const_coroutine_resumed_drop,
1517 panic_const_coroutine_resumed_panic,
1518 panic_const_div_by_zero,
1519 panic_const_div_overflow,
1520 panic_const_gen_fn_none,
1521 panic_const_gen_fn_none_drop,
1522 panic_const_gen_fn_none_panic,
1523 panic_const_mul_overflow,
1524 panic_const_neg_overflow,
1525 panic_const_rem_by_zero,
1526 panic_const_rem_overflow,
1527 panic_const_shl_overflow,
1528 panic_const_shr_overflow,
1529 panic_const_sub_overflow,
1530 panic_display,
1531 panic_fmt,
1532 panic_handler,
1533 panic_impl,
1534 panic_implementation,
1535 panic_in_cleanup,
1536 panic_info,
1537 panic_invalid_enum_construction,
1538 panic_location,
1539 panic_misaligned_pointer_dereference,
1540 panic_nounwind,
1541 panic_null_pointer_dereference,
1542 panic_null_reference_constructed,
1543 panic_runtime,
1544 panic_str_2015,
1545 panic_unwind,
1546 panicking,
1547 param_attrs,
1548 parent_label,
1549 partial_cmp,
1550 partial_ord,
1551 passes,
1552 pat,
1553 pat_param,
1554 patchable_function_entry,
1555 path,
1556 pattern_complexity_limit,
1557 pattern_parentheses,
1558 pattern_type,
1559 pattern_type_range_trait,
1560 pattern_types,
1561 phantom_data,
1562 phase,
1563 pic,
1564 pie,
1565 pin_drop,
1566 pin_ergonomics,
1567 pin_v2,
1568 platform_intrinsics,
1569 plugin,
1570 plugin_registrar,
1571 plugins,
1572 pointee,
1573 pointee_sized,
1574 pointee_trait,
1575 pointer,
1576 poll,
1577 post_cleanup: "post-cleanup",
1578 post_dash_lto: "post-lto",
1579 postfix_match,
1580 powerpc,
1581 powerpc64,
1582 powerpc_target_feature,
1583 powf16,
1584 powf32,
1585 powf64,
1586 powf128,
1587 powif16,
1588 powif32,
1589 powif64,
1590 powif128,
1591 pre_dash_lto: "pre-lto",
1592 precise_capturing,
1593 precise_capturing_in_traits,
1594 precise_pointer_size_matching,
1595 predicates,
1596 pref_align_of,
1597 prefetch_read_data,
1598 prefetch_read_instruction,
1599 prefetch_write_data,
1600 prefetch_write_instruction,
1601 prefix_nops,
1602 preg,
1603 prelude,
1604 prelude_import,
1605 preserves_flags,
1606 prfchw_target_feature,
1607 prid,
1608 primitive,
1609 proc_dash_macro: "proc-macro",
1610 proc_macro,
1611 proc_macro_attribute,
1612 proc_macro_derive,
1613 proc_macro_expr,
1614 proc_macro_gen,
1615 proc_macro_hygiene,
1616 proc_macro_internals,
1617 proc_macro_mod,
1618 proc_macro_non_items,
1619 proc_macro_path_invoc,
1620 profiler_runtime,
1621 ptr,
1622 ptr_cast,
1623 ptr_cast_const,
1624 ptr_cast_mut,
1625 ptr_const_is_null,
1626 ptr_copy,
1627 ptr_copy_nonoverlapping,
1628 ptr_drop_in_place,
1629 ptr_drop_in_place_self,
1630 ptr_from_ref,
1631 ptr_guaranteed_cmp,
1632 ptr_is_null,
1633 ptr_mask,
1634 ptr_metadata,
1635 ptr_null,
1636 ptr_null_mut,
1637 ptr_offset_from,
1638 ptr_offset_from_unsigned,
1639 ptr_read,
1640 ptr_read_unaligned,
1641 ptr_replace,
1642 ptr_swap,
1643 ptr_swap_nonoverlapping,
1644 ptr_write,
1645 ptr_write_bytes,
1646 ptr_write_unaligned,
1647 ptr_write_volatile,
1648 pub_macro_rules,
1649 pub_restricted,
1650 public,
1651 pure,
1652 pushpop_unsafe,
1653 qreg,
1654 qreg_low4,
1655 qreg_low8,
1656 quad_precision_float,
1657 question_mark,
1658 quote,
1659 range_inclusive_new,
1660 raw_dash_dylib: "raw-dylib",
1661 raw_dylib,
1662 raw_dylib_elf,
1663 raw_eq,
1664 raw_identifiers,
1665 raw_ref_op,
1666 re_rebalance_coherence,
1667 read_via_copy,
1668 readonly,
1669 realloc,
1670 realtime,
1671 reason,
1672 reborrow,
1673 receiver,
1674 receiver_target,
1675 recursion_limit,
1676 reexport_test_harness_main,
1677 ref_pat_eat_one_layer_2024,
1678 ref_pat_eat_one_layer_2024_structural,
1679 ref_pat_everywhere,
1680 ref_unwind_safe_trait,
1681 reference,
1682 reflect,
1683 reg,
1684 reg16,
1685 reg32,
1686 reg64,
1687 reg_abcd,
1688 reg_addr,
1689 reg_byte,
1690 reg_data,
1691 reg_iw,
1692 reg_nonzero,
1693 reg_pair,
1694 reg_ptr,
1695 reg_upper,
1696 register_attr,
1697 register_attribute_tool,
1698 register_lint_tool,
1699 register_tool,
1700 relaxed_adts,
1701 relaxed_struct_unsize,
1702 relocation_model,
1703 rem,
1704 rem_assign,
1705 repr,
1706 repr128,
1707 repr_align,
1708 repr_align_enum,
1709 repr_packed,
1710 repr_simd,
1711 repr_transparent,
1712 require,
1713 reserve_x18: "reserve-x18",
1714 residual,
1715 result,
1716 result_ffi_guarantees,
1717 return_address,
1718 return_position_impl_trait_in_trait,
1719 return_type_notation,
1720 right_arrow: "->",
1721 riscv32,
1722 riscv64,
1723 riscv_target_feature,
1724 rlib,
1725 ropi,
1726 ropi_rwpi: "ropi-rwpi",
1727 rotate_left,
1728 rotate_right,
1729 round_ties_even_f16,
1730 round_ties_even_f32,
1731 round_ties_even_f64,
1732 round_ties_even_f128,
1733 roundf16,
1734 roundf32,
1735 roundf64,
1736 roundf128,
1737 rtm_target_feature,
1738 runtime,
1739 rust,
1740 rust_2015,
1741 rust_2018,
1742 rust_2018_preview,
1743 rust_2021,
1744 rust_2024,
1745 rust_analyzer,
1746 rust_begin_unwind,
1747 rust_cold_cc,
1748 rust_dash_call: "rust-call",
1749 rust_eh_personality,
1750 rust_future,
1751 rust_logo,
1752 rust_out,
1753 rust_preserve_none_cc,
1754 rust_tail_cc,
1755 rustc,
1756 rustc_abi,
1757 rustc_align,
1759 rustc_align_static,
1760 rustc_allocator,
1761 rustc_allocator_zeroed,
1762 rustc_allocator_zeroed_variant,
1763 rustc_allow_const_fn_unstable,
1764 rustc_allow_incoherent_impl,
1765 rustc_allow_lifetime_dependent_specialization,
1766 rustc_allowed_through_unstable_modules,
1767 rustc_as_ptr,
1768 rustc_attrs,
1769 rustc_autodiff,
1770 rustc_builtin_macro,
1771 rustc_canonical_symbol,
1772 rustc_capture_analysis,
1773 rustc_clean,
1774 rustc_coherence_is_core,
1775 rustc_coinductive,
1776 rustc_comptime,
1777 rustc_confusables,
1778 rustc_const_stable,
1779 rustc_const_stable_indirect,
1780 rustc_const_unstable,
1781 rustc_conversion_suggestion,
1782 rustc_deallocator,
1783 rustc_default_body_unstable,
1784 rustc_delayed_bug_from_inside_query,
1785 rustc_deny_explicit_impl,
1786 rustc_deprecated_safe_2024,
1787 rustc_diagnostic_item,
1788 rustc_diagnostic_macros,
1789 rustc_diagnostic_opaque,
1790 rustc_do_not_const_check,
1791 rustc_doc_primitive,
1792 rustc_driver,
1793 rustc_dummy,
1794 rustc_dump_clauses,
1795 rustc_dump_def_parents,
1796 rustc_dump_def_path,
1797 rustc_dump_generics,
1798 rustc_dump_hidden_type_of_opaques,
1799 rustc_dump_inferred_outlives,
1800 rustc_dump_item_bounds,
1801 rustc_dump_layout,
1802 rustc_dump_object_lifetime_defaults,
1803 rustc_dump_symbol_name,
1804 rustc_dump_user_args,
1805 rustc_dump_variances,
1806 rustc_dump_variances_of_opaques,
1807 rustc_dump_vtable,
1808 rustc_dyn_incompatible_trait,
1809 rustc_effective_visibility,
1810 rustc_eii_foreign_item,
1811 rustc_evaluate_where_clauses,
1812 rustc_expected_cgu_reuse,
1813 rustc_force_inline,
1814 rustc_has_incoherent_inherent_impls,
1815 rustc_if_this_changed,
1816 rustc_inherit_overflow_checks,
1817 rustc_insignificant_dtor,
1818 rustc_intrinsic,
1819 rustc_intrinsic_const_stable_indirect,
1820 rustc_legacy_const_generics,
1821 rustc_lint_opt_deny_field_access,
1822 rustc_lint_opt_ty,
1823 rustc_lint_query_instability,
1824 rustc_lint_untracked_query_information,
1825 rustc_macro_transparency,
1826 rustc_main,
1827 rustc_mir,
1828 rustc_must_implement_one_of,
1829 rustc_must_match_exhaustively,
1830 rustc_never_returns_null_ptr,
1831 rustc_no_implicit_autorefs,
1832 rustc_no_implicit_bounds,
1833 rustc_no_mir_inline,
1834 rustc_no_writable,
1835 rustc_non_const_trait_method,
1836 rustc_nonnull_optimization_guaranteed,
1837 rustc_nounwind,
1838 rustc_objc_class,
1839 rustc_objc_selector,
1840 rustc_offload_kernel,
1841 rustc_on_unimplemented,
1842 rustc_panics_when_zero,
1843 rustc_paren_sugar,
1844 rustc_partition_codegened,
1845 rustc_partition_reused,
1846 rustc_pass_by_value,
1847 rustc_pass_indirectly_in_non_rustic_abis,
1848 rustc_peek,
1849 rustc_peek_liveness,
1850 rustc_peek_maybe_init,
1851 rustc_peek_maybe_uninit,
1852 rustc_preserve_ub_checks,
1853 rustc_private,
1854 rustc_proc_macro_decls,
1855 rustc_promotable,
1856 rustc_pub_transparent,
1857 rustc_reallocator,
1858 rustc_regions,
1859 rustc_scalable_vector,
1860 rustc_should_not_be_called_on_const_items,
1861 rustc_simd_monomorphize_lane_limit,
1862 rustc_skip_during_method_dispatch,
1863 rustc_specialization_trait,
1864 rustc_splat,
1865 rustc_std_internal_symbol,
1866 rustc_strict_coherence,
1867 rustc_test_marker,
1868 rustc_then_this_would_need,
1869 rustc_trivial_field_reads,
1870 rustc_unroll,
1872 rustdoc,
1873 rustdoc_internals,
1874 rustdoc_missing_doc_code_examples,
1875 rustfmt,
1876 rvalue_static_promotion,
1877 rvector,
1878 rwpi,
1879 s32c1i,
1880 s390x,
1881 s390x_target_feature,
1882 s390x_target_feature_vector,
1883 safestack,
1884 safety,
1885 sanitize,
1886 sanitizer_cfi_generalize_pointers,
1887 sanitizer_cfi_normalize_integers,
1888 sanitizer_runtime,
1889 saturating_add,
1890 saturating_sub,
1891 sdylib,
1892 search_unbox,
1893 section,
1894 select_unpredictable,
1895 self_in_typedefs,
1896 self_struct_ctor,
1897 semiopaque,
1898 sgpr32,
1899 sgpr64,
1900 sgpr96,
1901 sgpr128,
1902 sgpr256,
1903 sgpr512,
1904 sha2,
1905 sha3,
1906 sha512_sm_x86,
1907 shadow_call_stack,
1908 shallow,
1909 shl,
1910 shl_assign,
1911 shorter_tail_lifetimes,
1912 should_panic,
1913 show,
1914 shr,
1915 shr_assign,
1916 signed,
1917 simd,
1918 simd_add,
1919 simd_and,
1920 simd_arith_offset,
1921 simd_as,
1922 simd_bitmask,
1923 simd_bitreverse,
1924 simd_bswap,
1925 simd_carryless_mul,
1926 simd_cast,
1927 simd_cast_ptr,
1928 simd_ceil,
1929 simd_ctlz,
1930 simd_ctpop,
1931 simd_cttz,
1932 simd_div,
1933 simd_eq,
1934 simd_expose_provenance,
1935 simd_extract,
1936 simd_extract_dyn,
1937 simd_fabs,
1938 simd_fcos,
1939 simd_fexp,
1940 simd_fexp2,
1941 simd_ffi,
1942 simd_flog,
1943 simd_flog2,
1944 simd_flog10,
1945 simd_floor,
1946 simd_fma,
1947 simd_fsin,
1948 simd_fsqrt,
1949 simd_funnel_shl,
1950 simd_funnel_shr,
1951 simd_gather,
1952 simd_ge,
1953 simd_gt,
1954 simd_insert,
1955 simd_insert_dyn,
1956 simd_le,
1957 simd_lt,
1958 simd_masked_load,
1959 simd_masked_store,
1960 simd_maximum_number_nsz,
1961 simd_minimum_number_nsz,
1962 simd_mul,
1963 simd_ne,
1964 simd_neg,
1965 simd_or,
1966 simd_reduce_add_ordered,
1967 simd_reduce_add_unordered,
1968 simd_reduce_all,
1969 simd_reduce_and,
1970 simd_reduce_any,
1971 simd_reduce_max,
1972 simd_reduce_min,
1973 simd_reduce_mul_ordered,
1974 simd_reduce_mul_unordered,
1975 simd_reduce_or,
1976 simd_reduce_xor,
1977 simd_relaxed_fma,
1978 simd_rem,
1979 simd_round,
1980 simd_round_ties_even,
1981 simd_saturating_add,
1982 simd_saturating_sub,
1983 simd_scatter,
1984 simd_select,
1985 simd_select_bitmask,
1986 simd_shl,
1987 simd_shr,
1988 simd_shuffle,
1989 simd_shuffle_const_generic,
1990 simd_splat,
1991 simd_sub,
1992 simd_trunc,
1993 simd_with_exposed_provenance,
1994 simd_xor,
1995 sin,
1996 since,
1997 size,
1998 size_of,
1999 size_of_type_id,
2000 size_of_val,
2001 sized,
2002 sized_hierarchy,
2003 slice,
2004 slice_from_raw_parts,
2005 slice_from_raw_parts_mut,
2006 slice_get_unchecked,
2007 slice_len_fn,
2008 slice_patterns,
2009 slicing_syntax,
2010 soft_float: "soft-float",
2011 sparc,
2012 sparc64,
2013 sparc_target_feature,
2014 spe_acc,
2015 specialization,
2016 speed,
2017 spirv,
2018 splat,
2019 splatted_index,
2020 spotlight,
2021 sqrtf16,
2022 sqrtf32,
2023 sqrtf64,
2024 sqrtf128,
2025 sreg,
2026 sreg_low16,
2027 sse,
2028 sse2,
2029 sse4a_target_feature,
2030 stable,
2031 staged_api,
2032 start,
2033 state,
2034 static_align,
2035 static_in_const,
2036 static_nobundle,
2037 static_recursion,
2038 staticlib,
2039 std,
2040 std_lib_injection,
2041 std_panic,
2042 std_panic_2015_macro,
2043 std_panic_macro,
2044 stmt,
2045 stmt_expr_attributes,
2046 stop_after_dataflow,
2047 store,
2048 str,
2049 str_from_utf8,
2050 str_from_utf8_mut,
2051 str_from_utf8_unchecked,
2052 str_from_utf8_unchecked_mut,
2053 str_inherent_from_utf8,
2054 str_inherent_from_utf8_mut,
2055 str_inherent_from_utf8_unchecked,
2056 str_inherent_from_utf8_unchecked_mut,
2057 strict_provenance_lints,
2058 string_deref_patterns,
2059 stringify,
2060 struct_field_attributes,
2061 struct_inherit,
2062 struct_variant,
2063 structural_match,
2064 structural_peq,
2065 sub,
2066 sub_assign,
2067 sub_with_overflow,
2068 suggestion,
2069 super_let,
2070 supertrait_item_shadowing,
2071 sve,
2072 sve_cast,
2073 sve_tuple_create2,
2074 sve_tuple_create3,
2075 sve_tuple_create4,
2076 sve_tuple_get,
2077 sve_tuple_set,
2078 sym,
2079 sync,
2080 synthetic,
2081 t32,
2082 target,
2083 target_abi,
2084 target_arch,
2085 target_endian,
2086 target_env,
2087 target_family,
2088 target_feature,
2089 target_feature_11,
2090 target_feature_inline_always,
2091 target_has_atomic,
2092 target_has_atomic_load_store,
2093 target_has_atomic_primitive_alignment,
2094 target_has_reliable_f16,
2095 target_has_reliable_f16_math,
2096 target_has_reliable_f128,
2097 target_has_reliable_f128_math,
2098 target_has_threads,
2099 target_object_format,
2100 target_os,
2101 target_pointer_width,
2102 target_thread_local,
2103 target_vendor,
2104 tbm_target_feature,
2105 termination,
2106 termination_trait,
2107 termination_trait_test,
2108 test,
2109 test_2018_feature,
2110 test_accepted_feature,
2111 test_binder_constraints,
2112 test_case,
2113 test_incomplete_feature,
2114 test_removed_feature,
2115 test_runner,
2116 test_unstable_lint,
2117 thread,
2118 thread_local,
2119 threadptr,
2120 three_way_compare,
2121 thumb2,
2122 thumb_mode: "thumb-mode",
2123 time,
2124 tmm_reg,
2125 to_owned_method,
2126 to_string,
2127 to_vec,
2128 tool_attributes,
2129 tool_lints,
2130 trace_macros,
2131 track_caller,
2132 trait_alias,
2133 trait_ty,
2134 trait_upcasting,
2135 transmute,
2136 transmute_generic_consts,
2137 transmute_opts,
2138 transmute_trait,
2139 transmute_unchecked,
2140 transparent,
2141 transparent_enums,
2142 transparent_unions,
2143 trivial_bounds,
2144 trivial_clone,
2145 truncf16,
2146 truncf32,
2147 truncf64,
2148 truncf128,
2149 try_as_dyn,
2150 try_blocks,
2151 try_blocks_heterogeneous,
2152 try_capture,
2153 try_from,
2154 try_into,
2155 try_trait_v2,
2156 try_trait_v2_residual,
2157 try_update,
2158 tt,
2159 tuple,
2160 tuple_indexing,
2161 tuple_trait,
2162 two_phase,
2163 ty,
2164 type_alias_enum_variants,
2165 type_alias_impl_trait,
2166 type_ascribe,
2167 type_ascription,
2168 type_changing_struct_update,
2169 type_id,
2170 type_id_eq,
2171 type_id_field_representing_type,
2172 type_id_fields,
2173 type_id_generics,
2174 type_id_is_signed,
2175 type_id_variants,
2176 type_id_vtable,
2177 type_info,
2178 type_info_generic,
2179 type_ir,
2180 type_ir_infer_ctxt_like,
2181 type_ir_inherent,
2182 type_ir_interner,
2183 type_length_limit,
2184 type_macros,
2185 type_name,
2186 type_of,
2187 type_privacy_lints,
2188 typed_swap_nonoverlapping,
2189 u8,
2190 u8_legacy_const_max,
2191 u8_legacy_const_min,
2192 u8_legacy_fn_max_value,
2193 u8_legacy_fn_min_value,
2194 u8_legacy_mod,
2195 u16,
2196 u16_legacy_const_max,
2197 u16_legacy_const_min,
2198 u16_legacy_fn_max_value,
2199 u16_legacy_fn_min_value,
2200 u16_legacy_mod,
2201 u32,
2202 u32_legacy_const_max,
2203 u32_legacy_const_min,
2204 u32_legacy_fn_max_value,
2205 u32_legacy_fn_min_value,
2206 u32_legacy_mod,
2207 u64,
2208 u64_legacy_const_max,
2209 u64_legacy_const_min,
2210 u64_legacy_fn_max_value,
2211 u64_legacy_fn_min_value,
2212 u64_legacy_mod,
2213 u128,
2214 u128_legacy_const_max,
2215 u128_legacy_const_min,
2216 u128_legacy_fn_max_value,
2217 u128_legacy_fn_min_value,
2218 u128_legacy_mod,
2219 ub_checks,
2220 unaligned_volatile_load,
2221 unaligned_volatile_store,
2222 unboxed_closures,
2223 unchecked_add,
2224 unchecked_div,
2225 unchecked_funnel_shl,
2226 unchecked_funnel_shr,
2227 unchecked_mul,
2228 unchecked_rem,
2229 unchecked_shl,
2230 unchecked_shr,
2231 unchecked_sub,
2232 undecorated,
2233 underscore_const_names,
2234 underscore_imports,
2235 underscore_lifetimes,
2236 uniform_paths,
2237 unimplemented,
2238 unit,
2239 universal_impl_trait,
2240 unix,
2241 unlikely,
2242 unmarked_api,
2243 unnamed_enum_variants,
2244 unnamed_fields,
2245 unpin,
2246 unqualified_local_imports,
2247 unreachable,
2248 unreachable_2015,
2249 unreachable_2015_macro,
2250 unreachable_2021,
2251 unreachable_code,
2252 unreachable_display,
2253 unreachable_macro,
2254 unrestricted_attribute_tokens,
2255 unsafe_attributes,
2256 unsafe_binders,
2257 unsafe_block_in_unsafe_fn,
2258 unsafe_cell,
2259 unsafe_cell_raw_get,
2260 unsafe_eii,
2261 unsafe_extern_blocks,
2262 unsafe_fields,
2263 unsafe_no_drop_flag,
2264 unsafe_pinned,
2265 unsafe_unpin,
2266 unsafety,
2267 unsize,
2268 unsized_const_param_ty,
2269 unsized_const_params,
2270 unsized_fn_params,
2271 unsized_locals,
2272 unsized_tuple_coercion,
2273 unstable,
2274 unstable_feature_bound,
2275 unstable_location_reason_default: "this crate is being loaded from the sysroot, an \
2276 unstable location; did you mean to load this crate \
2277 from crates.io via `Cargo.toml` instead?",
2278 unstable_removed,
2279 untagged_unions,
2280 unused_imports,
2281 unwind,
2282 unwind_attributes,
2283 unwind_safe_trait,
2284 unwrap,
2285 unwrap_binder,
2286 unwrap_or,
2287 update,
2288 use_cloned,
2289 use_extern_macros,
2290 use_nested_groups,
2291 used,
2292 used_with_arg,
2293 using,
2294 usize,
2295 usize_legacy_const_max,
2296 usize_legacy_const_min,
2297 usize_legacy_fn_max_value,
2298 usize_legacy_fn_min_value,
2299 usize_legacy_mod,
2300 v1,
2301 v8plus,
2302 v9,
2303 va_arg,
2304 va_arg_safe,
2305 va_copy,
2306 va_end,
2307 va_list,
2308 val,
2309 validity,
2310 value,
2311 values,
2312 var,
2313 variadic,
2314 variant_count,
2315 variant_name,
2316 variant_non_exhaustive,
2317 variants,
2318 vec,
2319 vector,
2320 verbatim,
2321 version,
2322 vfp2,
2323 vgpr16,
2324 vgpr32,
2325 vgpr64,
2326 vgpr96,
2327 vgpr128,
2328 vgpr160,
2329 vgpr192,
2330 vgpr224,
2331 vgpr256,
2332 vgpr288,
2333 vgpr320,
2334 vgpr352,
2335 vgpr384,
2336 vgpr512,
2337 vgpr1024,
2338 view_type,
2339 view_types,
2340 vis,
2341 visible_private_types,
2342 volatile,
2343 volatile_copy_memory,
2344 volatile_copy_nonoverlapping_memory,
2345 volatile_load,
2346 volatile_set_memory,
2347 volatile_store,
2348 vreg,
2349 vreg_low16,
2350 vreg_pair,
2351 vsreg,
2352 vsx,
2353 vtable_align,
2354 vtable_size,
2355 warn,
2356 wasip2,
2357 wasm,
2358 wasm32,
2359 wasm64,
2360 wasm_abi,
2361 wasm_import_module,
2362 wasm_target_feature,
2363 weak,
2364 weak_odr,
2365 where_clause_attrs,
2366 while_let,
2367 whole_dash_archive: "whole-archive",
2368 width,
2369 windowed,
2370 windows,
2371 windows_subsystem,
2372 with_negative_coherence,
2373 wrap_binder,
2374 wrapping_add,
2375 wrapping_div,
2376 wrapping_mul,
2377 wrapping_rem,
2378 wrapping_rem_euclid,
2379 wrapping_sub,
2380 wreg,
2381 write_box_via_move,
2382 write_bytes,
2383 write_fmt,
2384 write_macro,
2385 write_str,
2386 write_via_move,
2387 writeln_macro,
2388 x86,
2389 x86_64,
2390 x86_amx_intrinsics,
2391 x87_reg,
2392 x87_target_feature,
2393 xcoff,
2394 xer,
2395 xloop,
2396 xmm_reg,
2397 xop_target_feature,
2398 xreg,
2399 xtensa,
2400 xtensa_target_feature,
2401 yeet_desugar_details,
2402 yeet_expr,
2403 yes,
2404 yield_expr,
2405 ymm_reg,
2406 yreg,
2407 zca,
2408 zfh,
2409 zfhmin,
2410 zmm_reg,
2411 ztso,
2412 }
2414}
2415
2416pub const STDLIB_STABLE_CRATES: &[Symbol] = &[sym::std, sym::core, sym::alloc, sym::proc_macro];
2419
2420#[derive(#[automatically_derived]
impl ::core::marker::Copy for Ident { }Copy, #[automatically_derived]
#[doc(hidden)]
unsafe impl ::core::clone::TrivialClone for Ident { }
#[automatically_derived]
impl ::core::clone::Clone for Ident {
#[inline]
fn clone(&self) -> Ident {
let _: ::core::clone::AssertParamIsClone<Symbol>;
let _: ::core::clone::AssertParamIsClone<Span>;
*self
}
}Clone, #[automatically_derived]
impl ::core::cmp::Eq for Ident {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<Symbol>;
let _: ::core::cmp::AssertParamIsEq<Span>;
}
}Eq, const _: () =
{
impl ::rustc_data_structures::stable_hash::StableHash for Ident {
#[inline]
fn stable_hash<__Hcx: ::rustc_data_structures::stable_hash::StableHashCtxt>(&self,
__hcx: &mut __Hcx,
__hasher:
&mut ::rustc_data_structures::stable_hash::StableHasher) {
match *self {
Ident { name: ref __binding_0, span: ref __binding_1 } => {
{ __binding_0.stable_hash(__hcx, __hasher); }
{ __binding_1.stable_hash(__hcx, __hasher); }
}
}
}
}
};StableHash, const _: () =
{
impl<__E: ::rustc_span::SpanEncoder> ::rustc_serialize::Encodable<__E>
for Ident {
fn encode(&self, __encoder: &mut __E) {
let Ident { name: ref __binding_0, span: ref __binding_1 } =
*self;
::rustc_serialize::Encodable::<__E>::encode(__binding_0,
__encoder);
::rustc_serialize::Encodable::<__E>::encode(__binding_1,
__encoder);
}
}
};Encodable, const _: () =
{
impl<__D: ::rustc_span::SpanDecoder> ::rustc_serialize::Decodable<__D>
for Ident {
fn decode(__decoder: &mut __D) -> Self {
Ident {
name: ::rustc_serialize::Decodable::decode(__decoder),
span: ::rustc_serialize::Decodable::decode(__decoder),
}
}
}
};Decodable)]
2421pub struct Ident {
2422 pub name: Symbol,
2427 pub span: Span,
2428}
2429
2430impl Ident {
2431 #[inline]
2432 pub fn new(name: Symbol, span: Span) -> Ident {
2434 if true {
{
match (&name, &sym::empty) {
(left_val, right_val) => {
if *left_val == *right_val {
let kind = ::core::panicking::AssertKind::Ne;
::core::panicking::assert_failed(kind, &*left_val,
&*right_val, ::core::option::Option::None);
}
}
}
};
};debug_assert_ne!(name, sym::empty);
2435 Ident { name, span }
2436 }
2437
2438 #[inline]
2440 pub fn with_dummy_span(name: Symbol) -> Ident {
2441 Ident::new(name, DUMMY_SP)
2442 }
2443
2444 #[inline]
2449 pub fn dummy() -> Ident {
2450 Ident::with_dummy_span(sym::dummy)
2451 }
2452
2453 pub fn from_str(string: &str) -> Ident {
2455 Ident::with_dummy_span(Symbol::intern(string))
2456 }
2457
2458 pub fn from_str_and_span(string: &str, span: Span) -> Ident {
2460 Ident::new(Symbol::intern(string), span)
2461 }
2462
2463 pub fn with_span_pos(self, span: Span) -> Ident {
2465 Ident::new(self.name, span.with_ctxt(self.span.ctxt()))
2466 }
2467
2468 pub fn without_first_quote(self) -> Ident {
2471 self.as_str()
2472 .strip_prefix('\'')
2473 .map_or(self, |name| Ident::new(Symbol::intern(name), self.span))
2474 }
2475
2476 pub fn normalize_to_macros_2_0(self) -> Ident {
2482 Ident::new(self.name, self.span.normalize_to_macros_2_0())
2483 }
2484
2485 #[inline]
2491 pub fn normalize_to_macro_rules(self) -> Ident {
2492 Ident::new(self.name, self.span.normalize_to_macro_rules())
2493 }
2494
2495 pub fn as_str(&self) -> &str {
2501 self.name.as_str()
2502 }
2503}
2504
2505impl PartialEq for Ident {
2506 #[inline]
2507 fn eq(&self, rhs: &Self) -> bool {
2508 self.name == rhs.name && self.span.eq_ctxt(rhs.span)
2509 }
2510}
2511
2512impl Hash for Ident {
2513 fn hash<H: Hasher>(&self, state: &mut H) {
2514 self.name.hash(state);
2515 self.span.ctxt().hash(state);
2516 }
2517}
2518
2519impl fmt::Debug for Ident {
2520 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2521 fmt::Display::fmt(self, f)?;
2522 fmt::Debug::fmt(&self.span.ctxt(), f)
2523 }
2524}
2525
2526impl fmt::Display for Ident {
2530 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2531 fmt::Display::fmt(&IdentPrinter::new(self.name, self.guess_print_mode(), None), f)
2532 }
2533}
2534
2535pub enum IdentPrintMode {
2536 Normal,
2537 RawIdent,
2538 RawLifetime,
2539}
2540
2541pub struct IdentPrinter {
2555 symbol: Symbol,
2556 mode: IdentPrintMode,
2557 convert_dollar_crate: Option<Span>,
2560}
2561
2562impl IdentPrinter {
2563 pub fn new(
2565 symbol: Symbol,
2566 mode: IdentPrintMode,
2567 convert_dollar_crate: Option<Span>,
2568 ) -> IdentPrinter {
2569 IdentPrinter { symbol, mode, convert_dollar_crate }
2570 }
2571
2572 pub fn for_ast_ident(ident: Ident, mode: IdentPrintMode) -> IdentPrinter {
2576 IdentPrinter::new(ident.name, mode, Some(ident.span))
2577 }
2578}
2579
2580impl fmt::Display for IdentPrinter {
2581 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2582 let s = match self.mode {
2583 IdentPrintMode::Normal
2584 if self.symbol == kw::DollarCrate
2585 && let Some(span) = self.convert_dollar_crate =>
2586 {
2587 let converted = span.ctxt().dollar_crate_name();
2588 if !converted.is_path_segment_keyword() {
2589 f.write_str("::")?;
2590 }
2591 converted
2592 }
2593 IdentPrintMode::Normal => self.symbol,
2594 IdentPrintMode::RawIdent => {
2595 f.write_str("r#")?;
2596 self.symbol
2597 }
2598 IdentPrintMode::RawLifetime => {
2599 f.write_str("'r#")?;
2600 let s = self
2601 .symbol
2602 .as_str()
2603 .strip_prefix("'")
2604 .expect("only lifetime idents should be passed with RawLifetime mode");
2605 Symbol::intern(s)
2606 }
2607 };
2608 s.fmt(f)
2609 }
2610}
2611
2612#[derive(#[automatically_derived]
impl ::core::marker::Copy for MacroRulesNormalizedIdent { }Copy, #[automatically_derived]
#[doc(hidden)]
unsafe impl ::core::clone::TrivialClone for MacroRulesNormalizedIdent { }
#[automatically_derived]
impl ::core::clone::Clone for MacroRulesNormalizedIdent {
#[inline]
fn clone(&self) -> MacroRulesNormalizedIdent {
let _: ::core::clone::AssertParamIsClone<Ident>;
*self
}
}Clone, #[automatically_derived]
impl ::core::cmp::Eq for MacroRulesNormalizedIdent {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<Ident>;
}
}Eq, #[automatically_derived]
impl ::core::marker::StructuralPartialEq for MacroRulesNormalizedIdent { }
#[automatically_derived]
impl ::core::cmp::PartialEq for MacroRulesNormalizedIdent {
#[inline]
fn eq(&self, other: &MacroRulesNormalizedIdent) -> bool {
self.0 == other.0
}
}PartialEq, #[automatically_derived]
impl ::core::hash::Hash for MacroRulesNormalizedIdent {
#[inline]
fn hash<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
::core::hash::Hash::hash(&self.0, state)
}
}Hash)]
2618pub struct MacroRulesNormalizedIdent(Ident);
2619
2620impl MacroRulesNormalizedIdent {
2621 #[inline]
2622 pub fn new(ident: Ident) -> Self {
2623 MacroRulesNormalizedIdent(ident.normalize_to_macro_rules())
2624 }
2625
2626 pub fn symbol(&self) -> Symbol {
2627 self.0.name
2628 }
2629
2630 pub fn ident(&self) -> Ident {
2631 self.0
2632 }
2633}
2634
2635impl fmt::Debug for MacroRulesNormalizedIdent {
2636 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2637 fmt::Debug::fmt(&self.0, f)
2638 }
2639}
2640
2641impl fmt::Display for MacroRulesNormalizedIdent {
2642 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2643 fmt::Display::fmt(&self.0, f)
2644 }
2645}
2646
2647#[derive(#[automatically_derived]
#[doc(hidden)]
unsafe impl ::core::clone::TrivialClone for Symbol { }
#[automatically_derived]
impl ::core::clone::Clone for Symbol {
#[inline]
fn clone(&self) -> Symbol {
let _: ::core::clone::AssertParamIsClone<SymbolIndex>;
*self
}
}Clone, #[automatically_derived]
impl ::core::marker::Copy for Symbol { }Copy, #[automatically_derived]
impl ::core::marker::StructuralPartialEq for Symbol { }
#[automatically_derived]
impl ::core::cmp::PartialEq for Symbol {
#[inline]
fn eq(&self, other: &Symbol) -> bool { self.0 == other.0 }
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for Symbol {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<SymbolIndex>;
}
}Eq, #[automatically_derived]
impl ::core::cmp::PartialOrd for Symbol {
#[inline]
fn partial_cmp(&self, other: &Symbol)
-> ::core::option::Option<::core::cmp::Ordering> {
::core::option::Option::Some(::core::cmp::Ord::cmp(self, other))
}
}PartialOrd, #[automatically_derived]
impl ::core::cmp::Ord for Symbol {
#[inline]
fn cmp(&self, other: &Symbol) -> ::core::cmp::Ordering {
::core::cmp::Ord::cmp(&self.0, &other.0)
}
}Ord, #[automatically_derived]
impl ::core::hash::Hash for Symbol {
#[inline]
fn hash<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
::core::hash::Hash::hash(&self.0, state)
}
}Hash)]
2657pub struct Symbol(SymbolIndex);
2658
2659#[automatically_derived]
impl ::core::marker::Copy for SymbolIndex { }
impl SymbolIndex {
#[doc = r" Maximum value the index can take, as a `u32`."]
const MAX_AS_U32: u32 = 0xFFFF_FF00;
#[doc = r" Maximum value the index can take."]
const MAX: Self = Self::from_u32(0xFFFF_FF00);
#[doc = r" Zero value of the index."]
const ZERO: Self = Self::from_u32(0);
#[doc = r" Creates a new index from a given `usize`."]
#[doc = r""]
#[doc = r" # Panics"]
#[doc = r""]
#[doc = r" Will panic if `value` exceeds `MAX`."]
#[inline]
const fn from_usize(value: usize) -> Self {
if !(value <= (0xFFFF_FF00 as usize)) {
::core::panicking::panic("assertion failed: value <= (0xFFFF_FF00 as usize)")
};
unsafe { Self::from_u32_unchecked(value as u32) }
}
#[doc = r" Creates a new index from a given `u32`."]
#[doc = r""]
#[doc = r" # Panics"]
#[doc = r""]
#[doc = r" Will panic if `value` exceeds `MAX`."]
#[inline]
const fn from_u32(value: u32) -> Self {
if !(value <= 0xFFFF_FF00) {
::core::panicking::panic("assertion failed: value <= 0xFFFF_FF00")
};
unsafe { Self::from_u32_unchecked(value) }
}
#[doc = r" Creates a new index from a given `u16`."]
#[doc = r""]
#[doc = r" # Panics"]
#[doc = r""]
#[doc = r" Will panic if `value` exceeds `MAX`."]
#[inline]
const fn from_u16(value: u16) -> Self {
let value = value as u32;
if !(value <= 0xFFFF_FF00) {
::core::panicking::panic("assertion failed: value <= 0xFFFF_FF00")
};
unsafe { Self::from_u32_unchecked(value) }
}
#[doc = r" Creates a new index from a given `u32`."]
#[doc = r""]
#[doc = r" # Safety"]
#[doc = r""]
#[doc =
r" The provided value must be less than or equal to the maximum value for the newtype."]
#[doc =
r" Providing a value outside this range is undefined due to layout restrictions."]
#[doc = r""]
#[doc = r" Prefer using `from_u32`."]
#[inline]
const unsafe fn from_u32_unchecked(value: u32) -> Self {
Self {
private_use_as_methods_instead: unsafe {
std::mem::transmute(value)
},
}
}
#[doc = r" Extracts the value of this index as a `usize`."]
#[inline]
const fn index(self) -> usize { self.as_usize() }
#[doc = r" Extracts the value of this index as a `u32`."]
#[inline]
const fn as_u32(self) -> u32 {
unsafe { std::mem::transmute(self.private_use_as_methods_instead) }
}
#[doc = r" Extracts the value of this index as a `usize`."]
#[inline]
const fn as_usize(self) -> usize { self.as_u32() as usize }
}
impl std::ops::Add<usize> for SymbolIndex {
type Output = Self;
#[inline]
fn add(self, other: usize) -> Self {
Self::from_usize(self.index() + other)
}
}
impl std::ops::AddAssign<usize> for SymbolIndex {
#[inline]
fn add_assign(&mut self, other: usize) { *self = *self + other; }
}
impl rustc_index::Idx for SymbolIndex {
#[inline]
fn new(value: usize) -> Self { Self::from_usize(value) }
#[inline]
fn index(self) -> usize { self.as_usize() }
}
impl ::std::iter::Step for SymbolIndex {
#[inline]
fn steps_between(start: &Self, end: &Self) -> (usize, Option<usize>) {
<usize as
::std::iter::Step>::steps_between(&Self::index(*start),
&Self::index(*end))
}
#[inline]
fn forward_checked(start: Self, u: usize) -> Option<Self> {
Self::index(start).checked_add(u).map(Self::from_usize)
}
#[inline]
fn backward_checked(start: Self, u: usize) -> Option<Self> {
Self::index(start).checked_sub(u).map(Self::from_usize)
}
#[inline]
fn forward_overflowing(start: Self, u: usize) -> (Self, bool) {
let (s, o) = Self::index(start).overflowing_add(u);
(Self::from_usize(s), o)
}
#[inline]
fn backward_overflowing(start: Self, u: usize) -> (Self, bool) {
let (s, o) = Self::index(start).overflowing_sub(u);
(Self::from_usize(s), o)
}
}
impl ::std::cmp::Ord for SymbolIndex {
#[inline]
fn cmp(&self, other: &Self) -> std::cmp::Ordering {
self.as_u32().cmp(&other.as_u32())
}
}
impl ::std::cmp::PartialOrd for SymbolIndex {
#[inline]
fn partial_cmp(&self, other: &Self) -> Option<std::cmp::Ordering> {
Some(self.cmp(other))
}
}
impl From<SymbolIndex> for u32 {
#[inline]
fn from(v: SymbolIndex) -> u32 { v.as_u32() }
}
impl From<SymbolIndex> for usize {
#[inline]
fn from(v: SymbolIndex) -> usize { v.as_usize() }
}
impl From<usize> for SymbolIndex {
#[inline]
fn from(value: usize) -> Self { Self::from_usize(value) }
}
impl From<u32> for SymbolIndex {
#[inline]
fn from(value: u32) -> Self { Self::from_u32(value) }
}
impl ::std::cmp::Eq for SymbolIndex {}
impl ::std::cmp::PartialEq for SymbolIndex {
fn eq(&self, other: &Self) -> bool { self.as_u32().eq(&other.as_u32()) }
}
impl ::std::marker::StructuralPartialEq for SymbolIndex {}
impl ::std::hash::Hash for SymbolIndex {
fn hash<H: ::std::hash::Hasher>(&self, state: &mut H) {
self.as_u32().hash(state)
}
}
impl ::std::fmt::Debug for SymbolIndex {
fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
fmt.write_fmt(format_args!("{0}", self.as_u32()))
}
}rustc_index::newtype_index! {
2661 #[orderable]
2662 struct SymbolIndex {}
2663}
2664
2665impl Symbol {
2666 pub const fn new(n: u32) -> Self {
2669 Symbol(SymbolIndex::from_u32(n))
2670 }
2671
2672 #[rustc_diagnostic_item = "SymbolIntern"]
2674 #[inline]
2675 pub fn intern(str: &str) -> Self {
2676 with_session_globals(|session_globals| session_globals.symbol_interner.intern_str(str))
2677 }
2678
2679 #[inline]
2688 pub fn as_str(&self) -> &str {
2689 with_session_globals(|session_globals| unsafe {
2690 std::mem::transmute::<&str, &str>(session_globals.symbol_interner.get_str(*self))
2691 })
2692 }
2693
2694 pub fn as_u32(self) -> u32 {
2695 self.0.as_u32()
2696 }
2697
2698 pub fn is_empty(self) -> bool {
2699 self == sym::empty
2700 }
2701
2702 pub fn to_ident_string(self) -> String {
2707 if self == sym::empty { String::new() } else { Ident::with_dummy_span(self).to_string() }
2709 }
2710
2711 pub fn find_similar(
2718 self,
2719 candidates: &[Symbol],
2720 ) -> Option<(Symbol, bool)> {
2721 let lowercase = self.as_str().to_lowercase();
2722 let lowercase_sym = Symbol::intern(&lowercase);
2723 if candidates.contains(&lowercase_sym) {
2724 Some((lowercase_sym, true))
2725 } else if let Some(similar_sym) = find_best_match_for_name(candidates, self, None) {
2726 Some((similar_sym, false))
2727 } else {
2728 None
2729 }
2730 }
2731}
2732
2733impl fmt::Debug for Symbol {
2734 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2735 fmt::Debug::fmt(self.as_str(), f)
2736 }
2737}
2738
2739impl fmt::Display for Symbol {
2740 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2741 fmt::Display::fmt(self.as_str(), f)
2742 }
2743}
2744
2745impl StableHash for Symbol {
2746 #[inline]
2747 fn stable_hash<Hcx: StableHashCtxt>(&self, hcx: &mut Hcx, hasher: &mut StableHasher) {
2748 self.as_str().stable_hash(hcx, hasher);
2749 }
2750}
2751
2752impl StableCompare for Symbol {
2753 const CAN_USE_UNSTABLE_SORT: bool = true;
2754
2755 fn stable_cmp(&self, other: &Self) -> std::cmp::Ordering {
2756 self.as_str().cmp(other.as_str())
2757 }
2758}
2759
2760#[derive(#[automatically_derived]
#[doc(hidden)]
unsafe impl ::core::clone::TrivialClone for ByteSymbol { }
#[automatically_derived]
impl ::core::clone::Clone for ByteSymbol {
#[inline]
fn clone(&self) -> ByteSymbol {
let _: ::core::clone::AssertParamIsClone<SymbolIndex>;
*self
}
}Clone, #[automatically_derived]
impl ::core::marker::Copy for ByteSymbol { }Copy, #[automatically_derived]
impl ::core::marker::StructuralPartialEq for ByteSymbol { }
#[automatically_derived]
impl ::core::cmp::PartialEq for ByteSymbol {
#[inline]
fn eq(&self, other: &ByteSymbol) -> bool { self.0 == other.0 }
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for ByteSymbol {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<SymbolIndex>;
}
}Eq, #[automatically_derived]
impl ::core::cmp::PartialOrd for ByteSymbol {
#[inline]
fn partial_cmp(&self, other: &ByteSymbol)
-> ::core::option::Option<::core::cmp::Ordering> {
::core::option::Option::Some(::core::cmp::Ord::cmp(self, other))
}
}PartialOrd, #[automatically_derived]
impl ::core::cmp::Ord for ByteSymbol {
#[inline]
fn cmp(&self, other: &ByteSymbol) -> ::core::cmp::Ordering {
::core::cmp::Ord::cmp(&self.0, &other.0)
}
}Ord, #[automatically_derived]
impl ::core::hash::Hash for ByteSymbol {
#[inline]
fn hash<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
::core::hash::Hash::hash(&self.0, state)
}
}Hash)]
2763pub struct ByteSymbol(SymbolIndex);
2764
2765impl ByteSymbol {
2766 pub const fn new(n: u32) -> Self {
2769 ByteSymbol(SymbolIndex::from_u32(n))
2770 }
2771
2772 pub fn intern(byte_str: &[u8]) -> Self {
2774 with_session_globals(|session_globals| {
2775 session_globals.symbol_interner.intern_byte_str(byte_str)
2776 })
2777 }
2778
2779 pub fn as_byte_str(&self) -> &[u8] {
2781 with_session_globals(|session_globals| unsafe {
2782 std::mem::transmute::<&[u8], &[u8]>(session_globals.symbol_interner.get_byte_str(*self))
2783 })
2784 }
2785
2786 pub fn as_u32(self) -> u32 {
2787 self.0.as_u32()
2788 }
2789}
2790
2791impl fmt::Debug for ByteSymbol {
2792 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
2793 fmt::Debug::fmt(self.as_byte_str(), f)
2794 }
2795}
2796
2797impl StableHash for ByteSymbol {
2798 #[inline]
2799 fn stable_hash<Hcx: StableHashCtxt>(&self, hcx: &mut Hcx, hasher: &mut StableHasher) {
2800 self.as_byte_str().stable_hash(hcx, hasher);
2801 }
2802}
2803
2804pub(crate) struct Interner(Lock<InternerInner>);
2809
2810struct InternerInner {
2816 arena: DroplessArena,
2817 indices: HashTable<(&'static [u8], u32)>,
2818 byte_strs: Vec<&'static [u8]>,
2819}
2820
2821impl Interner {
2822 fn prefill(init: &[&'static str], extra: &[&'static str]) -> Self {
2826 let values = init.iter().copied().chain(extra.iter().copied()).map(|str| str.as_bytes());
2827 let (size_hint, _) = values.size_hint();
2828 let mut conflicting_values: Vec<&[u8]> = Vec::new();
2829
2830 let mut indices: HashTable<(&'static [u8], u32)> = HashTable::with_capacity(size_hint);
2831 let hasher = FxBuildHasher::default();
2832
2833 let mut byte_strs: Vec<&'static [u8]> = Vec::with_capacity(size_hint);
2834
2835 for v in values {
2836 match indices.entry(hasher.hash_one(&v), |&(s, _)| s == v, |&(s, _)| hasher.hash_one(s))
2837 {
2838 Entry::Occupied(v) => conflicting_values.push(v.get().0),
2839 Entry::Vacant(view) => {
2840 view.insert((v, byte_strs.len() as u32));
2841 byte_strs.push(v);
2842 }
2843 }
2844 }
2845
2846 if conflicting_values.len() != 0 {
2847 {
::core::panicking::panic_fmt(format_args!("duplicate symbols in the rustc symbol list and the extra symbols added by the driver: {0:?}",
conflicting_values));
}panic!(
2848 "duplicate symbols in the rustc symbol list and the extra symbols added by the driver: {:?}",
2849 conflicting_values
2850 )
2851 }
2852
2853 Interner(Lock::new(InternerInner { arena: Default::default(), indices, byte_strs }))
2854 }
2855
2856 fn intern_str(&self, str: &str) -> Symbol {
2857 Symbol::new(self.intern_inner(str.as_bytes()))
2858 }
2859
2860 fn intern_byte_str(&self, byte_str: &[u8]) -> ByteSymbol {
2861 ByteSymbol::new(self.intern_inner(byte_str))
2862 }
2863
2864 #[inline]
2865 fn intern_inner(&self, byte_str: &[u8]) -> u32 {
2866 let hasher = FxBuildHasher::default();
2867 let hash_of_byte_str = hasher.hash_one(byte_str);
2868
2869 self.0.with_lock(|inner| {
2870 match inner.indices.entry(
2871 hash_of_byte_str,
2872 |&(s, _)| s == byte_str,
2873 |&(s, _)| hasher.hash_one(s),
2874 ) {
2875 Entry::Occupied(v) => v.get().1,
2876 Entry::Vacant(view) => {
2877 let byte_str: &[u8] = inner.arena.alloc_slice(byte_str);
2878
2879 let byte_str: &'static [u8] = unsafe { &*(byte_str as *const [u8]) };
2882 let idx = inner.byte_strs.len() as u32;
2883 view.insert((byte_str, idx));
2884 inner.byte_strs.push(byte_str);
2885 idx
2886 }
2887 }
2888 })
2889 }
2890
2891 fn get_str(&self, symbol: Symbol) -> &str {
2895 let byte_str = self.get_inner(symbol.0.as_usize());
2896 unsafe { str::from_utf8_unchecked(byte_str) }
2898 }
2899
2900 fn get_byte_str(&self, symbol: ByteSymbol) -> &[u8] {
2904 self.get_inner(symbol.0.as_usize())
2905 }
2906
2907 fn get_inner(&self, index: usize) -> &[u8] {
2908 self.0.with_lock(|inner| inner.byte_strs[index])
2909 }
2910}
2911
2912pub mod kw {
2918 pub use super::kw_generated::*;
2919}
2920
2921#[diagnostic::on_unknown(
2927 label = "`{Unresolved}` is not a pre-interned symbol",
2928 note = "consider adding `{Unresolved}` to the `symbols!` invocation in compiler/rustc_span/src/symbol.rs"
2929)]
2930pub mod sym {
2931 use super::Symbol;
2932 pub use super::kw::MacroRules as macro_rules;
2934 #[doc(inline)]
2935 pub use super::sym_generated::*;
2936
2937 pub const C: Symbol = ascii_letter_digit('C').unwrap();
2939
2940 #[expect(non_upper_case_globals)]
2942 pub const f: Symbol = ascii_letter_digit('f').unwrap();
2943 #[expect(non_upper_case_globals)]
2944 pub const d: Symbol = ascii_letter_digit('d').unwrap();
2945
2946 pub fn integer<N: TryInto<usize> + Copy + itoa::Integer>(n: N) -> Symbol {
2951 if let Result::Ok(idx) = n.try_into() {
2952 if idx < 10 {
2953 return Symbol::new(super::SYMBOL_DIGITS_BASE + idx as u32);
2954 }
2955 }
2956 let mut buffer = itoa::Buffer::new();
2957 let printed = buffer.format(n);
2958 Symbol::intern(printed)
2959 }
2960
2961 pub const fn ascii_letter_digit(c: char) -> Option<Symbol> {
2962 let i = c as u32;
2963 Option::Some(Symbol::new(match c {
2964 '0'..='9' => super::SYMBOL_DIGITS_BASE + (i - '0' as u32),
2965 'A'..='Z' => super::SYMBOL_UPPERCASE_LETTERS_BASE + (i - 'A' as u32),
2966 'a'..='z' => super::SYMBOL_LOWERCASE_LETTERS_BASE + (i - 'a' as u32),
2967 _ => return Option::None,
2968 }))
2969 }
2970
2971 pub fn character(c: char) -> Symbol {
2972 ascii_letter_digit(c).unwrap_or_else(|| {
2973 let mut buf: [u8; char::MAX_LEN_UTF8] = Default::default();
2974 Symbol::intern(c.encode_utf8(&mut buf))
2975 })
2976 }
2977}
2978
2979impl Symbol {
2980 fn is_special(self) -> bool {
2981 self <= kw::Underscore
2982 }
2983
2984 fn is_used_keyword_always(self) -> bool {
2985 self >= kw::As && self <= kw::While
2986 }
2987
2988 fn is_unused_keyword_always(self) -> bool {
2989 self >= kw::Abstract && self <= kw::Yield
2990 }
2991
2992 fn is_used_keyword_conditional(self, edition: impl FnOnce() -> Edition) -> bool {
2993 (self >= kw::Async && self <= kw::Dyn) && edition() >= Edition::Edition2018
2994 }
2995
2996 fn is_unused_keyword_conditional(self, edition: impl Copy + FnOnce() -> Edition) -> bool {
2997 self == kw::Gen && edition().at_least_rust_2024()
2998 || self == kw::Try && edition().at_least_rust_2018()
2999 }
3000
3001 pub fn is_reserved(self, edition: impl Copy + FnOnce() -> Edition) -> bool {
3002 self.is_special()
3003 || self.is_used_keyword_always()
3004 || self.is_unused_keyword_always()
3005 || self.is_used_keyword_conditional(edition)
3006 || self.is_unused_keyword_conditional(edition)
3007 }
3008
3009 pub fn is_weak(self) -> bool {
3010 self >= kw::Auto && self <= kw::Yeet
3011 }
3012
3013 pub fn is_path_segment_keyword(self) -> bool {
3015 self == kw::Super
3016 || self == kw::SelfLower
3017 || self == kw::SelfUpper
3018 || self == kw::Crate
3019 || self == kw::PathRoot
3020 || self == kw::DollarCrate
3021 }
3022
3023 pub fn is_bool_lit(self) -> bool {
3025 self == kw::True || self == kw::False
3026 }
3027
3028 pub fn can_be_raw(self) -> bool {
3030 self != sym::empty && self != kw::Underscore && !self.is_path_segment_keyword()
3031 }
3032
3033 pub fn is_predefined(index: u32) -> bool {
3037 index < PREDEFINED_SYMBOLS_COUNT
3038 }
3039}
3040
3041impl Ident {
3042 pub fn is_special(self) -> bool {
3045 self.name.is_special()
3046 }
3047
3048 pub fn is_used_keyword(self) -> bool {
3050 self.name.is_used_keyword_always()
3052 || self.name.is_used_keyword_conditional(|| self.span.edition())
3053 }
3054
3055 pub fn is_unused_keyword(self) -> bool {
3057 self.name.is_unused_keyword_always()
3059 || self.name.is_unused_keyword_conditional(|| self.span.edition())
3060 }
3061
3062 pub fn is_reserved(self) -> bool {
3064 self.name.is_reserved(|| self.span.edition())
3066 }
3067
3068 pub fn is_path_segment_keyword(self) -> bool {
3070 self.name.is_path_segment_keyword()
3071 }
3072
3073 pub fn is_raw_guess(self) -> bool {
3076 self.name.can_be_raw() && self.is_reserved()
3077 }
3078
3079 pub fn is_reserved_lifetime(self) -> bool {
3082 self.is_reserved() && ![kw::Underscore, kw::Static].contains(&self.name)
3083 }
3084
3085 pub fn is_raw_lifetime_guess(self) -> bool {
3086 if self.name.as_str() == "'" {
3089 return false;
3090 }
3091 let ident_without_apostrophe = self.without_first_quote();
3092 ident_without_apostrophe.name != self.name
3093 && ident_without_apostrophe.name.can_be_raw()
3094 && ident_without_apostrophe.is_reserved_lifetime()
3095 }
3096
3097 pub fn guess_print_mode(self) -> IdentPrintMode {
3098 if self.is_raw_lifetime_guess() {
3099 IdentPrintMode::RawLifetime
3100 } else if self.is_raw_guess() {
3101 IdentPrintMode::RawIdent
3102 } else {
3103 IdentPrintMode::Normal
3104 }
3105 }
3106
3107 pub fn is_numeric(self) -> bool {
3110 self.as_str().bytes().all(|b| b.is_ascii_digit())
3111 }
3112}
3113
3114pub fn used_keywords(edition: impl Copy + FnOnce() -> Edition) -> Vec<Symbol> {
3119 (kw::DollarCrate.as_u32()..kw::Yeet.as_u32())
3120 .filter_map(|kw| {
3121 let kw = Symbol::new(kw);
3122 if kw.is_used_keyword_always() || kw.is_used_keyword_conditional(edition) {
3123 Some(kw)
3124 } else {
3125 None
3126 }
3127 })
3128 .collect()
3129}