Interface PositionsAppender

All Known Implementing Classes:
RowPositionsAppender

public interface PositionsAppender
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    append(int position, ValueBlock source)
    Appends single position.
    void
    append(it.unimi.dsi.fastutil.ints.IntArrayList positions, ValueBlock source)
     
    void
    appendRle(ValueBlock value, int rlePositionCount)
    Appends the specified value positionCount times.
    Creates the block from the appender data.
    long
    Returns number of bytes retained by this instance in memory including over-allocations.
    long
    Returns the size of memory in bytes used by this appender.
    void
    Reset this appender without creating a block.
  • Method Details

    • append

      void append(it.unimi.dsi.fastutil.ints.IntArrayList positions, ValueBlock source)
    • appendRle

      void appendRle(ValueBlock value, int rlePositionCount)
      Appends the specified value positionCount times. The result is the same as with using append(IntArrayList, ValueBlock) with a position list [0...positionCount -1] but with possible performance optimizations.
    • append

      void append(int position, ValueBlock source)
      Appends single position. The implementation must be conceptually equal to append(IntArrayList.wrap(new int[] {position}), source) but may be optimized. Caller should avoid using this method if append(IntArrayList, ValueBlock) can be used as appending positions one by one can be significantly slower and may not support features like pushing RLE through the appender.
    • build

      Block build()
      Creates the block from the appender data. After this, appender is reset to the initial state, and it is ready to build a new block.
    • reset

      void reset()
      Reset this appender without creating a block.
    • getRetainedSizeInBytes

      long getRetainedSizeInBytes()
      Returns number of bytes retained by this instance in memory including over-allocations.
    • getSizeInBytes

      long getSizeInBytes()
      Returns the size of memory in bytes used by this appender.