Lucene104PostingsFormat.IntBlockTermState (Lucene 10.5.1 core API)
Description: declaration: package: org.apache.lucene.codecs.lucene104, class: Lucene104PostingsFormat, class: IntBlockTermState

Package org.apache.lucene.codecs.lucene104

# Class Lucene104PostingsFormat.IntBlockTermState

java.lang.Object
org.apache.lucene.index.TermState
org.apache.lucene.index.OrdTermState
org.apache.lucene.codecs.BlockTermState
org.apache.lucene.codecs.lucene104.Lucene104PostingsFormat.IntBlockTermState

All Implemented Interfaces:
  `Cloneable`

Enclosing class:
  `Lucene104PostingsFormat`

public static final class Lucene104PostingsFormat.IntBlockTermState extends BlockTermState
Holds all state required for `Lucene104PostingsReader` to produce a `PostingsEnum` without re-seeking the terms dict.

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

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `long`
  `docStartFP`
  file pointer to the start of the doc ids enumeration, in `Lucene104PostingsFormat.DOC_EXTENSION` file
  `long`
  `lastPosBlockOffset`
  file offset for the last position in the last block, if there are more than `ForUtil.BLOCK_SIZE` positions; otherwise -1
  `long`
  `payStartFP`
  file pointer to the start of the payloads enumeration, in `Lucene104PostingsFormat.PAY_EXTENSION` file
  `long`
  `posStartFP`
  file pointer to the start of the positions enumeration, in `Lucene104PostingsFormat.POS_EXTENSION` file
  `int`
  `singletonDocID`
  docid when there is a single pulsed posting, otherwise -1.

  ### Fields inherited from class org.apache.lucene.codecs.BlockTermState

  `blockFilePointer, docFreq, termBlockOrd, totalTermFreq`

  ### Fields inherited from class org.apache.lucene.index.OrdTermState

  `ord`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IntBlockTermState()`
  Sole constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Lucene104PostingsFormat.IntBlockTermState`
  `clone()`
  `void`
  `copyFrom(TermState _other)`
  Copies the content of the given `TermState` to this instance
  `String`
  `toString()`

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

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

- ## Field Details

  - ### docStartFP

    public long docStartFP
    file pointer to the start of the doc ids enumeration, in `Lucene104PostingsFormat.DOC_EXTENSION` file

  - ### posStartFP

    public long posStartFP
    file pointer to the start of the positions enumeration, in `Lucene104PostingsFormat.POS_EXTENSION` file

  - ### payStartFP

    public long payStartFP
    file pointer to the start of the payloads enumeration, in `Lucene104PostingsFormat.PAY_EXTENSION` file

  - ### lastPosBlockOffset

    public long lastPosBlockOffset
    file offset for the last position in the last block, if there are more than `ForUtil.BLOCK_SIZE` positions; otherwise -1

    One might think to use total term frequency to track how many positions are left to read as we decode the blocks, and decode the last block differently when num_left_positions < BLOCK_SIZE. Unfortunately this won't work since the tracking will be messed up when we skip blocks as the skipper will only tell us new position offset (start of block) and number of positions to skip for that block, without telling us how many positions it has skipped.

  - ### singletonDocID

    public int singletonDocID
    docid when there is a single pulsed posting, otherwise -1. freq is always implicitly totalTermFreq in this case.

- ## Constructor Details

  - ### IntBlockTermState

    public IntBlockTermState()
    Sole constructor.

- ## Method Details

  - ### clone

    public Lucene104PostingsFormat.IntBlockTermState clone()
    Overrides:
      `clone` in class `TermState`

  - ### copyFrom

    public void copyFrom(TermState _other)
    Description copied from class: `TermState`
    Copies the content of the given `TermState` to this instance
    Overrides:
      `copyFrom` in class `BlockTermState`
    Parameters:
      `_other` - the TermState to copy

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `BlockTermState`