windows::Win32::System::Com::CallObj

Trait ICallFrame_Impl

pub trait ICallFrame_Impl: IUnknownImpl {
Show 19 methods // Required methods fn GetInfo(&self, pinfo: *mut CALLFRAMEINFO) -> Result<()>; fn GetIIDAndMethod(&self, piid: *mut GUID, pimethod: *mut u32) -> Result<()>; fn GetNames( &self, pwszinterface: *mut PWSTR, pwszmethod: *mut PWSTR, ) -> Result<()>; fn GetStackLocation(&self) -> *mut c_void; fn SetStackLocation(&self, pvstack: *const c_void); fn SetReturnValue(&self, hr: HRESULT); fn GetReturnValue(&self) -> Result<()>; fn GetParamInfo(&self, iparam: u32) -> Result<CALLFRAMEPARAMINFO>; fn SetParam(&self, iparam: u32, pvar: *const VARIANT) -> Result<()>; fn GetParam(&self, iparam: u32) -> Result<VARIANT>; fn Copy( &self, copycontrol: CALLFRAME_COPY, pwalker: Ref<'_, ICallFrameWalker>, ) -> Result<ICallFrame>; fn Free( &self, pframeargsdest: Ref<'_, ICallFrame>, pwalkerdestfree: Ref<'_, ICallFrameWalker>, pwalkercopy: Ref<'_, ICallFrameWalker>, freeflags: u32, pwalkerfree: Ref<'_, ICallFrameWalker>, nullflags: u32, ) -> Result<()>; fn FreeParam( &self, iparam: u32, freeflags: u32, pwalkerfree: Ref<'_, ICallFrameWalker>, nullflags: u32, ) -> Result<()>; fn WalkFrame( &self, walkwhat: u32, pwalker: Ref<'_, ICallFrameWalker>, ) -> Result<()>; fn GetMarshalSizeMax( &self, pmshlcontext: *const CALLFRAME_MARSHALCONTEXT, mshlflags: MSHLFLAGS, ) -> Result<u32>; fn Marshal( &self, pmshlcontext: *const CALLFRAME_MARSHALCONTEXT, mshlflags: MSHLFLAGS, pbuffer: *const c_void, cbbuffer: u32, pcbbufferused: *mut u32, pdatarep: *mut u32, prpcflags: *mut u32, ) -> Result<()>; fn Unmarshal( &self, pbuffer: *const c_void, cbbuffer: u32, datarep: u32, pcontext: *const CALLFRAME_MARSHALCONTEXT, ) -> Result<u32>; fn ReleaseMarshalData( &self, pbuffer: *const c_void, cbbuffer: u32, ibfirstrelease: u32, datarep: u32, pcontext: *const CALLFRAME_MARSHALCONTEXT, ) -> Result<()>; fn Invoke(&self, pvreceiver: *const c_void) -> Result<()>;
}

Required Methods§

fn GetInfo(&self, pinfo: *mut CALLFRAMEINFO) -> Result<()>

fn GetIIDAndMethod(&self, piid: *mut GUID, pimethod: *mut u32) -> Result<()>

fn GetNames( &self, pwszinterface: *mut PWSTR, pwszmethod: *mut PWSTR, ) -> Result<()>

fn GetStackLocation(&self) -> *mut c_void

fn SetStackLocation(&self, pvstack: *const c_void)

fn SetReturnValue(&self, hr: HRESULT)

fn GetReturnValue(&self) -> Result<()>

fn GetParamInfo(&self, iparam: u32) -> Result<CALLFRAMEPARAMINFO>

fn SetParam(&self, iparam: u32, pvar: *const VARIANT) -> Result<()>

fn GetParam(&self, iparam: u32) -> Result<VARIANT>

fn Copy( &self, copycontrol: CALLFRAME_COPY, pwalker: Ref<'_, ICallFrameWalker>, ) -> Result<ICallFrame>

fn Free( &self, pframeargsdest: Ref<'_, ICallFrame>, pwalkerdestfree: Ref<'_, ICallFrameWalker>, pwalkercopy: Ref<'_, ICallFrameWalker>, freeflags: u32, pwalkerfree: Ref<'_, ICallFrameWalker>, nullflags: u32, ) -> Result<()>

fn FreeParam( &self, iparam: u32, freeflags: u32, pwalkerfree: Ref<'_, ICallFrameWalker>, nullflags: u32, ) -> Result<()>

fn WalkFrame( &self, walkwhat: u32, pwalker: Ref<'_, ICallFrameWalker>, ) -> Result<()>

fn GetMarshalSizeMax( &self, pmshlcontext: *const CALLFRAME_MARSHALCONTEXT, mshlflags: MSHLFLAGS, ) -> Result<u32>

fn Marshal( &self, pmshlcontext: *const CALLFRAME_MARSHALCONTEXT, mshlflags: MSHLFLAGS, pbuffer: *const c_void, cbbuffer: u32, pcbbufferused: *mut u32, pdatarep: *mut u32, prpcflags: *mut u32, ) -> Result<()>

fn Unmarshal( &self, pbuffer: *const c_void, cbbuffer: u32, datarep: u32, pcontext: *const CALLFRAME_MARSHALCONTEXT, ) -> Result<u32>

fn ReleaseMarshalData( &self, pbuffer: *const c_void, cbbuffer: u32, ibfirstrelease: u32, datarep: u32, pcontext: *const CALLFRAME_MARSHALCONTEXT, ) -> Result<()>

fn Invoke(&self, pvreceiver: *const c_void) -> 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.

Implementors§