1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//! This library provides a Rust interface on the Wayland client library.
//!
//! To use it, you'll need to have `libwayland-client.so` available on your system.
//! However, to allow for easy optionnal support of wayland in applications, the library
//! is not linked, but will be opened at first use of a wayland method.
//!
//! You can check the presence of the library with the function `is_wayland_lib_available()`,
//! and the methods creating the `Display` object will not panic if the library is absent, but
//! return a failure (`None` or `Err(_)`).
//!
//! The module `core` provides support for the core features of the wayland protocol.
//! Some protocol extentions are available, each as their own module. Some of them require
//! a system library which they will try to load at first use.
//!
//! - module `egl`: it provides a mean to build EGL surfaces in a wayland context. It requires
//! the presence of `libwayland-egl.so`.
//!
extern crate bitflags;
extern crate lazy_static;
extern crate libc;
/// Returns whether the library `libwayland-client.so` has been found and could be loaded.