#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum CodecError {
BufferTooSmall,
InvalidInput,
InvalidCodecType,
InvalidCodecName,
InitFailed,
DecodeFailed,
EncodeFailed,
}
impl core::fmt::Display for CodecError {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
let msg = match self {
CodecError::BufferTooSmall => "output buffer too small",
CodecError::InvalidInput => "invalid input data",
CodecError::InvalidCodecType => "invalid codec payload type",
CodecError::InvalidCodecName => "invalid codec name",
CodecError::InitFailed => "codec initialization failed",
CodecError::DecodeFailed => "decode failed",
CodecError::EncodeFailed => "encode failed",
};
f.write_str(msg)
}
}
#[cfg(feature = "std")]
impl std::error::Error for CodecError {}