Struct rustc_resolve::imports::Import [−][src]
pub(crate) struct Import<'a> {Show fields
pub kind: ImportKind<'a>,
pub id: NodeId,
pub root_id: NodeId,
pub use_span: Span,
pub use_span_with_attributes: Span,
pub has_attributes: bool,
pub span: Span,
pub root_span: Span,
pub parent_scope: ParentScope<'a>,
pub module_path: Vec<Segment>,
pub imported_module: Cell<Option<ModuleOrUniformRoot<'a>>>,
pub vis: Cell<Visibility>,
pub used: Cell<bool>,
}Expand description
One import.
Fields
kind: ImportKind<'a>id: NodeIdExpand description
The ID of the extern crate, UseTree etc that imported this Import.
In the case where the Import was expanded from a “nested” use tree,
this id is the ID of the leaf tree. For example:
use foo::bar::{a, b}
If this is the import for foo::bar::a, we would have the ID of the UseTree
for a in this field.
root_id: NodeIdExpand description
The id of the “root” use-kind – this is always the same as
id except in the case of “nested” use trees, in which case
it will be the id of the root use tree. e.g., in the example
from id, this would be the ID of the use foo::bar
UseTree node.
use_span: SpanExpand description
Span of the entire use statement.
use_span_with_attributes: SpanExpand description
Span of the entire use statement with attributes.
has_attributes: boolExpand description
Did the use statement have any attributes?
span: SpanExpand description
Span of this use tree.
root_span: SpanExpand description
Span of the root use tree (see root_id).
parent_scope: ParentScope<'a>module_path: Vec<Segment>imported_module: Cell<Option<ModuleOrUniformRoot<'a>>>Expand description
The resolution of module_path.
vis: Cell<Visibility>used: Cell<bool>Implementations
impl<'a> Import<'a>[src]
impl<'a> Import<'a>[src]Trait Implementations
Auto Trait Implementations
impl<'a> !RefUnwindSafe for Import<'a>
impl<'a> !Send for Import<'a>
impl<'a> !Sync for Import<'a>
impl<'a> Unpin for Import<'a>
impl<'a> !UnwindSafe for Import<'a>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, [src]type Owned = T
type Owned = TThe resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn to_owned(&self) -> T[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)[src]
pub fn clone_into(&self, target: &mut T)[src]🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more