Trait com_scrape_types::InterfaceList
source · pub unsafe trait InterfaceList {
type Header;
// Required method
fn query(iid: &Guid) -> Option<isize>;
}
Expand description
A list of COM interfaces implemented by a Rust type.
Provides a header type containing base class objects for each interface in the list, as well as a method for querying whether an interface is a member of the list and, if so, at what offset the corresponding base class object is located in the header.
This trait is implemented for tuples of interface types.
§Safety
If L::query(I::IID)
returns Some(offset)
for an Interface
I
, then whenever
ptr: *mut L::Header
points to a valid instance of L::Header
,
(ptr as *mut u8).offset(offset) as *mut I
must point to a valid instance of I
.
Required Associated Types§
Required Methods§
Object Safety§
This trait is not object safe.