use thiserror::Error;
#[derive(Debug, Error, PartialEq, Eq)]
#[non_exhaustive]
pub enum ParseError {
#[error("unexpected end of input")]
UnexpectedEnd,
#[error("unexpected token: {0}")]
UnexpectedToken(String),
#[error("unmatched parenthesis")]
UnmatchedParen,
#[error("unmatched brace")]
UnmatchedBrace,
#[error("expected value after field")]
ExpectedValue,
#[error("unknown filter: {0}")]
UnknownFilter(String),
#[error("invalid size: {0}")]
InvalidSize(String),
#[error("invalid date: {0}")]
InvalidDate(String),
}