windows::Win32::System::Diagnostics::ClrProfiling

Trait ICorProfilerCallback_Impl

pub trait ICorProfilerCallback_Impl: IUnknownImpl {
Show 69 methods // Required methods fn Initialize(&self, picorprofilerinfounk: Ref<'_, IUnknown>) -> Result<()>; fn Shutdown(&self) -> Result<()>; fn AppDomainCreationStarted(&self, appdomainid: usize) -> Result<()>; fn AppDomainCreationFinished( &self, appdomainid: usize, hrstatus: HRESULT, ) -> Result<()>; fn AppDomainShutdownStarted(&self, appdomainid: usize) -> Result<()>; fn AppDomainShutdownFinished( &self, appdomainid: usize, hrstatus: HRESULT, ) -> Result<()>; fn AssemblyLoadStarted(&self, assemblyid: usize) -> Result<()>; fn AssemblyLoadFinished( &self, assemblyid: usize, hrstatus: HRESULT, ) -> Result<()>; fn AssemblyUnloadStarted(&self, assemblyid: usize) -> Result<()>; fn AssemblyUnloadFinished( &self, assemblyid: usize, hrstatus: HRESULT, ) -> Result<()>; fn ModuleLoadStarted(&self, moduleid: usize) -> Result<()>; fn ModuleLoadFinished( &self, moduleid: usize, hrstatus: HRESULT, ) -> Result<()>; fn ModuleUnloadStarted(&self, moduleid: usize) -> Result<()>; fn ModuleUnloadFinished( &self, moduleid: usize, hrstatus: HRESULT, ) -> Result<()>; fn ModuleAttachedToAssembly( &self, moduleid: usize, assemblyid: usize, ) -> Result<()>; fn ClassLoadStarted(&self, classid: usize) -> Result<()>; fn ClassLoadFinished(&self, classid: usize, hrstatus: HRESULT) -> Result<()>; fn ClassUnloadStarted(&self, classid: usize) -> Result<()>; fn ClassUnloadFinished( &self, classid: usize, hrstatus: HRESULT, ) -> Result<()>; fn FunctionUnloadStarted(&self, functionid: usize) -> Result<()>; fn JITCompilationStarted( &self, functionid: usize, fissafetoblock: BOOL, ) -> Result<()>; fn JITCompilationFinished( &self, functionid: usize, hrstatus: HRESULT, fissafetoblock: BOOL, ) -> Result<()>; fn JITCachedFunctionSearchStarted(&self, functionid: usize) -> Result<BOOL>; fn JITCachedFunctionSearchFinished( &self, functionid: usize, result: COR_PRF_JIT_CACHE, ) -> Result<()>; fn JITFunctionPitched(&self, functionid: usize) -> Result<()>; fn JITInlining(&self, callerid: usize, calleeid: usize) -> Result<BOOL>; fn ThreadCreated(&self, threadid: usize) -> Result<()>; fn ThreadDestroyed(&self, threadid: usize) -> Result<()>; fn ThreadAssignedToOSThread( &self, managedthreadid: usize, osthreadid: u32, ) -> Result<()>; fn RemotingClientInvocationStarted(&self) -> Result<()>; fn RemotingClientSendingMessage( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>; fn RemotingClientReceivingReply( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>; fn RemotingClientInvocationFinished(&self) -> Result<()>; fn RemotingServerReceivingMessage( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>; fn RemotingServerInvocationStarted(&self) -> Result<()>; fn RemotingServerInvocationReturned(&self) -> Result<()>; fn RemotingServerSendingReply( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>; fn UnmanagedToManagedTransition( &self, functionid: usize, reason: COR_PRF_TRANSITION_REASON, ) -> Result<()>; fn ManagedToUnmanagedTransition( &self, functionid: usize, reason: COR_PRF_TRANSITION_REASON, ) -> Result<()>; fn RuntimeSuspendStarted( &self, suspendreason: COR_PRF_SUSPEND_REASON, ) -> Result<()>; fn RuntimeSuspendFinished(&self) -> Result<()>; fn RuntimeSuspendAborted(&self) -> Result<()>; fn RuntimeResumeStarted(&self) -> Result<()>; fn RuntimeResumeFinished(&self) -> Result<()>; fn RuntimeThreadSuspended(&self, threadid: usize) -> Result<()>; fn RuntimeThreadResumed(&self, threadid: usize) -> Result<()>; fn MovedReferences( &self, cmovedobjectidranges: u32, oldobjectidrangestart: *const usize, newobjectidrangestart: *const usize, cobjectidrangelength: *const u32, ) -> Result<()>; fn ObjectAllocated(&self, objectid: usize, classid: usize) -> Result<()>; fn ObjectsAllocatedByClass( &self, cclasscount: u32, classids: *const usize, cobjects: *const u32, ) -> Result<()>; fn ObjectReferences( &self, objectid: usize, classid: usize, cobjectrefs: u32, objectrefids: *const usize, ) -> Result<()>; fn RootReferences( &self, crootrefs: u32, rootrefids: *const usize, ) -> Result<()>; fn ExceptionThrown(&self, thrownobjectid: usize) -> Result<()>; fn ExceptionSearchFunctionEnter(&self, functionid: usize) -> Result<()>; fn ExceptionSearchFunctionLeave(&self) -> Result<()>; fn ExceptionSearchFilterEnter(&self, functionid: usize) -> Result<()>; fn ExceptionSearchFilterLeave(&self) -> Result<()>; fn ExceptionSearchCatcherFound(&self, functionid: usize) -> Result<()>; fn ExceptionOSHandlerEnter(&self, __unused: usize) -> Result<()>; fn ExceptionOSHandlerLeave(&self, __unused: usize) -> Result<()>; fn ExceptionUnwindFunctionEnter(&self, functionid: usize) -> Result<()>; fn ExceptionUnwindFunctionLeave(&self) -> Result<()>; fn ExceptionUnwindFinallyEnter(&self, functionid: usize) -> Result<()>; fn ExceptionUnwindFinallyLeave(&self) -> Result<()>; fn ExceptionCatcherEnter( &self, functionid: usize, objectid: usize, ) -> Result<()>; fn ExceptionCatcherLeave(&self) -> Result<()>; fn COMClassicVTableCreated( &self, wrappedclassid: usize, implementediid: *const GUID, pvtable: *const c_void, cslots: u32, ) -> Result<()>; fn COMClassicVTableDestroyed( &self, wrappedclassid: usize, implementediid: *const GUID, pvtable: *const c_void, ) -> Result<()>; fn ExceptionCLRCatcherFound(&self) -> Result<()>; fn ExceptionCLRCatcherExecute(&self) -> Result<()>;
}

