Struct rustc::hir::lowering::LoweringContext [−][src]
pub struct LoweringContext<'a> { crate_root: Option<&'static str>, sess: &'a Session, cstore: &'a CrateStore, resolver: &'a mut Resolver, name_map: FxHashMap<Ident, Name>, items: BTreeMap<NodeId, Item>, trait_items: BTreeMap<TraitItemId, TraitItem>, impl_items: BTreeMap<ImplItemId, ImplItem>, bodies: BTreeMap<BodyId, Body>, exported_macros: Vec<MacroDef>, trait_impls: BTreeMap<DefId, Vec<NodeId>>, trait_auto_impl: BTreeMap<DefId, NodeId>, is_generator: bool, catch_scopes: Vec<NodeId>, loop_scopes: Vec<NodeId>, is_in_loop_condition: bool, is_in_trait_impl: bool, anonymous_lifetime_mode: AnonymousLifetimeMode, in_band_ty_params: Vec<TyParam>, lifetimes_to_define: Vec<(Span, LifetimeName)>, is_collecting_in_band_lifetimes: bool, in_scope_lifetimes: Vec<Name>, type_def_lifetime_params: DefIdMap<usize>, current_hir_id_owner: Vec<(DefIndex, u32)>, item_local_id_counters: NodeMap<u32>, node_id_to_hir_id: IndexVec<NodeId, HirId>, }
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Fields
crate_root: Option<&'static str>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
sess: &'a Session
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
cstore: &'a CrateStore
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
resolver: &'a mut Resolver
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
name_map: FxHashMap<Ident, Name>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
items: BTreeMap<NodeId, Item>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
The items being lowered are collected here.
trait_items: BTreeMap<TraitItemId, TraitItem>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
impl_items: BTreeMap<ImplItemId, ImplItem>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
bodies: BTreeMap<BodyId, Body>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
exported_macros: Vec<MacroDef>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
trait_impls: BTreeMap<DefId, Vec<NodeId>>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
trait_auto_impl: BTreeMap<DefId, NodeId>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
is_generator: bool
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
catch_scopes: Vec<NodeId>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
loop_scopes: Vec<NodeId>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
is_in_loop_condition: bool
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
is_in_trait_impl: bool
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
anonymous_lifetime_mode: AnonymousLifetimeMode
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
What to do when we encounter either an "anonymous lifetime
reference". The term "anonymous" is meant to encompass both
'_
lifetimes as well as fully elided cases where nothing is
written at all (e.g., &T
or std::cell::Ref<T>
).
in_band_ty_params: Vec<TyParam>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
lifetimes_to_define: Vec<(Span, LifetimeName)>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
is_collecting_in_band_lifetimes: bool
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
in_scope_lifetimes: Vec<Name>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
type_def_lifetime_params: DefIdMap<usize>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
current_hir_id_owner: Vec<(DefIndex, u32)>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
item_local_id_counters: NodeMap<u32>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
node_id_to_hir_id: IndexVec<NodeId, HirId>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Methods
impl<'a> LoweringContext<'a>
[src]
impl<'a> LoweringContext<'a>
fn lower_crate(self, c: &Crate) -> Crate
[src]
fn lower_crate(self, c: &Crate) -> Crate
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn allocate_hir_id_counter<T: Debug>(&mut self, owner: NodeId, debug: &T)
[src]
fn allocate_hir_id_counter<T: Debug>(&mut self, owner: NodeId, debug: &T)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_node_id_generic<F>(
&mut self,
ast_node_id: NodeId,
alloc_hir_id: F
) -> LoweredNodeId where
F: FnOnce(&mut Self) -> HirId,
[src]
fn lower_node_id_generic<F>(
&mut self,
ast_node_id: NodeId,
alloc_hir_id: F
) -> LoweredNodeId where
F: FnOnce(&mut Self) -> HirId,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn with_hir_id_owner<F, T>(&mut self, owner: NodeId, f: F) -> T where
F: FnOnce(&mut Self) -> T,
[src]
fn with_hir_id_owner<F, T>(&mut self, owner: NodeId, f: F) -> T where
F: FnOnce(&mut Self) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_node_id(&mut self, ast_node_id: NodeId) -> LoweredNodeId
[src]
fn lower_node_id(&mut self, ast_node_id: NodeId) -> LoweredNodeId
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
This method allocates a new HirId for the given NodeId and stores it in the LoweringContext's NodeId => HirId map. Take care not to call this method if the resulting HirId is then not actually used in the HIR, as that would trigger an assertion in the HirIdValidator later on, which makes sure that all NodeIds got mapped properly. Calling the method twice with the same NodeId is fine though.
fn lower_node_id_with_owner(
&mut self,
ast_node_id: NodeId,
owner: NodeId
) -> LoweredNodeId
[src]
fn lower_node_id_with_owner(
&mut self,
ast_node_id: NodeId,
owner: NodeId
) -> LoweredNodeId
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn record_body(&mut self, value: Expr, decl: Option<&FnDecl>) -> BodyId
[src]
fn record_body(&mut self, value: Expr, decl: Option<&FnDecl>) -> BodyId
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn next_id(&mut self) -> LoweredNodeId
[src]
fn next_id(&mut self) -> LoweredNodeId
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expect_full_def(&mut self, id: NodeId) -> Def
[src]
fn expect_full_def(&mut self, id: NodeId) -> Def
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expect_full_def_from_use(
&mut self,
id: NodeId
) -> impl Iterator<Item = Def>
[src]
fn expect_full_def_from_use(
&mut self,
id: NodeId
) -> impl Iterator<Item = Def>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn diagnostic(&self) -> &Handler
[src]
fn diagnostic(&self) -> &Handler
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn str_to_ident(&self, s: &'static str) -> Name
[src]
fn str_to_ident(&self, s: &'static str) -> Name
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn allow_internal_unstable(
&self,
reason: CompilerDesugaringKind,
span: Span
) -> Span
[src]
fn allow_internal_unstable(
&self,
reason: CompilerDesugaringKind,
span: Span
) -> Span
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn with_anonymous_lifetime_mode<R>(
&mut self,
anonymous_lifetime_mode: AnonymousLifetimeMode,
op: impl FnOnce(&mut Self) -> R
) -> R
[src]
fn with_anonymous_lifetime_mode<R>(
&mut self,
anonymous_lifetime_mode: AnonymousLifetimeMode,
op: impl FnOnce(&mut Self) -> R
) -> R
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn collect_in_band_defs<T, F>(
&mut self,
parent_id: DefId,
anonymous_lifetime_mode: AnonymousLifetimeMode,
f: F
) -> (Vec<GenericParam>, T) where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn collect_in_band_defs<T, F>(
&mut self,
parent_id: DefId,
anonymous_lifetime_mode: AnonymousLifetimeMode,
f: F
) -> (Vec<GenericParam>, T) where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Creates a new hir::GenericParam for every new lifetime and
type parameter encountered while evaluating f
. Definitions
are created with the parent provided. If no parent_id
is
provided, no definitions will be returned.
Presuming that in-band lifetimes are enabled, then
self.anonymous_lifetime_mode
will be updated to match the
argument while f
is running (and restored afterwards).
fn maybe_collect_in_band_lifetime(&mut self, span: Span, name: Name)
[src]
fn maybe_collect_in_band_lifetime(&mut self, span: Span, name: Name)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
When there is a reference to some lifetime 'a
, and in-band
lifetimes are enabled, then we want to push that lifetime into
the vector of names to define later. In that case, it will get
added to the appropriate generics.
fn collect_fresh_in_band_lifetime(&mut self, span: Span) -> LifetimeName
[src]
fn collect_fresh_in_band_lifetime(&mut self, span: Span) -> LifetimeName
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
When we have either an elided or '_
lifetime in an impl
header, we convert it to
fn with_in_scope_lifetime_defs<'l, T, F>(
&mut self,
lt_defs: impl Iterator<Item = &'l LifetimeDef>,
f: F
) -> T where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn with_in_scope_lifetime_defs<'l, T, F>(
&mut self,
lt_defs: impl Iterator<Item = &'l LifetimeDef>,
f: F
) -> T where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn with_parent_impl_lifetime_defs<T, F>(
&mut self,
lt_defs: &[LifetimeDef],
f: F
) -> T where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn with_parent_impl_lifetime_defs<T, F>(
&mut self,
lt_defs: &[LifetimeDef],
f: F
) -> T where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn add_in_band_defs<F, T>(
&mut self,
generics: &Generics,
parent_id: DefId,
anonymous_lifetime_mode: AnonymousLifetimeMode,
f: F
) -> (Generics, T) where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn add_in_band_defs<F, T>(
&mut self,
generics: &Generics,
parent_id: DefId,
anonymous_lifetime_mode: AnonymousLifetimeMode,
f: F
) -> (Generics, T) where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Appends in-band lifetime defs and argument-position impl Trait
defs to the existing set of generics.
Presuming that in-band lifetimes are enabled, then
self.anonymous_lifetime_mode
will be updated to match the
argument while f
is running (and restored afterwards).
fn with_catch_scope<T, F>(&mut self, catch_id: NodeId, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn with_catch_scope<T, F>(&mut self, catch_id: NodeId, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_body<F>(&mut self, decl: Option<&FnDecl>, f: F) -> BodyId where
F: FnOnce(&mut LoweringContext) -> Expr,
[src]
fn lower_body<F>(&mut self, decl: Option<&FnDecl>, f: F) -> BodyId where
F: FnOnce(&mut LoweringContext) -> Expr,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn with_loop_scope<T, F>(&mut self, loop_id: NodeId, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn with_loop_scope<T, F>(&mut self, loop_id: NodeId, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn with_loop_condition_scope<T, F>(&mut self, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn with_loop_condition_scope<T, F>(&mut self, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn with_new_scopes<T, F>(&mut self, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
[src]
fn with_new_scopes<T, F>(&mut self, f: F) -> T where
F: FnOnce(&mut LoweringContext) -> T,
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn def_key(&mut self, id: DefId) -> DefKey
[src]
fn def_key(&mut self, id: DefId) -> DefKey
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_ident(&mut self, ident: Ident) -> Name
[src]
fn lower_ident(&mut self, ident: Ident) -> Name
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_label(&mut self, label: Option<Label>) -> Option<Label>
[src]
fn lower_label(&mut self, label: Option<Label>) -> Option<Label>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_loop_destination(
&mut self,
destination: Option<(NodeId, Label)>
) -> Destination
[src]
fn lower_loop_destination(
&mut self,
destination: Option<(NodeId, Label)>
) -> Destination
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_attrs(&mut self, attrs: &[Attribute]) -> HirVec<Attribute>
[src]
fn lower_attrs(&mut self, attrs: &[Attribute]) -> HirVec<Attribute>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_attr(&mut self, attr: &Attribute) -> Attribute
[src]
fn lower_attr(&mut self, attr: &Attribute) -> Attribute
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_token_stream(&mut self, tokens: TokenStream) -> TokenStream
[src]
fn lower_token_stream(&mut self, tokens: TokenStream) -> TokenStream
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_token_tree(&mut self, tree: TokenTree) -> TokenStream
[src]
fn lower_token_tree(&mut self, tree: TokenTree) -> TokenStream
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_token(&mut self, token: Token, span: Span) -> TokenStream
[src]
fn lower_token(&mut self, token: Token, span: Span) -> TokenStream
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_arm(&mut self, arm: &Arm) -> Arm
[src]
fn lower_arm(&mut self, arm: &Arm) -> Arm
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_ty_binding(
&mut self,
b: &TypeBinding,
itctx: ImplTraitContext
) -> TypeBinding
[src]
fn lower_ty_binding(
&mut self,
b: &TypeBinding,
itctx: ImplTraitContext
) -> TypeBinding
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_ty(&mut self, t: &Ty, itctx: ImplTraitContext) -> P<Ty>
[src]
fn lower_ty(&mut self, t: &Ty, itctx: ImplTraitContext) -> P<Ty>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lifetimes_from_impl_trait_bounds(
&mut self,
exist_ty_id: NodeId,
parent_index: DefIndex,
bounds: &TyParamBounds
) -> (HirVec<Lifetime>, HirVec<GenericParam>)
[src]
fn lifetimes_from_impl_trait_bounds(
&mut self,
exist_ty_id: NodeId,
parent_index: DefIndex,
bounds: &TyParamBounds
) -> (HirVec<Lifetime>, HirVec<GenericParam>)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_foreign_mod(&mut self, fm: &ForeignMod) -> ForeignMod
[src]
fn lower_foreign_mod(&mut self, fm: &ForeignMod) -> ForeignMod
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_global_asm(&mut self, ga: &GlobalAsm) -> P<GlobalAsm>
[src]
fn lower_global_asm(&mut self, ga: &GlobalAsm) -> P<GlobalAsm>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_variant(&mut self, v: &Variant) -> Variant
[src]
fn lower_variant(&mut self, v: &Variant) -> Variant
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_qpath(
&mut self,
id: NodeId,
qself: &Option<QSelf>,
p: &Path,
param_mode: ParamMode,
itctx: ImplTraitContext
) -> QPath
[src]
fn lower_qpath(
&mut self,
id: NodeId,
qself: &Option<QSelf>,
p: &Path,
param_mode: ParamMode,
itctx: ImplTraitContext
) -> QPath
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_path_extra(
&mut self,
def: Def,
p: &Path,
name: Option<Name>,
param_mode: ParamMode
) -> Path
[src]
fn lower_path_extra(
&mut self,
def: Def,
p: &Path,
name: Option<Name>,
param_mode: ParamMode
) -> Path
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_path(&mut self, id: NodeId, p: &Path, param_mode: ParamMode) -> Path
[src]
fn lower_path(&mut self, id: NodeId, p: &Path, param_mode: ParamMode) -> Path
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_path_segment(
&mut self,
path_span: Span,
segment: &PathSegment,
param_mode: ParamMode,
expected_lifetimes: usize,
parenthesized_generic_args: ParenthesizedGenericArgs,
itctx: ImplTraitContext
) -> PathSegment
[src]
fn lower_path_segment(
&mut self,
path_span: Span,
segment: &PathSegment,
param_mode: ParamMode,
expected_lifetimes: usize,
parenthesized_generic_args: ParenthesizedGenericArgs,
itctx: ImplTraitContext
) -> PathSegment
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_angle_bracketed_parameter_data(
&mut self,
data: &AngleBracketedParameterData,
param_mode: ParamMode,
itctx: ImplTraitContext
) -> (PathParameters, bool)
[src]
fn lower_angle_bracketed_parameter_data(
&mut self,
data: &AngleBracketedParameterData,
param_mode: ParamMode,
itctx: ImplTraitContext
) -> (PathParameters, bool)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_parenthesized_parameter_data(
&mut self,
data: &ParenthesizedParameterData
) -> (PathParameters, bool)
[src]
fn lower_parenthesized_parameter_data(
&mut self,
data: &ParenthesizedParameterData
) -> (PathParameters, bool)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_local(&mut self, l: &Local) -> P<Local>
[src]
fn lower_local(&mut self, l: &Local) -> P<Local>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_mutability(&mut self, m: Mutability) -> Mutability
[src]
fn lower_mutability(&mut self, m: Mutability) -> Mutability
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_arg(&mut self, arg: &Arg) -> Arg
[src]
fn lower_arg(&mut self, arg: &Arg) -> Arg
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_fn_args_to_names(&mut self, decl: &FnDecl) -> HirVec<Spanned<Name>>
[src]
fn lower_fn_args_to_names(&mut self, decl: &FnDecl) -> HirVec<Spanned<Name>>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_fn_decl(
&mut self,
decl: &FnDecl,
fn_def_id: Option<DefId>,
impl_trait_return_allow: bool
) -> P<FnDecl>
[src]
fn lower_fn_decl(
&mut self,
decl: &FnDecl,
fn_def_id: Option<DefId>,
impl_trait_return_allow: bool
) -> P<FnDecl>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_ty_param_bound(
&mut self,
tpb: &TyParamBound,
itctx: ImplTraitContext
) -> TyParamBound
[src]
fn lower_ty_param_bound(
&mut self,
tpb: &TyParamBound,
itctx: ImplTraitContext
) -> TyParamBound
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_ty_param(
&mut self,
tp: &TyParam,
add_bounds: &[TyParamBound],
itctx: ImplTraitContext
) -> TyParam
[src]
fn lower_ty_param(
&mut self,
tp: &TyParam,
add_bounds: &[TyParamBound],
itctx: ImplTraitContext
) -> TyParam
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_lifetime(&mut self, l: &Lifetime) -> Lifetime
[src]
fn lower_lifetime(&mut self, l: &Lifetime) -> Lifetime
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn new_named_lifetime(
&mut self,
id: NodeId,
span: Span,
name: LifetimeName
) -> Lifetime
[src]
fn new_named_lifetime(
&mut self,
id: NodeId,
span: Span,
name: LifetimeName
) -> Lifetime
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_lifetime_def(&mut self, l: &LifetimeDef) -> LifetimeDef
[src]
fn lower_lifetime_def(&mut self, l: &LifetimeDef) -> LifetimeDef
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_lifetimes(&mut self, lts: &Vec<Lifetime>) -> HirVec<Lifetime>
[src]
fn lower_lifetimes(&mut self, lts: &Vec<Lifetime>) -> HirVec<Lifetime>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_generic_params(
&mut self,
params: &Vec<GenericParam>,
add_bounds: &NodeMap<Vec<TyParamBound>>,
itctx: ImplTraitContext
) -> HirVec<GenericParam>
[src]
fn lower_generic_params(
&mut self,
params: &Vec<GenericParam>,
add_bounds: &NodeMap<Vec<TyParamBound>>,
itctx: ImplTraitContext
) -> HirVec<GenericParam>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_generics(&mut self, g: &Generics, itctx: ImplTraitContext) -> Generics
[src]
fn lower_generics(&mut self, g: &Generics, itctx: ImplTraitContext) -> Generics
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_where_clause(&mut self, wc: &WhereClause) -> WhereClause
[src]
fn lower_where_clause(&mut self, wc: &WhereClause) -> WhereClause
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_where_predicate(&mut self, pred: &WherePredicate) -> WherePredicate
[src]
fn lower_where_predicate(&mut self, pred: &WherePredicate) -> WherePredicate
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_variant_data(&mut self, vdata: &VariantData) -> VariantData
[src]
fn lower_variant_data(&mut self, vdata: &VariantData) -> VariantData
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_trait_ref(&mut self, p: &TraitRef, itctx: ImplTraitContext) -> TraitRef
[src]
fn lower_trait_ref(&mut self, p: &TraitRef, itctx: ImplTraitContext) -> TraitRef
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_poly_trait_ref(
&mut self,
p: &PolyTraitRef,
itctx: ImplTraitContext
) -> PolyTraitRef
[src]
fn lower_poly_trait_ref(
&mut self,
p: &PolyTraitRef,
itctx: ImplTraitContext
) -> PolyTraitRef
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_struct_field(
&mut self,
(index, f): (usize, &StructField)
) -> StructField
[src]
fn lower_struct_field(
&mut self,
(index, f): (usize, &StructField)
) -> StructField
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_field(&mut self, f: &Field) -> Field
[src]
fn lower_field(&mut self, f: &Field) -> Field
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_mt(&mut self, mt: &MutTy, itctx: ImplTraitContext) -> MutTy
[src]
fn lower_mt(&mut self, mt: &MutTy, itctx: ImplTraitContext) -> MutTy
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_bounds(
&mut self,
bounds: &[TyParamBound],
itctx: ImplTraitContext
) -> TyParamBounds
[src]
fn lower_bounds(
&mut self,
bounds: &[TyParamBound],
itctx: ImplTraitContext
) -> TyParamBounds
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_block(&mut self, b: &Block, targeted_by_break: bool) -> P<Block>
[src]
fn lower_block(&mut self, b: &Block, targeted_by_break: bool) -> P<Block>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_item_kind(
&mut self,
id: NodeId,
name: &mut Name,
attrs: &HirVec<Attribute>,
vis: &mut Visibility,
i: &ItemKind
) -> Item_
[src]
fn lower_item_kind(
&mut self,
id: NodeId,
name: &mut Name,
attrs: &HirVec<Attribute>,
vis: &mut Visibility,
i: &ItemKind
) -> Item_
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_use_tree(
&mut self,
tree: &UseTree,
prefix: &Path,
id: NodeId,
vis: &mut Visibility,
name: &mut Name,
attrs: &HirVec<Attribute>
) -> Item_
[src]
fn lower_use_tree(
&mut self,
tree: &UseTree,
prefix: &Path,
id: NodeId,
vis: &mut Visibility,
name: &mut Name,
attrs: &HirVec<Attribute>
) -> Item_
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_trait_item(&mut self, i: &TraitItem) -> TraitItem
[src]
fn lower_trait_item(&mut self, i: &TraitItem) -> TraitItem
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_trait_item_ref(&mut self, i: &TraitItem) -> TraitItemRef
[src]
fn lower_trait_item_ref(&mut self, i: &TraitItem) -> TraitItemRef
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_impl_item(&mut self, i: &ImplItem) -> ImplItem
[src]
fn lower_impl_item(&mut self, i: &ImplItem) -> ImplItem
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_impl_item_ref(&mut self, i: &ImplItem) -> ImplItemRef
[src]
fn lower_impl_item_ref(&mut self, i: &ImplItem) -> ImplItemRef
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_mod(&mut self, m: &Mod) -> Mod
[src]
fn lower_mod(&mut self, m: &Mod) -> Mod
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_item_id(&mut self, i: &Item) -> SmallVector<ItemId>
[src]
fn lower_item_id(&mut self, i: &Item) -> SmallVector<ItemId>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_item_id_use_tree(
&mut self,
tree: &UseTree,
base_id: NodeId,
vec: &mut SmallVector<ItemId>
)
[src]
fn lower_item_id_use_tree(
&mut self,
tree: &UseTree,
base_id: NodeId,
vec: &mut SmallVector<ItemId>
)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
pub fn lower_item(&mut self, i: &Item) -> Option<Item>
[src]
pub fn lower_item(&mut self, i: &Item) -> Option<Item>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_foreign_item(&mut self, i: &ForeignItem) -> ForeignItem
[src]
fn lower_foreign_item(&mut self, i: &ForeignItem) -> ForeignItem
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_method_sig(
&mut self,
sig: &MethodSig,
fn_def_id: DefId,
impl_trait_return_allow: bool
) -> MethodSig
[src]
fn lower_method_sig(
&mut self,
sig: &MethodSig,
fn_def_id: DefId,
impl_trait_return_allow: bool
) -> MethodSig
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_is_auto(&mut self, a: IsAuto) -> IsAuto
[src]
fn lower_is_auto(&mut self, a: IsAuto) -> IsAuto
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_unsafety(&mut self, u: Unsafety) -> Unsafety
[src]
fn lower_unsafety(&mut self, u: Unsafety) -> Unsafety
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_constness(&mut self, c: Spanned<Constness>) -> Constness
[src]
fn lower_constness(&mut self, c: Spanned<Constness>) -> Constness
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_unop(&mut self, u: UnOp) -> UnOp
[src]
fn lower_unop(&mut self, u: UnOp) -> UnOp
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_binop(&mut self, b: BinOp) -> BinOp
[src]
fn lower_binop(&mut self, b: BinOp) -> BinOp
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_pat(&mut self, p: &Pat) -> P<Pat>
[src]
fn lower_pat(&mut self, p: &Pat) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_range_end(&mut self, e: &RangeEnd) -> RangeEnd
[src]
fn lower_range_end(&mut self, e: &RangeEnd) -> RangeEnd
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_anon_const(&mut self, c: &AnonConst) -> AnonConst
[src]
fn lower_anon_const(&mut self, c: &AnonConst) -> AnonConst
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_expr(&mut self, e: &Expr) -> Expr
[src]
fn lower_expr(&mut self, e: &Expr) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_stmt(&mut self, s: &Stmt) -> SmallVector<Stmt>
[src]
fn lower_stmt(&mut self, s: &Stmt) -> SmallVector<Stmt>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_capture_clause(&mut self, c: CaptureBy) -> CaptureClause
[src]
fn lower_capture_clause(&mut self, c: CaptureBy) -> CaptureClause
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_visibility(
&mut self,
v: &Visibility,
explicit_owner: Option<NodeId>
) -> Visibility
[src]
fn lower_visibility(
&mut self,
v: &Visibility,
explicit_owner: Option<NodeId>
) -> Visibility
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
If an explicit_owner
is given, this method allocates the HirId
in
the address space of that item instead of the item currently being
lowered. This can happen during lower_impl_item_ref()
where we need to
lower a Visibility
value although we haven't lowered the owning
ImplItem
in question yet.
fn lower_defaultness(&mut self, d: Defaultness, has_value: bool) -> Defaultness
[src]
fn lower_defaultness(&mut self, d: Defaultness, has_value: bool) -> Defaultness
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_block_check_mode(&mut self, b: &BlockCheckMode) -> BlockCheckMode
[src]
fn lower_block_check_mode(&mut self, b: &BlockCheckMode) -> BlockCheckMode
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_binding_mode(&mut self, b: &BindingMode) -> BindingAnnotation
[src]
fn lower_binding_mode(&mut self, b: &BindingMode) -> BindingAnnotation
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_unsafe_source(&mut self, u: UnsafeSource) -> UnsafeSource
[src]
fn lower_unsafe_source(&mut self, u: UnsafeSource) -> UnsafeSource
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_impl_polarity(&mut self, i: ImplPolarity) -> ImplPolarity
[src]
fn lower_impl_polarity(&mut self, i: ImplPolarity) -> ImplPolarity
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn lower_trait_bound_modifier(
&mut self,
f: TraitBoundModifier
) -> TraitBoundModifier
[src]
fn lower_trait_bound_modifier(
&mut self,
f: TraitBoundModifier
) -> TraitBoundModifier
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn arm(&mut self, pats: HirVec<P<Pat>>, expr: P<Expr>) -> Arm
[src]
fn arm(&mut self, pats: HirVec<P<Pat>>, expr: P<Expr>) -> Arm
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn field(&mut self, ident: Ident, expr: P<Expr>, span: Span) -> Field
[src]
fn field(&mut self, ident: Ident, expr: P<Expr>, span: Span) -> Field
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_break(&mut self, span: Span, attrs: ThinVec<Attribute>) -> P<Expr>
[src]
fn expr_break(&mut self, span: Span, attrs: ThinVec<Attribute>) -> P<Expr>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_call(&mut self, span: Span, e: P<Expr>, args: HirVec<Expr>) -> Expr
[src]
fn expr_call(&mut self, span: Span, e: P<Expr>, args: HirVec<Expr>) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_ident(&mut self, span: Span, id: Name, binding: NodeId) -> Expr
[src]
fn expr_ident(&mut self, span: Span, id: Name, binding: NodeId) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_ident_with_attrs(
&mut self,
span: Span,
id: Name,
binding: NodeId,
attrs: ThinVec<Attribute>
) -> Expr
[src]
fn expr_ident_with_attrs(
&mut self,
span: Span,
id: Name,
binding: NodeId,
attrs: ThinVec<Attribute>
) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_mut_addr_of(&mut self, span: Span, e: P<Expr>) -> Expr
[src]
fn expr_mut_addr_of(&mut self, span: Span, e: P<Expr>) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_std_path(
&mut self,
span: Span,
components: &[&str],
attrs: ThinVec<Attribute>
) -> Expr
[src]
fn expr_std_path(
&mut self,
span: Span,
components: &[&str],
attrs: ThinVec<Attribute>
) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_match(
&mut self,
span: Span,
arg: P<Expr>,
arms: HirVec<Arm>,
source: MatchSource
) -> Expr
[src]
fn expr_match(
&mut self,
span: Span,
arg: P<Expr>,
arms: HirVec<Arm>,
source: MatchSource
) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_block(&mut self, b: P<Block>, attrs: ThinVec<Attribute>) -> Expr
[src]
fn expr_block(&mut self, b: P<Block>, attrs: ThinVec<Attribute>) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr_tuple(&mut self, sp: Span, exprs: HirVec<Expr>) -> P<Expr>
[src]
fn expr_tuple(&mut self, sp: Span, exprs: HirVec<Expr>) -> P<Expr>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn expr(&mut self, span: Span, node: Expr_, attrs: ThinVec<Attribute>) -> Expr
[src]
fn expr(&mut self, span: Span, node: Expr_, attrs: ThinVec<Attribute>) -> Expr
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn stmt_let_pat(
&mut self,
sp: Span,
ex: Option<P<Expr>>,
pat: P<Pat>,
source: LocalSource
) -> Stmt
[src]
fn stmt_let_pat(
&mut self,
sp: Span,
ex: Option<P<Expr>>,
pat: P<Pat>,
source: LocalSource
) -> Stmt
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn stmt_let(
&mut self,
sp: Span,
mutbl: bool,
ident: Name,
ex: P<Expr>
) -> (Stmt, NodeId)
[src]
fn stmt_let(
&mut self,
sp: Span,
mutbl: bool,
ident: Name,
ex: P<Expr>
) -> (Stmt, NodeId)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn block_expr(&mut self, expr: P<Expr>) -> Block
[src]
fn block_expr(&mut self, expr: P<Expr>) -> Block
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn block_all(
&mut self,
span: Span,
stmts: HirVec<Stmt>,
expr: Option<P<Expr>>
) -> Block
[src]
fn block_all(
&mut self,
span: Span,
stmts: HirVec<Stmt>,
expr: Option<P<Expr>>
) -> Block
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_ok(&mut self, span: Span, pat: P<Pat>) -> P<Pat>
[src]
fn pat_ok(&mut self, span: Span, pat: P<Pat>) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_err(&mut self, span: Span, pat: P<Pat>) -> P<Pat>
[src]
fn pat_err(&mut self, span: Span, pat: P<Pat>) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_some(&mut self, span: Span, pat: P<Pat>) -> P<Pat>
[src]
fn pat_some(&mut self, span: Span, pat: P<Pat>) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_none(&mut self, span: Span) -> P<Pat>
[src]
fn pat_none(&mut self, span: Span) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_std_enum(
&mut self,
span: Span,
components: &[&str],
subpats: HirVec<P<Pat>>
) -> P<Pat>
[src]
fn pat_std_enum(
&mut self,
span: Span,
components: &[&str],
subpats: HirVec<P<Pat>>
) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_ident(&mut self, span: Span, name: Name) -> P<Pat>
[src]
fn pat_ident(&mut self, span: Span, name: Name) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_ident_binding_mode(
&mut self,
span: Span,
name: Name,
bm: BindingAnnotation
) -> P<Pat>
[src]
fn pat_ident_binding_mode(
&mut self,
span: Span,
name: Name,
bm: BindingAnnotation
) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat_wild(&mut self, span: Span) -> P<Pat>
[src]
fn pat_wild(&mut self, span: Span) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn pat(&mut self, span: Span, pat: PatKind) -> P<Pat>
[src]
fn pat(&mut self, span: Span, pat: PatKind) -> P<Pat>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn std_path(&mut self, span: Span, components: &[&str], is_value: bool) -> Path
[src]
fn std_path(&mut self, span: Span, components: &[&str], is_value: bool) -> Path
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Given suffix ["b","c","d"], returns path ::std::b::c::d
when
fld.cx.use_std
, and ::core::b::c::d
otherwise.
The path is also resolved according to is_value
.
fn ty_path(&mut self, id: LoweredNodeId, span: Span, qpath: QPath) -> P<Ty>
[src]
fn ty_path(&mut self, id: LoweredNodeId, span: Span, qpath: QPath) -> P<Ty>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn elided_ref_lifetime(&mut self, span: Span) -> Lifetime
[src]
fn elided_ref_lifetime(&mut self, span: Span) -> Lifetime
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Invoked to create the lifetime argument for a type &T
with no explicit lifetime.
fn elided_path_lifetimes(&mut self, span: Span, count: usize) -> P<[Lifetime]>
[src]
fn elided_path_lifetimes(&mut self, span: Span, count: usize) -> P<[Lifetime]>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Invoked to create the lifetime argument(s) for a path like
std::cell::Ref<T>
; note that implicit lifetimes in these
sorts of cases are deprecated. This may therefore report a warning or an
error, depending on the mode.
fn elided_dyn_bound(&mut self, span: Span) -> Lifetime
[src]
fn elided_dyn_bound(&mut self, span: Span) -> Lifetime
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Invoked to create the lifetime argument(s) for an elided trait object
bound, like the bound in Box<dyn Debug>
. This method is not invoked
when the bound is written, even if it is written with '_
like in
Box<dyn Debug + '_>
. In those cases, lower_lifetime
is invoked.
fn new_implicit_lifetime(&mut self, span: Span) -> Lifetime
[src]
fn new_implicit_lifetime(&mut self, span: Span) -> Lifetime
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn maybe_lint_bare_trait(&self, span: Span, id: NodeId, is_global: bool)
[src]
fn maybe_lint_bare_trait(&self, span: Span, id: NodeId, is_global: bool)
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
fn wrap_in_try_constructor(
&mut self,
method: &'static str,
e: Expr,
unstable_span: Span
) -> P<Expr>
[src]
fn wrap_in_try_constructor(
&mut self,
method: &'static str,
e: Expr,
unstable_span: Span
) -> P<Expr>
🔬 This is a nightly-only experimental API. (rustc_private
)
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?
Auto Trait Implementations
impl<'a> !Send for LoweringContext<'a>
impl<'a> !Send for LoweringContext<'a>
impl<'a> !Sync for LoweringContext<'a>
impl<'a> !Sync for LoweringContext<'a>