pub struct GlobalList { /* private fields */ }
Expand description
A helper for global initialization.
See the module level documentation for more.
Implementations§
source§impl GlobalList
impl GlobalList
sourcepub fn contents(&self) -> &GlobalListContents
pub fn contents(&self) -> &GlobalListContents
Access the contents of the list of globals
sourcepub fn bind<I, State, U>(
&self,
qh: &QueueHandle<State>,
version: RangeInclusive<u32>,
udata: U,
) -> Result<I, BindError>
pub fn bind<I, State, U>( &self, qh: &QueueHandle<State>, version: RangeInclusive<u32>, udata: U, ) -> Result<I, BindError>
Binds a global, returning a new protocol object associated with the global.
The version
specifies the range of versions that should be bound. This function will guarantee the
version of the returned protocol object is the lower of the maximum requested version and the advertised
version.
If the lower bound of the version
is less than the version advertised by the server, then
BindError::UnsupportedVersion
is returned.
§Multi-instance/Device globals.
This function is not intended to be used with globals that have multiple instances such as wl_output
and wl_seat
. These types of globals need their own initialization mechanism because these
multi-instance globals may be removed at runtime. To handle then, you should instead rely on the
Dispatch
implementation for WlRegistry
of your State
.
§Panics
This function will panic if the maximum requested version is greater than the known maximum version of the interface. The known maximum version is determined by the code generated using wayland-scanner.
sourcepub fn registry(&self) -> &WlRegistry
pub fn registry(&self) -> &WlRegistry
Returns the WlRegistry
protocol object.
This may be used if more direct control when creating globals is needed.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for GlobalList
impl !RefUnwindSafe for GlobalList
impl Send for GlobalList
impl Sync for GlobalList
impl Unpin for GlobalList
impl !UnwindSafe for GlobalList
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.