test_class.declarator: parser
test_class.modifier: private
test_class.original_string: private JsonParser  parser;
test_class.type: JsonParser
test_class.var_name: parser
test_class.declarator: handler
test_class.modifier: private
test_class.original_string: private JsonHandler handler;
test_class.type: JsonHandler
test_class.var_name: handler
test_class.file: everrest-core/src/test/java/org/everrest/core/impl/provider/json/JsonParserTest.java
test_class.identifier: JsonParserTest
test_case.body: @Test(expected = JsonException.class)
      public void failsWhenMultiLineCommentIsNotEndedProperly() throws Exception {
          String jsonString = "{\"foo\":" +
                              "/* comment\n" +
                              " continue comment\n" +
                              "\"bar\"}";
          parser.parse(new InputStreamReader(new ByteArrayInputStream(jsonString.getBytes())));
      }
test_case.class_method_signature: JsonParserTest.failsWhenMultiLineCommentIsNotEndedProperly()
test_case.full_signature: @Test(expected = JsonException.class) public void failsWhenMultiLineCommentIsNotEndedProperly()
test_case.identifier: failsWhenMultiLineCommentIsNotEndedProperly
test_case.invocations: parse getBytes
test_case.modifiers: @Test(expected = JsonException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void failsWhenMultiLineCommentIsNotEndedProperly()
focal_class.declarator: END_OF_STREAM = 0
focal_class.modifier: private static final
focal_class.original_string: private static final int END_OF_STREAM = 0;
focal_class.type: int
focal_class.var_name: END_OF_STREAM
focal_class.declarator: eventHandler
focal_class.modifier: private final
focal_class.original_string: private final JsonHandler eventHandler;
focal_class.type: JsonHandler
focal_class.var_name: eventHandler
focal_class.declarator: stack
focal_class.modifier: private final
focal_class.original_string: private final JsonStack<JsonToken> stack;
focal_class.type: JsonStack<JsonToken>
focal_class.var_name: stack
focal_class.declarator: pushbackReader
focal_class.modifier: private
focal_class.original_string: private PushbackReader pushbackReader;
focal_class.type: PushbackReader
focal_class.var_name: pushbackReader
focal_class.file: everrest-core/src/main/java/org/everrest/core/impl/provider/json/JsonParser.java
focal_class.identifier: JsonParser
focal_class.class_method_signature: JsonParser.JsonParser()
focal_class.full_signature: public  JsonParser()
focal_class.identifier: JsonParser
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  JsonParser()
focal_class.class_method_signature: JsonParser.JsonParser(JsonHandler eventHandler)
focal_class.full_signature: protected  JsonParser(JsonHandler eventHandler)
focal_class.identifier: JsonParser
focal_class.modifiers: protected
focal_class.parameters: (JsonHandler eventHandler)
focal_class.signature:  JsonParser(JsonHandler eventHandler)
focal_class.class_method_signature: JsonParser.parse(Reader reader)
focal_class.full_signature: public void parse(Reader reader)
focal_class.identifier: parse
focal_class.modifiers: public
focal_class.parameters: (Reader reader)
focal_class.return: void
focal_class.signature: void parse(Reader reader)
focal_class.class_method_signature: JsonParser.parse(InputStream stream)
focal_class.full_signature: public void parse(InputStream stream)
focal_class.identifier: parse
focal_class.modifiers: public
focal_class.parameters: (InputStream stream)
focal_class.return: void
focal_class.signature: void parse(InputStream stream)
focal_class.class_method_signature: JsonParser.getJsonObject()
focal_class.full_signature: public JsonValue getJsonObject()
focal_class.identifier: getJsonObject
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: JsonValue
focal_class.signature: JsonValue getJsonObject()
focal_class.class_method_signature: JsonParser.readObject()
focal_class.full_signature: private void readObject()
focal_class.identifier: readObject
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void readObject()
focal_class.class_method_signature: JsonParser.endObject()
focal_class.full_signature: private void endObject()
focal_class.identifier: endObject
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void endObject()
focal_class.class_method_signature: JsonParser.startObject()
focal_class.full_signature: private void startObject()
focal_class.identifier: startObject
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void startObject()
focal_class.class_method_signature: JsonParser.readArray()
focal_class.full_signature: private void readArray()
focal_class.identifier: readArray
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void readArray()
focal_class.class_method_signature: JsonParser.startArray()
focal_class.full_signature: private void startArray()
focal_class.identifier: startArray
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void startArray()
focal_class.class_method_signature: JsonParser.endArray()
focal_class.full_signature: private void endArray()
focal_class.identifier: endArray
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void endArray()
focal_class.class_method_signature: JsonParser.readKey()
focal_class.full_signature: private void readKey()
focal_class.identifier: readKey
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void readKey()
focal_class.class_method_signature: JsonParser.readValue()
focal_class.full_signature: private void readValue()
focal_class.identifier: readValue
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void readValue()
focal_class.class_method_signature: JsonParser.next()
focal_class.full_signature: private char next()
focal_class.identifier: next
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: char
focal_class.signature: char next()
focal_class.class_method_signature: JsonParser.skipLine()
focal_class.full_signature: private void skipLine()
focal_class.identifier: skipLine
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void skipLine()
focal_class.class_method_signature: JsonParser.skipComment()
focal_class.full_signature: private void skipComment()
focal_class.identifier: skipComment
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void skipComment()
focal_class.class_method_signature: JsonParser.nextAny()
focal_class.full_signature: private char nextAny()
focal_class.identifier: nextAny
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: char
focal_class.signature: char nextAny()
focal_class.class_method_signature: JsonParser.assertNextIs(char expectedCharacter)
focal_class.full_signature: private char assertNextIs(char expectedCharacter)
focal_class.identifier: assertNextIs
focal_class.modifiers: private
focal_class.parameters: (char expectedCharacter)
focal_class.return: char
focal_class.signature: char assertNextIs(char expectedCharacter)
focal_class.class_method_signature: JsonParser.assertNextIs(String expectedCharacters)
focal_class.full_signature: private char assertNextIs(String expectedCharacters)
focal_class.identifier: assertNextIs
focal_class.modifiers: private
focal_class.parameters: (String expectedCharacters)
focal_class.return: char
focal_class.signature: char assertNextIs(String expectedCharacters)
focal_class.class_method_signature: JsonParser.nextString()
focal_class.full_signature: private char[] nextString()
focal_class.identifier: nextString
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: char[]
focal_class.signature: char[] nextString()
focal_class.class_method_signature: JsonParser.readUnicodeCharacter()
focal_class.full_signature: private char readUnicodeCharacter()
focal_class.identifier: readUnicodeCharacter
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: char
focal_class.signature: char readUnicodeCharacter()
focal_class.class_method_signature: JsonParser.pushBack(char c)
focal_class.full_signature: private void pushBack(char c)
focal_class.identifier: pushBack
focal_class.modifiers: private
focal_class.parameters: (char c)
focal_class.return: void
focal_class.signature: void pushBack(char c)
focal_method.body: public void parse(Reader reader) throws JsonException {
          pushbackReader = new PushbackReader(reader);
          eventHandler.reset();
          stack.clear();
          char c;
          while ((c = next()) != END_OF_STREAM) {
              if (c == '{') {
                  readObject();
              } else if (c == '[') {
                  readArray();
              } else {
                  throw new JsonException(String.format("Syntax error. Unexpected '%s'. Must be '{'.", c));
              }
              c = assertNextIs(",]}");
              if (c != END_OF_STREAM) {
                  pushBack(c);
              }
          }
          if (!stack.isEmpty()) {
              throw new JsonException("Syntax error. Missing one or more close bracket(s).");
          }
      }
focal_method.class_method_signature: JsonParser.parse(Reader reader)
focal_method.full_signature: public void parse(Reader reader)
focal_method.identifier: parse
focal_method.invocations: reset clear next readObject readArray format assertNextIs pushBack isEmpty
focal_method.modifiers: public
focal_method.parameters: (Reader reader)
focal_method.return: void
focal_method.signature: void parse(Reader reader)