Struct x11rb::cookie::VoidCookie

source ·
pub struct VoidCookie<'a, C>{
    connection: &'a C,
    sequence_number: SequenceNumber,
}
Expand description

A handle to a possible error from the X11 server.

When sending a request for which no reply is expected, this library returns a VoidCookie. This VoidCookie can then later be used to check if the X11 server sent an error.

See crate::cookie for infos on the different ways to handle X11 errors in response to a request.

Fields§

§connection: &'a C§sequence_number: SequenceNumber

Implementations§

source§

impl<'a, C> VoidCookie<'a, C>

source

pub fn new(connection: &C, sequence_number: SequenceNumber) -> VoidCookie<'_, C>

Construct a new cookie.

This function should only be used by implementations of Connection::send_request_without_reply.

source

pub fn sequence_number(&self) -> SequenceNumber

Get the sequence number of the request that generated this cookie.

source

fn consume(self) -> (&'a C, SequenceNumber)

source

pub fn check(self) -> Result<(), ReplyError>

Check if the original request caused an X11 error.

source

pub fn ignore_error(self)

Ignore all errors to this request.

Without calling this method, an error becomes available on the connection as an event after this cookie was dropped. This function causes errors to be ignored instead.

source

pub(crate) fn replace_connection<C2: RequestConnection + ?Sized>( self, connection: &C2, ) -> VoidCookie<'_, C2>

Move this cookie to refer to another connection instance.

This function may only be used if both connections are “basically the same”. For example, a Cookie for a connection C can be moved to Rc<C> since that still refers to the same underlying connection.

Trait Implementations§

source§

impl<'a, C> Debug for VoidCookie<'a, C>

source§

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

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

impl<C> Drop for VoidCookie<'_, C>

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl<'a, C> Freeze for VoidCookie<'a, C>
where C: ?Sized,

§

impl<'a, C> RefUnwindSafe for VoidCookie<'a, C>
where C: RefUnwindSafe + ?Sized,

§

impl<'a, C> Send for VoidCookie<'a, C>
where C: Sync + ?Sized,

§

impl<'a, C> Sync for VoidCookie<'a, C>
where C: Sync + ?Sized,

§

impl<'a, C> Unpin for VoidCookie<'a, C>
where C: ?Sized,

§

impl<'a, C> UnwindSafe for VoidCookie<'a, C>
where C: RefUnwindSafe + ?Sized,

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.