crossbow_android/error.rs
1use displaydoc::Display;
2use thiserror::Error;
3
4/// Result type wrapper with AndroidError.
5pub type Result<T> = std::result::Result<T, AndroidError>;
6
7/// Permissions error type.
8#[derive(Display, Debug, Error)]
9pub enum AndroidError {
10 /// Could not send to channel {0:?}
11 CouldNotSendToSignalChannel(#[from] async_channel::TrySendError<crate::plugin::Signal>),
12 /// Signal Sender with `{0}` singleton name not available
13 SignalSenderNotAvailable(String),
14 /// Singleton with `{0}` name not found or haven't registered
15 SingletonNotRegistered(String),
16 /// Unsupported JNI Rust Type: {0}
17 UnsupportedJniRustType(String),
18 /// Wrong JNI Rust Type
19 WrongJniRustType,
20 /// Rust Jni library error: {0:?}
21 Jni(#[from] jni::errors::Error),
22 /// Anyhow library errors: {0:?}
23 Anyhow(#[from] anyhow::Error),
24}