Class AddressIndexKeyIterator

java.lang.Object
ghidra.program.database.map.AddressIndexKeyIterator
All Implemented Interfaces:
DBLongIterator

public class AddressIndexKeyIterator extends Object implements DBLongIterator
Iterator of indexed fields that are addresses. The longs returned are the address longs.
  • Constructor Details

    • AddressIndexKeyIterator

      public AddressIndexKeyIterator()
      Empty iterator.
    • AddressIndexKeyIterator

      public AddressIndexKeyIterator(Table table, int indexCol, AddressMap addrMap, boolean atStart) throws IOException
      Constructs a new AddressIndexKeyIterator. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table containing indexed addresses.
      indexCol - the column that contains indexed addresses.
      addrMap - the address map
      atStart - if true, iterates forward, otherwise iterates backwards.
      Throws:
      IOException - if a database io error occurs.
    • AddressIndexKeyIterator

      public AddressIndexKeyIterator(Table table, int indexCol, AddressMap addrMap, Address minAddr, Address maxAddr, boolean atStart) throws IOException
      Constructs a new AddressIndexKeyIterator for a range of addresses. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table containing indexed addresses.
      indexCol - the column that contains indexed addresses.
      addrMap - the address map
      minAddr - the first address in the range to iterate over.
      maxAddr - the last address in the range to iterator over.
      atStart - if true, iterates forward, otherwise iterates backwards.
      Throws:
      IOException - if a database io error occurs.
    • AddressIndexKeyIterator

      public AddressIndexKeyIterator(Table table, int indexCol, AddressMap addrMap, AddressSetView set, boolean atStart) throws IOException
      Constructs a new AddressIndexKeyIterator for a set of addresses. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table containing indexed addresses.
      indexCol - the column that contains indexed addresses.
      addrMap - the address map
      set - the set of addresses to iterator over.
      atStart - if true, iterates forward, otherwise iterates backwards.
      Throws:
      IOException - if a database io error occurs.
    • AddressIndexKeyIterator

      public AddressIndexKeyIterator(Table table, int indexCol, AddressMap addrMap, boolean absolute, AddressSetView set, boolean atStart) throws IOException
      Constructs a new AddressIndexKeyIterator for a set of addresses
      Parameters:
      table - the database table containing indexed addresses.
      indexCol - the column that contains indexed addresses.
      addrMap - the address map
      absolute - if true, only absolute memory address encodings are considered, otherwise only standard/relocatable address encodings are considered.
      set - the set of addresses to iterator over or null for all addresses.
      atStart - if true, iterates forward, otherwise iterates backwards.
      Throws:
      IOException - if a database io error occurs.
    • AddressIndexKeyIterator

      public AddressIndexKeyIterator(Table table, int indexCol, AddressMap addrMap, Address start, boolean before) throws IOException
      Constructs a new AddressIndexKeyIterator starting at a given address. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table containing indexed addresses.
      indexCol - the column that contains indexed addresses.
      addrMap - the address map
      start - the starting address for the iterator.
      before - if true, positions the iterator before start, otherwise positions it after start.
      Throws:
      IOException - if a database io error occurs.
  • Method Details