genex/error.rs
1use thiserror::Error;
2
3/// The `tracery` error type
4#[derive(Debug, Error)]
5#[non_exhaustive]
6pub enum Error {
7 /// Error encountered while parsing a rule
8 #[error("Error while parsing genx: {0}")]
9 ParseError(String),
10
11 /// A referenced key does not exist
12 #[error("Missing non-terminal: {0}")]
13 UnknownNonTerminalError(String),
14
15 /// Internal parser error. This should only happen if the grammar and the
16 /// parser are out of sync.
17 #[error("Internal parser error: {0}")]
18 InternalParserError(String),
19
20 /// Unknown modifier.
21 #[error("Unknown modifier: {0}")]
22 UnknownModifierError(String),
23}