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

Package org.apache.lucene.util.packed

# Enum Class PackedInts.Format

java.lang.Object
java.lang.Enum<PackedInts.Format>
org.apache.lucene.util.packed.PackedInts.Format

All Implemented Interfaces:
  `Serializable`, `Comparable<PackedInts.Format>`, `Constable`

Enclosing class:
  `PackedInts`

public static enum PackedInts.Format extends Enum<PackedInts.Format>
A format to write packed ints.

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

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `PACKED`
  Compact format, all bits are written contiguously.
  `PACKED_SINGLE_BLOCK`
  Deprecated.
  Use `PACKED` instead.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `final int`
  `id`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static PackedInts.Format`
  `byId(int id)`
  Get a format according to its ID.
  `long`
  `byteCount(int packedIntsVersion, int valueCount, int bitsPerValue)`
  Computes how many byte blocks are needed to store `values` values of size `bitsPerValue`.
  `int`
  `getId()`
  Returns the ID of the format.
  `boolean`
  `isSupported(int bitsPerValue)`
  Tests whether the provided number of bits per value is supported by the format.
  `int`
  `longCount(int packedIntsVersion, int valueCount, int bitsPerValue)`
  Computes how many long blocks are needed to store `values` values of size `bitsPerValue`.
  `float`
  `overheadPerValue(int bitsPerValue)`
  Returns the overhead per value, in bits.
  `final float`
  `overheadRatio(int bitsPerValue)`
  Returns the overhead ratio (`overhead per value / bits per value`).
  `static PackedInts.Format`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static PackedInts.Format[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

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

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

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

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### PACKED

    public static final PackedInts.Format PACKED
    Compact format, all bits are written contiguously.

  - ### PACKED_SINGLE_BLOCK

    @Deprecated public static final PackedInts.Format PACKED_SINGLE_BLOCK
    Deprecated.
    Use `PACKED` instead.
    A format that may insert padding bits to improve encoding and decoding speed. Since this format doesn't support all possible bits per value, you should never use it directly, but rather use `PackedInts.fastestFormatAndBits(int, int, float)` to find the format that best suits your needs.

- ## Field Details

  - ### id

    public final int id

- ## Method Details

  - ### values

    public static PackedInts.Format[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static PackedInts.Format valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null

  - ### byId

    public static PackedInts.Format byId(int id)
    Get a format according to its ID.

  - ### getId

    public int getId()
    Returns the ID of the format.

  - ### byteCount

    public long byteCount(int packedIntsVersion, int valueCount, int bitsPerValue)
    Computes how many byte blocks are needed to store `values` values of size `bitsPerValue`.

  - ### longCount

    public int longCount(int packedIntsVersion, int valueCount, int bitsPerValue)
    Computes how many long blocks are needed to store `values` values of size `bitsPerValue`.

  - ### isSupported

    public boolean isSupported(int bitsPerValue)
    Tests whether the provided number of bits per value is supported by the format.

  - ### overheadPerValue

    public float overheadPerValue(int bitsPerValue)
    Returns the overhead per value, in bits.

  - ### overheadRatio

    public final float overheadRatio(int bitsPerValue)
    Returns the overhead ratio (`overhead per value / bits per value`).