Package ghidra.app.util.bin.format.pe.debug

# Class DebugCOFFSymbolAux

java.lang.Object
ghidra.app.util.bin.format.pe.debug.DebugCOFFSymbolAux

All Implemented Interfaces:
  `StructConverter`

public class DebugCOFFSymbolAux extends Object implements StructConverter
A class to represent the COFF Auxiliary Symbol data structure.

     typedef union _IMAGE_AUX_SYMBOL {
         struct {
             DWORD    TagIndex;                      // struct, union, or enum tag index
             union {
                 struct {
                     WORD    Linenumber;             // declaration line number
                     WORD    Size;                   // size of struct, union, or enum
                 } LnSz;
                DWORD    TotalSize;
             }Misc;
             union {
                 struct {                            // if ISFCN, tag, or .bb
                     DWORD    PointerToLinenumber;
                     DWORD    PointerToNextFunction;
                 } Function;
                 struct {                            // if ISARY, up to 4 dimen.
                     WORD     Dimension[4];
                 } Array;
             } FcnAry;
             WORD    TvIndex;                        // tv index
         } Sym;
         struct {
             BYTE    Name[IMAGE_SIZEOF_SYMBOL];
         } File;
         struct {
             DWORD   Length;                         // section length
             WORD    NumberOfRelocations;            // number of relocation entries
             WORD    NumberOfLinenumbers;            // number of line numbers
             DWORD   CheckSum;                       // checksum for communal
             SHORT   Number;                         // section number to associate with
             BYTE    Selection;                      // communal selection type
         } Section;
     } IMAGE_AUX_SYMBOL;

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `DebugCOFFSymbolAux.AuxFile`
  `static class`
  `DebugCOFFSymbolAux.AuxSection`
  `static class`
  `DebugCOFFSymbolAux.AuxSym`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final byte`
  `IMAGE_SIZEOF_AUX_SYMBOL`

  ### Fields inherited from interface ghidra.app.util.bin.StructConverter

  `ASCII, BYTE, DWORD, IBO32, IBO64, POINTER, QWORD, SLEB128, STRING, ULEB128, UTF16, UTF8, VOID, WORD`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `DataType`
  `toDataType()`
  Returns a structure datatype representing the contents of the implementor of this interface.
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### IMAGE_SIZEOF_AUX_SYMBOL

    public static final byte IMAGE_SIZEOF_AUX_SYMBOL
    See Also:
      - Constant Field Values

- ## Method Details

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`
    See Also:
      - `Object.toString()`

  - ### toDataType

    public DataType toDataType() throws DuplicateNameException, IOException
    Description copied from interface: `StructConverter`
    Returns a structure datatype representing the contents of the implementor of this interface.

    For example, given:

         class A {
             int foo;
             double bar;
         }

    The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

    Specified by:
      `toDataType` in interface `StructConverter`
    Returns:
      returns a structure datatype representing the implementor of this interface
    Throws:
      `DuplicateNameException` - when a datatype of the same name already exists
      `IOException`
    See Also:
      - `StructureDataType`