1 use liverust_lib::netio::errors::IOReadError; 2 use crate::amf0::errors::Amf0ReadError; 3 pub enum MessageErrorValue { 4 IO(IOReadError), 5 UnknowReadState, 6 Amf0ReadError(Amf0ReadError), 7 UnknowMessageType, 8 //IO(io::Error), 9 } 10 11 pub struct MessageError { 12 pub value: MessageErrorValue, 13 } 14 15 impl From<MessageErrorValue> for MessageError { 16 fn from(val: MessageErrorValue) -> Self { 17 MessageError { value: val } 18 } 19 } 20 21 impl From<IOReadError> for MessageError { 22 fn from(error: IOReadError) -> Self { 23 MessageError { 24 value: MessageErrorValue::IO(error), 25 } 26 } 27 } 28 29 impl From<Amf0ReadError> for MessageError { 30 fn from(error: Amf0ReadError) -> Self { 31 MessageError { 32 value: MessageErrorValue::Amf0ReadError(error), 33 } 34 } 35 }