Enum rustc::hir::QPath [] [src]

pub enum QPath {
    Resolved(Option<P<Ty>>, P<Path>),
    TypeRelative(P<Ty>, P<PathSegment>),
}
🔬 This is a nightly-only experimental API. (rustc_private)

Optionally Self-qualified value/type path or associated extension.

Variants

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

Path to a definition, optionally "fully-qualified" with a Self type, if the path points to an associated item in a trait.

E.g. an unqualified path like Clone::clone has None for Self, while <Vec<T> as Clone>::clone has Some(Vec<T>) for Self, even though they both have the same two-segment Clone::clone Path.

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

Type-related paths, e.g. <T>::default or <T>::Output. Will be resolved by type-checking to an associated item.

UFCS source paths can desugar into this, with Vec::new turning into <Vec>::new, and T::X::Y::method into <<<T>::X>::Y>::method, the X and Y nodes each being a TyPath(QPath::TypeRelative(..)).

Trait Implementations

impl Clone for QPath
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl PartialEq for QPath
[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 QPath
[src]

impl Encodable for QPath
[src]

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

deprecated in favor of rustc-serialize on crates.io

impl Decodable for QPath
[src]

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

deprecated in favor of rustc-serialize on crates.io

impl Hash for QPath
[src]

Feeds this value into the state given, updating the hasher as necessary.

Feeds a slice of this type into the state provided.

impl Debug for QPath
[src]

Formats the value using the given formatter.