Type Definition gimli::DebugPubTypes [] [src]

type DebugPubTypes<'input, Endian> = DebugLookup<'input, Endian, PubStuffParser<'input, Endian, TypesSwitch<'input, Endian>>>;

The DebugPubTypes struct represents the DWARF public types information found in the .debug_types section.

Provides:

  • new(input: EndianBuf<'input, Endian>) -> DebugPubTypes<'input, Endian>

    Construct a new DebugPubTypes instance from the data in the .debug_pubtypes section.

    It is the caller's responsibility to read the .debug_pubtypes 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::{DebugPubTypes, LittleEndian};
    
    let debug_pubtypes = DebugPubTypes::<LittleEndian>::new(read_debug_pubtypes_somehow());
  • items(&self) -> PubTypesEntryIter<'input, Endian>

    Iterate the pubtypes in the .debug_pubtypes section.

    use gimli::{DebugPubTypes, LittleEndian};
    
    let debug_pubtypes =
      DebugPubTypes::<LittleEndian>::new(read_debug_pubtypes_section_somehow());
    
    let mut iter = debug_pubtypes.items();
    while let Some(pubtype) = iter.next().unwrap() {
    println!("pubtype {} found!", pubtype.name().to_string_lossy());
    }