org.apache.lucene.util.fst

## Class CharSequenceOutputs

- java.lang.Object
- - org.apache.lucene.util.fst.Outputs<CharsRef>
  - - org.apache.lucene.util.fst.CharSequenceOutputs

-     public final class CharSequenceOutputs
      extends Outputs<CharsRef>

  An FST `Outputs` implementation where each output is a sequence of characters.
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `CharsRef` | `add(CharsRef prefix, CharsRef output)` Eg add("foo", "bar") -> "foobar"
    `CharsRef` | `common(CharsRef output1, CharsRef output2)` Eg common("foobar", "food") -> "foo"
    `CharsRef` | `getNoOutput()` NOTE: this output is compared with == so you must ensure that all methods return the single object if it's really no output
    `static CharSequenceOutputs` | `getSingleton()`
    `String` | `outputToString(CharsRef output)`
    `long` | `ramBytesUsed(CharsRef output)` Return memory usage for the provided output.
    `CharsRef` | `read(DataInput in)` Decode an output value previously written with `Outputs.write(Object, DataOutput)`.
    `void` | `skipOutput(DataInput in)` Skip the output; defaults to just calling `Outputs.read(org.apache.lucene.store.DataInput)` and discarding the result.
    `CharsRef` | `subtract(CharsRef output, CharsRef inc)` Eg subtract("foobar", "foo") -> "bar"
    `void` | `write(CharsRef prefix, DataOutput out)` Encode an output value into a `DataOutput`.

    - ### Methods inherited from class org.apache.lucene.util.fst.Outputs

      `merge, readFinalOutput, skipFinalOutput, writeFinalOutput`

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

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

- - ### Method Detail

    - #### getSingleton

          public static CharSequenceOutputs getSingleton()

    - #### common

          public CharsRef common(CharsRef output1,
                                 CharsRef output2)

      Description copied from class: `Outputs`
      Eg common("foobar", "food") -> "foo"
      Specified by:
        `common` in class `Outputs<CharsRef>`

    - #### subtract

          public CharsRef subtract(CharsRef output,
                                   CharsRef inc)

      Description copied from class: `Outputs`
      Eg subtract("foobar", "foo") -> "bar"
      Specified by:
        `subtract` in class `Outputs<CharsRef>`

    - #### add

          public CharsRef add(CharsRef prefix,
                              CharsRef output)

      Description copied from class: `Outputs`
      Eg add("foo", "bar") -> "foobar"
      Specified by:
        `add` in class `Outputs<CharsRef>`

    - #### write

          public void write(CharsRef prefix,
                            DataOutput out)
                     throws IOException

      Description copied from class: `Outputs`
      Encode an output value into a `DataOutput`.
      Specified by:
        `write` in class `Outputs<CharsRef>`
      Throws:
        `IOException`

    - #### read

          public CharsRef read(DataInput in)
                        throws IOException

      Description copied from class: `Outputs`
      Decode an output value previously written with `Outputs.write(Object, DataOutput)`.
      Specified by:
        `read` in class `Outputs<CharsRef>`
      Throws:
        `IOException`

    - #### skipOutput

          public void skipOutput(DataInput in)
                          throws IOException

      Description copied from class: `Outputs`
      Skip the output; defaults to just calling `Outputs.read(org.apache.lucene.store.DataInput)` and discarding the result.
      Overrides:
        `skipOutput` in class `Outputs<CharsRef>`
      Throws:
        `IOException`

    - #### getNoOutput

          public CharsRef getNoOutput()

      Description copied from class: `Outputs`
      NOTE: this output is compared with == so you must ensure that all methods return the single object if it's really no output
      Specified by:
        `getNoOutput` in class `Outputs<CharsRef>`

    - #### outputToString

          public String outputToString(CharsRef output)

      Specified by:
        `outputToString` in class `Outputs<CharsRef>`

    - #### ramBytesUsed

          public long ramBytesUsed(CharsRef output)

      Description copied from class: `Outputs`
      Return memory usage for the provided output.
      Specified by:
        `ramBytesUsed` in class `Outputs<CharsRef>`
      See Also:
        `Accountable`

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