Struct rustc_middle::ty::ResolverAstLowering
source · [−]pub struct ResolverAstLowering {
pub legacy_const_generic_args: FxHashMap<DefId, Option<Vec<usize>>>,
pub partial_res_map: NodeMap<PartialRes>,
pub import_res_map: NodeMap<PerNS<Option<Res<NodeId>>>>,
pub label_res_map: NodeMap<NodeId>,
pub lifetimes_res_map: NodeMap<LifetimeRes>,
pub extra_lifetime_params_map: NodeMap<Vec<(Ident, NodeId, LifetimeRes)>>,
pub next_node_id: NodeId,
pub node_id_to_def_id: FxHashMap<NodeId, LocalDefId>,
pub def_id_to_node_id: IndexVec<LocalDefId, NodeId>,
pub trait_map: NodeMap<Vec<TraitCandidate>>,
pub builtin_macro_kinds: FxHashMap<LocalDefId, MacroKind>,
}
Expand description
Resolutions that should only be used for lowering. This struct is meant to be consumed by lowering.
Fields
legacy_const_generic_args: FxHashMap<DefId, Option<Vec<usize>>>
partial_res_map: NodeMap<PartialRes>
Resolutions for nodes that have a single resolution.
import_res_map: NodeMap<PerNS<Option<Res<NodeId>>>>
Resolutions for import nodes, which have multiple resolutions in different namespaces.
label_res_map: NodeMap<NodeId>
Resolutions for labels (node IDs of their corresponding blocks or loops).
lifetimes_res_map: NodeMap<LifetimeRes>
Resolutions for lifetimes.
extra_lifetime_params_map: NodeMap<Vec<(Ident, NodeId, LifetimeRes)>>
Lifetime parameters that lowering will have to introduce.
next_node_id: NodeId
node_id_to_def_id: FxHashMap<NodeId, LocalDefId>
def_id_to_node_id: IndexVec<LocalDefId, NodeId>
trait_map: NodeMap<Vec<TraitCandidate>>
builtin_macro_kinds: FxHashMap<LocalDefId, MacroKind>
A small map keeping true kinds of built-in macros that appear to be fn-like on
the surface (macro
items in libcore), but are actually attributes or derives.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ResolverAstLowering
impl !Send for ResolverAstLowering
impl !Sync for ResolverAstLowering
impl Unpin for ResolverAstLowering
impl UnwindSafe for ResolverAstLowering
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T, R> InternIteratorElement<T, R> for T
impl<T, R> InternIteratorElement<T, R> for T
type Output = R
fn intern_with<I, F>(iter: I, f: F) -> <T as InternIteratorElement<T, R>>::Outputwhere
I: Iterator<Item = T>,
F: FnOnce(&[T]) -> R,
sourceimpl<T> MaybeResult<T> for T
impl<T> MaybeResult<T> for T
sourceimpl<CTX, T> Value<CTX> for Twhere
CTX: DepContext,
impl<CTX, T> Value<CTX> for Twhere
CTX: DepContext,
default fn from_cycle_error(tcx: CTX) -> T
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 320 bytes