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}