Package org.eclipse.xtext.util
Class JavaStringConverter
- java.lang.Object
-
- org.eclipse.xtext.util.JavaStringConverter
-
public class JavaStringConverter extends java.lang.ObjectReusable and customizable implementation of the method pairStrings.convertToJavaString(String)andStrings.convertFromJavaString(String, boolean).- Since:
- 2.16
-
-
Constructor Summary
Constructors Constructor Description JavaStringConverter()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidappendRegion(java.lang.String string, int fromInclusive, int toExclusive, java.lang.StringBuilder result)java.lang.StringconvertFromJavaString(java.lang.String string, boolean useUnicode)Resolve Java control character sequences to the actual character value.protected java.lang.StringconvertFromJavaString(java.lang.String string, boolean useUnicode, int index, java.lang.StringBuilder result)java.lang.StringconvertToJavaString(java.lang.String theString)Escapes control characters with a preceding backslash.java.lang.StringconvertToJavaString(java.lang.String input, boolean useUnicode)Escapes control characters with a preceding backslash.static booleandoIsHexSequence(char[] in, int off, int chars)static booleandoIsHexSequence(java.lang.String in, int off, int chars)protected intdoUnescapeCharAndAppendTo(java.lang.String string, boolean useUnicode, int index, java.lang.StringBuilder result)protected voidescapeAndAppendTo(char c, boolean useUnicode, java.lang.StringBuilder result)protected inthandleInvalidUnicodeEscapeSequence(java.lang.String string, int index, java.lang.StringBuilder result)protected inthandleUnknownEscapeSequence(java.lang.String string, char c, boolean useUnicode, int index, java.lang.StringBuilder result)static booleanisHex(char c)protected booleanisHexSequence(char[] in, int off, int chars)protected booleanisHexSequence(java.lang.String in, int off, int chars)protected booleanisInvalidUnicodeEscapeSequence(java.lang.String string, int index)Return true if the chars starting at index do not appear to be a unicode escape sequence (without the leading backslash u}.protected booleanmustEncodeAsEscapeSequence(char next)chartoHex(int i)protected intunescapeCharAndAppendTo(java.lang.String string, boolean useUnicode, int index, java.lang.StringBuilder result)protected intunescapeUnicodeSequence(java.lang.String string, int index, java.lang.StringBuilder result)protected booleanvalidate(char c, java.lang.StringBuilder result)protected voidvalidateAndAppendChar(char c, java.lang.StringBuilder result)protected booleanvalidateRegion(java.lang.String string, int fromInclusive, int toExclusive, java.lang.StringBuilder result)
-
-
-
Method Detail
-
convertFromJavaString
public java.lang.String convertFromJavaString(java.lang.String string, boolean useUnicode)Resolve Java control character sequences to the actual character value. Optionally handle unicode escape sequences, too.
-
appendRegion
protected void appendRegion(java.lang.String string, int fromInclusive, int toExclusive, java.lang.StringBuilder result)
-
validateRegion
protected boolean validateRegion(java.lang.String string, int fromInclusive, int toExclusive, java.lang.StringBuilder result)
-
convertFromJavaString
protected java.lang.String convertFromJavaString(java.lang.String string, boolean useUnicode, int index, java.lang.StringBuilder result)
-
unescapeCharAndAppendTo
protected int unescapeCharAndAppendTo(java.lang.String string, boolean useUnicode, int index, java.lang.StringBuilder result)
-
validateAndAppendChar
protected void validateAndAppendChar(char c, java.lang.StringBuilder result)
-
validate
protected boolean validate(char c, java.lang.StringBuilder result)
-
doUnescapeCharAndAppendTo
protected int doUnescapeCharAndAppendTo(java.lang.String string, boolean useUnicode, int index, java.lang.StringBuilder result)
-
handleUnknownEscapeSequence
protected int handleUnknownEscapeSequence(java.lang.String string, char c, boolean useUnicode, int index, java.lang.StringBuilder result)
-
unescapeUnicodeSequence
protected int unescapeUnicodeSequence(java.lang.String string, int index, java.lang.StringBuilder result)
-
isInvalidUnicodeEscapeSequence
protected boolean isInvalidUnicodeEscapeSequence(java.lang.String string, int index)Return true if the chars starting at index do not appear to be a unicode escape sequence (without the leading backslash u}.
-
handleInvalidUnicodeEscapeSequence
protected int handleInvalidUnicodeEscapeSequence(java.lang.String string, int index, java.lang.StringBuilder result)
-
convertToJavaString
public java.lang.String convertToJavaString(java.lang.String theString)
Escapes control characters with a preceding backslash. Encodes special chars as unicode escape sequence. The resulting string is safe to be put into a Java string literal between the quotes.
-
convertToJavaString
public java.lang.String convertToJavaString(java.lang.String input, boolean useUnicode)Escapes control characters with a preceding backslash. Optionally encodes special chars as unicode escape sequence. The resulting string is safe to be put into a Java string literal between the quotes.
-
escapeAndAppendTo
protected void escapeAndAppendTo(char c, boolean useUnicode, java.lang.StringBuilder result)
-
mustEncodeAsEscapeSequence
protected boolean mustEncodeAsEscapeSequence(char next)
-
toHex
public char toHex(int i)
-
isHexSequence
protected boolean isHexSequence(java.lang.String in, int off, int chars)
-
doIsHexSequence
public static boolean doIsHexSequence(java.lang.String in, int off, int chars)
-
isHexSequence
protected boolean isHexSequence(char[] in, int off, int chars)
-
doIsHexSequence
public static boolean doIsHexSequence(char[] in, int off, int chars)
-
isHex
public static boolean isHex(char c)
-
-