pub struct ExtensionManager(/* private fields */);
Expand description

Helper for implementing RequestConnection::extension_information().

This helps with implementing RequestConnection. Most likely, you do not need this in your own code, unless you really want to implement your own X11 connection.

Implementations§

source§

impl ExtensionManager

source

pub fn prefetch_extension_information<C: RequestConnection>( &mut self, conn: &C, extension_name: &'static str ) -> Result<(), ConnectionError>

Prefetchs an extension sending a QueryExtension without waiting for the reply.

source

pub fn insert_extension_information( &mut self, extension_name: &'static str, info: Option<ExtensionInformation> )

Insert an extension if you already have the information.

source

pub fn extension_information<C: RequestConnection>( &mut self, conn: &C, extension_name: &'static str ) -> Result<Option<ExtensionInformation>, ConnectionError>

An implementation of RequestConnection::extension_information().

The given connection is used for sending a QueryExtension request if needed.

Trait Implementations§

source§

impl Debug for ExtensionManager

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ExtensionManager

source§

fn default() -> ExtensionManager

Returns the “default value” for a type. Read more
source§

impl ExtInfoProvider for ExtensionManager

source§

fn get_from_major_opcode( &self, major_opcode: u8 ) -> Option<(&str, ExtensionInformation)>

Returns the information of the extension that whose opcode is major_opcode.
source§

fn get_from_event_code( &self, event_code: u8 ) -> Option<(&str, ExtensionInformation)>

Returns the information of the extension that whose event number range includes event_number.
source§

fn get_from_error_code( &self, error_code: u8 ) -> Option<(&str, ExtensionInformation)>

Returns the information of the extension that whose error number range includes error_number.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.