ToSpan

Trait ToSpan 

Source
pub trait ToSpan {
    // Required methods
    fn lo(&self) -> Pos;
    fn hi(&self) -> Pos;

    // Provided method
    fn span(&self) -> Span { ... }
}
Expand description

Trait for types that can be converted to a Span

Tokens and derived syntax nodes all implement this trait

Required Methods§

Source

fn lo(&self) -> Pos

Source

fn hi(&self) -> Pos

Provided Methods§

Source

fn span(&self) -> Span

Implementations on Foreign Types§

Source§

impl<A: ToSpan, B: ToSpan> ToSpan for (A, B)

Source§

fn lo(&self) -> Pos

Source§

fn hi(&self) -> Pos

Source§

impl<A: ToSpan, B: ToSpan, C: ToSpan> ToSpan for (A, B, C)

Source§

fn lo(&self) -> Pos

Source§

fn hi(&self) -> Pos

Source§

impl<A: ToSpan, B: ToSpan, C: ToSpan, D: ToSpan> ToSpan for (A, B, C, D)

Source§

fn lo(&self) -> Pos

Source§

fn hi(&self) -> Pos

Source§

impl<A: ToSpan, B: ToSpan, C: ToSpan, D: ToSpan, E: ToSpan> ToSpan for (A, B, C, D, E)

Source§

fn lo(&self) -> Pos

Source§

fn hi(&self) -> Pos

Source§

impl<T: ToSpan> ToSpan for &T

Source§

fn lo(&self) -> Pos

Source§

fn hi(&self) -> Pos

Source§

fn span(&self) -> Span

Source§

impl<T: ToSpan> ToSpan for Box<T>

Source§

fn lo(&self) -> Pos

Source§

fn hi(&self) -> Pos

Source§

fn span(&self) -> Span

Implementors§

Source§

impl ToSpan for Span

Source§

impl<L: Lexicon> ToSpan for Token<L>

Source§

impl<L: Lexicon> ToSpan for Error<L>

Source§

impl<S, T: Produce> ToSpan for Quote<S, T>

Source§

impl<S: FromStr, T: Produce> ToSpan for Parse<S, T>

Source§

impl<T> ToSpan for Node<T>

Source§

impl<T: Produce> ToSpan for Exists<T>

Source§

impl<T: Produce> ToSpan for Loop<T>

Source§

impl<T: Produce> ToSpan for Optional<T>

Source§

impl<T: Produce, P: Produce> ToSpan for Punct<T, P>
where P::Prod: Production<L = <T::Prod as Production>::L>,

Source§

impl<T: Produce, P: Produce> ToSpan for Split<T, P>
where P::Prod: Production<L = <T::Prod as Production>::L>,

Source§

impl<T: Produce, R: Produce> ToSpan for Recover<T, R>
where R::Prod: Production<L = <T::Prod as Production>::L>,

Source§

impl<V: FromIterator<T> + Default, T: Produce> ToSpan for Star<V, T>

Source§

impl<V: FromIterator<T>, T: Produce> ToSpan for Plus<V, T>