r402_http/error.rs
1//! Error types for the HTTP transport layer.
2
3use r402::ProtocolError;
4
5/// Errors that can occur during HTTP header encoding/decoding.
6#[derive(Debug, thiserror::Error)]
7pub enum HttpError {
8 /// JSON serialization/deserialization failed.
9 #[error("JSON error: {0}")]
10 Serialize(#[from] serde_json::Error),
11
12 /// Base64 decoding failed.
13 #[error("Base64 decode error: {0}")]
14 Base64(#[from] base64::DecodeError),
15
16 /// Protocol-level error (version detection, missing fields, etc.).
17 #[error("protocol error: {0}")]
18 Protocol(#[source] ProtocolError),
19}