rawsql-ts
Version:
[beta]High-performance SQL parser and AST analyzer written in TypeScript. Provides fast parsing and advanced transformation capabilities.
24 lines • 936 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ParameterExpressionParser = void 0;
const ValueComponent_1 = require("../models/ValueComponent");
class ParameterExpressionParser {
static parseFromLexeme(lexemes, index) {
let idx = index;
let paramName = lexemes[idx].value;
// Normalize parameter: Remove the parameter symbol and extract the parameter name.
if (paramName.startsWith('${') && paramName.endsWith('}')) {
// ${name} → name
paramName = paramName.slice(2, -1);
}
else {
// :name → name
paramName = paramName.slice(1);
}
const value = new ValueComponent_1.ParameterExpression(paramName);
idx++;
return { value, newIndex: idx };
}
}
exports.ParameterExpressionParser = ParameterExpressionParser;
//# sourceMappingURL=ParameterExpressionParser.js.map
;