modular session management daemon
Something went wrong. Try again.
2.0 kB · 47 lines
Rust
at master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748macro_rules! define_protocol_modules { ($side:ident => { $( $module:ident => { $( $version:ident => $protocol_mod:ident => $protocol_name:literal ),+ $(,)? } ),+ $(,)? }) => { pub mod $side { $( pub mod $module { $( pub mod $version { // This module is generated by hyprwire-scanner, so its public API // cannot be annotated in this crate. #[allow( clippy::missing_panics_doc, clippy::must_use_candidate )] pub mod $protocol_mod { hyprwire::include_protocol!($protocol_name); pub use $side::*; pub use spec::*; } } )+ } )+ } };}
define_protocol_modules!(server => { session_power => { v1 => session_power_v1 => "session_power_v1" }, session_core => { v1 => session_core_v1 => "session_core_v1" }, session_inhibit => { v1 => session_inhibit_v1 => "session_inhibit_v1" }, session_management => { v1 => session_management_v1 => "session_management_v1", v2 => session_management_v2 => "session_management_v2", }, session_backlight => { v1 => session_backlight_v1 => "session_backlight_v1" },});
define_protocol_modules!(client => { session_power => { v1 => session_power_v1 => "session_power_v1" }, session_core => { v1 => session_core_v1 => "session_core_v1" }, session_inhibit => { v1 => session_inhibit_v1 => "session_inhibit_v1" }, session_management => { v1 => session_management_v1 => "session_management_v1", v2 => session_management_v2 => "session_management_v2", }, session_backlight => { v1 => session_backlight_v1 => "session_backlight_v1" },});