Package groovy.json
Class JsonLexer
java.lang.Object
groovy.json.JsonLexer
- All Implemented Interfaces:
java.util.Iterator<JsonToken>
public class JsonLexer extends java.lang.Object implements java.util.Iterator<JsonToken>
The lexer reads JSON tokens in a streaming fashion from the underlying reader.
- Since:
- 1.8.0
-
Constructor Summary
Constructors Constructor Description JsonLexer(java.io.Reader reader)
Instantiates a lexer with a reader from which to read JSON tokens. -
Method Summary
Modifier and Type Method Description LineColumnReader
getReader()
Underlying reader from which to read the JSON tokens.boolean
hasNext()
Iterator method to know if another token follows, or if we've reached the end of the stream.JsonToken
next()
Iterator method to get the next token of the stream.JsonToken
nextToken()
void
remove()
Method not implemented.int
skipWhitespace()
Skips all the whitespace characters and moves the cursor to the next non-space character.static java.lang.String
unescape(java.lang.String input)
Replace unicode escape and other control characters with real charactersMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Iterator
forEachRemaining
-
Constructor Details
-
JsonLexer
public JsonLexer(java.io.Reader reader)Instantiates a lexer with a reader from which to read JSON tokens. Under the hood, the reader is wrapped in aLineColumnReader
, for line and column information, unless it's already an instance of that class.- Parameters:
reader
- underlying reader
-
-
Method Details
-
getReader
Underlying reader from which to read the JSON tokens. This reader is an instance ofLineColumnReader
, to keep track of line and column positions. -
nextToken
- Returns:
- the next token from the stream
-
unescape
public static java.lang.String unescape(java.lang.String input)Replace unicode escape and other control characters with real characters- Parameters:
input
- text- Returns:
- input text without the escaping
-
skipWhitespace
public int skipWhitespace()Skips all the whitespace characters and moves the cursor to the next non-space character. -
hasNext
public boolean hasNext()Iterator method to know if another token follows, or if we've reached the end of the stream.- Specified by:
hasNext
in interfacejava.util.Iterator<JsonToken>
- Returns:
- true if there are more tokens
-
next
Iterator method to get the next token of the stream.- Specified by:
next
in interfacejava.util.Iterator<JsonToken>
- Returns:
- the next token
-
remove
public void remove()Method not implemented.- Specified by:
remove
in interfacejava.util.Iterator<JsonToken>
- Throws:
java.lang.UnsupportedOperationException
-