tdbe/error.rs
1//! Encoding-layer errors for ThetaData Binary Encoding.
2
3use thiserror::Error;
4
5/// Encoding-layer errors for ThetaData Binary Encoding.
6#[derive(Error, Debug)]
7pub enum Error {
8 /// FIT nibble decoding failure (malformed input, unexpected terminator).
9 #[error("FIT decode error: {0}")]
10 Decode(String),
11
12 /// FIE nibble encoding failure (invalid character).
13 #[error("FIE encode error: {0}")]
14 Encode(String),
15
16 /// Value conversion error (e.g., enum from invalid discriminant).
17 #[error("conversion error: {0}")]
18 Conversion(String),
19
20 /// I/O error during read/write operations.
21 #[error("IO error: {0}")]
22 Io(#[from] std::io::Error),
23}
24
25/// Convenience Result type.
26pub type Result<T> = std::result::Result<T, Error>;