pub struct ComBox<T: ComClass> { /* private fields */ }
Expand description
Pointer to a COM-enabled Rust struct.
Intercom requires a specific memory layout for the COM objects so that it can implement reference counting and map COM method calls back to the target struct instance.
This is done by requiring each COM-enabled Rust object is constructed
through a ComBox<T>
type.
Technically the memory layout is specified by the ComBoxData
type, however that type shouldn’t be needed by the user. For all intents
the ComBox
type is the COM-compatible object handle.
Implementations
Trait Implementations
sourceimpl<T: ComClass> AsMut<ComBoxData<T>> for ComBox<T>
impl<T: ComClass> AsMut<ComBoxData<T>> for ComBox<T>
sourcefn as_mut(&mut self) -> &mut ComBoxData<T>
fn as_mut(&mut self) -> &mut ComBoxData<T>
Converts this type into a mutable reference of the (usually inferred) input type.
sourceimpl<T: ComClass> AsRef<ComBoxData<T>> for ComBox<T>
impl<T: ComClass> AsRef<ComBoxData<T>> for ComBox<T>
sourcefn as_ref(&self) -> &ComBoxData<T>
fn as_ref(&self) -> &ComBoxData<T>
Converts this type into a shared reference of the (usually inferred) input type.
sourceimpl<I: ComInterface + ?Sized, T: HasInterface<I>> From<&ComBox<T>> for ComRc<I>
impl<I: ComInterface + ?Sized, T: HasInterface<I>> From<&ComBox<T>> for ComRc<I>
sourceimpl<I: ComInterface + ?Sized, T: HasInterface<I>> From<ComBox<T>> for ComRc<I>
impl<I: ComInterface + ?Sized, T: HasInterface<I>> From<ComBox<T>> for ComRc<I>
Auto Trait Implementations
impl<T> RefUnwindSafe for ComBox<T> where
T: RefUnwindSafe,
<T as ComClass>::VTableList: RefUnwindSafe,
impl<T> !Send for ComBox<T>
impl<T> !Sync for ComBox<T>
impl<T> Unpin for ComBox<T>
impl<T> UnwindSafe for ComBox<T> where
T: RefUnwindSafe,
<T as ComClass>::VTableList: RefUnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ExternDefault for T
impl<T> ExternDefault for T
sourceunsafe fn extern_default() -> T
unsafe fn extern_default() -> T
Safety Read more