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?