PackedInts.Mutable (Lucene 10.5.0 core API)
Description: declaration: package: org.apache.lucene.util.packed, class: PackedInts, class: Mutable

Package org.apache.lucene.util.packed

# Class PackedInts.Mutable

java.lang.Object
org.apache.lucene.util.packed.PackedInts.Reader
org.apache.lucene.util.packed.PackedInts.Mutable

All Implemented Interfaces:
  `Accountable`

Direct Known Subclasses:
  `GrowableWriter`

Enclosing class:
  `PackedInts`

public abstract static class PackedInts.Mutable extends PackedInts.Reader
A packed integer array that can be modified.

NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- ## Field Summary

  ### Fields inherited from interface org.apache.lucene.util.Accountable

  `NULL_ACCOUNTABLE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Mutable()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clear()`
  Sets all values to 0.
  `void`
  `fill(int fromIndex, int toIndex, long val)`
  Fill the mutable from `fromIndex` (inclusive) to `toIndex` (exclusive) with `val`.
  `abstract int`
  `getBitsPerValue()`
  `abstract void`
  `set(int index, long value)`
  Set the value at the given index in the array.
  `int`
  `set(int index, long[] arr, int off, int len)`
  Bulk set: set at least one and at most `len` longs starting at `off` in `arr` into this mutable, starting at `index`.

  ### Methods inherited from class org.apache.lucene.util.packed.PackedInts.Reader

  `get, get, size`

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

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

  ### Methods inherited from interface org.apache.lucene.util.Accountable

  `getChildResources, ramBytesUsed`

- ## Constructor Details

  - ### Mutable

    public Mutable()

- ## Method Details

  - ### getBitsPerValue

    public abstract int getBitsPerValue()
    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.

  - ### set

    public abstract void set(int index, long value)
    Set the value at the given index in the array.
    Parameters:
      `index` - where the value should be positioned.
      `value` - a value conforming to the constraints set by the array.

  - ### set

    public int set(int index, long[] arr, int off, int len)
    Bulk set: set at least one and at most `len` longs starting at `off` in `arr` into this mutable, starting at `index`. Returns the actual number of values that have been set.

  - ### fill

    public void fill(int fromIndex, int toIndex, long val)
    Fill the mutable from `fromIndex` (inclusive) to `toIndex` (exclusive) with `val`.

  - ### clear

    public void clear()
    Sets all values to 0.