pub trait VmiOsProcessExt<'a, Driver>: VmiOsProcess<'a, Driver>where
Driver: VmiDriver,{
// Provided methods
fn find_region(
&self,
predicate: impl RegionPredicate<Self::Os>,
) -> Result<Option<<Self::Os as VmiOs>::Region<'a>>, VmiError> { ... }
fn filter_regions(
&self,
predicate: impl RegionPredicate<Self::Os>,
) -> Result<impl Iterator<Item = Result<<Self::Os as VmiOs>::Region<'a>, VmiError>>, VmiError> { ... }
fn find_user_module(
&self,
predicate: impl UserModulePredicate<Self::Os>,
) -> Result<Option<<Self::Os as VmiOs>::UserModule<'a>>, VmiError> { ... }
fn filter_user_modules(
&self,
predicate: impl UserModulePredicate<Self::Os>,
) -> Result<impl Iterator<Item = Result<<Self::Os as VmiOs>::UserModule<'a>, VmiError>>, VmiError> { ... }
}Expand description
Extension methods on VmiOsProcess.
The blanket impl is the only impl of this trait, so implementors of
VmiOsProcess cannot override the default bodies.
Provided Methods§
Sourcefn find_region(
&self,
predicate: impl RegionPredicate<Self::Os>,
) -> Result<Option<<Self::Os as VmiOs>::Region<'a>>, VmiError>
fn find_region( &self, predicate: impl RegionPredicate<Self::Os>, ) -> Result<Option<<Self::Os as VmiOs>::Region<'a>>, VmiError>
Returns the first memory region matching predicate, or
Ok(None) if no region in the process matches.
Sourcefn filter_regions(
&self,
predicate: impl RegionPredicate<Self::Os>,
) -> Result<impl Iterator<Item = Result<<Self::Os as VmiOs>::Region<'a>, VmiError>>, VmiError>
fn filter_regions( &self, predicate: impl RegionPredicate<Self::Os>, ) -> Result<impl Iterator<Item = Result<<Self::Os as VmiOs>::Region<'a>, VmiError>>, VmiError>
Returns an iterator over the memory regions matching predicate.
Sourcefn find_user_module(
&self,
predicate: impl UserModulePredicate<Self::Os>,
) -> Result<Option<<Self::Os as VmiOs>::UserModule<'a>>, VmiError>
fn find_user_module( &self, predicate: impl UserModulePredicate<Self::Os>, ) -> Result<Option<<Self::Os as VmiOs>::UserModule<'a>>, VmiError>
Returns the first user module matching predicate, or
Ok(None) if no user module in the process matches.
Sourcefn filter_user_modules(
&self,
predicate: impl UserModulePredicate<Self::Os>,
) -> Result<impl Iterator<Item = Result<<Self::Os as VmiOs>::UserModule<'a>, VmiError>>, VmiError>
fn filter_user_modules( &self, predicate: impl UserModulePredicate<Self::Os>, ) -> Result<impl Iterator<Item = Result<<Self::Os as VmiOs>::UserModule<'a>, VmiError>>, VmiError>
Returns an iterator over the user modules matching predicate.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".