rsiot/components/cmp_esp_gpio/
error.rs1use crate::executor::ComponentError;
2
3use super::COMPONENT_NAME;
4
5#[allow(missing_docs)]
7#[derive(Debug, thiserror::Error)]
8pub enum Error {
9 #[error("{COMPONENT_NAME} | CreatePinDriver: {0}")]
10 CreatePinDriver(esp_idf_svc::sys::EspError),
11
12 #[error("{COMPONENT_NAME} | SetGpioOutput: {0}")]
13 SetGpioOutput(esp_idf_svc::sys::EspError),
14
15 #[error("{COMPONENT_NAME} | SetPinPull: {0}")]
16 SetPinPull(esp_idf_svc::sys::EspError),
17
18 #[error("{COMPONENT_NAME} | TaskEndGpioOutput")]
19 TaskEndGpioOutput,
20
21 #[error("{COMPONENT_NAME} | TokioSyncMpscSend")]
22 TokioSyncMpscSend,
23
24 #[error("{COMPONENT_NAME} | TokioTaskJoin: {0}")]
25 TokioTaskJoin(#[from] tokio::task::JoinError),
26
27 #[error("{COMPONENT_NAME} | WaitForAnyEdge: {0}")]
28 WaitForAnyEdge(esp_idf_svc::sys::EspError),
29}
30
31impl From<Error> for ComponentError {
32 fn from(value: Error) -> Self {
33 ComponentError::Execution(value.to_string())
34 }
35}