Package com.google.common.escape
Class Escapers
java.lang.Object
com.google.common.escape.Escapers
Static utility methods pertaining to
Escaper instances.- Since:
- 15.0
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classA builder for simple, fast escapers. -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) static UnicodeEscaperasUnicodeEscaper(Escaper escaper) Returns aUnicodeEscaperequivalent to the given escaper instance.static Escapers.Builderbuilder()Returns a builder for creating simple, fast escapers.static StringcomputeReplacement(CharEscaper escaper, char c) Returns a string that would replace the given character in the specified escaper, ornullif no replacement should be made.static StringcomputeReplacement(UnicodeEscaper escaper, int cp) Returns a string that would replace the given character in the specified escaper, ornullif no replacement should be made.static EscaperReturns anEscaperthat does no escaping, passing all character data through unchanged.private static StringstringOrNull(char[] in) private static UnicodeEscaperwrap(CharEscaper escaper) Private helper to wrap a CharEscaper as a UnicodeEscaper.
-
Field Details
-
NULL_ESCAPER
-
-
Constructor Details
-
Escapers
private Escapers()
-
-
Method Details
-
nullEscaper
Returns anEscaperthat does no escaping, passing all character data through unchanged. -
builder
Returns a builder for creating simple, fast escapers. A builder instance can be reused and each escaper that is created will be a snapshot of the current builder state. Builders are not thread safe.The initial state of the builder is such that:
- There are no replacement mappings
safeMin == Character.MIN_VALUEsafeMax == Character.MAX_VALUEunsafeReplacement == null
For performance reasons escapers created by this builder are not Unicode aware and will not validate the well-formedness of their input.
-
asUnicodeEscaper
Returns aUnicodeEscaperequivalent 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
CharEscaperescaper is wrapped by this method it acquires extra behavior with respect to the well-formedness of Unicode character sequences and will throwIllegalArgumentExceptionwhen given bad input.- Parameters:
escaper- the instance to be wrapped- Returns:
- a UnicodeEscaper with the same behavior as the given instance
- Throws:
NullPointerException- if escaper is nullIllegalArgumentException- if escaper is not a UnicodeEscaper or a CharEscaper
-
computeReplacement
Returns a string that would replace the given character in the specified escaper, ornullif no replacement should be made. This method is intended for use in tests through theEscaperAssertsclass; production users ofCharEscapershould limit themselves to its public interface.- Parameters:
c- the character to escape if necessary- Returns:
- the replacement string, or
nullif no escaping was needed
-
computeReplacement
Returns a string that would replace the given character in the specified escaper, ornullif no replacement should be made. This method is intended for use in tests through theEscaperAssertsclass; production users ofUnicodeEscapershould limit themselves to its public interface.- Parameters:
cp- the Unicode code point to escape if necessary- Returns:
- the replacement string, or
nullif no escaping was needed
-
stringOrNull
-
wrap
Private helper to wrap a CharEscaper as a UnicodeEscaper.
-