Enum rustc_resolve::ScopeSet[−][src]

pub(crate) enum ScopeSet<'a> {
    All(Namespace, bool),
    AbsolutePath(Namespace),
    Macro(MacroKind),
    Late(Namespace, &'a ModuleData<'a>, Option<NodeId>),
}

Names from different contexts may want to visit different subsets of all specific scopes with different restrictions when looking up the resolution. This enum is currently used only for early resolution (imports and macros), but not for late resolution yet.

Variants

All(Namespace, bool)

All scopes with the given namespace.

AbsolutePath(Namespace)

Crate root, then extern prelude (used for mixed 2015-2018 mode in macros).

Macro(MacroKind)

All scopes with macro namespace and the given macro kind restriction.

Late(Namespace, &'a ModuleData<'a>, Option<NodeId>)

All scopes with the given namespace, used for partially performing late resolution. The node id enables lints and is used for reporting them.

Trait Implementations

impl<'a> Clone for ScopeSet<'a>[src]

impl<'a> Copy for ScopeSet<'a>[src]

Auto Trait Implementations

impl<'a> !RefUnwindSafe for ScopeSet<'a>

impl<'a> !Send for ScopeSet<'a>

impl<'a> !Sync for ScopeSet<'a>

impl<'a> Unpin for ScopeSet<'a>

impl<'a> !UnwindSafe for ScopeSet<'a>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone, 
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.