whatsapp_rust/socket/
error.rs1use thiserror::Error;
2use tokio_websockets::Error as WsError;
3
4#[derive(Debug, Error)]
5pub enum SocketError {
6 #[error("Frame is too large (max: {max}, got: {got})")]
7 FrameTooLarge { max: usize, got: usize },
8 #[error("Socket is closed")]
9 SocketClosed,
10 #[error("Socket is already open")]
11 SocketAlreadyOpen,
12 #[error("Noise handshake failed: {0}")]
13 NoiseHandshake(String),
14 #[error("WebSocket error: {0}")]
15 WebSocket(#[from] WsError),
16 #[error("I/O error: {0}")]
17 Io(#[from] std::io::Error),
18 #[error("Crypto error: {0}")]
19 Crypto(String),
20}
21
22pub type Result<T> = std::result::Result<T, SocketError>;