test_class.declarator: SHORTHAND_CONTROL_CHARACTERS = "\b\f\n\r\t"
test_class.modifier: private static final
test_class.original_string: private static final String SHORTHAND_CONTROL_CHARACTERS = "\b\f\n\r\t";
test_class.type: String
test_class.var_name: SHORTHAND_CONTROL_CHARACTERS
test_class.declarator: SHORTHAND_CONTROL_CHARACTER_NAMES = "bfnrt"
test_class.modifier: private static final
test_class.original_string: private static final String SHORTHAND_CONTROL_CHARACTER_NAMES = "bfnrt";
test_class.type: String
test_class.var_name: SHORTHAND_CONTROL_CHARACTER_NAMES
test_class.declarator: underTest
test_class.modifier: private
test_class.original_string: private JsonCharEscaper underTest;
test_class.type: JsonCharEscaper
test_class.var_name: underTest
test_class.file: json/src/test/java/org/eclipse/ditto/json/JsonCharEscaperTest.java
test_class.identifier: JsonCharEscaperTest
test_case.body: @Test
      public void escapeControlCharactersWithoutShorthands() {
          IntStream.range(0, 0x1F).forEach(character -> {
              if (SHORTHAND_CONTROL_CHARACTERS.chars().noneMatch(i -> i == character)) {
                  final String unicodeEscaped = underTest.apply(character);
                  assertThat(unicodeEscaped)
                          .describedAs("Do not escape character %s", Integer.toHexString(character))
                          .startsWith("\\u");
                  assertThat(Integer.parseInt(unicodeEscaped.substring(2), 16)).isEqualTo(character);
              }
          });
      }
test_case.class_method_signature: JsonCharEscaperTest.escapeControlCharactersWithoutShorthands()
test_case.full_signature: @Test public void escapeControlCharactersWithoutShorthands()
test_case.identifier: escapeControlCharactersWithoutShorthands
test_case.invocations: forEach range noneMatch chars apply startsWith describedAs assertThat toHexString isEqualTo assertThat parseInt substring
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void escapeControlCharactersWithoutShorthands()
focal_class.declarator: INSTANCE = new JsonCharEscaper()
focal_class.modifier: private static final
focal_class.original_string: private static final JsonCharEscaper INSTANCE = new JsonCharEscaper();
focal_class.type: JsonCharEscaper
focal_class.var_name: INSTANCE
focal_class.declarator: LAST_CONTROL_CHARACTER = 0x001F
focal_class.modifier: private static final
focal_class.original_string: private static final char LAST_CONTROL_CHARACTER = 0x001F;
focal_class.type: char
focal_class.var_name: LAST_CONTROL_CHARACTER
focal_class.declarator: LAST_ASCII = 0x7F
focal_class.modifier: private static final
focal_class.original_string: private static final char LAST_ASCII = 0x7F;
focal_class.type: char
focal_class.var_name: LAST_ASCII
focal_class.declarator: ESCAPE_TABLE = createEscapeTable()
focal_class.modifier: private static final
focal_class.original_string: private static final String[] ESCAPE_TABLE = createEscapeTable();
focal_class.type: String[]
focal_class.var_name: ESCAPE_TABLE
focal_class.file: json/src/main/java/org/eclipse/ditto/json/JsonCharEscaper.java
focal_class.identifier: JsonCharEscaper
focal_class.interfaces: implements Function<Integer, String>
focal_class.class_method_signature: JsonCharEscaper.JsonCharEscaper()
focal_class.full_signature: private  JsonCharEscaper()
focal_class.identifier: JsonCharEscaper
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.signature:  JsonCharEscaper()
focal_class.class_method_signature: JsonCharEscaper.getInstance()
focal_class.full_signature: public static JsonCharEscaper getInstance()
focal_class.identifier: getInstance
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: JsonCharEscaper
focal_class.signature: JsonCharEscaper getInstance()
focal_class.class_method_signature: JsonCharEscaper.apply(final Integer i)
focal_class.full_signature: @Nullable @Override public String apply(final Integer i)
focal_class.identifier: apply
focal_class.modifiers: @Nullable @Override public
focal_class.parameters: (final Integer i)
focal_class.return: String
focal_class.signature: String apply(final Integer i)
focal_class.class_method_signature: JsonCharEscaper.createEscapeTable()
focal_class.full_signature: private static String[] createEscapeTable()
focal_class.identifier: createEscapeTable
focal_class.modifiers: private static
focal_class.parameters: ()
focal_class.return: String[]
focal_class.signature: String[] createEscapeTable()
focal_class.class_method_signature: JsonCharEscaper.escapeAsUnicode(final int i)
focal_class.full_signature: private static String escapeAsUnicode(final int i)
focal_class.identifier: escapeAsUnicode
focal_class.modifiers: private static
focal_class.parameters: (final int i)
focal_class.return: String
focal_class.signature: String escapeAsUnicode(final int i)
focal_method.body: @Nullable
      @Override
      public String apply(final Integer i) {
          if (0 <= i && i < ESCAPE_TABLE.length) {
              return ESCAPE_TABLE[i];
          } else {
              // return null for higher characters which are valid unescaped.
              return null;
          }
      }
focal_method.class_method_signature: JsonCharEscaper.apply(final Integer i)
focal_method.full_signature: @Nullable @Override public String apply(final Integer i)
focal_method.identifier: apply
focal_method.modifiers: @Nullable @Override public
focal_method.parameters: (final Integer i)
focal_method.return: String
focal_method.signature: String apply(final Integer i)