[−][src]Trait findshlibs::SharedLibrary
A trait representing a shared library that is loaded in this process.
Associated Types
type Segment: Segment<SharedLibrary = Self>
[src]
The associated segment type for this shared library.
type SegmentIter: Debug + Iterator<Item = Self::Segment>
[src]
An iterator over a shared library's segments.
Required methods
pub fn name(&self) -> &OsStr
[src]
Get the name of this shared library.
pub fn id(&self) -> Option<SharedLibraryId>
[src]
Get the debug-id of this shared library if available.
pub fn segments(&self) -> Self::SegmentIter
[src]
Iterate over this shared library's segments.
pub fn virtual_memory_bias(&self) -> Bias
[src]
Get the bias of this shared library.
See the module documentation for details.
pub fn each<F, C>(f: F) where
F: FnMut(&Self) -> C,
C: Into<IterationControl>,
[src]
F: FnMut(&Self) -> C,
C: Into<IterationControl>,
Find all shared libraries in this process and invoke f
with each one.
Provided methods
pub fn actual_load_addr(&self) -> Avma
[src]
Returns the address of where the library is loaded into virtual memory.
This address maps to the Avma
of the first segment loaded into
memory. Depending on the platform, this segment may not contain code.
pub fn stated_load_addr(&self) -> Svma
[src]
Returns the address of where the library prefers to be loaded into virtual memory.
This address maps to the Svma
of the first segment loaded into
memory. Depending on the platform, this segment may not contain code.
pub fn len(&self) -> usize
[src]
Returns the size of the image.
This typically is the size of the executable code segment. This is normally used by server side symbolication systems to determine when an IP no longer falls into an image.
pub fn avma_to_svma(&self, address: Avma) -> Svma
[src]
Given an AVMA within this shared library, convert it back to an SVMA by removing this shared library's bias.
Implementors
impl<'a> SharedLibrary for SharedLibrary<'a>
[src]
type Segment = Segment<'a>
type SegmentIter = SegmentIter<'a>
pub fn name(&self) -> &OsStr
[src]
pub fn id(&self) -> Option<SharedLibraryId>
[src]
pub fn segments(&self) -> Self::SegmentIter
[src]
pub fn virtual_memory_bias(&self) -> Bias
[src]
pub fn each<F, C>(_f: F) where
F: FnMut(&Self) -> C,
C: Into<IterationControl>,
[src]
F: FnMut(&Self) -> C,
C: Into<IterationControl>,