Skip to main content

libbladerf_rs/
error.rs

1use crate::protocol::nios::NiosPacketError;
2pub type Result<T> = std::result::Result<T, Error>;
3#[derive(thiserror::Error, Debug)]
4pub enum Error {
5    #[error("I/O error")]
6    Io(#[from] std::io::Error),
7    #[error("USB error")]
8    Nusb(#[from] nusb::Error),
9    #[error("USB transfer error")]
10    Transfer(#[from] nusb::transfer::TransferError),
11    #[error("{0}")]
12    Argument(&'static str),
13    #[error("invalid state or value")]
14    Invalid,
15    #[error("device not found")]
16    NotFound,
17    #[error("operation timed out")]
18    Timeout,
19    #[error("NIOS packet error: {0}")]
20    NiosPacket(#[from] NiosPacketError),
21    #[error("endpoint busy")]
22    EndpointBusy,
23    #[error("FPGA tuning failed")]
24    TuningFailed,
25    #[error("FPGA retune queue is full")]
26    RetuneQueueFull,
27    #[error("NIOS write failed")]
28    NiosWriteFailed,
29}