pub struct DataInit<'a, D: 'static> { /* private fields */ }Expand description
Helper to initialize client-created objects
This helper is provided to you in your Dispatch and GlobalDispatch to
initialize objects created by the client, by assigning them their user-data (or ObjectData if you
need to go this lower-level route).
This step is mandatory, and failing to initialize a newly created object will cause a panic.
Implementations§
Source§impl<D> DataInit<'_, D>
impl<D> DataInit<'_, D>
Sourcepub fn init<I: Resource + 'static, U>(&mut self, resource: New<I>, data: U) -> I
pub fn init<I: Resource + 'static, U>(&mut self, resource: New<I>, data: U) -> I
Initialize an object by assigning it its user-data
Sourcepub fn custom_init<I: Resource + 'static>(
&mut self,
resource: New<I>,
data: Arc<dyn ObjectData<D>>,
) -> I
pub fn custom_init<I: Resource + 'static>( &mut self, resource: New<I>, data: Arc<dyn ObjectData<D>>, ) -> I
Set a custom ObjectData for this object
This object data is not managed by wayland-server, as a result you will not
be able to retreive it through Resource::data().
Instead, you’ll need to retrieve it using Resource::object_data() and
handle the downcasting yourself.
Sourcepub fn post_error<I: Resource + 'static>(
&mut self,
_resource: New<I>,
code: impl Into<u32>,
error: impl Into<String>,
)
pub fn post_error<I: Resource + 'static>( &mut self, _resource: New<I>, code: impl Into<u32>, error: impl Into<String>, )
Post an error on an uninitialized object.
This is only meant to be used in GlobalDispatch where a global protocol
object is instantiated.