Class IndexWriter.Identifier

java.lang.Object
org.eclipse.mat.parser.index.IndexWriter.Identifier
All Implemented Interfaces:
IIndexReader, IIndexReader.IOne2LongIndex
Enclosing class:
IndexWriter

public static class IndexWriter.Identifier extends Object implements IIndexReader.IOne2LongIndex
Used to collect the objects by address.
  • Constructor Details

    • Identifier

      public Identifier()
  • Method Details

    • add

      public void add(long id)
      Add an object.
      Parameters:
      id - the object address
    • sort

      public void sort()
      Sort the addresses of the objects in order. Also puts all of the added addresses into an array. Makes a reverse lookup easier.
    • size

      public int size()
      Description copied from interface: IIndexReader
      Size of the index
      Specified by:
      size in interface IIndexReader
      Returns:
      number of entries
    • get

      public long get(int index)
      Description copied from interface: IIndexReader.IOne2LongIndex
      Look up a long from an int in the index.
      Specified by:
      get in interface IIndexReader.IOne2LongIndex
      Parameters:
      index - the key
      Returns:
      the long
    • reverse

      public int reverse(long val)
      Description copied from interface: IIndexReader.IOne2LongIndex
      Find the int corresponding to the long in the index value. The reverse of IIndexReader.IOne2LongIndex.get(int)
      Specified by:
      reverse in interface IIndexReader.IOne2LongIndex
      Parameters:
      val - the value to look up
      Returns:
      the correspond int key in the index
    • iterator

      public IteratorLong iterator()
      Iterate through the object addresses.
      Returns:
      the iterator
    • getNext

      public long[] getNext(int index, int length)
      Description copied from interface: IIndexReader.IOne2LongIndex
      Look up long from an range of int keys in the index.
      Specified by:
      getNext in interface IIndexReader.IOne2LongIndex
      Parameters:
      index - the starting point
      length - the number of items to look up
      Returns:
      an array of longs corresponding to the input
    • close

      public void close() throws IOException
      Description copied from interface: IIndexReader
      Close the backing file.
      Specified by:
      close in interface IIndexReader
      Throws:
      IOException
    • delete

      public void delete()
      Description copied from interface: IIndexReader
      Delete the backing file.
      Specified by:
      delete in interface IIndexReader
    • unload

      public void unload() throws IOException
      Description copied from interface: IIndexReader
      Clear the caches. Used when the indexes are not current in use and the memory needs to be reclaimed such as when building the dominator tree.
      Specified by:
      unload in interface IIndexReader
      Throws:
      IOException