ModuleHandle

Struct ModuleHandle 

Source
pub struct ModuleHandle { /* private fields */ }
Expand description

owned handle to a module (allows modifications)

Implementations§

Source§

impl ModuleHandle

Source

pub unsafe fn from_raw(ptr: *mut LdrDataTableEntry) -> Option<Self>

create handle from raw LDR entry pointer

§Safety

pointer must be valid LDR_DATA_TABLE_ENTRY

Source

pub fn as_ptr(&self) -> *mut LdrDataTableEntry

get raw pointer

Source

pub fn as_module(&self) -> Module<'_>

borrow as immutable Module

Source

pub unsafe fn as_entry_mut(&mut self) -> &mut LdrDataTableEntry

get mutable access to LDR entry (for unlinking)

§Safety

caller must ensure no other references exist

get pointers to all three list links

Trait Implementations§

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.