Struct pest::error::Error[][src]

pub struct Error<R> {
    pub variant: ErrorVariant<R>,
    pub location: InputLocation,
    // some fields omitted
}

Parse-related error type.

Fields

Variant of the error

Location within the input string

Methods

impl<R: RuleType> Error<R>
[src]

Creates Error from ErrorVariant and Position.

Examples

let error = Error::new_from_pos(
    ErrorVariant::ParsingError {
        positives: vec![Rule::open_paren],
        negatives: vec![Rule::closed_paren]
    },
    pos
);

println!("{}", error);

Creates Error from ErrorVariant and Span.

Examples

let error = Error::new_from_span(
    ErrorVariant::ParsingError {
        positives: vec![Rule::open_paren],
        negatives: vec![Rule::closed_paren]
    },
    span
);

println!("{}", error);

Returns Error variant with path which is shown when formatted with Display.

Examples

Error::new_from_pos(
    ErrorVariant::ParsingError {
        positives: vec![Rule::open_paren],
        negatives: vec![Rule::closed_paren]
    },
    pos
).with_path("file.rs");

Renames all Rules if this is a ParsingError. It does nothing when called on a CustomError.

Useful in order to rename verbose rules or have detailed per-Rule formatting.

Examples

Error::new_from_pos(
    ErrorVariant::ParsingError {
        positives: vec![Rule::open_paren],
        negatives: vec![Rule::closed_paren]
    },
    pos
).renamed_rules(|rule| {
    match *rule {
        Rule::open_paren => "(".to_owned(),
        Rule::closed_paren => "closed paren".to_owned()
    }
});

Trait Implementations

impl<R: Clone> Clone for Error<R>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<R: Debug> Debug for Error<R>
[src]

Formats the value using the given formatter. Read more

impl<R: Eq> Eq for Error<R>
[src]

impl<R: Hash> Hash for Error<R>
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl<R: PartialEq> PartialEq for Error<R>
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl<R: RuleType> Display for Error<R>
[src]

Formats the value using the given formatter. Read more

impl<'i, R: RuleType> Error for Error<R>
[src]

This method is soft-deprecated. Read more

The lower-level cause of this error, if any. Read more

Auto Trait Implementations

impl<R> Send for Error<R> where
    R: Send

impl<R> Sync for Error<R> where
    R: Sync