use crate::amf0::errors::Amf0ReadError; use crate::protocol_control_messages::errors::ProtocolControlMessageReaderError; use liverust_lib::netio::bytes_errors::BytesReadError; pub enum MessageErrorValue { BytesReadError(BytesReadError), UnknowReadState, Amf0ReadError(Amf0ReadError), UnknowMessageType, ProtocolControlMessageReaderError(ProtocolControlMessageReaderError), //IO(io::Error), } pub struct MessageError { pub value: MessageErrorValue, } impl From for MessageError { fn from(val: MessageErrorValue) -> Self { MessageError { value: val } } } impl From for MessageError { fn from(error: BytesReadError) -> Self { MessageError { value: MessageErrorValue::BytesReadError(error), } } } impl From for MessageError { fn from(error: Amf0ReadError) -> Self { MessageError { value: MessageErrorValue::Amf0ReadError(error), } } } impl From for MessageError { fn from(error: ProtocolControlMessageReaderError) -> Self { MessageError { value: MessageErrorValue::ProtocolControlMessageReaderError(error), } } }