pub struct Exception<'a, P> { /* private fields */ }Expand description
Exception Directory.
For more information see the module-level documentation.
Implementations§
Source§impl<'a, P: Pe<'a>> Exception<'a, P>
impl<'a, P: Pe<'a>> Exception<'a, P>
Sourcepub fn image(&self) -> &'a [RUNTIME_FUNCTION]
pub fn image(&self) -> &'a [RUNTIME_FUNCTION]
Returns the functions slice.
Sourcepub fn check_sorted(&self) -> bool
pub fn check_sorted(&self) -> bool
Checks if the function table is sorted.
The PE specification says that the list of runtime functions should be sorted to allow binary search. This function checks if the runtime functions are actually sorted, if not then lookups may fail unexpectedly.
Sourcepub fn functions(
&self,
) -> Map<Iter<'a, RUNTIME_FUNCTION>, impl Clone + FnMut(&'a RUNTIME_FUNCTION) -> Function<'a, P>> ⓘ
pub fn functions( &self, ) -> Map<Iter<'a, RUNTIME_FUNCTION>, impl Clone + FnMut(&'a RUNTIME_FUNCTION) -> Function<'a, P>> ⓘ
Gets an iterator over the function records.
Sourcepub fn index_of(&self, pc: Rva) -> Result<usize, usize>
pub fn index_of(&self, pc: Rva) -> Result<usize, usize>
Finds the index of the function for the given program counter.
Sourcepub fn lookup_function_entry(&self, pc: Rva) -> Option<Function<'a, P>>
pub fn lookup_function_entry(&self, pc: Rva) -> Option<Function<'a, P>>
Finds the function for the given ‘program counter’ address.
The function records are sorted by their address allowing binary search for the record.
Trait Implementations§
impl<'a, P: Copy> Copy for Exception<'a, P>
Auto Trait Implementations§
impl<'a, P> Freeze for Exception<'a, P>where
P: Freeze,
impl<'a, P> RefUnwindSafe for Exception<'a, P>where
P: RefUnwindSafe,
impl<'a, P> Send for Exception<'a, P>where
P: Send,
impl<'a, P> Sync for Exception<'a, P>where
P: Sync,
impl<'a, P> Unpin for Exception<'a, P>where
P: Unpin,
impl<'a, P> UnwindSafe for Exception<'a, P>where
P: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more