atspi_client/
application_ext.rs1use atspi_proxies::application::{
2 Application, ApplicationBlocking, ApplicationProxy, ApplicationProxyBlocking,
3};
4
5impl_extended_errors!(ApplicationProxy<'_>, ApplicationExtError);
6impl_extended_errors!(ApplicationProxyBlocking<'_>, ApplicationBlockingExtError);
7
8#[allow(clippy::module_name_repetitions)]
9pub trait ApplicationExtError: Application {
10 type Error: std::error::Error;
11}
12pub trait ApplicationBlockingExtError: ApplicationBlocking {
13 type Error: std::error::Error;
14}
15
16pub trait ApplicationExt {}
17pub trait ApplicationBlockingExt {}
18
19impl<T: ApplicationExtError + Application> ApplicationExt for T {}
20impl<T: ApplicationBlockingExtError + ApplicationBlocking> ApplicationBlockingExt for T {}
21
22assert_impl_all!(ApplicationProxy: Application, ApplicationExt);
23assert_impl_all!(ApplicationProxyBlocking: ApplicationBlocking, ApplicationBlockingExt);