@shaxpir/squilt 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +289 -1
  2. package/dist/ast/AlterTableQuery.d.ts +32 -0
  3. package/dist/ast/AlterTableQuery.js +60 -0
  4. package/dist/ast/BetweenExpression.d.ts +10 -0
  5. package/dist/ast/BetweenExpression.js +18 -0
  6. package/dist/ast/CastExpression.d.ts +13 -0
  7. package/dist/ast/CastExpression.js +25 -0
  8. package/dist/ast/CollateExpression.d.ts +18 -0
  9. package/dist/ast/CollateExpression.js +30 -0
  10. package/dist/ast/CreateIndexQuery.d.ts +25 -0
  11. package/dist/ast/CreateIndexQuery.js +64 -0
  12. package/dist/ast/CreateTableQuery.d.ts +57 -0
  13. package/dist/ast/CreateTableQuery.js +79 -0
  14. package/dist/ast/CreateViewQuery.d.ts +34 -0
  15. package/dist/ast/CreateViewQuery.js +61 -0
  16. package/dist/ast/CreateVirtualTableQuery.d.ts +32 -0
  17. package/dist/ast/CreateVirtualTableQuery.js +74 -0
  18. package/dist/ast/DeleteQuery.d.ts +17 -0
  19. package/dist/ast/DeleteQuery.js +43 -0
  20. package/dist/ast/DropIndexQuery.d.ts +14 -0
  21. package/dist/ast/DropIndexQuery.js +35 -0
  22. package/dist/ast/DropTableQuery.d.ts +14 -0
  23. package/dist/ast/DropTableQuery.js +35 -0
  24. package/dist/ast/DropViewQuery.d.ts +11 -0
  25. package/dist/ast/DropViewQuery.js +24 -0
  26. package/dist/ast/FunctionExpression.d.ts +21 -0
  27. package/dist/ast/FunctionExpression.js +40 -1
  28. package/dist/ast/FunctionName.d.ts +1 -1
  29. package/dist/ast/FunctionName.js +1 -1
  30. package/dist/ast/InsertQuery.d.ts +24 -1
  31. package/dist/ast/InsertQuery.js +49 -1
  32. package/dist/ast/Operator.d.ts +2 -0
  33. package/dist/ast/Operator.js +3 -1
  34. package/dist/ast/SelectQuery.d.ts +4 -0
  35. package/dist/ast/SelectQuery.js +11 -1
  36. package/dist/ast/SubqueryExpression.d.ts +18 -0
  37. package/dist/ast/SubqueryExpression.js +27 -0
  38. package/dist/ast/UpdateQuery.d.ts +24 -0
  39. package/dist/ast/UpdateQuery.js +51 -0
  40. package/dist/ast/WindowExpression.d.ts +51 -0
  41. package/dist/ast/WindowExpression.js +61 -0
  42. package/dist/ast/WindowSpecification.d.ts +46 -0
  43. package/dist/ast/WindowSpecification.js +60 -0
  44. package/dist/builder/QueryBuilder.d.ts +20 -0
  45. package/dist/builder/QueryBuilder.js +41 -1
  46. package/dist/builder/Shorthand.d.ts +51 -0
  47. package/dist/builder/Shorthand.js +125 -1
  48. package/dist/index.d.ts +17 -1
  49. package/dist/index.js +59 -3
  50. package/dist/renderer/CompactQueryRenderer.d.ts +34 -2
  51. package/dist/renderer/CompactQueryRenderer.js +272 -2
  52. package/dist/renderer/IndentedQueryRenderer.d.ts +34 -2
  53. package/dist/renderer/IndentedQueryRenderer.js +289 -3
  54. package/dist/renderer/QueryRenderer.d.ts +11 -1
  55. package/dist/renderer/QueryRenderer.js +1 -1
  56. package/dist/validate/CommonQueryValidator.d.ts +31 -1
  57. package/dist/validate/CommonQueryValidator.js +253 -4
  58. package/dist/validate/QueryValidator.d.ts +10 -1
  59. package/dist/validate/QueryValidator.js +1 -1
  60. package/dist/validate/SQLiteQueryValidator.d.ts +16 -1
  61. package/dist/validate/SQLiteQueryValidator.js +32 -3
  62. package/dist/visitor/ParamCollector.d.ts +30 -0
  63. package/dist/visitor/ParamCollector.js +109 -2
  64. package/dist/visitor/QueryIdentityTransformer.d.ts +30 -0
  65. package/dist/visitor/QueryIdentityTransformer.js +217 -2
  66. package/dist/visitor/SqlTreeNodeVisitor.d.ts +30 -0
  67. package/dist/visitor/SqlTreeNodeVisitor.js +1 -1
  68. package/package.json +4 -1
package/dist/index.d.ts CHANGED
@@ -1,7 +1,11 @@
1
1
  export { SqlTreeNode, Aliasable, Expression, AliasableExpression } from './ast/Abstractions';
2
2
  export { Alias } from './ast/Alias';
3
+ export { BetweenExpression } from './ast/BetweenExpression';
3
4
  export { BinaryExpression } from './ast/BinaryExpression';
4
5
  export { CaseExpression, CaseItem } from './ast/CaseExpression';
6
+ export { CastExpression } from './ast/CastExpression';
7
+ export { CollateExpression } from './ast/CollateExpression';
8
+ export { SubqueryExpression } from './ast/SubqueryExpression';
5
9
  export { Column, ColumnLike } from './ast/Column';
6
10
  export { Concat } from './ast/Concat';
7
11
  export { ExistsExpression } from './ast/ExistsExpression';
@@ -10,15 +14,27 @@ export { FunctionExpression } from './ast/FunctionExpression';
10
14
  export { FunctionName } from './ast/FunctionName';
11
15
  export { InExpression } from './ast/InExpression';
12
16
  export { InsertQuery } from './ast/InsertQuery';
17
+ export { UpdateQuery, SetClause } from './ast/UpdateQuery';
18
+ export { DeleteQuery } from './ast/DeleteQuery';
19
+ export { CreateTableQuery, ColumnType, ForeignKeyReference, ColumnConstraints, ColumnDefinition, TableConstraint } from './ast/CreateTableQuery';
20
+ export { CreateVirtualTableQuery, VirtualTableModule, FTS5Options } from './ast/CreateVirtualTableQuery';
21
+ export { CreateIndexQuery } from './ast/CreateIndexQuery';
22
+ export { CreateViewQuery } from './ast/CreateViewQuery';
23
+ export { AlterTableQuery, AlterTableOperation } from './ast/AlterTableQuery';
24
+ export { DropTableQuery } from './ast/DropTableQuery';
25
+ export { DropIndexQuery } from './ast/DropIndexQuery';
26
+ export { DropViewQuery } from './ast/DropViewQuery';
13
27
  export { Join, JoinType } from './ast/Join';
14
28
  export { LiteralExpression, NumberLiteral, StringLiteral, NullLiteral, Param } from './ast/Literals';
15
29
  export { Operator } from './ast/Operator';
16
30
  export { OrderBy, OrderByDirection } from './ast/OrderBy';
17
31
  export { SelectQuery } from './ast/SelectQuery';
18
32
  export { UnaryExpression } from './ast/UnaryExpression';
33
+ export { WindowExpression } from './ast/WindowExpression';
34
+ export { WindowSpecification } from './ast/WindowSpecification';
19
35
  export { With } from './ast/With';
20
36
  export { QueryBuilder } from './builder/QueryBuilder';
21
- export { VAL, EQ, NOT_EQ, NOT, GT, LT, GTE, LTE, LIKE, IS_NULL, IS_NOT_NULL, PLUS, MINUS, MULTIPLY, DIVIDE, AND, OR, EXISTS, COLUMN, SELECT, SELECT_DISTINCT, FROM, UNION, JOIN, LEFT_JOIN, CROSS_JOIN, ABS, COUNT, SUM, FN, FN_DISTINCT, CONCAT, PARAM, INSERT, INSERT_OR_REPLACE, IN, NOT_IN, GROUP_BY, HAVING, ORDER_BY, CASE, WITH } from './builder/Shorthand';
37
+ export { VAL, EQ, NOT_EQ, NOT, GT, LT, GTE, LTE, LIKE, GLOB, MATCH, BETWEEN, NOT_BETWEEN, IS_NULL, IS_NOT_NULL, PLUS, MINUS, MULTIPLY, DIVIDE, AND, OR, EXISTS, COLUMN, SELECT, SELECT_DISTINCT, FROM, UNION, JOIN, LEFT_JOIN, CROSS_JOIN, ABS, COUNT, SUM, FN, FN_DISTINCT, CONCAT, PARAM, INSERT, INSERT_OR_REPLACE, DELETE_FROM, UPDATE, CREATE_TABLE, CREATE_VIRTUAL_TABLE, CREATE_INDEX, CREATE_VIEW, DROP_TABLE, DROP_INDEX, DROP_VIEW, IN, NOT_IN, GROUP_BY, HAVING, ORDER_BY, PARTITION_BY, CASE, CAST, COLLATE, SUBQUERY, WITH } from './builder/Shorthand';
22
38
  export { QueryRenderer, quoteIdentifier, shouldQuoteIdentifier } from './renderer/QueryRenderer';
