aboutsummaryrefslogtreecommitdiffstats
path: root/filamento/src/error.rs
diff options
context:
space:
mode:
Diffstat (limited to 'filamento/src/error.rs')
-rw-r--r--filamento/src/error.rs33
1 files changed, 32 insertions, 1 deletions
diff --git a/filamento/src/error.rs b/filamento/src/error.rs
index 9ecc330..1dd4f47 100644
--- a/filamento/src/error.rs
+++ b/filamento/src/error.rs
@@ -1,4 +1,4 @@
-use std::sync::Arc;
+use std::{string::FromUtf8Error, sync::Arc};
use jid::JID;
use lampada::error::{ConnectionError, ReadError, WriteError};
@@ -227,3 +227,34 @@ pub enum NickError {
#[error("disconnected")]
Disconnected,
}
+
+#[derive(Debug, Error, Clone)]
+pub enum CapsDecodeError {
+ #[error("base64 decode: {0}")]
+ Base64Decode(#[from] base64::DecodeError),
+ #[error("utf8: {0}")]
+ UTF8(#[from] FromUtf8Error),
+ #[error("missing features")]
+ MissingFeatures,
+ #[error("missing identities")]
+ MissingIdentities,
+ #[error("missing identity category")]
+ MissingIdentityCategory,
+ #[error("missing identity type")]
+ MissingIdentityType,
+ #[error("missing identity language")]
+ MissingIdentityLang,
+ #[error("missing identity name")]
+ MissingIdentityName,
+}
+
+#[derive(Debug, Error, Clone)]
+pub enum HashNodeConversionError {
+ #[error("no prefix")]
+ NoPrefix,
+ #[error("missing period")]
+ MissingPeriod,
+}
+
+// #[derive(Debug, Error, Clone)]
+// pub enum CapsError {}