shell_util/error.rs
1use serde::{Serialize, Serializer};
2
3#[derive(Debug, thiserror::Error)]
4pub enum Error {
5 #[error(transparent)]
6 Io(#[from] std::io::Error),
7
8 #[error("Invalid buffer")]
9 InvalidBuffer,
10}
11
12impl Serialize for Error {
13 fn serialize<S>(
14 &self,
15 serializer: S,
16 ) -> std::result::Result<S::Ok, S::Error>
17 where
18 S: Serializer,
19 {
20 serializer.serialize_str(&self.to_string())
21 }
22}