[][src]Struct i3ipc_types::MsgResponse

pub struct MsgResponse<D> {
    pub msg_type: Msg,
    pub body: D,
}

Instead of returning an enum, we're returning a struct containing the Msg type and some body. An advantage to this over the enum method is that there is no minimum memory size that we must have. This is helpful when some variants are very large compared to others, as in the case of say reply::Node vs reply::Config

Fields

msg_type: Msgbody: D

Methods

impl<D: DeserializeOwned> MsgResponse<D>[src]

MsgResponse is valid for anything which can be deserialized with serde

pub fn new(msg_type: u32, buf: Vec<u8>) -> Result<Self>[src]

Trait Implementations

impl<D: Debug> Debug for MsgResponse<D>[src]

Auto Trait Implementations

impl<D> Send for MsgResponse<D> where
    D: Send

impl<D> Sync for MsgResponse<D> where
    D: Sync

Blanket Implementations

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.