OwnedProxy

Trait OwnedProxy 

Source
pub unsafe trait OwnedProxy: UntypedOwnedProxyWrapper {
    type Borrowed: BorrowedProxy<Owned = Self>;
    type Api;
    type NoOpEventHandler: EventHandler + Send + 'static;

    const INTERFACE: &'static str;
    const WL_INTERFACE: &'static wl_interface;
    const NO_OP_EVENT_HANDLER: Self::NoOpEventHandler;
    const MAX_VERSION: u32;
}
Expand description

An owned proxy.

This type is usually implemented by bindings that are automatically generated with the wl-client-builder crate.

§Safety

  • WL_INTERFACE must refer to a valid interface specification.
  • It must be safe to transmute this type from an UntypedOwnedProxy that has an interface that is compatible with WL_INTERFACE.
  • The interface of the contained proxy must be compatible with WL_INTERFACE.
  • The EventHandler::mutable_type of the OwnedProxy::NoOpEventHandler must be None or the type ID of ().

Required Associated Constants§

Source

const INTERFACE: &'static str

The name of the interface.

Source

const WL_INTERFACE: &'static wl_interface

The libwayland interface specification.

Source

const NO_OP_EVENT_HANDLER: Self::NoOpEventHandler

An event handler that ignores all events without leaking memory.

Source

const MAX_VERSION: u32

The maximum protocol version supported by this type.

Required Associated Types§

Source

type Borrowed: BorrowedProxy<Owned = Self>

The borrowed version of this proxy.

Source

type Api

A type used to implement some technical operations on the proxy.

This type exists to avoid polluting the function namespace of the proxy.

Source

type NoOpEventHandler: EventHandler + Send + 'static

An event handler that ignores all events without leaking memory.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§