class JSONParser
extends java.lang.Object
Parser for JSON objects.
Supports all types described at www.json.org, except for numbers with "e" or "E" in them.
Modifier and Type | Field and Description |
---|---|
(package private) BSONCallback |
_callback |
(package private) int |
pos |
(package private) java.lang.String |
s |
Constructor and Description |
---|
JSONParser(java.lang.String s)
Create a new parser.
|
JSONParser(java.lang.String s,
BSONCallback callback)
Create a new parser.
|
Modifier and Type | Method and Description |
---|---|
boolean |
check(char ch)
Checks the current character, making sure that it is the expected character.
|
protected void |
doCallback(java.lang.String name,
java.lang.Object value) |
char |
get()
Returns the current character.
|
java.lang.Object |
parse()
Parse an unknown type.
|
protected java.lang.Object |
parse(java.lang.String name)
Parse an unknown type.
|
java.lang.Object |
parseArray()
Parses the next array.
|
protected java.lang.Object |
parseArray(java.lang.String name)
Parses the next array.
|
void |
parseExponent()
Advances the pointer through the exponent.
|
void |
parseFraction()
Advances the pointed through .digits.
|
java.lang.Number |
parseNumber()
Parses a number.
|
java.lang.Object |
parseObject()
Parses an object for the form {} and { members }.
|
protected java.lang.Object |
parseObject(java.lang.String name)
Parses an object for the form {} and { members }.
|
java.lang.String |
parseString(boolean needQuote)
Parses a string.
|
char |
read() |
void |
read(char ch)
Read the current character, making sure that it is the expected character.
|
void |
readHex()
Read the current character, making sure that it is a hexidecimal character.
|
void |
skipWS()
Advances the position in the string past any whitespace.
|
final java.lang.String s
int pos
final BSONCallback _callback
public JSONParser(java.lang.String s)
public JSONParser(java.lang.String s, BSONCallback callback)
public java.lang.Object parse()
JSONParseException
- if invalid JSON is foundprotected java.lang.Object parse(java.lang.String name)
JSONParseException
- if invalid JSON is foundpublic java.lang.Object parseObject()
JSONParseException
- if invalid JSON is foundprotected java.lang.Object parseObject(java.lang.String name)
JSONParseException
- if invalid JSON is foundprotected void doCallback(java.lang.String name, java.lang.Object value)
public void read(char ch)
ch
- the character expectedJSONParseException
- if the current character does not match the given characterpublic char read()
public void readHex()
JSONParseException
- if the current character is not a hexidecimal characterpublic boolean check(char ch)
ch
- the character expectedJSONParseException
- if the current character does not match the given characterpublic void skipWS()
public char get()
public java.lang.String parseString(boolean needQuote)
JSONParseException
- if invalid JSON is foundpublic java.lang.Number parseNumber()
JSONParseException
- if invalid JSON is foundpublic void parseFraction()
public void parseExponent()
public java.lang.Object parseArray()
JSONParseException
- if invalid JSON is foundprotected java.lang.Object parseArray(java.lang.String name)
JSONParseException
- if invalid JSON is found