public final class Escapers
extends java.lang.Object
Escaper instances.| Modifier and Type | Class and Description |
|---|---|
static class |
Escapers.Builder
A builder for simple, fast escapers.
|
| Modifier and Type | Field and Description |
|---|---|
private static Escaper |
NULL_ESCAPER |
| Modifier | Constructor and Description |
|---|---|
private |
Escapers() |
| Modifier and Type | Method and Description |
|---|---|
(package private) static UnicodeEscaper |
asUnicodeEscaper(Escaper escaper)
Returns a
UnicodeEscaper equivalent to the given escaper instance. |
static Escapers.Builder |
builder()
Returns a builder for creating simple, fast escapers.
|
static java.lang.String |
computeReplacement(CharEscaper escaper,
char c)
Returns a string that would replace the given character in the specified escaper, or
null if no replacement should be made. |
static java.lang.String |
computeReplacement(UnicodeEscaper escaper,
int cp)
Returns a string that would replace the given character in the specified escaper, or
null if no replacement should be made. |
static Escaper |
nullEscaper()
Returns an
Escaper that does no escaping, passing all character data through unchanged. |
private static java.lang.String |
stringOrNull(char[] in) |
private static UnicodeEscaper |
wrap(CharEscaper escaper)
Private helper to wrap a CharEscaper as a UnicodeEscaper.
|
private static final Escaper NULL_ESCAPER
public static Escaper nullEscaper()
Escaper that does no escaping, passing all character data through unchanged.public static Escapers.Builder builder()
The initial state of the builder is such that:
safeMin == Character.MIN_VALUE
safeMax == Character.MAX_VALUE
unsafeReplacement == null
For performance reasons escapers created by this builder are not Unicode aware and will not validate the well-formedness of their input.
static UnicodeEscaper asUnicodeEscaper(Escaper escaper)
UnicodeEscaper equivalent to the given escaper instance. If the escaper is
already a UnicodeEscaper then it is simply returned, otherwise it is wrapped in a
UnicodeEscaper.
When a CharEscaper escaper is wrapped by this method it acquires extra behavior with
respect to the well-formedness of Unicode character sequences and will throw IllegalArgumentException when given bad input.
escaper - the instance to be wrappedjava.lang.NullPointerException - if escaper is nulljava.lang.IllegalArgumentException - if escaper is not a UnicodeEscaper or a CharEscaper@CheckForNull public static java.lang.String computeReplacement(CharEscaper escaper, char c)
null if no replacement should be made. This method is intended for use in tests through the
EscaperAsserts class; production users of CharEscaper should limit themselves
to its public interface.c - the character to escape if necessarynull if no escaping was needed@CheckForNull public static java.lang.String computeReplacement(UnicodeEscaper escaper, int cp)
null if no replacement should be made. This method is intended for use in tests through the
EscaperAsserts class; production users of UnicodeEscaper should limit
themselves to its public interface.cp - the Unicode code point to escape if necessarynull if no escaping was needed@CheckForNull
private static java.lang.String stringOrNull(@CheckForNull
char[] in)
private static UnicodeEscaper wrap(CharEscaper escaper)