1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- "use strict";
- const { classToInvokable } = require("./utils");
- class ABSTRACT {
- static toString(...args) {
- return new this().toString(...args);
- }
- toString(...args) {
- return this.toSql(...args);
- }
- toSql() {
- throw new Error("toSql implementation missing");
- }
- }
- class INITIALLY_DEFERRED extends ABSTRACT {
- toSql() {
- return "DEFERRABLE INITIALLY DEFERRED";
- }
- }
- class INITIALLY_IMMEDIATE extends ABSTRACT {
- toSql() {
- return "DEFERRABLE INITIALLY IMMEDIATE";
- }
- }
- class NOT extends ABSTRACT {
- toSql() {
- return "NOT DEFERRABLE";
- }
- }
- class SET_DEFERRED extends ABSTRACT {
- constructor(constraints) {
- super();
- this.constraints = constraints;
- }
- toSql(queryGenerator) {
- return queryGenerator.setDeferredQuery(this.constraints);
- }
- }
- class SET_IMMEDIATE extends ABSTRACT {
- constructor(constraints) {
- super();
- this.constraints = constraints;
- }
- toSql(queryGenerator) {
- return queryGenerator.setImmediateQuery(this.constraints);
- }
- }
- const Deferrable = {
- INITIALLY_DEFERRED: classToInvokable(INITIALLY_DEFERRED),
- INITIALLY_IMMEDIATE: classToInvokable(INITIALLY_IMMEDIATE),
- NOT: classToInvokable(NOT),
- SET_DEFERRED: classToInvokable(SET_DEFERRED),
- SET_IMMEDIATE: classToInvokable(SET_IMMEDIATE)
- };
- module.exports = Deferrable;
- //# sourceMappingURL=deferrable.js.map
|