diff --git a/wayland-client/src/event_queue.rs b/wayland-client/src/event_queue.rs index 94674bd3747..71072e0a992 100644 --- a/wayland-client/src/event_queue.rs +++ b/wayland-client/src/event_queue.rs @@ -851,6 +851,21 @@ macro_rules! delegate_noop { } }; + ($(@< $( $lt:tt $lct:tt $( : $clt:tt $(+ $dlt:tt )* )? ),+ >)? $dispatch_from: ty : $interface: ty) => { + impl$(< $( $lt $lct:tt $( : $clt $(+ $dlt )* )? ),+ >)? $crate::Dispatch<$interface, ()> for $dispatch_from { + fn event( + _: &mut Self, + _: &$interface, + _: <$interface as $crate::Proxy>::Event, + _: &(), + _: &$crate::Connection, + _: &$crate::QueueHandle, + ) { + unreachable!(); + } + } + }; + ($(@< $( $lt:tt $( : $clt:tt $(+ $dlt:tt )* )? ),+ >)? $dispatch_from: ty : ignore $interface: ty) => { impl$(< $( $lt $( : $clt $(+ $dlt )* )? ),+ >)? $crate::Dispatch<$interface, ()> for $dispatch_from { fn event( @@ -864,4 +879,18 @@ macro_rules! delegate_noop { } } }; + + ($(@< $( $lt:tt $lct:tt $( : $clt:tt $(+ $dlt:tt )* )? ),+ >)? $dispatch_from: ty : ignore $interface: ty) => { + impl$(< $( $lt $lct $( : $clt $(+ $dlt )* )? ),+ >)? $crate::Dispatch<$interface, ()> for $dispatch_from { + fn event( + _: &mut Self, + _: &$interface, + _: <$interface as $crate::Proxy>::Event, + _: &(), + _: &$crate::Connection, + _: &$crate::QueueHandle, + ) { + } + } + }; }