Trait IMarshal_Impl
pub trait IMarshal_Impl: IUnknownImpl {
// Required methods
fn GetUnmarshalClass(
&self,
riid: *const GUID,
pv: *const c_void,
dwdestcontext: u32,
pvdestcontext: *const c_void,
mshlflags: u32,
) -> Result<GUID>;
fn GetMarshalSizeMax(
&self,
riid: *const GUID,
pv: *const c_void,
dwdestcontext: u32,
pvdestcontext: *const c_void,
mshlflags: u32,
) -> Result<u32>;
fn MarshalInterface(
&self,
pstm: Ref<'_, IStream>,
riid: *const GUID,
pv: *const c_void,
dwdestcontext: u32,
pvdestcontext: *const c_void,
mshlflags: u32,
) -> Result<()>;
fn UnmarshalInterface(
&self,
pstm: Ref<'_, IStream>,
riid: *const GUID,
ppv: *mut *mut c_void,
) -> Result<()>;
fn ReleaseMarshalData(&self, pstm: Ref<'_, IStream>) -> Result<()>;
fn DisconnectObject(&self, dwreserved: u32) -> Result<()>;
}
Required Methods§
fn GetUnmarshalClass( &self, riid: *const GUID, pv: *const c_void, dwdestcontext: u32, pvdestcontext: *const c_void, mshlflags: u32, ) -> Result<GUID>
fn GetMarshalSizeMax( &self, riid: *const GUID, pv: *const c_void, dwdestcontext: u32, pvdestcontext: *const c_void, mshlflags: u32, ) -> Result<u32>
fn MarshalInterface( &self, pstm: Ref<'_, IStream>, riid: *const GUID, pv: *const c_void, dwdestcontext: u32, pvdestcontext: *const c_void, mshlflags: u32, ) -> Result<()>
fn UnmarshalInterface( &self, pstm: Ref<'_, IStream>, riid: *const GUID, ppv: *mut *mut c_void, ) -> Result<()>
fn ReleaseMarshalData(&self, pstm: Ref<'_, IStream>) -> Result<()>
fn DisconnectObject(&self, dwreserved: u32) -> Result<()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.