org.apache.lucene.util.packed

## Class AbstractPagedMutable<T extends AbstractPagedMutable<T>>

- java.lang.Object
- - org.apache.lucene.util.LongValues
  - - org.apache.lucene.util.packed.AbstractPagedMutable<T>

- All Implemented Interfaces:
    Accountable
  Direct Known Subclasses:
    PagedGrowableWriter, PagedMutable

      public abstract class AbstractPagedMutable<T extends AbstractPagedMutable<T>>
      extends LongValues
      implements Accountable

  Base implementation for `PagedMutable` and `PagedGrowableWriter`.
  NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.

- - ### Field Summary

    - ### Fields inherited from class org.apache.lucene.util.LongValues

      `IDENTITY, ZEROES`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected long` | `baseRamBytesUsed()`
    `protected void` | `fillPages()`
    `long` | `get(long index)` Get value at `index`.
    `T` | `grow()` Similar to `ArrayUtil.grow(long[])`.
    `T` | `grow(long minSize)` Similar to `ArrayUtil.grow(long[], int)`.
    `protected abstract PackedInts.Mutable` | `newMutable(int valueCount, int bitsPerValue)`
    `protected abstract T` | `newUnfilledCopy(long newSize)`
    `long` | `ramBytesUsed()` Return the memory usage of this object in bytes.
    `T` | `resize(long newSize)` Create a new copy of size `newSize` based on the content of this buffer.
    `void` | `set(long index, long value)` Set value at `index`.
    `long` | `size()` The number of values.
    `String` | `toString()`

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

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

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

      `getChildResources`

- - ### Method Detail

    - #### fillPages

          protected final void fillPages()

    - #### newMutable

          protected abstract PackedInts.Mutable newMutable(int valueCount,
                                                           int bitsPerValue)

    - #### size

          public final long size()

      The number of values.

    - #### get

          public final long get(long index)

      Description copied from class: `LongValues`
      Get value at `index`.
      Specified by:
        `get` in class `LongValues`

    - #### set

          public final void set(long index,
                                long value)

      Set value at `index`.

    - #### baseRamBytesUsed

          protected long baseRamBytesUsed()

    - #### ramBytesUsed

          public long ramBytesUsed()

      Description copied from interface: `Accountable`
      Return the memory usage of this object in bytes. Negative values are illegal.
      Specified by:
        `ramBytesUsed` in interface `Accountable`

    - #### newUnfilledCopy

          protected abstract T newUnfilledCopy(long newSize)

    - #### resize

          public final T resize(long newSize)

      Create a new copy of size `newSize` based on the content of this buffer. This method is much more efficient than creating a new instance and copying values one by one.

    - #### grow

          public final T grow(long minSize)

      Similar to `ArrayUtil.grow(long[], int)`.

    - #### grow

          public final T grow()

      Similar to `ArrayUtil.grow(long[])`.

    - #### toString

          public final String toString()

      Overrides:
        `toString` in class `Object`

Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.