Class AddressKeyIterator

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

public class AddressKeyIterator extends Object implements DBLongIterator
Iterator of primary keys that are addresses. The longs returned are the address longs.
  • Field Details

  • Constructor Details

    • AddressKeyIterator

      public AddressKeyIterator(Table table, AddressMap addrMap, boolean before) throws IOException
      Constructs new AddressKeyIterator that iterates over all addresses. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table key by addresses
      addrMap - the address map
      before - positions the iterator before the min value,otherwise after the max value.
      Throws:
      IOException - if a database error occurs.
    • AddressKeyIterator

      public AddressKeyIterator(Table table, AddressMap addrMap, Address startAddr, boolean before) throws IOException
      Constructs new AddressKeyIterator that iterates overal all addresses and is initially positioned at startAddr. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table key by addresses
      addrMap - the address map
      startAddr - the address at which to position the iterator.
      before - positions the iterator before the start address,otherwise after the start address. If the start address is null, then before positions the iterator before the lowest address, !before positions the iterater after the largest address.
      Throws:
      IOException - if a database error occurs.
    • AddressKeyIterator

      public AddressKeyIterator(Table table, AddressMap addrMap, Address minAddr, Address maxAddr, Address startAddr, boolean before) throws IOException
      Constructs new AddressKeyIterator that iterates over an address range. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table key by addresses
      addrMap - the address map
      minAddr - the first address in the range.
      maxAddr - the last address in the range.
      startAddr - the address at which to position the iterator, can be null. The exact position of the iterator depends on the before parameter.
      before - positions the iterator before the start address,otherwise after the start address. If the start address is null, then before positions the iterator before the lowest address, !before positions the iterater after the largest address.
      Throws:
      IOException - if a database error occurs.
    • AddressKeyIterator

      public AddressKeyIterator(Table table, AddressMap addrMap, AddressSetView set, Address startAddr, boolean before) throws IOException
      Constructs new AddressKeyIterator to iterate over an address set. Memory addresses encoded as Absolute are not included.
      Parameters:
      table - the database table key by addresses
      addrMap - the address map
      set - the address set to iterator over (may be null for all defined memory)
      startAddr - the address at which to position the iterator, can be null. The exact position of the iterator depends on the before parameter.
      before - positions the iterator before the start address,otherwise after the start address. If the start address is null, then before positions the iterator before the lowest address, !before positions the iterater after the largest address.
      Throws:
      IOException - if a database error occurs.
  • Method Details