Trait ICorProfilerCallback4_Impl
pub trait ICorProfilerCallback4_Impl: ICorProfilerCallback3_Impl {
// Required methods
fn ReJITCompilationStarted(
&self,
functionid: usize,
rejitid: usize,
fissafetoblock: BOOL,
) -> Result<()>;
fn GetReJITParameters(
&self,
moduleid: usize,
methodid: u32,
pfunctioncontrol: Ref<'_, ICorProfilerFunctionControl>,
) -> Result<()>;
fn ReJITCompilationFinished(
&self,
functionid: usize,
rejitid: usize,
hrstatus: HRESULT,
fissafetoblock: BOOL,
) -> Result<()>;
fn ReJITError(
&self,
moduleid: usize,
methodid: u32,
functionid: usize,
hrstatus: HRESULT,
) -> Result<()>;
fn MovedReferences2(
&self,
cmovedobjectidranges: u32,
oldobjectidrangestart: *const usize,
newobjectidrangestart: *const usize,
cobjectidrangelength: *const usize,
) -> Result<()>;
fn SurvivingReferences2(
&self,
csurvivingobjectidranges: u32,
objectidrangestart: *const usize,
cobjectidrangelength: *const usize,
) -> Result<()>;
}
Required Methods§
fn ReJITCompilationStarted( &self, functionid: usize, rejitid: usize, fissafetoblock: BOOL, ) -> Result<()>
fn GetReJITParameters( &self, moduleid: usize, methodid: u32, pfunctioncontrol: Ref<'_, ICorProfilerFunctionControl>, ) -> Result<()>
fn ReJITCompilationFinished( &self, functionid: usize, rejitid: usize, hrstatus: HRESULT, fissafetoblock: BOOL, ) -> Result<()>
fn ReJITError( &self, moduleid: usize, methodid: u32, functionid: usize, hrstatus: HRESULT, ) -> Result<()>
fn MovedReferences2( &self, cmovedobjectidranges: u32, oldobjectidrangestart: *const usize, newobjectidrangestart: *const usize, cobjectidrangelength: *const usize, ) -> Result<()>
fn SurvivingReferences2( &self, csurvivingobjectidranges: u32, objectidrangestart: *const usize, cobjectidrangelength: *const usize, ) -> 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.