Struct gimli::read::loclists::LocListIter

source ·
pub struct LocListIter<R: Reader> {
    raw: RawLocListIter<R>,
    base_address: u64,
    debug_addr: DebugAddr<R>,
    debug_addr_base: DebugAddrBase<R::Offset>,
}
Expand description

An iterator over a location list.

This iterator internally handles processing of base address selection entries and list end entries. Thus, it only returns location entries that are valid and already adjusted for the base address.

Fields§

§raw: RawLocListIter<R>§base_address: u64§debug_addr: DebugAddr<R>§debug_addr_base: DebugAddrBase<R::Offset>

Implementations§

source§

impl<R: Reader> LocListIter<R>

source

fn new( raw: RawLocListIter<R>, base_address: u64, debug_addr: DebugAddr<R>, debug_addr_base: DebugAddrBase<R::Offset>, ) -> LocListIter<R>

Construct a LocListIter.

source

fn get_address(&self, index: DebugAddrIndex<R::Offset>) -> Result<u64>

source

pub fn next(&mut self) -> Result<Option<LocationListEntry<R>>>

Advance the iterator to the next location.

Trait Implementations§

source§

impl<R: Debug + Reader> Debug for LocListIter<R>
where R::Offset: Debug,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<R> Freeze for LocListIter<R>
where R: Freeze, <R as Reader>::Offset: Freeze,

§

impl<R> RefUnwindSafe for LocListIter<R>

§

impl<R> Send for LocListIter<R>
where R: Send, <R as Reader>::Offset: Send,

§

impl<R> Sync for LocListIter<R>
where R: Sync, <R as Reader>::Offset: Sync,

§

impl<R> Unpin for LocListIter<R>
where R: Unpin, <R as Reader>::Offset: Unpin,

§

impl<R> UnwindSafe for LocListIter<R>
where R: UnwindSafe, <R as Reader>::Offset: UnwindSafe,

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.