Struct windows_core::IInspectable
#[repr(transparent)]pub struct IInspectable(pub IUnknown);
Expand description
A WinRT object that may be used as a polymorphic stand-in for any WinRT class, interface, or boxed value.
IInspectable
represents the
IInspectable
interface.
Tuple Fields§
§0: IUnknown
Implementations§
§impl IInspectable
impl IInspectable
pub fn GetRuntimeClassName(&self) -> Result<HSTRING>
pub fn GetRuntimeClassName(&self) -> Result<HSTRING>
Returns the canonical type name for the underlying object.
pub fn GetTrustLevel(&self) -> Result<i32>
pub fn GetTrustLevel(&self) -> Result<i32>
Gets the trust level of the current object.
Trait Implementations§
§impl Clone for IInspectable
impl Clone for IInspectable
§fn clone(&self) -> IInspectable
fn clone(&self) -> IInspectable
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more§impl Debug for IInspectable
impl Debug for IInspectable
§impl From<&IInspectable> for &IUnknown
impl From<&IInspectable> for &IUnknown
§fn from(value: &IInspectable) -> Self
fn from(value: &IInspectable) -> Self
Converts to this type from the input type.
§impl From<IInspectable> for IUnknown
impl From<IInspectable> for IUnknown
§fn from(value: IInspectable) -> Self
fn from(value: IInspectable) -> Self
Converts to this type from the input type.
§impl Interface for IInspectable
impl Interface for IInspectable
§fn as_raw(&self) -> *mut c_void
fn as_raw(&self) -> *mut c_void
Returns the raw COM interface pointer. The resulting pointer continues to be owned by the
Interface
implementation.§fn into_raw(self) -> *mut c_void
fn into_raw(self) -> *mut c_void
Returns the raw COM interface pointer and releases ownership. It the caller’s responsibility to release the COM interface pointer.
§fn cast<T: Interface>(&self) -> Result<T>
fn cast<T: Interface>(&self) -> Result<T>
Attempts to cast the current interface to another interface using
QueryInterface
. Read more§fn cast_to_any<T>(&self) -> Result<&dyn Any>
fn cast_to_any<T>(&self) -> Result<&dyn Any>
This casts the given COM interface to [
&dyn Any
]. Read more§fn cast_object_ref<T>(&self) -> Result<&T::Outer>
fn cast_object_ref<T>(&self) -> Result<&T::Outer>
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. &MyApp_Impl
, not the inner &MyApp
object. Read more§fn cast_object<T>(&self) -> Result<ComObject<T>>
fn cast_object<T>(&self) -> Result<ComObject<T>>
This casts the given COM interface to [
&dyn Any
]. It returns a reference to the “outer”
object, e.g. MyApp_Impl
, not the inner MyApp
object. Read more§unsafe fn query(&self, iid: *const GUID, interface: *mut *mut c_void) -> HRESULT
unsafe fn query(&self, iid: *const GUID, interface: *mut *mut c_void) -> HRESULT
Call
QueryInterface
on this interface Read more§fn to_ref(&self) -> InterfaceRef<'_, Self>
fn to_ref(&self) -> InterfaceRef<'_, Self>
Creates an
InterfaceRef
for this reference. The InterfaceRef
tracks lifetimes statically,
and eliminates the need for dynamic reference count adjustments (AddRef/Release).§impl PartialEq for IInspectable
impl PartialEq for IInspectable
§fn eq(&self, other: &IInspectable) -> bool
fn eq(&self, other: &IInspectable) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl Eq for IInspectable
impl StructuralPartialEq for IInspectable
Auto Trait Implementations§
impl Freeze for IInspectable
impl RefUnwindSafe for IInspectable
impl !Send for IInspectable
impl !Sync for IInspectable
impl Unpin for IInspectable
impl UnwindSafe for IInspectable
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)