solana_core/repair/
result.rs

1use {
2    solana_gossip::{cluster_info::ClusterInfoError, contact_info},
3    thiserror::Error,
4};
5
6#[derive(Error, Debug)]
7pub enum RepairVerifyError {
8    #[error("IdMismatch")]
9    IdMismatch,
10    #[error("Malformed")]
11    Malformed,
12    #[error("SelfRepair")]
13    SelfRepair,
14    #[error("SigVerify")]
15    SigVerify,
16    #[error("TimeSkew")]
17    TimeSkew,
18    #[error("Unsigned")]
19    Unsigned,
20}
21
22#[derive(Debug, Error)]
23pub enum Error {
24    #[error(transparent)]
25    ClusterInfo(#[from] ClusterInfoError),
26    #[error(transparent)]
27    InvalidContactInfo(#[from] contact_info::Error),
28    #[error(transparent)]
29    RepairVerify(#[from] RepairVerifyError),
30    #[error("Send Error")]
31    SendError,
32    #[error(transparent)]
33    Serialize(#[from] std::boxed::Box<bincode::ErrorKind>),
34    #[error(transparent)]
35    WeightedIndex(#[from] rand::distributions::weighted::WeightedError),
36}
37
38pub type Result<T> = std::result::Result<T, Error>;