Class 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>
    • Field Summary

      • Fields inherited from class net.morimekta.util.lexer.TokenizerBase

        DEFAULT_BUFFER_SIZE
      • Fields inherited from class net.morimekta.util.io.LineBufferedReader

        buffer, bufferLimit, bufferLineEnd, bufferOffset, lastChar, lineNo, linePos, preLoaded, reader
      • Fields inherited from class java.io.Reader

        lock
    • Constructor Summary

      Constructors 
      Constructor Description
      GQLTokenizer​(java.io.Reader in)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected boolean allowIdentifier​(int last)  
      protected GQLToken genericToken​(char[] buffer, int offset, int len, GQLTokenType type, int lineNo, int linePos)  
      protected boolean identifierSeparator​(int last)  
      protected GQLToken identifierToken​(char[] buffer, int offset, int len, int lineNo, int linePos)  
      protected GQLToken nextSymbol()  
      protected GQLToken numberToken​(char[] buffer, int offset, int len, int lineNo, int linePos)  
      protected boolean startIdentifier()  
      protected boolean startNumber()  
      protected GQLToken stringToken​(char[] buffer, int offset, int len, int lineNo, int linePos)  
      protected GQLToken symbolToken​(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
      • Methods inherited from class java.io.Reader

        mark, markSupported, nullReader, read, read, ready, reset, skip, transferTo
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • GQLTokenizer

        public GQLTokenizer​(java.io.Reader in)
    • Method Detail

      • genericToken

        protected GQLToken genericToken​(char[] buffer,
                                        int offset,
                                        int len,
                                        @Nonnull
                                        GQLTokenType type,
                                        int lineNo,
                                        int linePos)
        Specified by:
        genericToken in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • identifierToken

        protected GQLToken identifierToken​(char[] buffer,
                                           int offset,
                                           int len,
                                           int lineNo,
                                           int linePos)
        Specified by:
        identifierToken in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • stringToken

        protected GQLToken stringToken​(char[] buffer,
                                       int offset,
                                       int len,
                                       int lineNo,
                                       int linePos)
        Specified by:
        stringToken in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • numberToken

        protected GQLToken numberToken​(char[] buffer,
                                       int offset,
                                       int len,
                                       int lineNo,
                                       int linePos)
        Specified by:
        numberToken in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • symbolToken

        protected GQLToken symbolToken​(char[] buffer,
                                       int offset,
                                       int len,
                                       int lineNo,
                                       int linePos)
        Specified by:
        symbolToken in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • startNumber

        protected boolean startNumber()
        Overrides:
        startNumber in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • startIdentifier

        protected boolean startIdentifier()
        Overrides:
        startIdentifier in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • allowIdentifier

        protected boolean allowIdentifier​(int last)
        Overrides:
        allowIdentifier in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • identifierSeparator

        protected boolean identifierSeparator​(int last)
        Overrides:
        identifierSeparator in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
      • nextSymbol

        @Nonnull
        protected GQLToken nextSymbol()
                               throws java.io.IOException
        Overrides:
        nextSymbol in class net.morimekta.util.lexer.TokenizerBase<GQLTokenType,​GQLToken>
        Throws:
        java.io.IOException