1macro_rules! wayland_protocol(
2 ($path:expr, [$($imports:path),*]) => {
3 #[cfg(feature = "client")]
4 pub use self::generated::client;
5
6 #[cfg(feature = "server")]
7 pub use self::generated::server;
8
9 mod generated {
10 #![allow(dead_code,non_camel_case_types,unused_unsafe,unused_variables)]
11 #![allow(non_upper_case_globals,non_snake_case,unused_imports)]
12 #![allow(missing_docs, clippy::all)]
13
14 #[cfg(feature = "client")]
15 pub mod client {
16 //! Client-side API of this protocol
17 use wayland_client;
18 use wayland_client::protocol::*;
19 $(use $imports::{client::*};)*
20
21 pub mod __interfaces {
22 use wayland_client::protocol::__interfaces::*;
23 $(use $imports::{client::__interfaces::*};)*
24 wayland_scanner::generate_interfaces!($path);
25 }
26 use self::__interfaces::*;
27
28 wayland_scanner::generate_client_code!($path);
29 }
30
31 #[cfg(feature = "server")]
32 pub mod server {
33 //! Server-side API of this protocol
34 use wayland_server;
35 use wayland_server::protocol::*;
36 $(use $imports::{server::*};)*
37
38 pub mod __interfaces {
39 use wayland_server::protocol::__interfaces::*;
40 $(use $imports::{server::__interfaces::*};)*
41 wayland_scanner::generate_interfaces!($path);
42 }
43 use self::__interfaces::*;
44
45 wayland_scanner::generate_server_code!($path);
46 }
47 }
48 }
49);
50