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

Trait ICorProfilerInfo_Impl

pub trait ICorProfilerInfo_Impl: IUnknownImpl {
Show 33 methods // Required methods fn GetClassFromObject(&self, objectid: usize) -> Result<usize>; fn GetClassFromToken(&self, moduleid: usize, typedef: u32) -> Result<usize>; fn GetCodeInfo( &self, functionid: usize, pstart: *mut *mut u8, pcsize: *mut u32, ) -> Result<()>; fn GetEventMask(&self) -> Result<u32>; fn GetFunctionFromIP(&self, ip: *const u8) -> Result<usize>; fn GetFunctionFromToken(&self, moduleid: usize, token: u32) -> Result<usize>; fn GetHandleFromThread(&self, threadid: usize) -> Result<HANDLE>; fn GetObjectSize(&self, objectid: usize) -> Result<u32>; fn IsArrayClass( &self, classid: usize, pbaseelemtype: *mut CorElementType, pbaseclassid: *mut usize, pcrank: *mut u32, ) -> Result<()>; fn GetThreadInfo(&self, threadid: usize) -> Result<u32>; fn GetCurrentThreadID(&self) -> Result<usize>; fn GetClassIDInfo( &self, classid: usize, pmoduleid: *mut usize, ptypedeftoken: *mut u32, ) -> Result<()>; fn GetFunctionInfo( &self, functionid: usize, pclassid: *mut usize, pmoduleid: *mut usize, ptoken: *mut u32, ) -> Result<()>; fn SetEventMask(&self, dwevents: u32) -> Result<()>; fn SetEnterLeaveFunctionHooks( &self, pfuncenter: *const FunctionEnter, pfuncleave: *const FunctionLeave, pfunctailcall: *const FunctionTailcall, ) -> Result<()>; fn SetFunctionIDMapper(&self, pfunc: *const FunctionIDMapper) -> Result<()>; fn GetTokenAndMetaDataFromFunction( &self, functionid: usize, riid: *const GUID, ppimport: OutRef<'_, IUnknown>, ptoken: *mut u32, ) -> Result<()>; fn GetModuleInfo( &self, moduleid: usize, ppbaseloadaddress: *mut *mut u8, cchname: u32, pcchname: *mut u32, szname: PWSTR, passemblyid: *mut usize, ) -> Result<()>; fn GetModuleMetaData( &self, moduleid: usize, dwopenflags: u32, riid: *const GUID, ) -> Result<IUnknown>; fn GetILFunctionBody( &self, moduleid: usize, methodid: u32, ppmethodheader: *mut *mut u8, pcbmethodsize: *mut u32, ) -> Result<()>; fn GetILFunctionBodyAllocator( &self, moduleid: usize, ) -> Result<IMethodMalloc>; fn SetILFunctionBody( &self, moduleid: usize, methodid: u32, pbnewilmethodheader: *const u8, ) -> Result<()>; fn GetAppDomainInfo( &self, appdomainid: usize, cchname: u32, pcchname: *mut u32, szname: PWSTR, pprocessid: *mut usize, ) -> Result<()>; fn GetAssemblyInfo( &self, assemblyid: usize, cchname: u32, pcchname: *mut u32, szname: PWSTR, pappdomainid: *mut usize, pmoduleid: *mut usize, ) -> Result<()>; fn SetFunctionReJIT(&self, functionid: usize) -> Result<()>; fn ForceGC(&self) -> Result<()>; fn SetILInstrumentedCodeMap( &self, functionid: usize, fstartjit: BOOL, cilmapentries: u32, rgilmapentries: *const COR_IL_MAP, ) -> Result<()>; fn GetInprocInspectionInterface(&self) -> Result<IUnknown>; fn GetInprocInspectionIThisThread(&self) -> Result<IUnknown>; fn GetThreadContext(&self, threadid: usize) -> Result<usize>; fn BeginInprocDebugging(&self, fthisthreadonly: BOOL) -> Result<u32>; fn EndInprocDebugging(&self, dwprofilercontext: u32) -> Result<()>; fn GetILToNativeMapping( &self, functionid: usize, cmap: u32, pcmap: *mut u32, map: *mut COR_DEBUG_IL_TO_NATIVE_MAP, ) -> Result<()>;
}

