# Package ghidra.app.util.bin.format.dwarf

package ghidra.app.util.bin.format.dwarf

- Related Packages
  Package
  Description
  ghidra.app.util.bin.format
  ghidra.app.util.bin.format.dwarf.attribs
  ghidra.app.util.bin.format.dwarf.expression
  ghidra.app.util.bin.format.dwarf.external
  ghidra.app.util.bin.format.dwarf.funcfixup
  ghidra.app.util.bin.format.dwarf.line
  ghidra.app.util.bin.format.dwarf.macro
  ghidra.app.util.bin.format.dwarf.sectionprovider
- Class
  Description
  DataTypeGraphComparator
  Compares two `DataType` directed graphs, calling a `method` that can observe each DataType pair that occupy equivalent positions in each graph.
  DataTypeGraphComparator.DataTypePairObserver
  DebugInfoEntry
  A DWARF Debug Info Entry is a collection of `attributes` in a hierarchical structure (see `DebugInfoEntry.getParent()`, `DebugInfoEntry.getChildren()`).
  DIEAggregate
  DIEAggregate groups related `DebugInfoEntry` records together in a single interface for querying attribute values.
  DWARFAbbreviation
  This class represents the 'schema' for a DWARF DIE record.
  DWARFAccessibility
  DWARF accessibility consts from www.dwarfstd.org/doc/DWARF4.pdf
  DWARFAddressListHeader
  Header at the beginning of a address list table
  DWARFChildren
  DWARF child determination consts from www.dwarfstd.org/doc/DWARF4.pdf.
  DWARFCompilationUnit
  A DWARF CompilationUnit is a contiguous block of `DIE` records found in a .debug_info section of an program.
  DWARFDataInstanceHelper
  Logic to test if a Data instance is replaceable with a data type.
  DWARFDataTypeConflictHandler
  This `conflict handler` attempts to match conflicting `composite data types` (structure or union) when they have compatible data layouts.
  DWARFDataTypeImporter
  Creates Ghidra `DataType`s using information from DWARF debug entries.
  DWARFDataTypeManager
  Manages mappings between DWARF DIEs and Ghidra DataTypes.
  DWARFEncoding
  DWARF attribute encoding consts from www.dwarfstd.org/doc/DWARF4.pdf
  DWARFEndianity
  DWARF Endianity consts from www.dwarfstd.org/doc/DWARF4.pdf
  DWARFException
  DWARFFunction
  Represents a function that was read from DWARF information.
  DWARFFunction.CommitMode
  DWARFFunctionImporter
  Iterates through all DIEAs in a `DWARFProgram` and creates Ghidra functions and variables.
  DWARFIdentifierCase
  DWARF identifier case consts from www.dwarfstd.org/doc/DWARF4.pdf
  DWARFImporter
  Performs a DWARF datatype import and a DWARF function import, under the control of the `DWARFImportOptions`.
  DWARFImportOptions
  Import options exposed by the `DWARFAnalyzer`
  DWARFImportOptions.MacroEnumSetting
  Used to control which macro info entries are used to create enums.
  DWARFImportSummary
  Information about what actions were performed during a DWARF import.
  DWARFIndirectTable
  Handles a grouping of `DWARFIndirectTableHeader`s that specify how to look up a certain type of item (per CU).
  DWARFIndirectTable.CheckedIOFunction<T,R>
  DWARFIndirectTableHeader
  Common base functionality of indirect table headers (DWARFAddressListHeader, DWARFLocationListHeader, etc)
  DWARFInline
  DWARF inline encodings from www.dwarfstd.org/doc/DWARF4.pdf
  DWARFLengthValue
  A tuple of length (of a thing in a dwarf stream) and size of integers used in the dwarf section.
  DWARFLocation
  Represents the location of an item that is only valid for a certain range of program-counter locations.
  DWARFLocationList
  A collection of `DWARFLocation` elements, each which represents a location of an item that is only valid for a certain range of program-counter locations.
  DWARFLocationListEntry
  DWARFLocationListHeader
  Header found at the start of a set of DWARFLocationList entries, which are stored sequentially in the `.debug_loclists` section.
  DWARFMacroEnumCreator
  Creates Enum data types in the program from DWARF macro info entries.
  DWARFName
  A immutable hierarchical path based name implementation that can be viewed as either `namespaces` or `categorypaths`.
  DWARFProgram
  DWARFProgram encapsulates a `Ghidra program` with DWARF specific reference data used by `DWARFDataTypeImporter` and `DWARFFunctionImporter`, along with some helper functions.
  DWARFRange
  Holds the start (inclusive) and end (exclusive, 1 past the last included address) addresses of a range.
  DWARFRangeList
  Represents a list of `DWARFRange`s.
  DWARFRangeListEntry
  DWARF Range List Entry id
  DWARFRangeListHeader
  Header found at the start of a set of DWARFRangeList entries, which are stored sequentially in the `.debug_rnglists` section.
  DWARFRegisterMappings
  Immutable mapping information between DWARF and Ghidra.
  DWARFRegisterMappingsManager
  Factory class to instantiate and cache `DWARFRegisterMappings` objects.
  DWARFSourceInfo
  Represents the filename and line number info values from DWARF `DIEs`.
  DWARFSourceLanguage
  DWARF source lang consts from www.dwarfstd.org/doc/DWARF4.pdf.
  DWARFStringOffsetTableHeader
  Table of offsets that point into the string table.
  DWARFTag
  Identifier/purpose of a DWARF DIE record.
  DWARFUnitHeader
  The base class for a set of headers that share a common field layout.
  DWARFUnitType
  DWARFUtil
  DWARFVariable
  Represents a function's parameter or local variable; or a global variable.
  ExternalDebugFileSymbolImporter
  Imports symbols from an external debug program (typically created via a reverse strip) into the program that contains the executable code that the symbols will be applied to.
  NameDeduper
  Helper for allocating unique string names.
  NamespacePath
  Represents a hierarchical path of containers that hold names of objects.
  StringTable
  Represents a DWARF string table, backed by a memory section like .debug_str.