atspi_client/
selection_ext.rs

1use atspi_proxies::selection::{
2	Selection, SelectionBlocking, SelectionProxy, SelectionProxyBlocking,
3};
4
5impl_extended_errors!(SelectionProxy<'_>, SelectionExtError);
6impl_extended_errors!(SelectionProxyBlocking<'_>, SelectionBlockingExtError);
7
8#[allow(clippy::module_name_repetitions)]
9pub trait SelectionExtError: Selection {
10	type Error: std::error::Error;
11}
12pub trait SelectionBlockingExtError: SelectionBlocking {
13	type Error: std::error::Error;
14}
15
16pub trait SelectionExt {}
17pub trait SelectionBlockingExt {}
18
19impl<T: SelectionExtError + Selection> SelectionExt for T {}
20impl<T: SelectionBlockingExtError + SelectionBlocking> SelectionBlockingExt for T {}
21
22assert_impl_all!(SelectionProxy: Selection, SelectionExt);
23assert_impl_all!(SelectionProxyBlocking: SelectionBlocking, SelectionBlockingExt);