23
39
  export { CompactQueryRenderer } from './renderer/CompactQueryRenderer';
24
40
  export { IndentedQueryRenderer } from './renderer/IndentedQueryRenderer';
package/dist/index.js CHANGED
@@ -1,16 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FROM = exports.SELECT_DISTINCT = exports.SELECT = exports.COLUMN = exports.EXISTS = exports.OR = exports.AND = exports.DIVIDE = exports.MULTIPLY = exports.MINUS = exports.PLUS = exports.IS_NOT_NULL = exports.IS_NULL = exports.LIKE = exports.LTE = exports.GTE = exports.LT = exports.GT = exports.NOT = exports.NOT_EQ = exports.EQ = exports.VAL = exports.QueryBuilder = exports.With = exports.UnaryExpression = exports.SelectQuery = exports.OrderByDirection = exports.OrderBy = exports.Operator = exports.Param = exports.NullLiteral = exports.StringLiteral = exports.NumberLiteral = exports.LiteralExpression = exports.JoinType = exports.Join = exports.InsertQuery = exports.InExpression = exports.FunctionExpression = exports.JsonEachFrom = exports.SubqueryFrom = exports.TableFrom = exports.From = exports.ExistsExpression = exports.Concat = exports.Column = exports.CaseExpression = exports.BinaryExpression = exports.Alias = exports.AliasableExpression = void 0;
4
- exports.ParamCollectingVisitor = exports.QueryParamRewriteTransformer = exports.QueryIdentityTransformer = exports.ColumnLikeVisitorAcceptor = exports.FromLikeAndJoinVisitorAcceptor = exports.SQLiteQueryValidator = exports.CommonQueryValidator = exports.IndentedQueryRenderer = exports.CompactQueryRenderer = exports.shouldQuoteIdentifier = exports.quoteIdentifier = exports.WITH = exports.CASE = exports.ORDER_BY = exports.HAVING = exports.GROUP_BY = exports.NOT_IN = exports.IN = exports.INSERT_OR_REPLACE = exports.INSERT = exports.PARAM = exports.CONCAT = exports.FN_DISTINCT = exports.FN = exports.SUM = exports.COUNT = exports.ABS = exports.CROSS_JOIN = exports.LEFT_JOIN = exports.JOIN = exports.UNION = void 0;
3
+ exports.LT = exports.GT = exports.NOT = exports.NOT_EQ = exports.EQ = exports.VAL = exports.QueryBuilder = exports.With = exports.WindowSpecification = exports.WindowExpression = exports.UnaryExpression = exports.SelectQuery = exports.OrderByDirection = exports.OrderBy = exports.Operator = exports.Param = exports.NullLiteral = exports.StringLiteral = exports.NumberLiteral = exports.LiteralExpression = exports.JoinType = exports.Join = exports.DropViewQuery = exports.DropIndexQuery = exports.DropTableQuery = exports.AlterTableQuery = exports.CreateViewQuery = exports.CreateIndexQuery = exports.CreateVirtualTableQuery = exports.CreateTableQuery = exports.DeleteQuery = exports.UpdateQuery = exports.InsertQuery = exports.InExpression = exports.FunctionExpression = exports.JsonEachFrom = exports.SubqueryFrom = exports.TableFrom = exports.From = exports.ExistsExpression = exports.Concat = exports.Column = exports.SubqueryExpression = exports.CollateExpression = exports.CastExpression = exports.CaseExpression = exports.BinaryExpression = exports.BetweenExpression = exports.Alias = exports.AliasableExpression = void 0;
4
+ exports.CAST = exports.CASE = exports.PARTITION_BY = exports.ORDER_BY = exports.HAVING = exports.GROUP_BY = exports.NOT_IN = exports.IN = exports.DROP_VIEW = exports.DROP_INDEX = exports.DROP_TABLE = exports.CREATE_VIEW = exports.CREATE_INDEX = exports.CREATE_VIRTUAL_TABLE = exports.CREATE_TABLE = exports.UPDATE = exports.DELETE_FROM = exports.INSERT_OR_REPLACE = exports.INSERT = exports.PARAM = exports.CONCAT = exports.FN_DISTINCT = exports.FN = exports.SUM = exports.COUNT = exports.ABS = exports.CROSS_JOIN = exports.LEFT_JOIN = exports.JOIN = exports.UNION = exports.FROM = exports.SELECT_DISTINCT = exports.SELECT = exports.COLUMN = exports.EXISTS = exports.OR = exports.AND = exports.DIVIDE = exports.MULTIPLY = exports.MINUS = exports.PLUS = exports.IS_NOT_NULL = exports.IS_NULL = exports.NOT_BETWEEN = exports.BETWEEN = exports.MATCH = exports.GLOB = exports.LIKE = exports.LTE = exports.GTE = void 0;
5
+ exports.ParamCollectingVisitor = exports.QueryParamRewriteTransformer = exports.QueryIdentityTransformer = exports.ColumnLikeVisitorAcceptor = exports.FromLikeAndJoinVisitorAcceptor = exports.SQLiteQueryValidator = exports.CommonQueryValidator = exports.IndentedQueryRenderer = exports.CompactQueryRenderer = exports.shouldQuoteIdentifier = exports.quoteIdentifier = exports.WITH = exports.SUBQUERY = exports.COLLATE = void 0;
5
6
  // AST nodes
6
7
  var Abstractions_1 = require("./ast/Abstractions");
7
8
  Object.defineProperty(exports, "AliasableExpression", { enumerable: true, get: function () { return Abstractions_1.AliasableExpression; } });
8
9
  var Alias_1 = require("./ast/Alias");
9
10
  Object.defineProperty(exports, "Alias", { enumerable: true, get: function () { return Alias_1.Alias; } });
11
+ var BetweenExpression_1 = require("./ast/BetweenExpression");
12
+ Object.defineProperty(exports, "BetweenExpression", { enumerable: true, get: function () { return BetweenExpression_1.BetweenExpression; } });
10
13
  var BinaryExpression_1 = require("./ast/BinaryExpression");
11
14
  Object.defineProperty(exports, "BinaryExpression", { enumerable: true, get: function () { return BinaryExpression_1.BinaryExpression; } });
12
15
  var CaseExpression_1 = require("./ast/CaseExpression");
13
16
  Object.defineProperty(exports, "CaseExpression", { enumerable: true, get: function () { return CaseExpression_1.CaseExpression; } });
17
+ var CastExpression_1 = require("./ast/CastExpression");
18
+ Object.defineProperty(exports, "CastExpression", { enumerable: true, get: function () { return CastExpression_1.CastExpression; } });
19
+ var CollateExpression_1 = require("./ast/CollateExpression");
20
+ Object.defineProperty(exports, "CollateExpression", { enumerable: true, get: function () { return CollateExpression_1.CollateExpression; } });
21
+ var SubqueryExpression_1 = require("./ast/SubqueryExpression");
22
+ Object.defineProperty(exports, "SubqueryExpression", { enumerable: true, get: function () { return SubqueryExpression_1.SubqueryExpression; } });
14
23
  var Column_1 = require("./ast/Column");
15
24
  Object.defineProperty(exports, "Column", { enumerable: true, get: function () { return Column_1.Column; } });
16
25
  var Concat_1 = require("./ast/Concat");
@@ -28,6 +37,26 @@ var InExpression_1 = require("./ast/InExpression");
28
37
  Object.defineProperty(exports, "InExpression", { enumerable: true, get: function () { return InExpression_1.InExpression; } });
29
38
  var InsertQuery_1 = require("./ast/InsertQuery");
