Struct rustc::hir::Crate [] [src]

pub struct Crate {
    pub module: Mod,
    pub attrs: HirVec<Attribute>,
    pub span: Span,
    pub exported_macros: HirVec<MacroDef>,
    pub items: BTreeMap<NodeId, Item>,
    pub trait_items: BTreeMap<TraitItemId, TraitItem>,
    pub impl_items: BTreeMap<ImplItemId, ImplItem>,
    pub bodies: BTreeMap<BodyId, Body>,
    pub trait_impls: BTreeMap<DefId, Vec<NodeId>>,
    pub trait_default_impl: BTreeMap<DefId, NodeId>,
    pub body_ids: Vec<BodyId>,
}
🔬 This is a nightly-only experimental API. (rustc_private)

Fields

🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)
🔬 This is a nightly-only experimental API. (rustc_private)

A list of the body ids written out in the order in which they appear in the crate. If you're going to process all the bodies in the crate, you should iterate over this list rather than the keys of bodies.

Methods

impl Crate
[src]

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

Visits all items in the crate in some determinstic (but unspecified) order. If you just need to process every item, but don't care about nesting, this method is the best choice.

If you do care about nesting -- usually because your algorithm follows lexical scoping rules -- then you want a different approach. You should override visit_nested_item in your visitor and then call intravisit::walk_crate instead.

🔬 This is a nightly-only experimental API. (rustc_private)

Trait Implementations

impl PpAnn for Crate
[src]

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

🔬 This is a nightly-only experimental API. (rustc_private)

impl Clone for Crate
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl PartialEq for Crate
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Eq for Crate
[src]

impl Encodable for Crate
[src]

🔬 This is a nightly-only experimental API. (rustc_private)

deprecated in favor of rustc-serialize on crates.io

impl Decodable for Crate
[src]

🔬 This is a nightly-only experimental API. (rustc_private)

deprecated in favor of rustc-serialize on crates.io

impl Debug for Crate
[src]

Formats the value using the given formatter.