org.apache.lucene.index

## Class SortedSetDocValues

- java.lang.Object
- - org.apache.lucene.index.SortedSetDocValues

- Direct Known Subclasses:
    MultiDocValues.MultiSortedSetDocValues, RandomAccessOrds

      public abstract class SortedSetDocValues
      extends Object

  A per-document set of presorted byte[] values.

  Per-Document values in a SortedDocValues are deduplicated, dereferenced, and sorted into a dictionary of unique values. A pointer to the dictionary value (ordinal) can be retrieved for each document. Ordinals are dense and in increasing sorted order.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static long` | `NO_MORE_ORDS` When returned by `nextOrd()` it means there are no more ordinals for the document.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `SortedSetDocValues()` Sole constructor.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract long` | `getValueCount()` Returns the number of unique values.
    `TermsEnum` | `intersect(CompiledAutomaton automaton)` Returns a `TermsEnum` over the values, filtered by a `CompiledAutomaton` The enum supports `TermsEnum.ord()`.
    `abstract BytesRef` | `lookupOrd(long ord)` Retrieves the value for the specified ordinal.
    `long` | `lookupTerm(BytesRef key)` If `key` exists, returns its ordinal, else returns `-insertionPoint-1`, like `Arrays.binarySearch`.
    `abstract long` | `nextOrd()` Returns the next ordinal for the current document (previously set by `setDocument(int)`.
    `abstract void` | `setDocument(int docID)` Sets iteration to the specified docID
    `TermsEnum` | `termsEnum()` Returns a `TermsEnum` over the values.

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

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

- - ### Field Detail

    - #### NO_MORE_ORDS

          public static final long NO_MORE_ORDS

      When returned by `nextOrd()` it means there are no more ordinals for the document.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### SortedSetDocValues

          protected SortedSetDocValues()

      Sole constructor. (For invocation by subclass constructors, typically implicit.)

  - ### Method Detail

    - #### nextOrd

          public abstract long nextOrd()

      Returns the next ordinal for the current document (previously set by `setDocument(int)`.
      Returns:
        next ordinal for the document, or `NO_MORE_ORDS`. ordinals are dense, start at 0, then increment by 1 for the next value in sorted order.

    - #### setDocument

          public abstract void setDocument(int docID)

      Sets iteration to the specified docID
      Parameters:
        `docID` - document ID

    - #### lookupOrd

          public abstract BytesRef lookupOrd(long ord)

      Retrieves the value for the specified ordinal. The returned `BytesRef` may be re-used across calls to lookupOrd so make sure to `copy it` if you want to keep it around.
      Parameters:
        `ord` - ordinal to lookup
      See Also:
        `nextOrd()`

    - #### getValueCount

          public abstract long getValueCount()

      Returns the number of unique values.
      Returns:
        number of unique values in this SortedDocValues. This is also equivalent to one plus the maximum ordinal.

    - #### lookupTerm

          public long lookupTerm(BytesRef key)

      If `key` exists, returns its ordinal, else returns `-insertionPoint-1`, like `Arrays.binarySearch`.
      Parameters:
        `key` - Key to look up

    - #### termsEnum

          public TermsEnum termsEnum()

      Returns a `TermsEnum` over the values. The enum supports `TermsEnum.ord()` and `TermsEnum.seekExact(long)`.

    - #### intersect

          public TermsEnum intersect(CompiledAutomaton automaton)
                              throws IOException

      Returns a `TermsEnum` over the values, filtered by a `CompiledAutomaton` The enum supports `TermsEnum.ord()`.
      Throws:
        `IOException`

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