use thiserror::Error;
#[derive(Error, Debug, PartialEq, Eq)]
#[non_exhaustive]
pub enum Error {
#[error("all-zero input buffer not allowed")]
AllZeroNotAllowed,
#[error("provided input buffer has wrong size")]
InputBufferWrongSize,
#[error("provided output buffer was too small")]
OutputBufferTooSmall,
#[error("the computed authentication tag did not equal the provided tag")]
AuthTagInvalid,
#[error("failure while generating random numbers")]
RandError,
}
pub type Result<T> = std::result::Result<T, Error>;