use helia_interface::HeliaError;
use thiserror::Error;
#[derive(Error, Debug)]
pub enum DagCborError {
#[error("Helia error: {0}")]
Helia(#[from] HeliaError),
#[error("CBOR error: {0}")]
Cbor(#[from] serde_cbor::Error),
#[error("Invalid codec: expected DAG-CBOR but got codec {codec}")]
InvalidCodec { codec: u64 },
#[error("DAG-CBOR error: {message}")]
Other { message: String },
}
impl DagCborError {
pub fn invalid_codec(codec: u64) -> Self {
DagCborError::InvalidCodec { codec }
}
pub fn other(message: impl Into<String>) -> Self {
DagCborError::Other {
message: message.into(),
}
}
}