LineCursor

Struct LineCursor 

Source
pub struct LineCursor { /* private fields */ }
Expand description

§LineCursor

A line cursor type of a parser that holds the start line and offset from it. The relative offset cursor is used to actually access the source lines’ contents, whereas the sum of relative and absolute cursors is used mainly for debug prints and|or error messages.

Implementations§

Source§

impl LineCursor

Source

pub fn new(relative: Line, absolute: Line) -> Self

A LineCursor constructor.

Source

pub fn relative_offset(&self) -> Line

Retrieves the line relative to the baseline that a (nested) parser is on.

Source

pub fn relative_offset_mut_ref(&mut self) -> &mut Line

Retrieves a mutable reference to the line that the (nested) parser is on.

Source

pub fn increment_by(&mut self, amount: Line)

Increments relative offset by given amount.

Source

pub fn sum_total(&self) -> Line

Returns the sum total of self.relative_offset and *self.baseline.

Trait Implementations§

Source§

impl Debug for LineCursor

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.