Package ghidra.app.util.bin.format.macho.commands

# Class ExportTrie

java.lang.Object
ghidra.app.util.bin.format.macho.commands.ExportTrie

public class ExportTrie extends Object
Mach-O export trie

See Also:
  - Exported Symbol
  - dyld/launch-cache/MachOTrie.hpp

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static final record`
  `ExportTrie.ExportEntry`
  Creates a new `ExportTrie.ExportEntry`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ExportTrie()`
  Creates an empty `ExportTrie`.
  `ExportTrie(BinaryReader reader)`
  Creates and parses a new `ExportTrie`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `List<ExportTrie.ExportEntry>`
  `getExports()`
  Gets the `List` of `exports`
  `List<ExportTrie.ExportEntry>`
  `getExports(Predicate<ExportTrie.ExportEntry> filter)`
  Gets the `List` of `exports`
  `List<Long>`
  `getStringOffsets()`
  Returns String offsets from the start of the export trie.
  `List<Long>`
  `getUlebOffsets()`
  Returns ULEB128 offsets from the start of the export trie.

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

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

- ## Constructor Details

  - ### ExportTrie

    public ExportTrie()
    Creates an empty `ExportTrie`. This is useful for export trie load commands that are defined but do not point to any data.

  - ### ExportTrie

    public ExportTrie(BinaryReader reader) throws IOException
    Creates and parses a new `ExportTrie`
    Parameters:
      `reader` - A `reader` positioned at the start of the export trie
    Throws:
      `IOException` - if an IO-related error occurs while parsing

- ## Method Details

  - ### getExports

    public List<ExportTrie.ExportEntry> getExports()
    Gets the `List` of `exports`
    Returns:
      The `List` of `exports`

  - ### getExports

    public List<ExportTrie.ExportEntry> getExports(Predicate<ExportTrie.ExportEntry> filter)
    Gets the `List` of `exports`
    Parameters:
      `filter` - A filter on the returned `List`
    Returns:
      The `List` of `exports`

  - ### getUlebOffsets

    public List<Long> getUlebOffsets()
    Returns ULEB128 offsets from the start of the export trie.
    Returns:
      ULEB128 offsets from the start of the export trie

  - ### getStringOffsets

    public List<Long> getStringOffsets()
    Returns String offsets from the start of the export trie.
    Returns:
      String offsets from the start of the export trie