rsiot/components/cmp_math/
error.rs

1use crate::{components::shared_tasks, executor::ComponentError};
2
3#[allow(missing_docs)]
4#[derive(Debug, thiserror::Error)]
5pub enum Error {
6    #[error("CmpOutput: {0}")]
7    CmpOutput(ComponentError),
8
9    #[error("TokioTaskJoin: {0}")]
10    TokioTaskJoin(#[from] tokio::task::JoinError),
11
12    #[error("FnProcessEnd")]
13    FnProcessEnd,
14
15    #[error("TaskInputEnd")]
16    TaskInputEnd,
17
18    #[error("TaskOutputEnd")]
19    TaskOutputEnd,
20
21    #[error(transparent)]
22    TaskMpscToMsgbus(shared_tasks::mpsc_to_msgbus::Error),
23
24    #[error(transparent)]
25    TaskMsgBusToMpsc(shared_tasks::msgbus_to_mpsc::Error),
26
27    #[error(transparent)]
28    TaskMpscToBroadcast(shared_tasks::mpsc_to_broadcast::Error),
29
30    #[error("AlgTaskUnexpectedEnd: {0}")]
31    AlgTaskUnexpectedEnd(String),
32}
33
34impl From<Error> for ComponentError {
35    fn from(value: Error) -> Self {
36        ComponentError::Execution(value.to_string())
37    }
38}