[−][src]Trait wayland_commons::MessageGroup
A group of messages
This represents a group of message that can be serialized on the protocol wire. Typically the set of events or requests of a single interface.
Implementations of this trait are supposed to be
generated using the wayland-scanner
crate.
Associated Types
type Map
The wrapper type for ObjectMap allowing the mapping of Object and NewId arguments to the object map during parsing.
Associated Constants
const MESSAGES: &'static [MessageDesc]
Wire representation of this MessageGroup
Required methods
fn opcode(&self) -> u16
The opcode of this message
fn is_destructor(&self) -> bool
Whether this message is a destructor
If it is, once send or receive the associated object cannot be used any more.
fn child<Meta: ObjectMetadata>(
opcode: u16,
version: u32,
meta: &Meta
) -> Option<Object<Meta>>
opcode: u16,
version: u32,
meta: &Meta
) -> Option<Object<Meta>>
Retrieve the child Object
associated with this message if any
fn from_raw(msg: Message, map: &mut Self::Map) -> Result<Self, ()>
Construct a message from its raw representation
fn into_raw(self, send_id: u32) -> Message
Turn this message into its raw representation
unsafe fn from_raw_c(
obj: *mut c_void,
opcode: u32,
args: *const wl_argument
) -> Result<Self, ()>
obj: *mut c_void,
opcode: u32,
args: *const wl_argument
) -> Result<Self, ()>
Construct a message of this group from its C representation
fn as_raw_c_in<F, T>(self, f: F) -> T where
F: FnOnce(u32, &mut [wl_argument]) -> T,
F: FnOnce(u32, &mut [wl_argument]) -> T,
Build a C representation of this message
It can only be accessed from the provided closure, and this consumes the message.
Implementors
impl MessageGroup for NoMessage
[src]
const MESSAGES: &'static [MessageDesc]
[src]
type Map = ()
fn is_destructor(&self) -> bool
[src]
fn opcode(&self) -> u16
[src]
fn child<M: ObjectMetadata>(_: u16, _: u32, _: &M) -> Option<Object<M>>
[src]
fn from_raw(_: Message, _: &mut ()) -> Result<Self, ()>
[src]
fn into_raw(self, _: u32) -> Message
[src]
unsafe fn from_raw_c(
_obj: *mut c_void,
_opcode: u32,
_args: *const wl_argument
) -> Result<Self, ()>
[src]
_obj: *mut c_void,
_opcode: u32,
_args: *const wl_argument
) -> Result<Self, ()>
fn as_raw_c_in<F, T>(self, _f: F) -> T where
F: FnOnce(u32, &mut [wl_argument]) -> T,
[src]
F: FnOnce(u32, &mut [wl_argument]) -> T,