@sequeljs/ast
Version:
A SQL AST manager for JavaScript
46 lines • 1.53 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const And_1 = require("../nodes/And");
const False_1 = require("../nodes/False");
const Grouping_1 = require("../nodes/Grouping");
const InnerJoin_1 = require("../nodes/InnerJoin");
const NamedSQLFunction_1 = require("../nodes/NamedSQLFunction");
const On_1 = require("../nodes/On");
const StringJoin_1 = require("../nodes/StringJoin");
const TableAlias_1 = require("../nodes/TableAlias");
const True_1 = require("../nodes/True");
const buildQuoted_1 = require("../nodes/buildQuoted");
class FactoryMethods {
coalesce(...exprs) {
return new NamedSQLFunction_1.default('COALESCE', exprs);
}
createAnd(clauses) {
return new And_1.default(clauses);
}
createFalse() {
return new False_1.default();
}
createJoin(to, constraint = null, Klass = InnerJoin_1.default) {
return new Klass(to, constraint);
}
createOn(expr) {
return new On_1.default(expr);
}
createStringJoin(to) {
return this.createJoin(to, null, StringJoin_1.default);
}
createTableAlias(relation, name) {
return new TableAlias_1.default(relation, name);
}
createTrue() {
return new True_1.default();
}
grouping(expr) {
return new Grouping_1.default(expr);
}
lower(column) {
return new NamedSQLFunction_1.default('LOWER', [(0, buildQuoted_1.default)(column)]);
}
}
exports.default = FactoryMethods;
//# sourceMappingURL=FactoryMethods.js.map