Crate xcb[][src]

Expand description

Rust bindings to the XCB library.

The X protocol C-language Binding (XCB - https://xcb.freedesktop.org/) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility.

The communication is established with the X server by the creation of a Connection object.

A client communicates with the server by sending requests. There are 2 types of requests:

  • void requests: requests that do not expect an answer (e.g. ChangeProperty)
  • non-void requests: requests that need a Reply (e.g. GetProperty)

Requests are passed to the server by filling a request structure e.g. x::CreateWindow and passing it to Connection::send_request.

The server can also communicate with clients by sending Events. The client listens to events with calls such as Connection::wait_for_event (blocking) or Connection::poll_for_event (non-blocking).

The x module contains definitions of the core X protocol.

The protocol extensions are activated with cargo features

Modules

The core X protocol definitions

Structs

Container for authentication information to connect to the X server

The checked cookie type returned by void-requests.

Connection is the central object of XCB.

Display info returned by parse_display

Extension data as returned by each extensions get_extension_data. See crate::bigreq::get_extension_data as example.

The default cookie type returned by void-requests.

Enums

Error type that is returned by Connection::has_error.

The general error type for Rust-XCB.

A protocol error issued from the X server

Traits

A trait to designate base protocol errors.

Trait for base events (aka. non GE_GENERIC events)

A marker trait for a cookie that allows synchronized error checking.

A trait for checked cookies of requests that send a reply.

General trait for cookies returned by requests.

A trait for GE_GENERIC events

Trait implemented by all requests to send the serialized data over the wire.

Trait for request replies

Trait implemented by requests types.

Trait for requests that return a reply.

Marker trait for requests that do not return a reply.

Trait for the resolution of raw wire error to a unified error enum.

Trait for the resolution of raw wire event to a unified event enum.

Trait for the resolution of raw wire GE_GENERIC event to a unified event enum.

A trait for unchecked cookies of requests that send a reply.

Trait for types that can serialize themselves over the X wire.

A X resource trait

Trait for X resources that can be created directly from Connection::generate_id

Functions

Parses a display string name in the form documented by (X(7x))man.

Type Definitions

The result type associated with ConnError.

The result type associated with ProtocolError.

The general result type for Rust-XCB.