Struct gimli::DebugLoc [] [src]

pub struct DebugLoc<'input, Endian> where
    Endian: Endianity
{ /* fields omitted */ }

The DebugLoc struct represents the DWARF strings found in the .debug_loc section.

Methods

impl<'input, Endian> DebugLoc<'input, Endian> where
    Endian: Endianity
[src]

Construct a new DebugLoc instance from the data in the .debug_loc section.

It is the caller's responsibility to read the .debug_loc section and present it as a &[u8] slice. That means using some ELF loader on Linux, a Mach-O loader on OSX, etc.

use gimli::{DebugLoc, LittleEndian};

let debug_loc = DebugLoc::<LittleEndian>::new(read_debug_loc_section_somehow());

Iterate over the LocationListEntrys starting at the given offset.

The address_size must be match the compilation unit for this location list. The base_address should be obtained from the DW_AT_low_pc attribute in the DW_TAG_compile_unit entry for the compilation unit that contains this location list.

Can be used with FallibleIterator.

Iterate over the raw LocationListEntrys starting at the given offset.

The address_size must be match the compilation unit for this location list.

This iterator does not perform any processing of the location entries, such as handling base addresses.

Can be used with FallibleIterator.

Trait Implementations

impl<'input, Endian: Debug> Debug for DebugLoc<'input, Endian> where
    Endian: Endianity
[src]

Formats the value using the given formatter.

impl<'input, Endian: Clone> Clone for DebugLoc<'input, Endian> where
    Endian: Endianity
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<'input, Endian: Copy> Copy for DebugLoc<'input, Endian> where
    Endian: Endianity
[src]

impl<'input, Endian> Section<'input> for DebugLoc<'input, Endian> where
    Endian: Endianity
[src]

Returns the ELF section name for this type.

impl<'input, Endian> From<&'input [u8]> for DebugLoc<'input, Endian> where
    Endian: Endianity
[src]

Performs the conversion.