UNPKG

rawsql-ts

Version:

[beta]High-performance SQL parser and AST analyzer written in TypeScript. Provides fast parsing and advanced transformation capabilities.

23 lines 1.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.JoinUsingClauseParser = void 0; const Clause_1 = require("../models/Clause"); const Lexeme_1 = require("../models/Lexeme"); const ValueParser_1 = require("./ValueParser"); class JoinUsingClauseParser { static tryParse(lexemes, index) { let idx = index; if (idx < lexemes.length && lexemes[idx].value === 'using') { idx++; // Skip 'using' keyword // Parse the columns in parentheses const result = ValueParser_1.ValueParser.parseArgument(Lexeme_1.TokenType.OpenParen, Lexeme_1.TokenType.CloseParen, lexemes, idx); const usingColumns = result.value; idx = result.newIndex; const joinUsing = new Clause_1.JoinUsingClause(usingColumns); return { value: joinUsing, newIndex: idx }; } return null; } } exports.JoinUsingClauseParser = JoinUsingClauseParser; //# sourceMappingURL=JoinUsingClauseParser.js.map