Class ByteSliceReader

  • All Implemented Interfaces:
    java.lang.Cloneable

    final class ByteSliceReader
    extends DataInput
    IndexInput that knows how to read the byte slices written by Posting and PostingVector. We read the bytes in each slice until we hit the end of that slice at which point we read the forwarding address of the next slice and then jump to it.
    • Field Detail

      • bufferUpto

        int bufferUpto
      • buffer

        byte[] buffer
      • upto

        public int upto
      • limit

        int limit
      • level

        int level
      • bufferOffset

        public int bufferOffset
      • endIndex

        public int endIndex
    • Constructor Detail

      • ByteSliceReader

        ByteSliceReader()
    • Method Detail

      • init

        public void init​(ByteBlockPool pool,
                         int startIndex,
                         int endIndex)
      • eof

        public boolean eof()
      • writeTo

        public long writeTo​(DataOutput out)
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • nextSlice

        public void nextSlice()
      • readBytes

        public void readBytes​(byte[] b,
                              int offset,
                              int len)
        Description copied from class: DataInput
        Reads a specified number of bytes into an array at the specified offset.
        Specified by:
        readBytes in class DataInput
        Parameters:
        b - the array to read bytes into
        offset - the offset in the array to start storing bytes
        len - the number of bytes to read
        See Also:
        DataOutput.writeBytes(byte[],int)
      • skipBytes

        public void skipBytes​(long numBytes)
        Description copied from class: DataInput
        Skip over numBytes bytes. This method may skip bytes in whatever way is most optimal, and may not have the same behavior as reading the skipped bytes. In general, negative numBytes are not supported.
        Specified by:
        skipBytes in class DataInput