#[repr(C)]pub struct ModuleInfo {
pub address: Address,
pub parent_process: Address,
pub base: Address,
pub size: umem,
pub name: ReprCString,
pub path: ReprCString,
pub arch: ArchitectureIdent,
}
Expand description
Module information structure
Fields
address: Address
Returns the address of the module header.
Remarks
On Windows this will be the address where the PEB
entry is stored.
parent_process: Address
The base address of the parent process.
Remarks
This field is analog to the ProcessInfo::address
field.
base: Address
The actual base address of this module.
Remarks
The base address is contained in the virtual address range of the process this module belongs to.
size: umem
Size of the module
name: ReprCString
Name of the module
path: ReprCString
Path of the module
arch: ArchitectureIdent
Architecture of the module
Remarks
Emulated processes often have 2 separate lists of modules, one visible to the emulated
context (e.g. all 32-bit modules in a WoW64 process), and the other for all native modules
needed to support the process emulation. This should be equal to either
ProcessInfo::proc_arch
, or ProcessInfo::sys_arch
of the parent process.
Trait Implementations
sourceimpl Clone for ModuleInfo
impl Clone for ModuleInfo
sourcefn clone(&self) -> ModuleInfo
fn clone(&self) -> ModuleInfo
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for ModuleInfo
impl Debug for ModuleInfo
sourceimpl<'de> Deserialize<'de> for ModuleInfo
impl<'de> Deserialize<'de> for ModuleInfo
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl GetStaticEquivalent_ for ModuleInfo
impl GetStaticEquivalent_ for ModuleInfo
type StaticEquivalent = _static_ModuleInfo
sourceimpl Serialize for ModuleInfo
impl Serialize for ModuleInfo
sourceimpl StableAbi for ModuleInfo
impl StableAbi for ModuleInfo
type IsNonZeroType = False
type IsNonZeroType = False
Whether this type has a single invalid bit-pattern. Read more
sourceconst LAYOUT: &'static TypeLayout
const LAYOUT: &'static TypeLayout
The layout of the type provided by implementors.
sourceconst ABI_CONSTS: AbiConsts
const ABI_CONSTS: AbiConsts
const
-equivalents of the associated types.
Auto Trait Implementations
impl RefUnwindSafe for ModuleInfo
impl Send for ModuleInfo
impl Sync for ModuleInfo
impl Unpin for ModuleInfo
impl UnwindSafe for ModuleInfo
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<'a, T> BorrowOwned<'a> for T where
T: 'a + Clone,
impl<'a, T> BorrowOwned<'a> for T where
T: 'a + Clone,
type ROwned = T
type ROwned = T
The owned type, stored in RCow::Owned
fn r_borrow(
this: &'a <T as BorrowOwned<'a>>::ROwned
) -> <T as BorrowOwned<'a>>::RBorrowed
fn r_to_owned(
this: <T as BorrowOwned<'a>>::RBorrowed
) -> <T as BorrowOwned<'a>>::ROwned
fn deref_borrowed(this: &<T as BorrowOwned<'a>>::RBorrowed) -> &T
fn deref_owned(this: &<T as BorrowOwned<'a>>::ROwned) -> &T
fn from_cow_borrow(this: &'a T) -> <T as BorrowOwned<'a>>::RBorrowed
fn from_cow_owned(this: <T as ToOwned>::Owned) -> <T as BorrowOwned<'a>>::ROwned
fn into_cow_borrow(this: <T as BorrowOwned<'a>>::RBorrowed) -> &'a T
fn into_cow_owned(this: <T as BorrowOwned<'a>>::ROwned) -> <T as ToOwned>::Owned
sourceimpl<T> GetWithMetadata for T
impl<T> GetWithMetadata for T
type ForSelf = WithMetadata_<T, T>
type ForSelf = WithMetadata_<T, T>
This is always WithMetadata_<Self, Self>
impl<S> ROExtAcc for S
impl<S> ROExtAcc for S
fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
Gets a reference to a field, determined by offset
. Read more
fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
Gets a muatble reference to a field, determined by offset
. Read more
fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
Gets a const pointer to a field,
the field is determined by offset
. Read more
fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
Gets a mutable pointer to a field, determined by offset
. Read more
impl<S> ROExtOps<Aligned> for S
impl<S> ROExtOps<Aligned> for S
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
Replaces a field (determined by offset
) with value
,
returning the previous value of the field. Read more
fn f_swap<F>(&mut self, offset: FieldOffset<S, F, Aligned>, right: &mut S)
fn f_swap<F>(&mut self, offset: FieldOffset<S, F, Aligned>, right: &mut S)
Swaps a field (determined by offset
) with the same field in right
. Read more
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> F where
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> F where
F: Copy,
Gets a copy of a field (determined by offset
).
The field is determined by offset
. Read more
impl<S> ROExtOps<Unaligned> for S
impl<S> ROExtOps<Unaligned> for S
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
Replaces a field (determined by offset
) with value
,
returning the previous value of the field. Read more
fn f_swap<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, right: &mut S)
fn f_swap<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, right: &mut S)
Swaps a field (determined by offset
) with the same field in right
. Read more
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> F where
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> F where
F: Copy,
Gets a copy of a field (determined by offset
).
The field is determined by offset
. Read more
impl<T> SelfOps for T where
T: ?Sized,
impl<T> SelfOps for T where
T: ?Sized,
fn eq_id(&self, other: &Self) -> bool
fn eq_id(&self, other: &Self) -> bool
Compares the address of self
with the address of other
. Read more
fn piped<F, U>(self, f: F) -> U where
F: FnOnce(Self) -> U,
fn piped<F, U>(self, f: F) -> U where
F: FnOnce(Self) -> U,
Emulates the pipeline operator, allowing method syntax in more places. Read more
fn piped_ref<'a, F, U>(&'a self, f: F) -> U where
F: FnOnce(&'a Self) -> U,
fn piped_ref<'a, F, U>(&'a self, f: F) -> U where
F: FnOnce(&'a Self) -> U,
The same as piped
except that the function takes &Self
Useful for functions that take &Self
instead of Self
. Read more
fn piped_mut<'a, F, U>(&'a mut self, f: F) -> U where
F: FnOnce(&'a mut Self) -> U,
fn piped_mut<'a, F, U>(&'a mut self, f: F) -> U where
F: FnOnce(&'a mut Self) -> U,
The same as piped
, except that the function takes &mut Self
.
Useful for functions that take &mut Self
instead of Self
. Read more
fn mutated<F>(self, f: F) -> Self where
F: FnOnce(&mut Self),
fn mutated<F>(self, f: F) -> Self where
F: FnOnce(&mut Self),
Mutates self using a closure taking self by mutable reference, passing it along the method chain. Read more
fn observe<F>(self, f: F) -> Self where
F: FnOnce(&Self),
fn observe<F>(self, f: F) -> Self where
F: FnOnce(&Self),
Observes the value of self, passing it along unmodified. Useful in long method chains. Read more
fn into_<T>(self) -> T where
Self: Into<T>,
fn into_<T>(self) -> T where
Self: Into<T>,
Performs a conversion with Into
.
using the turbofish .into_::<_>()
syntax. Read more
fn as_ref_<T>(&self) -> &T where
Self: AsRef<T>,
T: ?Sized,
fn as_ref_<T>(&self) -> &T where
Self: AsRef<T>,
T: ?Sized,
Performs a reference to reference conversion with AsRef
,
using the turbofish .as_ref_::<_>()
syntax. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<This> TransmuteElement for This where
This: ?Sized,
impl<This> TransmuteElement for This where
This: ?Sized,
sourceunsafe fn transmute_element<T>(self) -> Self::TransmutedPtr where
Self: CanTransmuteElement<T>,
unsafe fn transmute_element<T>(self) -> Self::TransmutedPtr where
Self: CanTransmuteElement<T>,
Transmutes the element type of this pointer.. Read more
impl<T> TypeIdentity for T where
T: ?Sized,
impl<T> TypeIdentity for T where
T: ?Sized,
type Type = T
type Type = T
This is always Self
.
fn into_type(self) -> Self::Type where
Self::Type: Sized,
fn into_type(self) -> Self::Type where
Self::Type: Sized,
Converts a value back to the original type.
fn as_type(&self) -> &Self::Type
fn as_type(&self) -> &Self::Type
Converts a reference back to the original type.
fn as_type_mut(&mut self) -> &mut Self::Type
fn as_type_mut(&mut self) -> &mut Self::Type
Converts a mutable reference back to the original type.
fn into_type_box(self: Box<Self, Global>) -> Box<Self::Type, Global>
fn into_type_box(self: Box<Self, Global>) -> Box<Self::Type, Global>
Converts a box back to the original type.
fn into_type_arc(this: Arc<Self>) -> Arc<Self::Type>
fn into_type_arc(this: Arc<Self>) -> Arc<Self::Type>
Converts an Arc back to the original type. Read more
fn into_type_rc(this: Rc<Self>) -> Rc<Self::Type>
fn into_type_rc(this: Rc<Self>) -> Rc<Self::Type>
Converts an Rc back to the original type. Read more
fn from_type(this: Self::Type) -> Self where
Self::Type: Sized,
fn from_type(this: Self::Type) -> Self where
Self::Type: Sized,
Converts a value back to the original type.
fn from_type_ref(this: &Self::Type) -> &Self
fn from_type_ref(this: &Self::Type) -> &Self
Converts a reference back to the original type.
fn from_type_mut(this: &mut Self::Type) -> &mut Self
fn from_type_mut(this: &mut Self::Type) -> &mut Self
Converts a mutable reference back to the original type.
fn from_type_box(this: Box<Self::Type, Global>) -> Box<Self, Global>
fn from_type_box(this: Box<Self::Type, Global>) -> Box<Self, Global>
Converts a box back to the original type.
fn from_type_arc(this: Arc<Self::Type>) -> Arc<Self>
fn from_type_arc(this: Arc<Self::Type>) -> Arc<Self>
Converts an Arc back to the original type.
fn from_type_rc(this: Rc<Self::Type>) -> Rc<Self>
fn from_type_rc(this: Rc<Self::Type>) -> Rc<Self>
Converts an Rc back to the original type.