atspi_client/
document_ext.rs

1use atspi_proxies::document::{Document, DocumentBlocking, DocumentProxy, DocumentProxyBlocking};
2
3impl_extended_errors!(DocumentProxy<'_>, DocumentExtError);
4impl_extended_errors!(DocumentProxyBlocking<'_>, DocumentBlockingExtError);
5
6#[allow(clippy::module_name_repetitions)]
7pub trait DocumentExtError: Document {
8	type Error: std::error::Error;
9}
10pub trait DocumentBlockingExtError: DocumentBlocking {
11	type Error: std::error::Error;
12}
13
14pub trait DocumentExt {}
15pub trait DocumentBlockingExt {}
16
17impl<T: DocumentExtError + Document> DocumentExt for T {}
18impl<T: DocumentBlockingExtError + DocumentBlocking> DocumentBlockingExt for T {}
19
20assert_impl_all!(DocumentProxy: Document, DocumentExt);
21assert_impl_all!(DocumentProxyBlocking: DocumentBlocking, DocumentBlockingExt);