blueprint_client_eigenlayer/
error.rs

1use blueprint_std::string::ParseError;
2use thiserror::Error;
3
4#[derive(Debug, Error)]
5pub enum Error {
6    #[error("IO error: {0}")]
7    Io(#[from] blueprint_std::io::Error),
8    #[error("Parse error {0}")]
9    ParseError(#[from] ParseError),
10    #[error("Url parse error {0}")]
11    UrlParseError(#[from] url::ParseError),
12    #[error("Alloy contract error {0}")]
13    AlloyContractError(#[from] alloy_contract::Error),
14    #[error("Avs registry error: {0}")]
15    AvsRegistryError(#[from] eigensdk::client_avsregistry::error::AvsRegistryError),
16    #[error("El contracts error: {0}")]
17    ElContractsError(#[from] eigensdk::client_elcontracts::error::ElContractsError),
18    #[error("Operator service info error: {0}")]
19    OperatorServiceInfoError(
20        #[from] eigensdk::services_operatorsinfo::operatorsinfo_inmemory::OperatorInfoServiceError,
21    ),
22    #[error("Transport error: {0}")]
23    TransportError(#[from] alloy_transport::RpcError<alloy_transport::TransportErrorKind>),
24    #[error("Config error: {0}")]
25    Config(#[from] blueprint_runner::error::ConfigError),
26    #[error("{0}")]
27    OtherStatic(&'static str),
28}
29
30impl From<&'static str> for Error {
31    fn from(e: &'static str) -> Self {
32        Error::OtherStatic(e)
33    }
34}
35
36impl From<Error> for blueprint_client_core::error::Error {
37    fn from(value: Error) -> Self {
38        blueprint_client_core::error::Error::Eigenlayer(value.to_string())
39    }
40}
41
42pub type Result<T> = blueprint_std::result::Result<T, Error>;