[−][src]Struct rustc_hir::hir::PathSegment

pub struct PathSegment<'hir> {
    pub ident: Ident,
    pub hir_id: Option<HirId>,
    pub res: Option<Res>,
    pub args: Option<&'hir GenericArgs<'hir>>,
    pub infer_args: bool,
}

A segment of a path: an identifier, an optional lifetime, and a set of types.

Fields

ident: Ident

The identifier portion of this path segment.

hir_id: Option<HirId>res: Option<Res>args: Option<&'hir GenericArgs<'hir>>

Type/lifetime parameters attached to this path. They come in two flavors: Path<A,B,C> and Path(A,B) -> C. Note that this is more than just simple syntactic sugar; the use of parens affects the region binding rules, so we preserve the distinction.

infer_args: bool

Whether to infer remaining type parameters, if any. This only applies to expression and pattern paths, and out of those only the segments with no type parameters to begin with, e.g., Vec::new is <Vec<..>>::new::<..>.

Implementations

impl<'hir> PathSegment<'hir>[src]

pub fn from_ident(ident: Ident) -> PathSegment<'hir>[src]

Converts an identifier to the corresponding segment.

pub fn generic_args(&self) -> &GenericArgs<'hir>[src]

Trait Implementations

impl<'hir> Debug for PathSegment<'hir>[src]

impl<'hir, __CTX> HashStable<__CTX> for PathSegment<'hir> where
    __CTX: HashStableContext, 
[src]

Auto Trait Implementations

impl<'hir> !RefUnwindSafe for PathSegment<'hir>

impl<'hir> !Send for PathSegment<'hir>

impl<'hir> !Sync for PathSegment<'hir>

impl<'hir> Unpin for PathSegment<'hir>

impl<'hir> !UnwindSafe for PathSegment<'hir>

Blanket Implementations

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

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

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

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

impl<T, U> Into<U> for T where
    U: From<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.