Class StringEscapeUtils.OctalUnescaper

java.lang.Object
com.github.javaparser.utils.StringEscapeUtils.CharSequenceTranslator
com.github.javaparser.utils.StringEscapeUtils.OctalUnescaper
Enclosing class:
StringEscapeUtils

private static class StringEscapeUtils.OctalUnescaper extends StringEscapeUtils.CharSequenceTranslator
Adapted from apache commons-lang3 project.

Translate escaped octal Strings back to their octal values.

For example, "\45" should go back to being the specific value (a %).

Note that this currently only supports the viable range of octal for Java; namely 1 to 377. This is because parsing Java is the main use case.

Since:
3.0
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    private
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private boolean
    isOctalDigit(char ch)
    Checks if the given char is an octal digit.
    private boolean
    isZeroToThree(char ch)
    Checks if the given char is the character representation of one of the digit from 0 to 3.
    protected int
    translate(CharSequence input, int index, Writer out)
    Translate a set of codepoints, represented by an int index into a CharSequence, into another set of codepoints.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • OctalUnescaper

      private OctalUnescaper()
  • Method Details

    • translate

      protected int translate(CharSequence input, int index, Writer out) throws IOException
      Translate a set of codepoints, represented by an int index into a CharSequence, into another set of codepoints. The number of codepoints consumed must be returned, and the only IOExceptions thrown must be from interacting with the Writer so that the top level API may reliably ignore StringWriter IOExceptions.
      Specified by:
      translate in class StringEscapeUtils.CharSequenceTranslator
      Parameters:
      input - CharSequence that is being translated
      index - int representing the current point of translation
      out - Writer to translate the text to
      Returns:
      int count of codepoints consumed
      Throws:
      IOException - if and only if the Writer produces an IOException
    • isOctalDigit

      private boolean isOctalDigit(char ch)
      Checks if the given char is an octal digit. Octal digits are the character representations of the digits 0 to 7.
      Parameters:
      ch - the char to check
      Returns:
      true if the given char is the character representation of one of the digits from 0 to 7
    • isZeroToThree

      private boolean isZeroToThree(char ch)
      Checks if the given char is the character representation of one of the digit from 0 to 3.
      Parameters:
      ch - the char to check
      Returns:
      true if the given char is the character representation of one of the digits from 0 to 3