Struct rustc_mir::monomorphize::collector::RootCollector [−][src]
struct RootCollector<'b, 'a: 'b, 'tcx: 'a + 'b> { tcx: TyCtxt<'a, 'tcx, 'tcx>, mode: MonoItemCollectionMode, output: &'b mut Vec<MonoItem<'tcx>>, entry_fn: Option<DefId>, }
🔬 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
tcx: TyCtxt<'a, 'tcx, 'tcx>
🔬 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?
mode: MonoItemCollectionMode
🔬 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?
output: &'b mut Vec<MonoItem<'tcx>>
🔬 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?
entry_fn: Option<DefId>
🔬 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<'b, 'a, 'v> RootCollector<'b, 'a, 'v>
[src]
impl<'b, 'a, 'v> RootCollector<'b, 'a, 'v>
fn is_root(&self, def_id: DefId) -> bool
[src]
fn is_root(&self, def_id: DefId) -> 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 push_if_root(&mut self, def_id: DefId)
[src]
fn push_if_root(&mut self, def_id: DefId)
🔬 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 def_id
represents a root, then push it onto the list of
outputs. (Note that all roots must be monomorphic.)
fn push_extra_entry_roots(&mut self)
[src]
fn push_extra_entry_roots(&mut self)
🔬 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?
As a special case, when/if we encounter the
main()
function, we also have to generate a
monomorphized copy of the start lang item based on
the return type of main
. This is not needed when
the user writes their own start
manually.
Trait Implementations
impl<'b, 'a, 'v> ItemLikeVisitor<'v> for RootCollector<'b, 'a, 'v>
[src]
impl<'b, 'a, 'v> ItemLikeVisitor<'v> for RootCollector<'b, 'a, 'v>
fn visit_item(&mut self, item: &'v Item)
[src]
fn visit_item(&mut self, item: &'v 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 visit_trait_item(&mut self, _: &'v TraitItem)
[src]
fn visit_trait_item(&mut self, _: &'v 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 visit_impl_item(&mut self, ii: &'v ImplItem)
[src]
fn visit_impl_item(&mut self, ii: &'v 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?
Auto Trait Implementations
impl<'b, 'a, 'tcx> !Send for RootCollector<'b, 'a, 'tcx>
impl<'b, 'a, 'tcx> !Send for RootCollector<'b, 'a, 'tcx>
impl<'b, 'a, 'tcx> !Sync for RootCollector<'b, 'a, 'tcx>
impl<'b, 'a, 'tcx> !Sync for RootCollector<'b, 'a, 'tcx>