Class GQLTokenizer
- java.lang.Object
-
- java.io.Reader
-
- net.morimekta.util.io.LineBufferedReader
-
- net.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
- net.morimekta.providence.graphql.parser.GQLTokenizer
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,java.lang.Readable,net.morimekta.util.lexer.Tokenizer<GQLTokenType,GQLToken>
public class GQLTokenizer extends net.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
-
Constructor Summary
Constructors Constructor Description GQLTokenizer(java.io.Reader in)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanallowIdentifier(int last)protected GQLTokengenericToken(char[] buffer, int offset, int len, GQLTokenType type, int lineNo, int linePos)protected booleanidentifierSeparator(int last)protected GQLTokenidentifierToken(char[] buffer, int offset, int len, int lineNo, int linePos)protected GQLTokennextSymbol()protected GQLTokennumberToken(char[] buffer, int offset, int len, int lineNo, int linePos)protected booleanstartIdentifier()protected booleanstartNumber()protected GQLTokenstringToken(char[] buffer, int offset, int len, int lineNo, int linePos)protected GQLTokensymbolToken(char[] buffer, int offset, int len, int lineNo, int linePos)-
Methods inherited from class net.morimekta.util.lexer.TokenizerBase
currentLine, currentLineNo, currentLinePos, eofFailure, failure, isWhitespace, parseNextToken, readUntil, startString, startSymbol, toString
-
Methods inherited from class net.morimekta.util.io.LineBufferedReader
close, getLine, getLineNo, getLinePos, getRemainingLines, getRestOfLine, maybeConsolidateBuffer, read, read, readNextChar
-
-
-
-
Method Detail
-
genericToken
protected GQLToken genericToken(char[] buffer, int offset, int len, @Nonnull GQLTokenType type, int lineNo, int linePos)
- Specified by:
genericTokenin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
identifierToken
protected GQLToken identifierToken(char[] buffer, int offset, int len, int lineNo, int linePos)
- Specified by:
identifierTokenin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
stringToken
protected GQLToken stringToken(char[] buffer, int offset, int len, int lineNo, int linePos)
- Specified by:
stringTokenin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
numberToken
protected GQLToken numberToken(char[] buffer, int offset, int len, int lineNo, int linePos)
- Specified by:
numberTokenin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
symbolToken
protected GQLToken symbolToken(char[] buffer, int offset, int len, int lineNo, int linePos)
- Specified by:
symbolTokenin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
startNumber
protected boolean startNumber()
- Overrides:
startNumberin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
startIdentifier
protected boolean startIdentifier()
- Overrides:
startIdentifierin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
allowIdentifier
protected boolean allowIdentifier(int last)
- Overrides:
allowIdentifierin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
identifierSeparator
protected boolean identifierSeparator(int last)
- Overrides:
identifierSeparatorin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>
-
nextSymbol
@Nonnull protected GQLToken nextSymbol() throws java.io.IOException
- Overrides:
nextSymbolin classnet.morimekta.util.lexer.TokenizerBase<GQLTokenType,GQLToken>- Throws:
java.io.IOException
-
-