The original slurper and lexer use this class. This is kept around in case someone needs its exact behavior. Enum listing all the possible JSON tokens that should be recognized by the lexer.
Enum constant | Description |
---|---|
CLOSE_BRACKET |
|
CLOSE_CURLY |
|
COLON |
|
COMMA |
|
FALSE |
|
NULL |
|
NUMBER |
|
OPEN_BRACKET |
|
OPEN_CURLY |
|
STRING |
Original pattern throws the StackOverflowError for long strings with backslashes. |
TRUE |
Type Params | Return Type | Name and description |
---|---|---|
|
boolean |
doCall(String it) |
|
String |
getLabel() |
|
Object |
getValidator() |
|
boolean |
matching(String input) Tells if an input string matches a token. |
|
static JsonTokenType |
startingWith(char c) Find which JSON value might be starting with a given character |
Original pattern throws the StackOverflowError for long strings with backslashes. So it is replaced by a 2-step approach inspired from json2.js sources: https://github.com/douglascrockford/JSON-js/blob/master/json2.js#L462 See JsonTokenTypeTest#testMatchingLongStringWithBackslashes() for details.
Tells if an input string matches a token.
input
- the input string to matchMatching
enum value:
YES
if this is an exact match,
POSSIBLE
if more characters could turn the input string into a valid token,
or NO
if the string cannot possibly match the pattern even with more characters to read.Find which JSON value might be starting with a given character
c
- the characterCopyright © 2003-2020 The Apache Software Foundation. All rights reserved.