Convert PSendStatus into string.
19 {
20 if constexpr (std::is_same_v<T, PSendStatus::PSendStatus>) {
21 switch (status) {
22 case PSendStatus::OK: return "OK";
23 case PSendStatus::SOCKET_NOT_AVAILABLE: return "SOCKET_NOT_AVAILABLE";
24 case PSendStatus::NO_ROUTE_TO_RECEIVER: return "NO_ROUTE_TO_RECEIVER";
25 case PSendStatus::SIGNAL_INTERRUPTION: return "SIGNAL_INTERRUPTION";
26 case PSendStatus::BROKEN_BACKEND: return "BROKEN_BACKEND";
27 case PSendStatus::BROKEN_SOCKET: return "BROKEN_SOCKET";
28 case PSendStatus::CANNOT_SERIALIZE_DATA: return "CANNOT_SERIALIZE_DATA";
29 default: return "UNKNOWN_SEND_STATUS";
30 }
31 } else if constexpr (std::is_same_v<T, PRecvStatus::PRecvStatus>) {
32 switch (status) {
33 case PRecvStatus::OK: return "OK";
34 case PRecvStatus::SOCKET_NOT_AVAILABLE: return "SOCKET_NOT_AVAILABLE";
35 case PRecvStatus::SIGNAL_INTERRUPTION: return "SIGNAL_INTERRUPTION";
36 case PRecvStatus::BROKEN_BACKEND: return "BROKEN_BACKEND";
37 case PRecvStatus::BROKEN_SOCKET: return "BROKEN_SOCKET";
38 case PRecvStatus::NO_MESSAGE_RECEIVED: return "NO_MESSAGE_RECEIVED";
39 case PRecvStatus::CANNOT_DESERIALIZE_DATA: return "CANNOT_DESERIALIZE_DATA";
40 default: return "UNKNOWN_RECV_STATUS";
41 }
42 } else {
43 return "UNKNOWN_STATUS_TYPE";
44 }
45}