public interface

IDIEAttribute

com.pnfsoftware.jeb.core.units.codeobject.dwarf.IDIEAttribute

Class Overview

An IDIE Attribute, represented by its name and its form. Note that form is mainly a long form OR a complex form for almost all attributes. There are some exceptions, in particular:

  • DW_FORM_strp which will have long AND complex form
  • DW_FORM_flag_present which will have no form
  • Summary

    Public Methods
    abstract Object getForm()
    Real form value.
    abstract String getName()
    Attribute Name.
    abstract Long getRawForm()
    Raw value.
    abstract IDIE getReference()
    Retrieve the form reference IDIE when form represents an address.
    abstract Dwarf.DwarfFormType getType()
    Form type as stated in DWARF specification.

    Public Methods

    public abstract Object getForm ()

    Real form value. Refer to getType() for form type.
    Will be of type Long for almost all types (address, constant, reference).
    Some exceptions are:

    • String for strings
    • BigInteger for 16-byte constants
    • byte[] for blocks

    public abstract String getName ()

    Attribute Name. See Dwarf.DwarfAttribute

    public abstract Long getRawForm ()

    Raw value.
    Will be null for inlined strings (DW_FORM_string) and implicit flag (DW_FORM_flag_present). Otherwise, this is the raw value from the .debug_info.

    public abstract IDIE getReference ()

    Retrieve the form reference IDIE when form represents an address.

    public abstract Dwarf.DwarfFormType getType ()

    Form type as stated in DWARF specification.