Class Ek9Lexer

java.lang.Object
org.antlr.v4.runtime.Recognizer<Integer,org.antlr.v4.runtime.atn.LexerATNSimulator>
org.antlr.v4.runtime.Lexer
org.ek9lang.antlr.EK9LexerRules
org.ek9lang.compiler.tokenizer.Ek9Lexer
All Implemented Interfaces:
org.antlr.v4.runtime.TokenSource, LexerPlugin

public class Ek9Lexer extends EK9LexerRules implements LexerPlugin
Original good for python but too pythonesque for EK9 - needed reworking to remove # comment and tabs for indenting. EK9 only allows spaces for indents.
  • Field Details Link icon

  • Constructor Details Link icon

    • Ek9Lexer Link icon

      public Ek9Lexer(org.antlr.v4.runtime.CharStream input, int indentToken, int dedentToken)
      Create a lexer for an input with specific indent and dedent tokens.
  • Method Details Link icon

    • getSourceName Link icon

      public String getSourceName()
      Specified by:
      getSourceName in interface org.antlr.v4.runtime.TokenSource
      Overrides:
      getSourceName in class org.antlr.v4.runtime.Lexer
    • setSourceName Link icon

      public Ek9Lexer setSourceName(String sourceName)
    • setTokenListener Link icon

      public void setTokenListener(TokenConsumptionListener tokenListener)
    • getIndentToken Link icon

      public int getIndentToken()
      Specified by:
      getIndentToken in interface LexerPlugin
    • getDedentToken Link icon

      public int getDedentToken()
      Specified by:
      getDedentToken in interface LexerPlugin
    • getSymbolicName Link icon

      public String getSymbolicName(int tokenType)
      Specified by:
      getSymbolicName in interface LexerPlugin
    • nextToken Link icon

      public org.antlr.v4.runtime.Token nextToken()
      Specified by:
      nextToken in interface org.antlr.v4.runtime.TokenSource
      Overrides:
      nextToken in class org.antlr.v4.runtime.Lexer
    • setPrintTokensAsSupplied Link icon

      public Ek9Lexer setPrintTokensAsSupplied(boolean printTokensAsSupplied)
    • popMode Link icon

      public int popMode()
      Overrides:
      popMode in class org.antlr.v4.runtime.Lexer
    • isRegexPossible Link icon

      protected boolean isRegexPossible()
      Overrides:
      isRegexPossible in class EK9LexerRules