use thiserror::Error;
pub type SafeNameResult<T> = Result<T, SafeNameError>;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Error)]
pub enum SafeNameError {
#[error("invalid length {len} (must be 1..={max})")]
InvalidLength {
len: usize,
max: usize,
},
#[error("invalid byte 0x{byte:02X} at index {index}")]
InvalidByte {
index: usize,
byte: u8,
},
}