[][src]Struct rune::ast::Path

pub struct Path {
    pub first: Ident,
    pub rest: Vec<(Scope, Ident)>,
}

A path, where each element is separated by a ::.

Fields

first: Ident

The first component in the path.

rest: Vec<(Scope, Ident)>

The rest of the components in the path.

Implementations

impl Path[src]

pub fn try_into_ident(self) -> Option<Ident>[src]

Convert into an identifier used for field access calls.

This is only allowed if there are no other path components.

pub fn try_as_ident(&self) -> Option<&Ident>[src]

Borrow as an identifier used for field access calls.

This is only allowed if there are no other path components.

pub fn span(&self) -> Span[src]

Calculate the full span of the path.

pub fn parse_with_first(
    parser: &mut Parser<'_>,
    first: Ident
) -> Result<Self, ParseError>
[src]

Parse with the first identifier already parsed.

pub fn components(&self) -> impl Iterator<Item = &Ident> + '_[src]

Iterate over all components in path.

Trait Implementations

impl Clone for Path[src]

impl Debug for Path[src]

impl Parse for Path[src]

impl<'a> Resolve<'a> for Path[src]

type Output = Vec<&'a str>

The output type being resolved.

Auto Trait Implementations

impl RefUnwindSafe for Path

impl Send for Path

impl Sync for Path

impl Unpin for Path

impl UnwindSafe for Path

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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<V, T> VZip<V> for T where
    V: MultiLane<T>,