use crate::fields;
use displaydoc::Display;
#[derive(Display, Debug, PartialEq)]
pub enum Error {
#[displaydoc("{0:?} invalid field length in pattern")]
FieldLengthInvalid(fields::FieldSymbol),
#[displaydoc("unknown substitution {0} in pattern")]
UnknownSubstitution(char),
#[displaydoc("unclosed literal in pattern")]
UnclosedLiteral,
#[displaydoc("unclosed placeholder in pattern")]
UnclosedPlaceholder,
}
#[cfg(feature = "std")]
impl std::error::Error for Error {}
impl From<fields::Error> for Error {
fn from(input: fields::Error) -> Self {
match input {
fields::Error::InvalidLength(symbol) => Self::FieldLengthInvalid(symbol),
}
}
}