Package org.apache.lucene.util

# Class BytesRefHash.BytesStartArray

java.lang.Object
org.apache.lucene.util.BytesRefHash.BytesStartArray

Direct Known Subclasses:
  `BytesRefHash.DirectBytesStartArray`

Enclosing class:
  `BytesRefHash`

public abstract static class BytesRefHash.BytesStartArray extends Object
Manages allocation of the per-term addresses.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `BytesStartArray()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract Counter`
  `bytesUsed()`
  A `Counter` reference holding the number of bytes used by this `BytesRefHash.BytesStartArray`.
  `abstract int[]`
  `clear()`
  clears the `BytesRefHash.BytesStartArray` and returns the cleared instance.
  `abstract int[]`
  `grow()`
  Grows the `BytesRefHash.BytesStartArray`
  `abstract int[]`
  `init()`
  Initializes the BytesStartArray.

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

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

- ## Constructor Details

  - ### BytesStartArray

    public BytesStartArray()

- ## Method Details

  - ### init

    public abstract int[] init()
    Initializes the BytesStartArray. This call will allocate memory
    Returns:
      the initialized bytes start array

  - ### grow

    public abstract int[] grow()
    Grows the `BytesRefHash.BytesStartArray`
    Returns:
      the grown array

  - ### clear

    public abstract int[] clear()
    clears the `BytesRefHash.BytesStartArray` and returns the cleared instance.
    Returns:
      the cleared instance, this might be `null`

  - ### bytesUsed

    public abstract Counter bytesUsed()
    A `Counter` reference holding the number of bytes used by this `BytesRefHash.BytesStartArray`. The `BytesRefHash` uses this reference to track it memory usage
    Returns:
      a `AtomicLong` reference holding the number of bytes used by this `BytesRefHash.BytesStartArray`.