Class BytesRefArray


  • public final class BytesRefArray
    extends java.lang.Object
    A simple append only random-access BytesRef array that stores full copies of the appended bytes in a ByteBlockPool. Note: This class is not Thread-Safe!
    • Constructor Detail

      • BytesRefArray

        public BytesRefArray​(Counter bytesUsed)
        Creates a new BytesRefArray with a counter to track allocated bytes
    • Method Detail

      • append

        public int append​(BytesRef bytes)
        Appends a copy of the given BytesRef to this BytesRefArray.
        Parameters:
        bytes - the bytes to append
        Returns:
        the index of the appended bytes
      • iterator

        public BytesRefIterator iterator​(java.util.Comparator<BytesRef> comp)

        Returns a BytesRefIterator with point in time semantics. The iterator provides access to all so far appended BytesRef instances.

        If a non null Comparator is provided the iterator will iterate the byte values in the order specified by the comparator. Otherwise the order is the same as the values were appended.

        This is a non-destructive operation.