Package org.apache.lucene.util

# Class CharsRefBuilder

java.lang.Object
org.apache.lucene.util.CharsRefBuilder

All Implemented Interfaces:
  `Appendable`

public class CharsRefBuilder extends Object implements Appendable
A builder for `CharsRef` instances.

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

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CharsRefBuilder()`
  Sole constructor.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `CharsRefBuilder`
  `append(char c)`
  `void`
  `append(char[] otherChars, int otherOffset, int otherLength)`
  Appends the given array to this CharsRef
  `CharsRefBuilder`
  `append(CharSequence csq)`
  `CharsRefBuilder`
  `append(CharSequence csq, int start, int end)`
  `char`
  `charAt(int offset)`
  Return the char at the given offset.
  `char[]`
  `chars()`
  Return a reference to the chars of this builder.
  `void`
  `clear()`
  Reset this builder to the empty state.
  `void`
  `copyChars(char[] otherChars, int otherOffset, int otherLength)`
  Copies the given array into this instance.
  `void`
  `copyChars(CharsRef other)`
  Copies the given `CharsRef` referenced content into this instance.
  `void`
  `copyUTF8Bytes(byte[] bytes, int offset, int length)`
  Copy the provided bytes, interpreted as UTF-8 bytes.
  `void`
  `copyUTF8Bytes(BytesRef bytes)`
  Copy the provided bytes, interpreted as UTF-8 bytes.
  `boolean`
  `equals(Object obj)`
  `CharsRef`
  `get()`
  Return a `CharsRef` that points to the internal content of this builder.
  `void`
  `grow(int newLength)`
  Used to grow the reference array.
  `int`
  `hashCode()`
  `int`
  `length()`
  Return the number of chars in this buffer.
  `void`
  `setCharAt(int offset, char b)`
  Set a char.
  `void`
  `setLength(int length)`
  Set the length.
  `CharsRef`
  `toCharsRef()`
  Build a new `CharsRef` that has the same content as this builder.
  `String`
  `toString()`

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

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

- ## Constructor Details

  - ### CharsRefBuilder

    public CharsRefBuilder()
    Sole constructor.

- ## Method Details

  - ### chars

    public char[] chars()
    Return a reference to the chars of this builder.

  - ### length

    public int length()
    Return the number of chars in this buffer.

  - ### setLength

    public void setLength(int length)
    Set the length.

  - ### charAt

    public char charAt(int offset)
    Return the char at the given offset.

  - ### setCharAt

    public void setCharAt(int offset, char b)
    Set a char.

  - ### clear

    public void clear()
    Reset this builder to the empty state.

  - ### append

    public CharsRefBuilder append(CharSequence csq)
    Specified by:
      `append` in interface `Appendable`

  - ### append

    public CharsRefBuilder append(CharSequence csq, int start, int end)
    Specified by:
      `append` in interface `Appendable`

  - ### append

    public CharsRefBuilder append(char c)
    Specified by:
      `append` in interface `Appendable`

  - ### copyChars

    public void copyChars(CharsRef other)
    Copies the given `CharsRef` referenced content into this instance.

  - ### grow

    public void grow(int newLength)
    Used to grow the reference array.

  - ### copyUTF8Bytes

    public void copyUTF8Bytes(byte[] bytes, int offset, int length)
    Copy the provided bytes, interpreted as UTF-8 bytes.

  - ### copyUTF8Bytes

    public void copyUTF8Bytes(BytesRef bytes)
    Copy the provided bytes, interpreted as UTF-8 bytes.

  - ### copyChars

    public void copyChars(char[] otherChars, int otherOffset, int otherLength)
    Copies the given array into this instance.

  - ### append

    public void append(char[] otherChars, int otherOffset, int otherLength)
    Appends the given array to this CharsRef

  - ### get

    public CharsRef get()
    Return a `CharsRef` that points to the internal content of this builder. Any update to the content of this builder might invalidate the provided `ref` and vice-versa.

  - ### toCharsRef

    public CharsRef toCharsRef()
    Build a new `CharsRef` that has the same content as this builder.

  - ### toString

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

  - ### equals

    public boolean equals(Object obj)
    Overrides:
      `equals` in class `Object`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `Object`