Enum rustc::hir::QPath
[−]
[src]
pub enum QPath {
Resolved(Option<P<Ty>>, P<Path>),
TypeRelative(P<Ty>, P<PathSegment>),
}rustc_private)Optionally Self-qualified value/type path or associated extension.
Variants
Resolved(Option<P<Ty>>, P<Path>)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.
TypeRelative(P<Ty>, P<PathSegment>)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]
fn clone(&self) -> QPath
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0
Performs copy-assignment from source. Read more
impl PartialEq for QPath[src]
fn eq(&self, __arg_0: &QPath) -> bool
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &QPath) -> bool
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>
🔬 This is a nightly-only experimental API. (rustc_private)
deprecated in favor of rustc-serialize on crates.io
impl Decodable for QPath[src]
fn decode<__D: Decoder>(__arg_0: &mut __D) -> Result<QPath, __D::Error>
🔬 This is a nightly-only experimental API. (rustc_private)
deprecated in favor of rustc-serialize on crates.io
impl Hash for QPath[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher1.3.0
Feeds a slice of this type into the state provided.