@sqb/builder
Version:
Extensible multi-dialect SQL query builder written with TypeScript
22 lines (21 loc) • 699 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.OpNot = void 0;
const enums_js_1 = require("../../enums.js");
const operator_js_1 = require("../operator.js");
class OpNot extends operator_js_1.Operator {
_operatorType = enums_js_1.OperatorType.not;
_expression;
constructor(expression) {
super();
this._expression = expression;
}
get _type() {
return enums_js_1.SerializationType.NEGATIVE_EXPRESSION;
}
_serialize(ctx) {
const expression = ctx.anyToSQL(this._expression);
return ctx.serialize(this._type, expression, () => expression ? 'not ' + expression : '');
}
}
exports.OpNot = OpNot;