30
39
  Object.defineProperty(exports, "InsertQuery", { enumerable: true, get: function () { return InsertQuery_1.InsertQuery; } });
40
+ var UpdateQuery_1 = require("./ast/UpdateQuery");
41
+ Object.defineProperty(exports, "UpdateQuery", { enumerable: true, get: function () { return UpdateQuery_1.UpdateQuery; } });
42
+ var DeleteQuery_1 = require("./ast/DeleteQuery");
43
+ Object.defineProperty(exports, "DeleteQuery", { enumerable: true, get: function () { return DeleteQuery_1.DeleteQuery; } });
44
+ var CreateTableQuery_1 = require("./ast/CreateTableQuery");
45
+ Object.defineProperty(exports, "CreateTableQuery", { enumerable: true, get: function () { return CreateTableQuery_1.CreateTableQuery; } });
46
+ var CreateVirtualTableQuery_1 = require("./ast/CreateVirtualTableQuery");
47
+ Object.defineProperty(exports, "CreateVirtualTableQuery", { enumerable: true, get: function () { return CreateVirtualTableQuery_1.CreateVirtualTableQuery; } });
48
+ var CreateIndexQuery_1 = require("./ast/CreateIndexQuery");
49
+ Object.defineProperty(exports, "CreateIndexQuery", { enumerable: true, get: function () { return CreateIndexQuery_1.CreateIndexQuery; } });
50
+ var CreateViewQuery_1 = require("./ast/CreateViewQuery");
51
+ Object.defineProperty(exports, "CreateViewQuery", { enumerable: true, get: function () { return CreateViewQuery_1.CreateViewQuery; } });
52
+ var AlterTableQuery_1 = require("./ast/AlterTableQuery");
53
+ Object.defineProperty(exports, "AlterTableQuery", { enumerable: true, get: function () { return AlterTableQuery_1.AlterTableQuery; } });
54
+ var DropTableQuery_1 = require("./ast/DropTableQuery");
55
+ Object.defineProperty(exports, "DropTableQuery", { enumerable: true, get: function () { return DropTableQuery_1.DropTableQuery; } });
56
+ var DropIndexQuery_1 = require("./ast/DropIndexQuery");
57
+ Object.defineProperty(exports, "DropIndexQuery", { enumerable: true, get: function () { return DropIndexQuery_1.DropIndexQuery; } });
58
+ var DropViewQuery_1 = require("./ast/DropViewQuery");
59
+ Object.defineProperty(exports, "DropViewQuery", { enumerable: true, get: function () { return DropViewQuery_1.DropViewQuery; } });
31
60
  var Join_1 = require("./ast/Join");
32
61
  Object.defineProperty(exports, "Join", { enumerable: true, get: function () { return Join_1.Join; } });
33
62
  Object.defineProperty(exports, "JoinType", { enumerable: true, get: function () { return Join_1.JoinType; } });
@@ -46,6 +75,10 @@ var SelectQuery_1 = require("./ast/SelectQuery");
46
75
  Object.defineProperty(exports, "SelectQuery", { enumerable: true, get: function () { return SelectQuery_1.SelectQuery; } });
47
76
  var UnaryExpression_1 = require("./ast/UnaryExpression");
48
77
  Object.defineProperty(exports, "UnaryExpression", { enumerable: true, get: function () { return UnaryExpression_1.UnaryExpression; } });
78
+ var WindowExpression_1 = require("./ast/WindowExpression");
79
+ Object.defineProperty(exports, "WindowExpression", { enumerable: true, get: function () { return WindowExpression_1.WindowExpression; } });
80
+ var WindowSpecification_1 = require("./ast/WindowSpecification");
81
+ Object.defineProperty(exports, "WindowSpecification", { enumerable: true, get: function () { return WindowSpecification_1.WindowSpecification; } });
49
82
  var With_1 = require("./ast/With");
50
83
  Object.defineProperty(exports, "With", { enumerable: true, get: function () { return With_1.With; } });
51
84
  // Builder
