Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.lucene.util.packed
Class GrowableWriter

    java.lang.Object
      org.apache.lucene.util.packed.GrowableWriter

All Implemented Interfaces:
  PackedInts.Mutable, PackedInts.Reader

    public class GrowableWriter

extends Object
implements PackedInts.Mutable

Implements `PackedInts.Mutable`, but grows the bit count of the underlying packed ints on-demand.

@lucene.internal

Constructor Summary
`GrowableWriter(int startBitsPerValue, int valueCount, boolean roundFixedSize)`

Method Summary
`void` | `clear()` Sets all values to 0.
`long` | `get(int index)`
`Object` | `getArray()` Expert: if the bit-width of this reader matches one of java's native types, returns the underlying array (ie, byte[], short[], int[], long[]); else, returns null.
`int` | `getBitsPerValue()`
`PackedInts.Mutable` | `getMutable()`
`boolean` | `hasArray()` Returns true if this implementation is backed by a native java array.
`GrowableWriter` | `resize(int newSize)`
`void` | `set(int index, long value)` Set the value at the given index in the array.
`int` | `size()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### GrowableWriter

    public GrowableWriter(int startBitsPerValue,
                          int valueCount,
                          boolean roundFixedSize)

Method Detail

### get

    public long get(int index)

  Specified by:
    `get` in interface `PackedInts.Reader`
  Parameters:
    `index` - the position of the wanted value.
  Returns:
    the value at the stated index.

### size

    public int size()

  Specified by:
    `size` in interface `PackedInts.Reader`
  Returns:
    the number of values.

### getBitsPerValue

    public int getBitsPerValue()

  Specified by:
    `getBitsPerValue` in interface `PackedInts.Reader`
  Returns:
    the number of bits used to store any given value. Note: This does not imply that memory usage is `bitsPerValue * #values` as implementations are free to use non-space-optimal packing of bits.

### getMutable

    public PackedInts.Mutable getMutable()

### getArray

    public Object getArray()

  Description copied from interface: `PackedInts.Reader`
  Expert: if the bit-width of this reader matches one of java's native types, returns the underlying array (ie, byte[], short[], int[], long[]); else, returns null. Note that when accessing the array you must upgrade the type (bitwise AND with all ones), to interpret the full value as unsigned. Ie, bytes[idx]&0xFF, shorts[idx]&0xFFFF, etc.

  Specified by:
    `getArray` in interface `PackedInts.Reader`

### hasArray

    public boolean hasArray()

  Description copied from interface: `PackedInts.Reader`
  Returns true if this implementation is backed by a native java array.

  Specified by:
    `hasArray` in interface `PackedInts.Reader`
  See Also:
    `PackedInts.Reader.getArray()`

### set

    public void set(int index,
                    long value)

  Description copied from interface: `PackedInts.Mutable`
  Set the value at the given index in the array.

  Specified by:
    `set` in interface `PackedInts.Mutable`
  Parameters:
    `index` - where the value should be positioned.
    `value` - a value conforming to the constraints set by the array.

### clear

    public void clear()

  Description copied from interface: `PackedInts.Mutable`
  Sets all values to 0.

  Specified by:
    `clear` in interface `PackedInts.Mutable`

### resize

    public GrowableWriter resize(int newSize)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD