Struct chumsky::error::Cheap

source ·
pub struct Cheap<I, S = Range<usize>> { /* private fields */ }
Expand description

A minimal error type that tracks only the error span and label. This type is most useful when you want fast parsing but do not particularly care about the quality of error messages.

Implementations§

source§

impl<I, S: Clone> Cheap<I, S>

source

pub fn span(&self) -> S

Returns the span that the error occurred at.

source

pub fn label(&self) -> Option<&'static str>

Returns the error’s label, if any.

Trait Implementations§

source§

impl<I: Clone, S: Clone> Clone for Cheap<I, S>

source§

fn clone(&self) -> Cheap<I, S>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<I: Debug, S: Debug> Debug for Cheap<I, S>

source§

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

Formats the value using the given formatter. Read more
source§

impl<I, S: Span + Clone + Debug> Error<I> for Cheap<I, S>

§

type Span = S

The type of spans to be used in the error.
§

type Label = &'static str

The label used to describe a syntactic structure currently being parsed. Read more
source§

fn expected_input_found<Iter: IntoIterator<Item = Option<I>>>( span: Self::Span, _: Iter, _: Option<I> ) -> Self

Create a new error describing a conflict between expected inputs and that which was actually found. Read more
source§

fn with_label(self, label: Self::Label) -> Self

Indicate that the error occurred while parsing a particular syntactic structure. Read more
source§

fn merge(self, _: Self) -> Self

Merge two errors that point to the same input together, combining their information.
source§

fn unclosed_delimiter( unclosed_span: Self::Span, unclosed: I, span: Self::Span, expected: I, found: Option<I> ) -> Self

Create a new error describing a delimiter that was not correctly closed. Read more
source§

impl<I: PartialEq, S: PartialEq> PartialEq for Cheap<I, S>

source§

fn eq(&self, other: &Cheap<I, S>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<I: Eq, S: Eq> Eq for Cheap<I, S>

source§

impl<I, S> StructuralEq for Cheap<I, S>

source§

impl<I, S> StructuralPartialEq for Cheap<I, S>

Auto Trait Implementations§

§

impl<I, S> RefUnwindSafe for Cheap<I, S>

§

impl<I, S> Send for Cheap<I, S>
where I: Send, S: Send,

§

impl<I, S> Sync for Cheap<I, S>
where I: Sync, S: Sync,

§

impl<I, S> Unpin for Cheap<I, S>
where I: Unpin, S: Unpin,

§

impl<I, S> UnwindSafe for Cheap<I, S>
where I: UnwindSafe, S: UnwindSafe,

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> Chain<T> for T

source§

fn len(&self) -> usize

The number of items that this chain link consists of.
source§

fn append_to(self, v: &mut Vec<T>)

Append the elements in this link to the chain.
source§

impl<T> Container<T> for T
where T: Clone,

§

type Iter = Once<T>

An iterator over the items within this container, by value.
source§

fn get_iter(&self) -> <T as Container<T>>::Iter

Iterate over the elements of the container (using internal iteration because GATs are unstable).
source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. 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> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

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>,

§

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.
source§

impl<T> OrderedContainer<T> for T
where T: Clone,