Class CaseChangingCharStream

java.lang.Object
org.elasticsearch.xpack.esql.parser.CaseChangingCharStream
All Implemented Interfaces:
org.antlr.v4.runtime.CharStream, org.antlr.v4.runtime.IntStream

public class CaseChangingCharStream extends Object implements org.antlr.v4.runtime.CharStream
This class supports case-insensitive lexing by wrapping an existing CharStream and forcing the lexer to see lowercase characters Grammar literals should then be lower case such as begin. The text of the character stream is unaffected.

Example: input BeGiN would match lexer rule begin but CharStream.getText(org.antlr.v4.runtime.misc.Interval) will return BeGiN.

  • Constructor Details

    • CaseChangingCharStream

      public CaseChangingCharStream(org.antlr.v4.runtime.CharStream stream)
      Constructs a new CaseChangingCharStream wrapping the given CharStream forcing all characters to upper case or lower case.
      Parameters:
      stream - The stream to wrap.
  • Method Details

    • getText

      public String getText(org.antlr.v4.runtime.misc.Interval interval)
      Specified by:
      getText in interface org.antlr.v4.runtime.CharStream
    • consume

      public void consume()
      Specified by:
      consume in interface org.antlr.v4.runtime.IntStream
    • LA

      public int LA(int i)
      Specified by:
      LA in interface org.antlr.v4.runtime.IntStream
    • mark

      public int mark()
      Specified by:
      mark in interface org.antlr.v4.runtime.IntStream
    • release

      public void release(int marker)
      Specified by:
      release in interface org.antlr.v4.runtime.IntStream
    • index

      public int index()
      Specified by:
      index in interface org.antlr.v4.runtime.IntStream
    • seek

      public void seek(int index)
      Specified by:
      seek in interface org.antlr.v4.runtime.IntStream
    • size

      public int size()
      Specified by:
      size in interface org.antlr.v4.runtime.IntStream
    • getSourceName

      public String getSourceName()
      Specified by:
      getSourceName in interface org.antlr.v4.runtime.IntStream