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)
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?
Optionally Self-qualified value/type path or associated extension.
Variants
Resolved(Option<P<Ty>>, P<Path>)🔬 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?
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.
TypeRelative(P<Ty>, P<PathSegment>)🔬 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?
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]
fn clone(&self) -> QPath[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl PartialEq for QPath[src]
fn eq(&self, __arg_0: &QPath) -> bool[src]
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &QPath) -> bool[src]
This method tests for !=.
impl Eq for QPath[src]
impl Encodable for QPath[src]
fn encode<__S: Encoder>(&self, __arg_0: &mut __S) -> Result<(), __S::Error>[src]
🔬 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?
impl Decodable for QPath[src]
fn decode<__D: Decoder>(__arg_0: &mut __D) -> Result<QPath, __D::Error>[src]
🔬 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?
impl Hash for QPath[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)[src]
Feeds this value into the given [Hasher]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher]. Read more
impl Debug for QPath[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result[src]
Formats the value using the given formatter. Read more
impl<'tcx> HashStable<StableHashingContext<'tcx>> for QPath[src]
fn hash_stable<W: StableHasherResult>(
&self,
__ctx: &mut StableHashingContext<'tcx>,
__hasher: &mut StableHasher<W>
)[src]
&self,
__ctx: &mut StableHashingContext<'tcx>,
__hasher: &mut StableHasher<W>
)
🔬 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?