Struct gimli::read::EhHdrTable

source ·
pub struct EhHdrTable<'a, R: Reader> { /* private fields */ }
Expand description

The CFI binary search table that is an optional part of the .eh_frame_hdr section.

Implementations§

Return an iterator that can walk the .eh_frame_hdr table.

Each table entry consists of a tuple containing an initial_location and address. The initial location represents the first address that the targeted FDE is able to decode. The address is the address of the FDE in the .eh_frame section. The address can be converted with EhHdrTable::pointer_to_offset and EhFrame::fde_from_offset to an FDE.

Probably returns a pointer to the FDE for the given address.

This performs a binary search, so if there is no FDE for the given address, this function will return a pointer to any other FDE that’s close by.

To be sure, you must call contains on the FDE.

Convert a Pointer to a section offset.

This does not support indirect pointers.

Returns a parsed FDE for the given address, or NoUnwindInfoForAddress if there are none.

You must provide a function to get its associated CIE. See PartialFrameDescriptionEntry::parse for more information.

Example
let table = eh_frame_hdr.table().unwrap();
let fde = table.fde_for_address(&eh_frame, &bases, addr, EhFrame::cie_from_offset)?;

Returns the frame unwind information for the given address, or NoUnwindInfoForAddress if there are none.

You must provide a function to get the associated CIE. See PartialFrameDescriptionEntry::parse for more information.

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.