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

Trait ICorProfilerInfo4_Impl

pub trait ICorProfilerInfo4_Impl: ICorProfilerInfo3_Impl {
    // Required methods
    fn EnumThreads(&self) -> Result<ICorProfilerThreadEnum>;
    fn InitializeCurrentThread(&self) -> Result<()>;
    fn RequestReJIT(
        &self,
        cfunctions: u32,
        moduleids: *const usize,
        methodids: *const u32,
    ) -> Result<()>;
    fn RequestRevert(
        &self,
        cfunctions: u32,
        moduleids: *const usize,
        methodids: *const u32,
        status: *mut HRESULT,
    ) -> Result<()>;
    fn GetCodeInfo3(
        &self,
        functionid: usize,
        rejitid: usize,
        ccodeinfos: u32,
        pccodeinfos: *mut u32,
        codeinfos: *mut COR_PRF_CODE_INFO,
    ) -> Result<()>;
    fn GetFunctionFromIP2(
        &self,
        ip: *const u8,
        pfunctionid: *mut usize,
        prejitid: *mut usize,
    ) -> Result<()>;
    fn GetReJITIDs(
        &self,
        functionid: usize,
        crejitids: u32,
        pcrejitids: *mut u32,
        rejitids: *mut usize,
    ) -> Result<()>;
    fn GetILToNativeMapping2(
        &self,
        functionid: usize,
        rejitid: usize,
        cmap: u32,
        pcmap: *mut u32,
        map: *mut COR_DEBUG_IL_TO_NATIVE_MAP,
    ) -> Result<()>;
    fn EnumJITedFunctions2(&self) -> Result<ICorProfilerFunctionEnum>;
    fn GetObjectSize2(&self, objectid: usize) -> Result<usize>;
}

Required Methods§

fn EnumThreads(&self) -> Result<ICorProfilerThreadEnum>

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

fn RequestReJIT( &self, cfunctions: u32, moduleids: *const usize, methodids: *const u32, ) -> Result<()>

fn RequestRevert( &self, cfunctions: u32, moduleids: *const usize, methodids: *const u32, status: *mut HRESULT, ) -> Result<()>

fn GetCodeInfo3( &self, functionid: usize, rejitid: usize, ccodeinfos: u32, pccodeinfos: *mut u32, codeinfos: *mut COR_PRF_CODE_INFO, ) -> Result<()>

fn GetFunctionFromIP2( &self, ip: *const u8, pfunctionid: *mut usize, prejitid: *mut usize, ) -> Result<()>

fn GetReJITIDs( &self, functionid: usize, crejitids: u32, pcrejitids: *mut u32, rejitids: *mut usize, ) -> Result<()>

fn GetILToNativeMapping2( &self, functionid: usize, rejitid: usize, cmap: u32, pcmap: *mut u32, map: *mut COR_DEBUG_IL_TO_NATIVE_MAP, ) -> Result<()>

fn EnumJITedFunctions2(&self) -> Result<ICorProfilerFunctionEnum>

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

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§