Class TrinoSqlParser

Object
gudusoft.gsqlparser.parser.TrinoSqlParser
All Implemented Interfaces:
SqlParser

public class TrinoSqlParser extends Object implements SqlParser
Trino SQL parser implementation.

Implementation Status: DELEGATION PHASE

  • Current: Delegates to legacy TGSqlParser
  • Future: Will extract Trino-specific logic incrementally
Since:
3.2.0.0
See Also:
  • Constructor Details

  • Method Details

    • getVendor

      public EDbVendor getVendor()
      Description copied from interface: SqlParser
      Get the database vendor this parser handles.
      Specified by:
      getVendor in interface SqlParser
      Returns:
      the database vendor (e.g., dbvoracle, dbvmysql)
    • parse

      Description copied from interface: SqlParser
      Parse SQL from the given context.

      This method performs full parsing including:

      • Tokenization (lexical analysis)
      • Syntax analysis (building parse tree)
      • Semantic analysis (resolving references)

      All inputs come from the context parameter, all outputs go to the result. This ensures clean separation of concerns and thread-safety.

      Specified by:
      parse in interface SqlParser
      Parameters:
      context - immutable context containing all parser inputs (SQL text, options, callbacks, etc.)
      Returns:
      immutable result containing all parser outputs (statements, tokens, errors, etc.)
    • tokenize

      Description copied from interface: SqlParser
      Tokenize SQL without parsing or statement extraction.

      This method performs only tokenization (lexical analysis):

      • Tokenization (lexical analysis)

      The result contains tokens but NO statements. Use this when you only need the token stream (e.g., for syntax highlighting, token analysis).

      For statement boundaries without full parsing, use SqlParser.getrawsqlstatements(ParserContext).

      Specified by:
      tokenize in interface SqlParser
      Parameters:
      context - immutable context containing all parser inputs
      Returns:
      immutable result containing tokens only (no statements)
    • toString

      public String toString()
      Overrides:
      toString in class Object