radio/iroh-ffi/src/error.rs

/// An Error.
#[derive(Debug, thiserror::Error, uniffi::Object)]
#[error("{e:?}")]
#[uniffi::export(Debug)]
pub struct IrohError {
    e: anyhow::Error,
}

#[uniffi::export]
impl IrohError {
    pub fn message(&self) -> String {
        self.to_string()
    }
}

impl From<anyhow::Error> for IrohError {
    fn from(e: anyhow::Error) -> Self {
        Self { e }
    }
}

#[derive(Debug, thiserror::Error, PartialEq, Eq, uniffi::Error)]
pub enum CallbackError {
    #[error("Callback failed")]
    Error,
}

impl From<CallbackError> for IrohError {
    fn from(e: CallbackError) -> Self {
        IrohError {
            e: anyhow::anyhow!("{:?}", e),
        }
    }
}

impl From<anyhow::Error> for CallbackError {
    fn from(_e: anyhow::Error) -> Self {
        CallbackError::Error
    }
}

impl From<uniffi::UnexpectedUniFFICallbackError> for CallbackError {
    fn from(_: uniffi::UnexpectedUniFFICallbackError) -> Self {
        CallbackError::Error
    }
}

Synonyms

radio/iroh-car/src/error.rs
cw-cyber/packages/hub-base/src/error.rs
cw-cyber/contracts/cybernet/src/error.rs
cw-cyber/contracts/std-test/src/error.rs
cw-cyber/contracts/hub-networks/src/error.rs
cw-cyber/contracts/litium-wrap/src/error.rs
cw-cyber/contracts/hub-channels/src/error.rs
radio/iroh-blobs/src/get/error.rs
cw-cyber/contracts/hub-tokens/src/error.rs
cw-cyber/contracts/hub-skills/src/error.rs
radio/cyber-bao/src/io/error.rs
cw-cyber/contracts/cw-cyber-gift/src/error.rs
cw-cyber/contracts/litium-core/src/error.rs
cw-cyber/contracts/cw-cyber-subgraph/src/error.rs
cw-cyber/contracts/hub-protocols/src/error.rs
cw-cyber/contracts/cw-cyber-passport/src/error.rs
cw-cyber/contracts/litium-refer/src/error.rs
cw-cyber/contracts/litium-stake/src/error.rs
radio/iroh-willow/src/session/error.rs
cw-cyber/contracts/graph-filter/src/error.rs
radio/iroh-dns-server/src/http/error.rs
cw-cyber/contracts/hub-libs/src/error.rs
cw-cyber/contracts/litium-mine/src/error.rs

Neighbours