Trait erg_common::traits::Locational

source ·
pub trait Locational {
    // Required method
    fn loc(&self) -> Location;

    // Provided methods
    fn ln_begin(&self) -> Option<u32> { ... }
    fn ln_end(&self) -> Option<u32> { ... }
    fn col_begin(&self) -> Option<u32> { ... }
    fn col_end(&self) -> Option<u32> { ... }
}

Required Methods§

source

fn loc(&self) -> Location

NOTE: loc cannot be treated as a light method when self is a large grammatical element. If possible, delay the computation by passing &impl Locational or other means.

Provided Methods§

source

fn ln_begin(&self) -> Option<u32>

1-origin

source

fn ln_end(&self) -> Option<u32>

source

fn col_begin(&self) -> Option<u32>

0-origin

source

fn col_end(&self) -> Option<u32>

Implementations on Foreign Types§

source§

impl Locational for ()

source§

fn loc(&self) -> Location

source§

impl<L: Locational> Locational for Option<L>

source§

fn loc(&self) -> Location

source§

impl<L: Locational, R: Locational> Locational for (&L, &R)

source§

fn loc(&self) -> Location

source§

impl<L: Locational, R: Locational> Locational for Result<&L, &R>

source§

fn loc(&self) -> Location

source§

impl<T: Locational> Locational for &T

source§

fn loc(&self) -> Location

source§

impl<T: Locational> Locational for Vec<T>

source§

fn loc(&self) -> Location

source§

impl<T: Locational, const N: usize> Locational for [T; N]

source§

fn loc(&self) -> Location

Implementors§