1/// A trait for retrieving the implementation behind a COM or WinRT interface.
2///
3/// This trait is automatically implemented when using the `implement` macro.
4pub trait AsImpl<T> {
5 /// # Safety
6 ///
7 /// The caller needs to ensure that `self` is actually implemented by the
8 /// implementation `T`.
9 unsafe fn as_impl(&self) -> &T;
10}
11