Required Methods§

fn Initialize(&self, picorprofilerinfounk: Ref<'_, IUnknown>) -> Result<()>

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

fn AppDomainCreationStarted(&self, appdomainid: usize) -> Result<()>

fn AppDomainCreationFinished( &self, appdomainid: usize, hrstatus: HRESULT, ) -> Result<()>

fn AppDomainShutdownStarted(&self, appdomainid: usize) -> Result<()>

fn AppDomainShutdownFinished( &self, appdomainid: usize, hrstatus: HRESULT, ) -> Result<()>

fn AssemblyLoadStarted(&self, assemblyid: usize) -> Result<()>

fn AssemblyLoadFinished( &self, assemblyid: usize, hrstatus: HRESULT, ) -> Result<()>

fn AssemblyUnloadStarted(&self, assemblyid: usize) -> Result<()>

fn AssemblyUnloadFinished( &self, assemblyid: usize, hrstatus: HRESULT, ) -> Result<()>

fn ModuleLoadStarted(&self, moduleid: usize) -> Result<()>

fn ModuleLoadFinished(&self, moduleid: usize, hrstatus: HRESULT) -> Result<()>

fn ModuleUnloadStarted(&self, moduleid: usize) -> Result<()>

fn ModuleUnloadFinished(&self, moduleid: usize, hrstatus: HRESULT) -> Result<()>

fn ModuleAttachedToAssembly( &self, moduleid: usize, assemblyid: usize, ) -> Result<()>

fn ClassLoadStarted(&self, classid: usize) -> Result<()>

fn ClassLoadFinished(&self, classid: usize, hrstatus: HRESULT) -> Result<()>

fn ClassUnloadStarted(&self, classid: usize) -> Result<()>

fn ClassUnloadFinished(&self, classid: usize, hrstatus: HRESULT) -> Result<()>

fn FunctionUnloadStarted(&self, functionid: usize) -> Result<()>

fn JITCompilationStarted( &self, functionid: usize, fissafetoblock: BOOL, ) -> Result<()>

fn JITCompilationFinished( &self, functionid: usize, hrstatus: HRESULT, fissafetoblock: BOOL, ) -> Result<()>

fn JITCachedFunctionSearchStarted(&self, functionid: usize) -> Result<BOOL>

fn JITCachedFunctionSearchFinished( &self, functionid: usize, result: COR_PRF_JIT_CACHE, ) -> Result<()>

fn JITFunctionPitched(&self, functionid: usize) -> Result<()>

fn JITInlining(&self, callerid: usize, calleeid: usize) -> Result<BOOL>

fn ThreadCreated(&self, threadid: usize) -> Result<()>

fn ThreadDestroyed(&self, threadid: usize) -> Result<()>

fn ThreadAssignedToOSThread( &self, managedthreadid: usize, osthreadid: u32, ) -> Result<()>

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

fn RemotingClientSendingMessage( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>

fn RemotingClientReceivingReply( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>

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

fn RemotingServerReceivingMessage( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>

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

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

fn RemotingServerSendingReply( &self, pcookie: *const GUID, fisasync: BOOL, ) -> Result<()>

fn UnmanagedToManagedTransition( &self, functionid: usize, reason: COR_PRF_TRANSITION_REASON, ) -> Result<()>

fn ManagedToUnmanagedTransition( &self, functionid: usize, reason: COR_PRF_TRANSITION_REASON, ) -> Result<()>

fn RuntimeSuspendStarted( &self, suspendreason: COR_PRF_SUSPEND_REASON, ) -> Result<()>

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

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

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

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

fn RuntimeThreadSuspended(&self, threadid: usize) -> Result<()>

fn RuntimeThreadResumed(&self, threadid: usize) -> Result<()>

fn MovedReferences( &self, cmovedobjectidranges: u32, oldobjectidrangestart: *const usize, newobjectidrangestart: *const usize, cobjectidrangelength: *const u32, ) -> Result<()>

fn ObjectAllocated(&self, objectid: usize, classid: usize) -> Result<()>

fn ObjectsAllocatedByClass( &self, cclasscount: u32, classids: *const usize, cobjects: *const u32, ) -> Result<()>

fn ObjectReferences( &self, objectid: usize, classid: usize, cobjectrefs: u32, objectrefids: *const usize, ) -> Result<()>

fn RootReferences(&self, crootrefs: u32, rootrefids: *const usize) -> Result<()>

fn ExceptionThrown(&self, thrownobjectid: usize) -> Result<()>

fn ExceptionSearchFunctionEnter(&self, functionid: usize) -> Result<()>

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

fn ExceptionSearchFilterEnter(&self, functionid: usize) -> Result<()>

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

fn ExceptionSearchCatcherFound(&self, functionid: usize) -> Result<()>

fn ExceptionOSHandlerEnter(&self, __unused: usize) -> Result<()>

fn ExceptionOSHandlerLeave(&self, __unused: usize) -> Result<()>

fn ExceptionUnwindFunctionEnter(&self, functionid: usize) -> Result<()>

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

fn ExceptionUnwindFinallyEnter(&self, functionid: usize) -> Result<()>

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

fn ExceptionCatcherEnter( &self, functionid: usize, objectid: usize, ) -> Result<()>

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

fn COMClassicVTableCreated( &self, wrappedclassid: usize, implementediid: *const GUID, pvtable: *const c_void, cslots: u32, ) -> Result<()>

fn COMClassicVTableDestroyed( &self, wrappedclassid: usize, implementediid: *const GUID, pvtable: *const c_void, ) -> Result<()>

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

fn ExceptionCLRCatcherExecute(&self) -> 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§