@@ -63,6 +96,10 @@ Object.defineProperty(exports, "LT", { enumerable: true, get: function () { retu
63
96
  Object.defineProperty(exports, "GTE", { enumerable: true, get: function () { return Shorthand_1.GTE; } });
64
97
  Object.defineProperty(exports, "LTE", { enumerable: true, get: function () { return Shorthand_1.LTE; } });
65
98
  Object.defineProperty(exports, "LIKE", { enumerable: true, get: function () { return Shorthand_1.LIKE; } });
99
+ Object.defineProperty(exports, "GLOB", { enumerable: true, get: function () { return Shorthand_1.GLOB; } });
100
+ Object.defineProperty(exports, "MATCH", { enumerable: true, get: function () { return Shorthand_1.MATCH; } });
101
+ Object.defineProperty(exports, "BETWEEN", { enumerable: true, get: function () { return Shorthand_1.BETWEEN; } });
102
+ Object.defineProperty(exports, "NOT_BETWEEN", { enumerable: true, get: function () { return Shorthand_1.NOT_BETWEEN; } });
66
103
  Object.defineProperty(exports, "IS_NULL", { enumerable: true, get: function () { return Shorthand_1.IS_NULL; } });
67
104
  Object.defineProperty(exports, "IS_NOT_NULL", { enumerable: true, get: function () { return Shorthand_1.IS_NOT_NULL; } });
68
105
  Object.defineProperty(exports, "PLUS", { enumerable: true, get: function () { return Shorthand_1.PLUS; } });
@@ -97,6 +134,18 @@ Object.defineProperty(exports, "PARAM", { enumerable: true, get: function () { r
97
134
  // Insert queries
98
135
  Object.defineProperty(exports, "INSERT", { enumerable: true, get: function () { return Shorthand_1.INSERT; } });
99
136
  Object.defineProperty(exports, "INSERT_OR_REPLACE", { enumerable: true, get: function () { return Shorthand_1.INSERT_OR_REPLACE; } });
137
+ // Delete queries
138
+ Object.defineProperty(exports, "DELETE_FROM", { enumerable: true, get: function () { return Shorthand_1.DELETE_FROM; } });
139
+ // Update queries
140
+ Object.defineProperty(exports, "UPDATE", { enumerable: true, get: function () { return Shorthand_1.UPDATE; } });
141
+ // Create/Drop queries
142
+ Object.defineProperty(exports, "CREATE_TABLE", { enumerable: true, get: function () { return Shorthand_1.CREATE_TABLE; } });
143
+ Object.defineProperty(exports, "CREATE_VIRTUAL_TABLE", { enumerable: true, get: function () { return Shorthand_1.CREATE_VIRTUAL_TABLE; } });
144
+ Object.defineProperty(exports, "CREATE_INDEX", { enumerable: true, get: function () { return Shorthand_1.CREATE_INDEX; } });
145
+ Object.defineProperty(exports, "CREATE_VIEW", { enumerable: true, get: function () { return Shorthand_1.CREATE_VIEW; } });
146
+ Object.defineProperty(exports, "DROP_TABLE", { enumerable: true, get: function () { return Shorthand_1.DROP_TABLE; } });
147
+ Object.defineProperty(exports, "DROP_INDEX", { enumerable: true, get: function () { return Shorthand_1.DROP_INDEX; } });
148
+ Object.defineProperty(exports, "DROP_VIEW", { enumerable: true, get: function () { return Shorthand_1.DROP_VIEW; } });
100
149
  // IN expressions
101
150
  Object.defineProperty(exports, "IN", { enumerable: true, get: function () { return Shorthand_1.IN; } });
102
151
  Object.defineProperty(exports, "NOT_IN", { enumerable: true, get: function () { return Shorthand_1.NOT_IN; } });
@@ -104,8 +153,15 @@ Object.defineProperty(exports, "NOT_IN", { enumerable: true, get: function () {
104
153
  Object.defineProperty(exports, "GROUP_BY", { enumerable: true, get: function () { return Shorthand_1.GROUP_BY; } });
105
154
  Object.defineProperty(exports, "HAVING", { enumerable: true, get: function () { return Shorthand_1.HAVING; } });
106
155
  Object.defineProperty(exports, "ORDER_BY", { enumerable: true, get: function () { return Shorthand_1.ORDER_BY; } });
156
+ Object.defineProperty(exports, "PARTITION_BY", { enumerable: true, get: function () { return Shorthand_1.PARTITION_BY; } });
107
157
  // CASE expressions
108
158
  Object.defineProperty(exports, "CASE", { enumerable: true, get: function () { return Shorthand_1.CASE; } });
159
+ // CAST expressions
160
+ Object.defineProperty(exports, "CAST", { enumerable: true, get: function () { return Shorthand_1.CAST; } });
161
+ // COLLATE expressions
162
+ Object.defineProperty(exports, "COLLATE", { enumerable: true, get: function () { return Shorthand_1.COLLATE; } });
163
+ // Subquery expressions
164
+ Object.defineProperty(exports, "SUBQUERY", { enumerable: true, get: function () { return Shorthand_1.SUBQUERY; } });
109
165
  // WITH clauses
110
166
  Object.defineProperty(exports, "WITH", { enumerable: true, get: function () { return Shorthand_1.WITH; } });
111
167
  // Renderers
@@ -130,4 +186,4 @@ var QueryParamRewriteTransformer_1 = require("./visitor/QueryParamRewriteTransfo
130
186
  Object.defineProperty(exports, "QueryParamRewriteTransformer", { enumerable: true, get: function () { return QueryParamRewriteTransformer_1.QueryParamRewriteTransformer; } });
131
187
  var ParamCollector_1 = require("./visitor/ParamCollector");
132
188
  Object.defineProperty(exports, "ParamCollectingVisitor", { enumerable: true, get: function () { return ParamCollector_1.ParamCollectingVisitor; } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLFlBQVk7QUFDWixtREFBNkY7QUFBaEQsbUhBQUEsbUJBQW1CLE9BQUE7QUFDaEUscUNBQW9DO0FBQTNCLDhGQUFBLEtBQUssT0FBQTtBQUNkLDJEQUEwRDtBQUFqRCxvSEFBQSxnQkFBZ0IsT0FBQTtBQUN6Qix1REFBZ0U7QUFBdkQsZ0hBQUEsY0FBYyxPQUFBO0FBQ3ZCLHVDQUFrRDtBQUF6QyxnR0FBQSxNQUFNLE9BQUE7QUFDZix1Q0FBc0M7QUFBN0IsZ0dBQUEsTUFBTSxPQUFBO0FBQ2YsMkRBQTBEO0FBQWpELG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLG1DQUFtRjtBQUExRSw0RkFBQSxJQUFJLE9BQUE7QUFBWSxpR0FBQSxTQUFTLE9BQUE7QUFBRSxvR0FBQSxZQUFZLE9BQUE7QUFBRSxvR0FBQSxZQUFZLE9BQUE7QUFDOUQsK0RBQThEO0FBQXJELHdIQUFBLGtCQUFrQixPQUFBO0FBRTNCLG1EQUFrRDtBQUF6Qyw0R0FBQSxZQUFZLE9BQUE7QUFDckIsaURBQWdEO0FBQXZDLDBHQUFBLFdBQVcsT0FBQTtBQUNwQixtQ0FBNEM7QUFBbkMsNEZBQUEsSUFBSSxPQUFBO0FBQUUsZ0dBQUEsUUFBUSxPQUFBO0FBQ3ZCLDJDQUFxRztBQUE1Riw2R0FBQSxpQkFBaUIsT0FBQTtBQUFFLHlHQUFBLGFBQWEsT0FBQTtBQUFFLHlHQUFBLGFBQWEsT0FBQTtBQUFFLHVHQUFBLFdBQVcsT0FBQTtBQUFFLGlHQUFBLEtBQUssT0FBQTtBQUM1RSwyQ0FBMEM7QUFBakMsb0dBQUEsUUFBUSxPQUFBO0FBQ2pCLHlDQUEwRDtBQUFqRCxrR0FBQSxPQUFPLE9BQUE7QUFBRSwyR0FBQSxnQkFBZ0IsT0FBQTtBQUNsQyxpREFBZ0Q7QUFBdkMsMEdBQUEsV0FBVyxPQUFBO0FBQ3BCLHlEQUF3RDtBQUEvQyxrSEFBQSxlQUFlLE9BQUE7QUFDeEIsbUNBQWtDO0FBQXpCLDRGQUFBLElBQUksT0FBQTtBQUViLFVBQVU7QUFDVix1REFBc0Q7QUFBN0MsNEdBQUEsWUFBWSxPQUFBO0FBQ3JCLGlEQWdDNkI7QUEvQjNCLGdCQUFnQjtBQUNoQixnR0FBQSxHQUFHLE9BQUE7QUFDSCxZQUFZO0FBQ1osK0ZBQUEsRUFBRSxPQUFBO0FBQUUsbUdBQUEsTUFBTSxPQUFBO0FBQUUsZ0dBQUEsR0FBRyxPQUFBO0FBQUUsK0ZBQUEsRUFBRSxPQUFBO0FBQUUsK0ZBQUEsRUFBRSxPQUFBO0FBQUUsZ0dBQUEsR0FBRyxPQUFBO0FBQUUsZ0dBQUEsR0FBRyxPQUFBO0FBQUUsaUdBQUEsSUFBSSxPQUFBO0FBQ3ZDLG9HQUFBLE9BQU8sT0FBQTtBQUFFLHdHQUFBLFdBQVcsT0FBQTtBQUNwQixpR0FBQSxJQUFJLE9BQUE7QUFBRSxrR0FBQSxLQUFLLE9BQUE7QUFBRSxxR0FBQSxRQUFRLE9BQUE7QUFBRSxtR0FBQSxNQUFNLE9BQUE7QUFDN0IsZ0dBQUEsR0FBRyxPQUFBO0FBQUUsK0ZBQUEsRUFBRSxPQUFBO0FBQ1AsU0FBUztBQUNULG1HQUFBLE1BQU0sT0FBQTtBQUNOLFVBQVU7QUFDVixtR0FBQSxNQUFNLE9BQUE7QUFDTixpQkFBaUI7QUFDakIsbUdBQUEsTUFBTSxPQUFBO0FBQUUsNEdBQUEsZUFBZSxPQUFBO0FBQUUsaUdBQUEsSUFBSSxPQUFBO0FBQUUsa0dBQUEsS0FBSyxPQUFBO0FBQ3BDLFFBQVE7QUFDUixpR0FBQSxJQUFJLE9BQUE7QUFBRSxzR0FBQSxTQUFTLE9BQUE7QUFBRSx1R0FBQSxVQUFVLE9BQUE7QUFDM0IsWUFBWTtBQUNaLGdHQUFBLEdBQUcsT0FBQTtBQUFFLGtHQUFBLEtBQUssT0FBQTtBQUFFLGdHQUFBLEdBQUcsT0FBQTtBQUFFLCtGQUFBLEVBQUUsT0FBQTtBQUFFLHdHQUFBLFdBQVcsT0FBQTtBQUNoQyxnQkFBZ0I7QUFDaEIsbUdBQUEsTUFBTSxPQUFBO0FBQ04sYUFBYTtBQUNiLGtHQUFBLEtBQUssT0FBQTtBQUNMLGlCQUFpQjtBQUNqQixtR0FBQSxNQUFNLE9BQUE7QUFBRSw4R0FBQSxpQkFBaUIsT0FBQTtBQUN6QixpQkFBaUI7QUFDakIsK0ZBQUEsRUFBRSxPQUFBO0FBQUUsbUdBQUEsTUFBTSxPQUFBO0FBQ1YsVUFBVTtBQUNWLHFHQUFBLFFBQVEsT0FBQTtBQUFFLG1HQUFBLE1BQU0sT0FBQTtBQUFFLHFHQUFBLFFBQVEsT0FBQTtBQUMxQixtQkFBbUI7QUFDbkIsaUdBQUEsSUFBSSxPQUFBO0FBQ0osZUFBZTtBQUNmLGlHQUFBLElBQUksT0FBQTtBQUdOLFlBQVk7QUFDWiwwREFBaUc7QUFBekUsZ0hBQUEsZUFBZSxPQUFBO0FBQUUsc0hBQUEscUJBQXFCLE9BQUE7QUFDOUQsd0VBQXVFO0FBQTlELDRIQUFBLG9CQUFvQixPQUFBO0FBQzdCLDBFQUF5RTtBQUFoRSw4SEFBQSxxQkFBcUIsT0FBQTtBQUk5Qix3RUFBdUU7QUFBOUQsNEhBQUEsb0JBQW9CLE9BQUE7QUFDN0Isd0VBQXVFO0FBQTlELDRIQUFBLG9CQUFvQixPQUFBO0FBRTdCLFdBQVc7QUFDWCxtRUFBNkg7QUFBaEcsb0lBQUEsOEJBQThCLE9BQUE7QUFBRSwrSEFBQSx5QkFBeUIsT0FBQTtBQUV0RiwrRUFBOEU7QUFBckUsb0lBQUEsd0JBQXdCLE9BQUE7QUFDakMsdUZBQXlHO0FBQWhHLDRJQUFBLDRCQUE0QixPQUFBO0FBQ3JDLDJEQUFrRTtBQUF6RCx3SEFBQSxzQkFBc0IsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFTVCBub2Rlc1xuZXhwb3J0IHsgU3FsVHJlZU5vZGUsIEFsaWFzYWJsZSwgRXhwcmVzc2lvbiwgQWxpYXNhYmxlRXhwcmVzc2lvbiB9IGZyb20gJy4vYXN0L0Fic3RyYWN0aW9ucyc7XG5leHBvcnQgeyBBbGlhcyB9IGZyb20gJy4vYXN0L0FsaWFzJztcbmV4cG9ydCB7IEJpbmFyeUV4cHJlc3Npb24gfSBmcm9tICcuL2FzdC9CaW5hcnlFeHByZXNzaW9uJztcbmV4cG9ydCB7IENhc2VFeHByZXNzaW9uLCBDYXNlSXRlbSB9IGZyb20gJy4vYXN0L0Nhc2VFeHByZXNzaW9uJztcbmV4cG9ydCB7IENvbHVtbiwgQ29sdW1uTGlrZSB9IGZyb20gJy4vYXN0L0NvbHVtbic7XG5leHBvcnQgeyBDb25jYXQgfSBmcm9tICcuL2FzdC9Db25jYXQnO1xuZXhwb3J0IHsgRXhpc3RzRXhwcmVzc2lvbiB9IGZyb20gJy4vYXN0L0V4aXN0c0V4cHJlc3Npb24nO1xuZXhwb3J0IHsgRnJvbSwgRnJvbUxpa2UsIFRhYmxlRnJvbSwgU3VicXVlcnlGcm9tLCBKc29uRWFjaEZyb20gfSBmcm9tICcuL2FzdC9Gcm9tJztcbmV4cG9ydCB7IEZ1bmN0aW9uRXhwcmVzc2lvbiB9IGZyb20gJy4vYXN0L0Z1bmN0aW9uRXhwcmVzc2lvbic7XG5leHBvcnQgeyBGdW5jdGlvbk5hbWUgfSBmcm9tICcuL2FzdC9GdW5jdGlvbk5hbWUnO1xuZXhwb3J0IHsgSW5FeHByZXNzaW9uIH0gZnJvbSAnLi9hc3QvSW5FeHByZXNzaW9uJztcbmV4cG9ydCB7IEluc2VydFF1ZXJ5IH0gZnJvbSAnLi9hc3QvSW5zZXJ0UXVlcnknO1xuZXhwb3J0IHsgSm9pbiwgSm9pblR5cGUgfSBmcm9tICcuL2FzdC9Kb2luJztcbmV4cG9ydCB7IExpdGVyYWxFeHByZXNzaW9uLCBOdW1iZXJMaXRlcmFsLCBTdHJpbmdMaXRlcmFsLCBOdWxsTGl0ZXJhbCwgUGFyYW0gfSBmcm9tICcuL2FzdC9MaXRlcmFscyc7XG5leHBvcnQgeyBPcGVyYXRvciB9IGZyb20gJy4vYXN0L09wZXJhdG9yJztcbmV4cG9ydCB7IE9yZGVyQnksIE9yZGVyQnlEaXJlY3Rpb24gfSBmcm9tICcuL2FzdC9PcmRlckJ5JztcbmV4cG9ydCB7IFNlbGVjdFF1ZXJ5IH0gZnJvbSAnLi9hc3QvU2VsZWN0UXVlcnknO1xuZXhwb3J0IHsgVW5hcnlFeHByZXNzaW9uIH0gZnJvbSAnLi9hc3QvVW5hcnlFeHByZXNzaW9uJztcbmV4cG9ydCB7IFdpdGggfSBmcm9tICcuL2FzdC9XaXRoJztcblxuLy8gQnVpbGRlclxuZXhwb3J0IHsgUXVlcnlCdWlsZGVyIH0gZnJvbSAnLi9idWlsZGVyL1F1ZXJ5QnVpbGRlcic7XG5leHBvcnQge1xuICAvLyBWYWx1ZSBoZWxwZXJzXG4gIFZBTCxcbiAgLy8gT3BlcmF0b3JzXG4gIEVRLCBOT1RfRVEsIE5PVCwgR1QsIExULCBHVEUsIExURSwgTElLRSxcbiAgSVNfTlVMTCwgSVNfTk9UX05VTEwsXG4gIFBMVVMsIE1JTlVTLCBNVUxUSVBMWSwgRElWSURFLFxuICBBTkQsIE9SLFxuICAvLyBFWElTVFNcbiAgRVhJU1RTLFxuICAvLyBDb2x1bW5zXG4gIENPTFVNTixcbiAgLy8gU2VsZWN0IHF1ZXJpZXNcbiAgU0VMRUNULCBTRUxFQ1RfRElTVElOQ1QsIEZST00sIFVOSU9OLFxuICAvLyBKb2luc1xuICBKT0lOLCBMRUZUX0pPSU4sIENST1NTX0pPSU4sXG4gIC8vIEZ1bmN0aW9uc1xuICBBQlMsIENPVU5ULCBTVU0sIEZOLCBGTl9ESVNUSU5DVCxcbiAgLy8gQ29uY2F0ZW5hdGlvblxuICBDT05DQVQsXG4gIC8vIFBhcmFtZXRlcnNcbiAgUEFSQU0sXG4gIC8vIEluc2VydCBxdWVyaWVzXG4gIElOU0VSVCwgSU5TRVJUX09SX1JFUExBQ0UsXG4gIC8vIElOIGV4cHJlc3Npb25zXG4gIElOLCBOT1RfSU4sXG4gIC8vIENsYXVzZXNcbiAgR1JPVVBfQlksIEhBVklORywgT1JERVJfQlksXG4gIC8vIENBU0UgZXhwcmVzc2lvbnNcbiAgQ0FTRSxcbiAgLy8gV0lUSCBjbGF1c2VzXG4gIFdJVEhcbn0gZnJvbSAnLi9idWlsZGVyL1Nob3J0aGFuZCc7XG5cbi8vIFJlbmRlcmVyc1xuZXhwb3J0IHsgUXVlcnlSZW5kZXJlciwgcXVvdGVJZGVudGlmaWVyLCBzaG91bGRRdW90ZUlkZW50aWZpZXIgfSBmcm9tICcuL3JlbmRlcmVyL1F1ZXJ5UmVuZGVyZXInO1xuZXhwb3J0IHsgQ29tcGFjdFF1ZXJ5UmVuZGVyZXIgfSBmcm9tICcuL3JlbmRlcmVyL0NvbXBhY3RRdWVyeVJlbmRlcmVyJztcbmV4cG9ydCB7IEluZGVudGVkUXVlcnlSZW5kZXJlciB9IGZyb20gJy4vcmVuZGVyZXIvSW5kZW50ZWRRdWVyeVJlbmRlcmVyJztcblxuLy8gVmFsaWRhdG9yc1xuZXhwb3J0IHsgUXVlcnlWYWxpZGF0b3IgfSBmcm9tICcuL3ZhbGlkYXRlL1F1ZXJ5VmFsaWRhdG9yJztcbmV4cG9ydCB7IENvbW1vblF1ZXJ5VmFsaWRhdG9yIH0gZnJvbSAnLi92YWxpZGF0ZS9Db21tb25RdWVyeVZhbGlkYXRvcic7XG5leHBvcnQgeyBTUUxpdGVRdWVyeVZhbGlkYXRvciB9IGZyb20gJy4vdmFsaWRhdGUvU1FMaXRlUXVlcnlWYWxpZGF0b3InO1xuXG4vLyBWaXNpdG9yc1xuZXhwb3J0IHsgU3FsVHJlZU5vZGVWaXNpdG9yLCBGcm9tTGlrZUFuZEpvaW5WaXNpdG9yQWNjZXB0b3IsIENvbHVtbkxpa2VWaXNpdG9yQWNjZXB0b3IgfSBmcm9tICcuL3Zpc2l0b3IvU3FsVHJlZU5vZGVWaXNpdG9yJztcbmV4cG9ydCB7IFNxbFRyZWVOb2RlVHJhbnNmb3JtZXIgfSBmcm9tICcuL3Zpc2l0b3IvU3FsVHJlZU5vZGVUcmFuc2Zvcm1lcic7XG5leHBvcnQgeyBRdWVyeUlkZW50aXR5VHJhbnNmb3JtZXIgfSBmcm9tICcuL3Zpc2l0b3IvUXVlcnlJZGVudGl0eVRyYW5zZm9ybWVyJztcbmV4cG9ydCB7IFF1ZXJ5UGFyYW1SZXdyaXRlVHJhbnNmb3JtZXIsIFBhcmFtUmVwbGFjZW1lbnRzIH0gZnJvbSAnLi92aXNpdG9yL1F1ZXJ5UGFyYW1SZXdyaXRlVHJhbnNmb3JtZXInO1xuZXhwb3J0IHsgUGFyYW1Db2xsZWN0aW5nVmlzaXRvciB9IGZyb20gJy4vdmlzaXRvci9QYXJhbUNvbGxlY3Rvcic7XG4iXX0=
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxZQUFZO0FBQ1osbURBQTZGO0FBQWhELG1IQUFBLG1CQUFtQixPQUFBO0FBQ2hFLHFDQUFvQztBQUEzQiw4RkFBQSxLQUFLLE9BQUE7QUFDZCw2REFBNEQ7QUFBbkQsc0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsMkRBQTBEO0FBQWpELG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLHVEQUFnRTtBQUF2RCxnSEFBQSxjQUFjLE9BQUE7QUFDdkIsdURBQXNEO0FBQTdDLGdIQUFBLGNBQWMsT0FBQTtBQUN2Qiw2REFBNEQ7QUFBbkQsc0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsK0RBQThEO0FBQXJELHdIQUFBLGtCQUFrQixPQUFBO0FBQzNCLHVDQUFrRDtBQUF6QyxnR0FBQSxNQUFNLE9BQUE7QUFDZix1Q0FBc0M7QUFBN0IsZ0dBQUEsTUFBTSxPQUFBO0FBQ2YsMkRBQTBEO0FBQWpELG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLG1DQUFtRjtBQUExRSw0RkFBQSxJQUFJLE9BQUE7QUFBWSxpR0FBQSxTQUFTLE9BQUE7QUFBRSxvR0FBQSxZQUFZLE9BQUE7QUFBRSxvR0FBQSxZQUFZLE9BQUE7QUFDOUQsK0RBQThEO0FBQXJELHdIQUFBLGtCQUFrQixPQUFBO0FBRTNCLG1EQUFrRDtBQUF6Qyw0R0FBQSxZQUFZLE9BQUE7QUFDckIsaURBQWdEO0FBQXZDLDBHQUFBLFdBQVcsT0FBQTtBQUNwQixpREFBMkQ7QUFBbEQsMEdBQUEsV0FBVyxPQUFBO0FBQ3BCLGlEQUFnRDtBQUF2QywwR0FBQSxXQUFXLE9BQUE7QUFDcEIsMkRBQWlKO0FBQXhJLG9IQUFBLGdCQUFnQixPQUFBO0FBQ3pCLHlFQUF5RztBQUFoRyxrSUFBQSx1QkFBdUIsT0FBQTtBQUNoQywyREFBMEQ7QUFBakQsb0hBQUEsZ0JBQWdCLE9BQUE7QUFDekIs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QVUsT0FBQTtBQUNWLHVHQUFBLFVBQVUsT0FBQTtBQUNWLHNHQUFBLFNBQVMsT0FBQTtBQUNULGlCQUFpQjtBQUNqQiwrRkFBQSxFQUFFLE9BQUE7QUFBRSxtR0FBQSxNQUFNLE9BQUE7QUFDVixVQUFVO0FBQ1YscUdBQUEsUUFBUSxPQUFBO0FBQUUsbUdBQUEsTUFBTSxPQUFBO0FBQUUscUdBQUEsUUFBUSxPQUFBO0FBQUUseUdBQUEsWUFBWSxPQUFBO0FBQ3hDLG1CQUFtQjtBQUNuQixpR0FBQSxJQUFJLE9BQUE7QUFDSixtQkFBbUI7QUFDbkIsaUdBQUEsSUFBSSxPQUFBO0FBQ0osc0JBQXNCO0FBQ3RCLG9HQUFBLE9BQU8sT0FBQTtBQUNQLHVCQUF1QjtBQUN2QixxR0FBQSxRQUFRLE9BQUE7QUFDUixlQUFlO0FBQ2YsaUdBQUEsSUFBSSxPQUFBO0FBR04sWUFBWTtBQUNaLDBEQUFpRztBQUF6RSxnSEFBQSxlQUFlLE9BQUE7QUFBRSxzSEFBQSxxQkFBcUIsT0FBQTtBQUM5RCx3RUFBdUU7QUFBOUQsNEhBQUEsb0JBQW9CLE9BQUE7QUFDN0IsMEVBQXlFO0FBQWhFLDhIQUFBLHFCQUFxQixPQUFBO0FBSTlCLHdFQUF1RTtBQUE5RCw0SEFBQSxvQkFBb0IsT0FBQTtBQUM3Qix3RUFBdUU7QUFBOUQsNEhBQUEsb0JBQW9CLE9BQUE7QUFFN0IsV0FBVztBQUNYLG1FQUE2SDtBQUFoRyxvSUFBQSw4QkFBOEIsT0FBQTtBQUFFLCtIQUFBLHlCQUF5QixPQUFBO0FBRXRGLCtFQUE4RTtBQUFyRSxvSUFBQSx3QkFBd0IsT0FBQTtBQUNqQyx1RkFBeUc7QUFBaEcsNElBQUEsNEJBQTRCLE9BQUE7QUFDckMsMkRBQWtFO0FBQXpELHdIQUFBLHNCQUFzQixPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQVNUIG5vZGVzXG5leHBvcnQgeyBTcWxUcmVlTm9kZSwgQWxpYXNhYmxlLCBFeHByZXNzaW9uLCBBbGlhc2FibGVFeHByZXNzaW9uIH0gZnJvbSAnLi9hc3QvQWJzdHJhY3Rpb25zJztcbmV4cG9ydCB7IEFsaWFzIH0gZnJvbSAnLi9hc3QvQWxpYXMnO1xuZXhwb3J0IHsgQmV0d2VlbkV4cHJlc3Npb24gfSBmcm9tICcuL2FzdC9CZXR3ZWVuRXhwcmVzc2lvbic7XG5leHBvcnQgeyBCaW5hcnlFeHByZXNzaW9uIH0gZnJvbSAnLi9hc3QvQmluYXJ5RXhwcmVzc2lvbic7XG5leHBvcnQgeyBDYXNlRXhwcmVzc2lvbiwgQ2FzZUl0ZW0gfSBmcm9tICcuL2FzdC9DYXNlRXhwcmVzc2lvbic7XG5leHBvcnQgeyBDYXN0RXhwcmVzc2lvbiB9IGZyb20gJy4vYXN0L0Nhc3RFeHByZXNzaW9uJztcbmV4cG9ydCB7IENvbGxhdGVFeHByZXNzaW9uIH0gZnJvbSAnLi9hc3QvQ29sbGF0ZUV4cHJlc3Npb24nO1xuZXhwb3J0IHsgU3VicXVlcnlFeHByZXNzaW9uIH0gZnJvbSAnLi9hc3QvU3VicXVlcnlFeHByZXNzaW9uJztcbmV4cG9ydCB7IENvbHVtbiwgQ29sdW1uTGlrZSB9IGZyb20gJy4vYXN0L0NvbHVtbic7XG5leHBvcnQgeyBDb25jYXQgfSBmcm9tICcuL2FzdC9Db25jYXQnO1xuZXhwb3J0IHsgRXhpc3RzRXhwcmVzc2lvbiB9IGZyb20gJy4vYXN0L0V4aXN0c0V4cHJlc3Npb24nO1xuZXhwb3J0IHsgRnJvbSwgRnJvbUxpa2UsIFRhYmxlRnJvbSwgU3VicXVlcnlGcm9tLCBKc29uRWFjaEZyb20gfSBmcm9tICcuL2FzdC9Gcm9tJztcbmV4cG9ydCB7IEZ1bmN0aW9uRXhwcmVzc2lvbiB9IGZyb20gJy4vYXN0L0Z1bmN0aW9uRXhwcmVzc2lvbic7XG5leHBvcnQgeyBGdW5jdGlvbk5hbWUgfSBmcm9tICcuL2FzdC9GdW5jdGlvbk5hbWUnO1xuZXhwb3J0IHsgSW5FeHByZXNzaW9uIH0gZnJvbSAnLi9hc3QvSW5FeHByZXNzaW9uJztcbmV4cG9ydCB7IEluc2VydFF1ZXJ5IH0gZnJvbSAnLi9hc3QvSW5zZXJ0UXVlcnknO1xuZXhwb3J0IHsgVXBkYXRlUXVlcnksIFNldENsYXVzZSB9IGZyb20gJy4vYXN0L1VwZGF0ZVF1ZXJ5JztcbmV4cG9ydCB7IERlbGV0ZVF1ZXJ5IH0gZnJvbSAnLi9hc3QvRGVsZXRlUXVlcnknO1xuZXhwb3J0IHsgQ3JlYXRlVGFibGVRdWVyeSwgQ29sdW1uVHlwZSwgRm9yZWlnbktleVJlZmVyZW5jZSwgQ29sdW1uQ29uc3RyYWludHMsIENvbHVtbkRlZmluaXRpb24sIFRhYmxlQ29uc3RyYWludCB9IGZyb20gJy4vYXN0L0NyZWF0ZVRhYmxlUXVlcnknO1xuZXhwb3J0IHsgQ3JlYXRlVmlydHVhbFRhYmxlUXVlcnksIFZpcnR1YWxUYWJsZU1vZHVsZSwgRlRTNU9wdGlvbnMgfSBmcm9tICcuL2FzdC9DcmVhdGVWaXJ0dWFsVGFibGVRdWVyeSc7XG5leHBvcnQgeyBDcmVhdGVJbmRleFF1ZXJ5IH0gZnJvbSAnLi9hc3QvQ3JlYXRlSW5kZXhRdWVyeSc7XG5leHBvcnQgeyBDcmVhdGVWaWV3UXVlcnkgfSBmcm9tICcuL2FzdC9DcmVhdGVWaWV3UXVlcnknO1xuZXhwb3J0IHsgQWx0ZXJUYWJsZVF1ZXJ5LCBBbHRlclRhYmxlT3BlcmF0aW9uIH0gZnJvbSAnLi9hc3QvQWx0ZXJUYWJsZVF1ZXJ5JztcbmV4cG9ydCB7IERyb3BUYWJsZVF1ZXJ5IH0gZnJvbSAnLi9hc3QvRHJvcFRhYmxlUXVlcnknO1xuZXhwb3J0IHsgRHJvcEluZGV4UXVlcnkgfSBmcm9tICcuL2FzdC9Ecm9wSW5kZXhRdWVyeSc7XG5leHBvcnQgeyBEcm9wVmlld1F1ZXJ5IH0gZnJvbSAnLi9hc3QvRHJvcFZpZXdRdWVyeSc7XG5leHBvcnQgeyBKb2luLCBKb2luVHlwZSB9IGZyb20gJy4vYXN0L0pvaW4nO1xuZXhwb3J0IHsgTGl0ZXJhbEV4cHJlc3Npb24sIE51bWJlckxpdGVyYWwsIFN0cmluZ0xpdGVyYWwsIE51bGxMaXRlcmFsLCBQYXJhbSB9IGZyb20gJy4vYXN0L0xpdGVyYWxzJztcbmV4cG9ydCB7IE9wZXJhdG9yIH0gZnJvbSAnLi9hc3QvT3BlcmF0b3InO1xuZXhwb3J0IHsgT3JkZXJCeSwgT3JkZXJCeURpcmVjdGlvbiB9IGZyb20gJy4vYXN0L09yZGVyQnknO1xuZXhwb3J0IHsgU2VsZWN0UXVlcnkgfSBmcm9tICcuL2FzdC9TZWxlY3RRdWVyeSc7XG5leHBvcnQgeyBVbmFyeUV4cHJlc3Npb24gfSBmcm9tICcuL2FzdC9VbmFyeUV4cHJlc3Npb24nO1xuZXhwb3J0IHsgV2luZG93RXhwcmVzc2lvbiB9IGZyb20gJy4vYXN0L1dpbmRvd0V4cHJlc3Npb24nO1xuZXhwb3J0IHsgV2luZG93U3BlY2lmaWNhdGlvbiB9IGZyb20gJy4vYXN0L1dpbmRvd1NwZWNpZmljYXRpb24nO1xuZXhwb3J0IHsgV2l0aCB9IGZyb20gJy4vYXN0L1dpdGgnO1xuXG4vLyBCdWlsZGVyXG5leHBvcnQgeyBRdWVyeUJ1aWxkZXIgfSBmcm9tICcuL2J1aWxkZXIvUXVlcnlCdWlsZGVyJztcbmV4cG9ydCB7XG4gIC8vIFZhbHVlIGhlbHBlcnNcbiAgVkFMLFxuICAvLyBPcGVyYXRvcnNcbiAgRVEsIE5PVF9FUSwgTk9ULCBHVCwgTFQsIEdURSwgTFRFLCBMSUtFLCBHTE9CLCBNQVRDSCxcbiAgQkVUV0VFTiwgTk9UX0JFVFdFRU4sXG4gIElTX05VTEwsIElTX05PVF9OVUxMLFxuICBQTFVTLCBNSU5VUywgTVVMVElQTFksIERJVklERSxcbiAgQU5ELCBPUixcbiAgLy8gRVhJU1RTXG4gIEVYSVNUUyxcbiAgLy8gQ29sdW1uc1xuICBDT0xVTU4sXG4gIC8vIFNlbGVjdCBxdWVyaWVzXG4gIFNFTEVDVCwgU0VMRUNUX0RJU1RJTkNULCBGUk9NLCBVTklPTixcbiAgLy8gSm9pbnNcbiAgSk9JTiwgTEVGVF9KT0lOLCBDUk9TU19KT0lOLFxuICAvLyBGdW5jdGlvbnNcbiAgQUJTLCBDT1VOVCwgU1VNLCBGTiwgRk5fRElTVElOQ1QsXG4gIC8vIENvbmNhdGVuYXRpb25cbiAgQ09OQ0FULFxuICAvLyBQYXJhbWV0ZXJzXG4gIFBBUkFNLFxuICAvLyBJbnNlcnQgcXVlcmllc1xuICBJTlNFUlQsIElOU0VSVF9PUl9SRVBMQUNFLFxuICAvLyBEZWxldGUgcXVlcmllc1xuICBERUxFVEVfRlJPTSxcbiAgLy8gVXBkYXRlIHF1ZXJpZXNcbiAgVVBEQVRFLFxuICAvLyBDcmVhdGUvRHJvcCBxdWVyaWVzXG4gIENSRUFURV9UQUJMRSxcbiAgQ1JFQVRFX1ZJUlRVQUxfVEFCTEUsXG4gIENSRUFURV9JTkRFWCxcbiAgQ1JFQVRFX1ZJRVcsXG4gIERST1BfVEFCTEUsXG4gIERST1BfSU5ERVgsXG4gIERST1BfVklFVyxcbiAgLy8gSU4gZXhwcmVzc2lvbnNcbiAgSU4sIE5PVF9JTixcbiAgLy8gQ2xhdXNlc1xuICBHUk9VUF9CWSwgSEFWSU5HLCBPUkRFUl9CWSwgUEFSVElUSU9OX0JZLFxuICAvLyBDQVNFIGV4cHJlc3Npb25zXG4gIENBU0UsXG4gIC8vIENBU1QgZXhwcmVzc2lvbnNcbiAgQ0FTVCxcbiAgLy8gQ09MTEFURSBleHByZXNzaW9uc1xuICBDT0xMQVRFLFxuICAvLyBTdWJxdWVyeSBleHByZXNzaW9uc1xuICBTVUJRVUVSWSxcbiAgLy8gV0lUSCBjbGF1c2VzXG4gIFdJVEhcbn0gZnJvbSAnLi9idWlsZGVyL1Nob3J0aGFuZCc7XG5cbi8vIFJlbmRlcmVyc1xuZXhwb3J0IHsgUXVlcnlSZW5kZXJlciwgcXVvdGVJZGVudGlmaWVyLCBzaG91bGRRdW90ZUlkZW50aWZpZXIgfSBmcm9tICcuL3JlbmRlcmVyL1F1ZXJ5UmVuZGVyZXInO1xuZXhwb3J0IHsgQ29tcGFjdFF1ZXJ5UmVuZGVyZXIgfSBmcm9tICcuL3JlbmRlcmVyL0NvbXBhY3RRdWVyeVJlbmRlcmVyJztcbmV4cG9ydCB7IEluZGVudGVkUXVlcnlSZW5kZXJlciB9IGZyb20gJy4vcmVuZGVyZXIvSW5kZW50ZWRRdWVyeVJlbmRlcmVyJztcblxuLy8gVmFsaWRhdG9yc1xuZXhwb3J0IHsgUXVlcnlWYWxpZGF0b3IgfSBmcm9tICcuL3ZhbGlkYXRlL1F1ZXJ5VmFsaWRhdG9yJztcbmV4cG9ydCB7IENvbW1vblF1ZXJ5VmFsaWRhdG9yIH0gZnJvbSAnLi92YWxpZGF0ZS9Db21tb25RdWVyeVZhbGlkYXRvcic7XG5leHBvcnQgeyBTUUxpdGVRdWVyeVZhbGlkYXRvciB9IGZyb20gJy4vdmFsaWRhdGUvU1FMaXRlUXVlcnlWYWxpZGF0b3InO1xuXG4vLyBWaXNpdG9yc1xuZXhwb3J0IHsgU3FsVHJlZU5vZGVWaXNpdG9yLCBGcm9tTGlrZUFuZEpvaW5WaXNpdG9yQWNjZXB0b3IsIENvbHVtbkxpa2VWaXNpdG9yQWNjZXB0b3IgfSBmcm9tICcuL3Zpc2l0b3IvU3FsVHJlZU5vZGVWaXNpdG9yJztcbmV4cG9ydCB7IFNxbFRyZWVOb2RlVHJhbnNmb3JtZXIgfSBmcm9tICcuL3Zpc2l0b3IvU3FsVHJlZU5vZGVUcmFuc2Zvcm1lcic7XG5leHBvcnQgeyBRdWVyeUlkZW50aXR5VHJhbnNmb3JtZXIgfSBmcm9tICcuL3Zpc2l0b3IvUXVlcnlJZGVudGl0eVRyYW5zZm9ybWVyJztcbmV4cG9ydCB7IFF1ZXJ5UGFyYW1SZXdyaXRlVHJhbnNmb3JtZXIsIFBhcmFtUmVwbGFjZW1lbnRzIH0gZnJvbSAnLi92aXNpdG9yL1F1ZXJ5UGFyYW1SZXdyaXRlVHJhbnNmb3JtZXInO1xuZXhwb3J0IHsgUGFyYW1Db2xsZWN0aW5nVmlzaXRvciB9IGZyb20gJy4vdmlzaXRvci9QYXJhbUNvbGxlY3Rvcic7XG4iXX0=
@@ -1,14 +1,29 @@
1
1
  import { AliasableExpression } from "../ast/Abstractions";
2
2
  import { Alias } from "../ast/Alias";
3
+ import { AlterTableQuery } from "../ast/AlterTableQuery";
4
+ import { BetweenExpression } from "../ast/BetweenExpression";
3
5
  import { BinaryExpression } from "../ast/BinaryExpression";
4
6
  import { CaseExpression } from "../ast/CaseExpression";
7
+ import { CastExpression } from "../ast/CastExpression";
8
+ import { CollateExpression } from "../ast/CollateExpression";
9
+ import { SubqueryExpression } from "../ast/SubqueryExpression";
10
+ import { WindowExpression } from "../ast/WindowExpression";
5
11
  import { Column } from "../ast/Column";
6
12
  import { Concat } from "../ast/Concat";
13
+ import { CreateIndexQuery } from "../ast/CreateIndexQuery";
14
+ import { CreateTableQuery, ColumnDefinition, TableConstraint } from "../ast/CreateTableQuery";
15
+ import { CreateVirtualTableQuery } from "../ast/CreateVirtualTableQuery";
16
+ import { CreateViewQuery } from "../ast/CreateViewQuery";
17
+ import { DeleteQuery } from "../ast/DeleteQuery";
18
+ import { DropIndexQuery } from "../ast/DropIndexQuery";
19
+ import { DropTableQuery } from "../ast/DropTableQuery";
20
+ import { DropViewQuery } from "../ast/DropViewQuery";
7
21
  import { ExistsExpression } from "../ast/ExistsExpression";
8
22
  import { From, JsonEachFrom, SubqueryFrom, TableFrom } from "../ast/From";
9
23
  import { FunctionExpression } from "../ast/FunctionExpression";
10
24
  import { InExpression } from "../ast/InExpression";
11
25
  import { InsertQuery } from "../ast/InsertQuery";
26
+ import { UpdateQuery } from "../ast/UpdateQuery";
12
27
  import { Join } from "../ast/Join";
13
28
  import { NullLiteral, NumberLiteral, Param, StringLiteral } from "../ast/Literals";
14
29
  import { OrderBy } from "../ast/OrderBy";
@@ -16,12 +31,24 @@ import { SelectQuery } from "../ast/SelectQuery";
16
31
  import { UnaryExpression } from "../ast/UnaryExpression";
17
32
  import { With } from "../ast/With";
18
33
  import { ColumnLikeVisitorAcceptor, FromLikeAndJoinVisitorAcceptor, SqlTreeNodeVisitor } from "../visitor/SqlTreeNodeVisitor";
19
- import { QueryRenderer } from "./QueryRenderer";
34
+ import { QueryRenderer, RenderableQuery } from "./QueryRenderer";
20
35
  export declare class CompactQueryRenderer implements QueryRenderer, SqlTreeNodeVisitor<string> {
21
36
  protected fromLikeAndJoinAcceptor: FromLikeAndJoinVisitorAcceptor<void>;
22
37
  protected columnLikeAcceptor: ColumnLikeVisitorAcceptor<string>;
23
- render(node: SelectQuery | InsertQuery): string;
38
+ render(node: RenderableQuery): string;
24
39
  visitInsertQuery(node: InsertQuery): string;
40
+ visitDeleteQuery(node: DeleteQuery): string;
41
+ visitUpdateQuery(node: UpdateQuery): string;
42
+ visitDropTableQuery(node: DropTableQuery): string;
43
+ visitDropIndexQuery(node: DropIndexQuery): string;
44
+ visitDropViewQuery(node: DropViewQuery): string;
45
+ visitCreateViewQuery(node: CreateViewQuery): string;
46
+ visitCreateIndexQuery(node: CreateIndexQuery): string;
47
+ visitAlterTableQuery(node: AlterTableQuery): string;
48
+ visitCreateTableQuery(node: CreateTableQuery): string;
49
+ visitCreateVirtualTableQuery(node: CreateVirtualTableQuery): string;
50
+ protected renderColumnDefinition(col: ColumnDefinition): string;
51
+ protected renderTableConstraint(constraint: TableConstraint): string;
25
52
  visitSelectQuery(node: SelectQuery): string;
26
53
  visitTableFrom(node: TableFrom): string;
27
54
  visitSubqueryFrom(node: SubqueryFrom): string;
@@ -32,10 +59,15 @@ export declare class CompactQueryRenderer implements QueryRenderer, SqlTreeNodeV
32
59
  visitOrderBy(node: OrderBy): string;
33
60
  visitWithClause(node: With): string;
34
61
  visitBinaryExpression(node: BinaryExpression): string;
62
+ visitBetweenExpression(node: BetweenExpression): string;
35
63
  visitUnaryExpression(node: UnaryExpression): string;
36
64
  visitInExpression(node: InExpression): string;
37
65
  visitConcat(node: Concat): string;
38
66
  visitCaseExpression(node: CaseExpression): string;
67
+ visitCastExpression(node: CastExpression): string;
68
+ visitCollateExpression(node: CollateExpression): string;
69
+ visitSubqueryExpression(node: SubqueryExpression): string;
70
+ visitWindowExpression(node: WindowExpression): string;
39
71
  visitFunctionExpression(node: FunctionExpression): string;
40
72
  visitParamExpression(_node: Param): string;
41
73
  visitStringLiteral(node: StringLiteral): string;