spawned_concurrency/
error.rs1#[derive(Debug, thiserror::Error)]
2pub enum GenServerError {
3    #[error("Callback Error")]
4    Callback,
5    #[error("Initialization error")]
6    Initialization,
7    #[error("Server error")]
8    Server,
9    #[error("Unsupported Call Messages on this GenServer")]
10    CallMsgUnused,
11    #[error("Unsupported Cast Messages on this GenServer")]
12    CastMsgUnused,
13}
14
15impl<T> From<spawned_rt::threads::mpsc::SendError<T>> for GenServerError {
16    fn from(_value: spawned_rt::threads::mpsc::SendError<T>) -> Self {
17        Self::Server
18    }
19}
20
21impl<T> From<spawned_rt::tasks::mpsc::SendError<T>> for GenServerError {
22    fn from(_value: spawned_rt::tasks::mpsc::SendError<T>) -> Self {
23        Self::Server
24    }
25}
26
27#[cfg(test)]
28mod tests {
29    use super::*;
30
31    #[test]
32    fn test_error_into_std_error() {
33        let error: &dyn std::error::Error = &GenServerError::Callback;
34        assert_eq!(error.to_string(), "Callback Error");
35    }
36}