Struct wayland_commons::map::Object[][src]

pub struct Object<Meta: ObjectMetadata> {
    pub interface: &'static str,
    pub version: u32,
    pub requests: &'static [MessageDesc],
    pub events: &'static [MessageDesc],
    pub meta: Meta,
    pub childs_from_events: fn(_: u16, _: u32, _: &Meta) -> Option<Object<Meta>>,
    pub childs_from_requests: fn(_: u16, _: u32, _: &Meta) -> Option<Object<Meta>>,
}

The representation of a protocol object

Fields

Interface name of this object

Version of this object

Description of the requests of this object

Description of the events of this object

Metadata associated to this object (ex: its event queue client side)

A function which, from an opcode, a version, and the Meta, creates a child object associated with this event if any

A function which, from an opcode, a version, and the Meta, creates a child object associated with this request if any

Methods

impl<Meta: ObjectMetadata> Object<Meta>
[src]

Create an Object corresponding to given interface and version

Create an optional Object corresponding to the possible new_id associated with given event opcode

Create an optional Object corresponding to the possible new_id associated with given request opcode

Check whether this object is of given interface

Trait Implementations

impl<Meta: Clone + ObjectMetadata> Clone for Object<Meta>
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Auto Trait Implementations

impl<Meta> Send for Object<Meta> where
    Meta: Send

impl<Meta> Sync for Object<Meta> where
    Meta: Sync