1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
3pub enum CodecError {
4 BufferTooSmall,
6 InvalidInput,
8 InvalidCodecType,
10 InvalidCodecName,
12 InitFailed,
14 DecodeFailed,
16 EncodeFailed,
18}
19
20impl core::fmt::Display for CodecError {
21 fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
22 let msg = match self {
23 CodecError::BufferTooSmall => "output buffer too small",
24 CodecError::InvalidInput => "invalid input data",
25 CodecError::InvalidCodecType => "invalid codec payload type",
26 CodecError::InvalidCodecName => "invalid codec name",
27 CodecError::InitFailed => "codec initialization failed",
28 CodecError::DecodeFailed => "decode failed",
29 CodecError::EncodeFailed => "encode failed",
30 };
31 f.write_str(msg)
32 }
33}
34
35#[cfg(feature = "std")]
36impl std::error::Error for CodecError {}