UnicodeEscaper
Date: 2017-02-08

org.apache.commons.lang3.text.translate

## Class UnicodeEscaper

- java.lang.Object
- - org.apache.commons.lang3.text.translate.CharSequenceTranslator
  - - org.apache.commons.lang3.text.translate.CodePointTranslator
    - - org.apache.commons.lang3.text.translate.UnicodeEscaper

- Direct Known Subclasses:
    JavaUnicodeEscaper

      public class UnicodeEscaper
      extends CodePointTranslator

  Translates codepoints to their Unicode escaped value.
  Since:
    3.0

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `` | `UnicodeEscaper()` Constructs a `UnicodeEscaper` for all characters.
    `protected` | `UnicodeEscaper(int below, int above, boolean between)` Constructs a `UnicodeEscaper` for the specified range.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static UnicodeEscaper` | `above(int codepoint)` Constructs a `UnicodeEscaper` above the specified value (exclusive).
    `static UnicodeEscaper` | `below(int codepoint)` Constructs a `UnicodeEscaper` below the specified value (exclusive).
    `static UnicodeEscaper` | `between(int codepointLow, int codepointHigh)` Constructs a `UnicodeEscaper` between the specified values (inclusive).
    `static UnicodeEscaper` | `outsideOf(int codepointLow, int codepointHigh)` Constructs a `UnicodeEscaper` outside of the specified values (exclusive).
    `protected java.lang.String` | `toUtf16Escape(int codepoint)` Converts the given codepoint to a hex string of the form `"\\uXXXX"`
    `boolean` | `translate(int codepoint, java.io.Writer out)` Translate the specified codepoint into another.

    - ### Methods inherited from class org.apache.commons.lang3.text.translate.CodePointTranslator

      `translate`

    - ### Methods inherited from class org.apache.commons.lang3.text.translate.CharSequenceTranslator

      `hex, translate, translate, with`

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

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

- - ### Constructor Detail

    - #### UnicodeEscaper

          public UnicodeEscaper()

      Constructs a `UnicodeEscaper` for all characters.

    - #### UnicodeEscaper

          protected UnicodeEscaper(int below,
                        int above,
                        boolean between)

      Constructs a `UnicodeEscaper` for the specified range. This is the underlying method for the other constructors/builders. The `below` and `above` boundaries are inclusive when `between` is `true` and exclusive when it is `false`.

      Parameters:
        `below` - int value representing the lowest codepoint boundary
        `above` - int value representing the highest codepoint boundary
        `between` - whether to escape between the boundaries or outside them

  - ### Method Detail

    - #### below

          public static UnicodeEscaper below(int codepoint)

      Constructs a `UnicodeEscaper` below the specified value (exclusive).

      Parameters:
        `codepoint` - below which to escape
      Returns:
        the newly created `UnicodeEscaper` instance

    - #### above

          public static UnicodeEscaper above(int codepoint)

      Constructs a `UnicodeEscaper` above the specified value (exclusive).

      Parameters:
        `codepoint` - above which to escape
      Returns:
        the newly created `UnicodeEscaper` instance

    - #### outsideOf

          public static UnicodeEscaper outsideOf(int codepointLow,
                                 int codepointHigh)

      Constructs a `UnicodeEscaper` outside of the specified values (exclusive).

      Parameters:
        `codepointLow` - below which to escape
        `codepointHigh` - above which to escape
      Returns:
        the newly created `UnicodeEscaper` instance

    - #### between

          public static UnicodeEscaper between(int codepointLow,
                               int codepointHigh)

      Constructs a `UnicodeEscaper` between the specified values (inclusive).

      Parameters:
        `codepointLow` - above which to escape
        `codepointHigh` - below which to escape
      Returns:
        the newly created `UnicodeEscaper` instance

    - #### translate

          public boolean translate(int codepoint,
                          java.io.Writer out)
                            throws java.io.IOException

      Translate the specified codepoint into another.
      Specified by:
        `translate` in class `CodePointTranslator`
      Parameters:
        `codepoint` - int character input to translate
        `out` - Writer to optionally push the translated output to
      Returns:
        boolean as to whether translation occurred or not
      Throws:
        `java.io.IOException` - if and only if the Writer produces an IOException

    - #### toUtf16Escape

          protected java.lang.String toUtf16Escape(int codepoint)

      Converts the given codepoint to a hex string of the form `"\\uXXXX"`
      Parameters:
        `codepoint` - a Unicode code point
      Returns:
        the hex string for the given codepoint
      Since:
        3.2