summaryrefslogtreecommitdiff
path: root/nrf-softdevice
diff options
context:
space:
mode:
authorDario Nieuwenhuis <dirbaio@dirbaio.net>2021-06-07 15:42:24 +0200
committerDario Nieuwenhuis <dirbaio@dirbaio.net>2021-06-07 15:42:24 +0200
commit6bc54b0630c9255bef1dba7f2fca54c1e7a3006f (patch)
tree2a55fa33e23cd48c8b93f51ed29912af533481f3 /nrf-softdevice
parent0997666bf3d88087e3b2997cdb81377d31bf88c7 (diff)
downloadnrf-softdevice-6bc54b0630c9255bef1dba7f2fca54c1e7a3006f.zip
Add more derives to errors.
Diffstat (limited to 'nrf-softdevice')
-rw-r--r--nrf-softdevice/src/ble/central.rs2
-rw-r--r--nrf-softdevice/src/ble/connection.rs2
-rw-r--r--nrf-softdevice/src/ble/gatt_client.rs7
-rw-r--r--nrf-softdevice/src/ble/gatt_server.rs6
-rw-r--r--nrf-softdevice/src/ble/l2cap.rs3
-rw-r--r--nrf-softdevice/src/ble/peripheral.rs2
-rw-r--r--nrf-softdevice/src/ble/types.rs4
-rw-r--r--nrf-softdevice/src/events.rs2
-rw-r--r--nrf-softdevice/src/random.rs1
-rw-r--r--nrf-softdevice/src/raw_error.rs2
-rw-r--r--nrf-softdevice/src/temperature.rs1
11 files changed, 25 insertions, 7 deletions
diff --git a/nrf-softdevice/src/ble/central.rs b/nrf-softdevice/src/ble/central.rs
index 992c35b..9e2ffde 100644
--- a/nrf-softdevice/src/ble/central.rs
+++ b/nrf-softdevice/src/ble/central.rs
@@ -13,6 +13,7 @@ use crate::raw;
use crate::util::{get_union_field, OnDrop, Portal};
use crate::{RawError, Softdevice};
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ConnectError {
Timeout,
@@ -129,6 +130,7 @@ impl<'a> Default for ConnectConfig<'a> {
}
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ScanError {
Timeout,
diff --git a/nrf-softdevice/src/ble/connection.rs b/nrf-softdevice/src/ble/connection.rs
index 4c34558..c4e3fa9 100644
--- a/nrf-softdevice/src/ble/connection.rs
+++ b/nrf-softdevice/src/ble/connection.rs
@@ -8,9 +8,11 @@ use crate::RawError;
const BLE_GAP_DATA_LENGTH_DEFAULT: u8 = 27; // The stack's default data length. <27-251>
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub(crate) struct OutOfConnsError;
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct DisconnectedError;
diff --git a/nrf-softdevice/src/ble/gatt_client.rs b/nrf-softdevice/src/ble/gatt_client.rs
index de5c92f..48c5f72 100644
--- a/nrf-softdevice/src/ble/gatt_client.rs
+++ b/nrf-softdevice/src/ble/gatt_client.rs
@@ -53,7 +53,7 @@ pub trait Client {
#[rustfmt::skip]
#[repr(u32)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
-#[derive(IntoPrimitive, FromPrimitive)]
+#[derive(Debug, PartialEq, Eq, Clone, Copy, IntoPrimitive, FromPrimitive)]
pub enum GattError {
// This is not really an error, but IMO it's better to add it
// anyway, just in case someone mistakenly converts BLE_GATT_STATUS_SUCCESS into GattError.
@@ -88,6 +88,7 @@ pub enum GattError {
}
/// Error type for [`discover`]
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum DiscoverError {
/// Connection is disconnected.
@@ -340,6 +341,7 @@ pub async fn discover<T: Client>(conn: &Connection) -> Result<T, DiscoverError>
Ok(client)
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ReadError {
Disconnected,
@@ -402,6 +404,7 @@ pub async fn read(conn: &Connection, handle: u16, buf: &mut [u8]) -> Result<usiz
.await
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum WriteError {
Disconnected,
@@ -508,6 +511,7 @@ pub async fn write_without_response(
}
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum TryWriteError {
Disconnected,
@@ -574,6 +578,7 @@ pub(crate) unsafe fn on_evt(ble_evt: *const raw::ble_evt_t) {
portal(gattc_evt.conn_handle).call(ble_evt);
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum MtuExchangeError {
/// Connection is disconnected.
diff --git a/nrf-softdevice/src/ble/gatt_server.rs b/nrf-softdevice/src/ble/gatt_server.rs
index cf961f2..3634127 100644
--- a/nrf-softdevice/src/ble/gatt_server.rs
+++ b/nrf-softdevice/src/ble/gatt_server.rs
@@ -39,8 +39,8 @@ pub trait Server: Sized {
fn on_write(&self, handle: u16, data: &[u8]) -> Option<Self::Event>;
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
-#[derive(Debug)]
pub enum RegisterError {
Raw(RawError),
}
@@ -120,6 +120,7 @@ pub fn register<S: Server>(_sd: &Softdevice) -> Result<S, RegisterError> {
})
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum RunError {
Disconnected,
@@ -172,6 +173,7 @@ where
.await
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum GetValueError {
Truncated,
@@ -202,6 +204,7 @@ pub fn get_value(_sd: &Softdevice, handle: u16, buf: &mut [u8]) -> Result<usize,
Ok(value.len as _)
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum SetValueError {
Truncated,
@@ -228,6 +231,7 @@ pub fn set_value(_sd: &Softdevice, handle: u16, val: &[u8]) -> Result<(), SetVal
Ok(())
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum NotifyValueError {
Disconnected,
diff --git a/nrf-softdevice/src/ble/l2cap.rs b/nrf-softdevice/src/ble/l2cap.rs
index 2200e5c..a03ee9a 100644
--- a/nrf-softdevice/src/ble/l2cap.rs
+++ b/nrf-softdevice/src/ble/l2cap.rs
@@ -32,6 +32,7 @@ pub(crate) unsafe fn on_evt(ble_evt: *const raw::ble_evt_t) {
};
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum TxError<P: Packet> {
Disconnected,
@@ -50,6 +51,7 @@ impl<P: Packet> From<RawError> for TxError<P> {
TxError::Raw(err)
}
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum RxError {
Disconnected,
@@ -69,6 +71,7 @@ impl From<RawError> for RxError {
}
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum SetupError {
Disconnected,
diff --git a/nrf-softdevice/src/ble/peripheral.rs b/nrf-softdevice/src/ble/peripheral.rs
index 0658d82..5b30d35 100644
--- a/nrf-softdevice/src/ble/peripheral.rs
+++ b/nrf-softdevice/src/ble/peripheral.rs
@@ -84,8 +84,8 @@ pub enum NonconnectableAdvertisement {
}
/// Error for [`advertise_start`]
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
-#[derive(Debug)]
pub enum AdvertiseError {
Timeout,
NoFreeConn,
diff --git a/nrf-softdevice/src/ble/types.rs b/nrf-softdevice/src/ble/types.rs
index ebc9067..7763ebc 100644
--- a/nrf-softdevice/src/ble/types.rs
+++ b/nrf-softdevice/src/ble/types.rs
@@ -63,8 +63,8 @@ impl PartialEq for Uuid {
}
}
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
-#[derive(Copy, Clone, Eq, PartialEq, Debug)]
pub enum Role {
#[cfg(feature = "ble-central")]
Central,
@@ -85,8 +85,8 @@ impl Role {
}
#[repr(u8)]
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
-#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub enum AddressType {
/// Public (identity) address
Public = 0x00,
diff --git a/nrf-softdevice/src/events.rs b/nrf-softdevice/src/events.rs
index 403350f..f00de57 100644
--- a/nrf-softdevice/src/events.rs
+++ b/nrf-softdevice/src/events.rs
@@ -11,7 +11,7 @@ static SWI2_SIGNAL: Signal<()> = Signal::new();
#[rustfmt::skip]
#[repr(u32)]
-#[derive(IntoPrimitive, TryFromPrimitive, Debug)]
+#[derive(Debug, PartialEq, Eq, Clone, Copy, IntoPrimitive, TryFromPrimitive)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
enum SocEvent {
Hfclkstarted = raw::NRF_SOC_EVTS_NRF_EVT_HFCLKSTARTED,
diff --git a/nrf-softdevice/src/random.rs b/nrf-softdevice/src/random.rs
index d37e0de..c28ea64 100644
--- a/nrf-softdevice/src/random.rs
+++ b/nrf-softdevice/src/random.rs
@@ -1,5 +1,6 @@
use crate::{raw, RawError, Softdevice};
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum RandomError {
BufferTooBig,
diff --git a/nrf-softdevice/src/raw_error.rs b/nrf-softdevice/src/raw_error.rs
index 6f4632a..3452847 100644
--- a/nrf-softdevice/src/raw_error.rs
+++ b/nrf-softdevice/src/raw_error.rs
@@ -6,7 +6,7 @@ use crate::raw;
#[rustfmt::skip]
#[repr(u32)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
-#[derive(Debug, IntoPrimitive, FromPrimitive)]
+#[derive(Debug, PartialEq, Eq, Clone, Copy, IntoPrimitive, FromPrimitive)]
pub enum RawError {
/// This is not really an error, but is added here anyway, just in case someone mistakenly converts NRF_SUCCESS into RawError.
Success = raw::NRF_SUCCESS,
diff --git a/nrf-softdevice/src/temperature.rs b/nrf-softdevice/src/temperature.rs
index 9efcaf2..b40dc4a 100644
--- a/nrf-softdevice/src/temperature.rs
+++ b/nrf-softdevice/src/temperature.rs
@@ -2,6 +2,7 @@ use fixed::types::I30F2;
use crate::{raw, RawError, Softdevice};
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum TempError {
Raw(RawError),