[][src]Struct msiz_rustc_ap_syntax::ast::QSelf

pub struct QSelf {
    pub ty: P<Ty>,
    pub path_span: Span,
    pub position: usize,
}

The explicit Self type in a "qualified path". The actual path, including the trait and the associated item, is stored separately. position represents the index of the associated item qualified with this Self type.

This example is not tested
<Vec<T> as a::b::Trait>::AssociatedItem
 ^~~~~     ~~~~~~~~~~~~~~^
 ty        position = 3

<Vec<T>>::AssociatedItem
 ^~~~~    ^
 ty       position = 0

Fields

ty: P<Ty>path_span: Span

The span of a::b::Trait in a path like <Vec<T> as a::b::Trait>::AssociatedItem; in the case where position == 0, this is an empty span.

position: usize

Trait Implementations

impl Clone for QSelf[src]

impl Debug for QSelf[src]

impl Encodable for QSelf[src]

impl Decodable for QSelf[src]

Auto Trait Implementations

impl Unpin for QSelf

impl !Sync for QSelf

impl !Send for QSelf

impl !UnwindSafe for QSelf

impl !RefUnwindSafe for QSelf

Blanket Implementations

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

type Owned = T

The resulting type after obtaining ownership.

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

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

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.

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

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

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

impl<T> Erased for T[src]

impl<T> Encodable for T where
    T: UseSpecializedEncodable + ?Sized
[src]

impl<T> Decodable for T where
    T: UseSpecializedDecodable
[src]

impl<E> SpecializationError for E[src]