org.apache.lucene.codecs.intblock

## Class VariableIntBlockIndexInput

- java.lang.Object
- - org.apache.lucene.codecs.sep.IntIndexInput
  - - org.apache.lucene.codecs.intblock.VariableIntBlockIndexInput

All Implemented Interfaces:
  Closeable, AutoCloseable

    public abstract class VariableIntBlockIndexInput
    extends IntIndexInput

Abstract base class that reads variable-size blocks of ints from an IndexInput. While this is a simple approach, a more performant approach would directly create an impl of IntIndexInput inside Directory. Wrapping a generic IndexInput will likely cost performance.

WARNING: This API is experimental and might change in incompatible ways in the next release.

### Nested Class Summary

Nested Classes
`static interface` `VariableIntBlockIndexInput.BlockReader` Interface for variable-size block decoders.

### Field Summary

Fields
`protected IndexInput` `in`
`protected int` `maxBlockSize`

### Constructor Summary

Constructors
`protected` `VariableIntBlockIndexInput(IndexInput in)`

### Method Summary

Methods
`void` `close()`
`protected abstract VariableIntBlockIndexInput.BlockReader` `getBlockReader(IndexInput in, int[] buffer)`
`IntIndexInput.Index` `index()`
`IntIndexInput.Reader` `reader()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### in

    protected final IndexInput in

#### maxBlockSize

    protected final int maxBlockSize

### Constructor Detail

#### VariableIntBlockIndexInput

    protected VariableIntBlockIndexInput(IndexInput in)
                                  throws IOException

Throws:
  `IOException`

### Method Detail

#### reader

    public IntIndexInput.Reader reader()
                                throws IOException

Specified by:
  `reader` in class `IntIndexInput`
Throws:
  `IOException`

#### close

    public void close()
               throws IOException

Specified by:
  `close` in interface `Closeable`
Specified by:
  `close` in interface `AutoCloseable`
Specified by:
  `close` in class `IntIndexInput`
Throws:
  `IOException`

#### index

    public IntIndexInput.Index index()

Specified by:
  `index` in class `IntIndexInput`

#### getBlockReader

    protected abstract VariableIntBlockIndexInput.BlockReader getBlockReader(IndexInput in,
                                                        int[] buffer)
                                                                      throws IOException

Throws:
  `IOException`