tauri_plugin_app_icon/
error.rs1use serde::{ser::Serializer, Serialize};
2
3pub type Result<T> = std::result::Result<T, Error>;
4
5#[derive(Debug, thiserror::Error)]
6pub enum Error {
7 #[error(transparent)]
8 Io(#[from] std::io::Error),
9 #[error("{0}")]
10 Tauri(String),
11 #[error("{0}")]
12 Other(String),
13 #[cfg(mobile)]
14 #[error(transparent)]
15 PluginInvoke(#[from] tauri::plugin::mobile::PluginInvokeError),
16}
17
18impl Serialize for Error {
19 fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
20 where
21 S: Serializer,
22 {
23 serializer.serialize_str(self.to_string().as_ref())
24 }
25}
26
27impl From<tauri::Error> for Error {
28 fn from(e: tauri::Error) -> Self {
29 Error::Tauri(e.to_string())
30 }
31}