Required Methods§

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

fn GetClassFromToken(&self, moduleid: usize, typedef: u32) -> Result<usize>

fn GetCodeInfo( &self, functionid: usize, pstart: *mut *mut u8, pcsize: *mut u32, ) -> Result<()>

fn GetEventMask(&self) -> Result<u32>

fn GetFunctionFromIP(&self, ip: *const u8) -> Result<usize>

fn GetFunctionFromToken(&self, moduleid: usize, token: u32) -> Result<usize>

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

fn GetObjectSize(&self, objectid: usize) -> Result<u32>

fn IsArrayClass( &self, classid: usize, pbaseelemtype: *mut CorElementType, pbaseclassid: *mut usize, pcrank: *mut u32, ) -> Result<()>

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

fn GetCurrentThreadID(&self) -> Result<usize>

fn GetClassIDInfo( &self, classid: usize, pmoduleid: *mut usize, ptypedeftoken: *mut u32, ) -> Result<()>

fn GetFunctionInfo( &self, functionid: usize, pclassid: *mut usize, pmoduleid: *mut usize, ptoken: *mut u32, ) -> Result<()>

fn SetEventMask(&self, dwevents: u32) -> Result<()>

fn SetEnterLeaveFunctionHooks( &self, pfuncenter: *const FunctionEnter, pfuncleave: *const FunctionLeave, pfunctailcall: *const FunctionTailcall, ) -> Result<()>

fn SetFunctionIDMapper(&self, pfunc: *const FunctionIDMapper) -> Result<()>

fn GetTokenAndMetaDataFromFunction( &self, functionid: usize, riid: *const GUID, ppimport: OutRef<'_, IUnknown>, ptoken: *mut u32, ) -> Result<()>

fn GetModuleInfo( &self, moduleid: usize, ppbaseloadaddress: *mut *mut u8, cchname: u32, pcchname: *mut u32, szname: PWSTR, passemblyid: *mut usize, ) -> Result<()>

fn GetModuleMetaData( &self, moduleid: usize, dwopenflags: u32, riid: *const GUID, ) -> Result<IUnknown>

fn GetILFunctionBody( &self, moduleid: usize, methodid: u32, ppmethodheader: *mut *mut u8, pcbmethodsize: *mut u32, ) -> Result<()>

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

fn SetILFunctionBody( &self, moduleid: usize, methodid: u32, pbnewilmethodheader: *const u8, ) -> Result<()>

fn GetAppDomainInfo( &self, appdomainid: usize, cchname: u32, pcchname: *mut u32, szname: PWSTR, pprocessid: *mut usize, ) -> Result<()>

fn GetAssemblyInfo( &self, assemblyid: usize, cchname: u32, pcchname: *mut u32, szname: PWSTR, pappdomainid: *mut usize, pmoduleid: *mut usize, ) -> Result<()>

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

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

fn SetILInstrumentedCodeMap( &self, functionid: usize, fstartjit: BOOL, cilmapentries: u32, rgilmapentries: *const COR_IL_MAP, ) -> Result<()>

fn GetInprocInspectionInterface(&self) -> Result<IUnknown>

fn GetInprocInspectionIThisThread(&self) -> Result<IUnknown>

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

fn BeginInprocDebugging(&self, fthisthreadonly: BOOL) -> Result<u32>

fn EndInprocDebugging(&self, dwprofilercontext: u32) -> Result<()>

fn GetILToNativeMapping( &self, functionid: usize, cmap: u32, pcmap: *mut u32, map: *mut COR_DEBUG_IL_TO_NATIVE_MAP, ) -> 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§