@quereus/quereus 4.8.0 → 4.10.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.
- package/dist/src/core/database.d.ts +6 -0
- package/dist/src/core/database.d.ts.map +1 -1
- package/dist/src/core/database.js +45 -5
- package/dist/src/core/database.js.map +1 -1
- package/dist/src/core/statement.d.ts.map +1 -1
- package/dist/src/core/statement.js +74 -15
- package/dist/src/core/statement.js.map +1 -1
- package/dist/src/func/builtins/aggregate.d.ts.map +1 -1
- package/dist/src/func/builtins/aggregate.js +88 -35
- package/dist/src/func/builtins/aggregate.js.map +1 -1
- package/dist/src/func/builtins/conversion.d.ts +5 -0
- package/dist/src/func/builtins/conversion.d.ts.map +1 -1
- package/dist/src/func/builtins/conversion.js +16 -2
- package/dist/src/func/builtins/conversion.js.map +1 -1
- package/dist/src/func/builtins/explain.d.ts.map +1 -1
- package/dist/src/func/builtins/explain.js +9 -2
- package/dist/src/func/builtins/explain.js.map +1 -1
- package/dist/src/func/builtins/index.d.ts.map +1 -1
- package/dist/src/func/builtins/index.js +5 -2
- package/dist/src/func/builtins/index.js.map +1 -1
- package/dist/src/func/builtins/scalar.d.ts.map +1 -1
- package/dist/src/func/builtins/scalar.js +4 -2
- package/dist/src/func/builtins/scalar.js.map +1 -1
- package/dist/src/func/builtins/string.d.ts +2 -0
- package/dist/src/func/builtins/string.d.ts.map +1 -1
- package/dist/src/func/builtins/string.js +60 -4
- package/dist/src/func/builtins/string.js.map +1 -1
- package/dist/src/func/registration.d.ts +6 -0
- package/dist/src/func/registration.d.ts.map +1 -1
- package/dist/src/func/registration.js +1 -0
- package/dist/src/func/registration.js.map +1 -1
- package/dist/src/index.d.ts +7 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +21 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/planner/building/constraint-builder.js +1 -1
- package/dist/src/planner/building/constraint-builder.js.map +1 -1
- package/dist/src/planner/nodes/scalar.d.ts.map +1 -1
- package/dist/src/planner/nodes/scalar.js +13 -1
- package/dist/src/planner/nodes/scalar.js.map +1 -1
- package/dist/src/planner/rules/retrieve/rule-grow-retrieve.d.ts.map +1 -1
- package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js +121 -51
- package/dist/src/planner/rules/retrieve/rule-grow-retrieve.js.map +1 -1
- package/dist/src/planner/rules/shared/index-style-context.d.ts +14 -4
- package/dist/src/planner/rules/shared/index-style-context.d.ts.map +1 -1
- package/dist/src/planner/rules/shared/index-style-context.js +14 -4
- package/dist/src/planner/rules/shared/index-style-context.js.map +1 -1
- package/dist/src/runtime/emission-context.d.ts +14 -1
- package/dist/src/runtime/emission-context.d.ts.map +1 -1
- package/dist/src/runtime/emission-context.js +17 -5
- package/dist/src/runtime/emission-context.js.map +1 -1
- package/dist/src/runtime/emit/aggregate-setup.d.ts +44 -8
- package/dist/src/runtime/emit/aggregate-setup.d.ts.map +1 -1
- package/dist/src/runtime/emit/aggregate-setup.js +79 -15
- package/dist/src/runtime/emit/aggregate-setup.js.map +1 -1
- package/dist/src/runtime/emit/aggregate.d.ts.map +1 -1
- package/dist/src/runtime/emit/aggregate.js +21 -106
- package/dist/src/runtime/emit/aggregate.js.map +1 -1
- package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
- package/dist/src/runtime/emit/alter-table.js +212 -155
- package/dist/src/runtime/emit/alter-table.js.map +1 -1
- package/dist/src/runtime/emit/asof-scan.js +1 -1
- package/dist/src/runtime/emit/asof-scan.js.map +1 -1
- package/dist/src/runtime/emit/assertion-drop-guard.d.ts +26 -12
- package/dist/src/runtime/emit/assertion-drop-guard.d.ts.map +1 -1
- package/dist/src/runtime/emit/assertion-drop-guard.js +45 -26
- package/dist/src/runtime/emit/assertion-drop-guard.js.map +1 -1
- package/dist/src/runtime/emit/assertion-rename-helpers.d.ts +6 -6
- package/dist/src/runtime/emit/assertion-rename-helpers.d.ts.map +1 -1
- package/dist/src/runtime/emit/assertion-rename-helpers.js +18 -20
- package/dist/src/runtime/emit/assertion-rename-helpers.js.map +1 -1
- package/dist/src/runtime/emit/between.d.ts +2 -0
- package/dist/src/runtime/emit/between.d.ts.map +1 -1
- package/dist/src/runtime/emit/between.js +7 -8
- package/dist/src/runtime/emit/between.js.map +1 -1
- package/dist/src/runtime/emit/binary.d.ts +27 -5
- package/dist/src/runtime/emit/binary.d.ts.map +1 -1
- package/dist/src/runtime/emit/binary.js +278 -187
- package/dist/src/runtime/emit/binary.js.map +1 -1
- package/dist/src/runtime/emit/case.d.ts +34 -0
- package/dist/src/runtime/emit/case.d.ts.map +1 -1
- package/dist/src/runtime/emit/case.js +18 -11
- package/dist/src/runtime/emit/case.js.map +1 -1
- package/dist/src/runtime/emit/cast.d.ts +2 -0
- package/dist/src/runtime/emit/cast.d.ts.map +1 -1
- package/dist/src/runtime/emit/cast.js +7 -5
- package/dist/src/runtime/emit/cast.js.map +1 -1
- package/dist/src/runtime/emit/column-reference.d.ts +3 -1
- package/dist/src/runtime/emit/column-reference.d.ts.map +1 -1
- package/dist/src/runtime/emit/column-reference.js +6 -2
- package/dist/src/runtime/emit/column-reference.js.map +1 -1
- package/dist/src/runtime/emit/column-rename-cascade.d.ts +84 -0
- package/dist/src/runtime/emit/column-rename-cascade.d.ts.map +1 -0
- package/dist/src/runtime/emit/column-rename-cascade.js +134 -0
- package/dist/src/runtime/emit/column-rename-cascade.js.map +1 -0
- package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
- package/dist/src/runtime/emit/dml-executor.js +21 -0
- package/dist/src/runtime/emit/dml-executor.js.map +1 -1
- package/dist/src/runtime/emit/drop-column-guards.d.ts +82 -53
- package/dist/src/runtime/emit/drop-column-guards.d.ts.map +1 -1
- package/dist/src/runtime/emit/drop-column-guards.js +155 -90
- package/dist/src/runtime/emit/drop-column-guards.js.map +1 -1
- package/dist/src/runtime/emit/drop-table.d.ts.map +1 -1
- package/dist/src/runtime/emit/drop-table.js +5 -0
- package/dist/src/runtime/emit/drop-table.js.map +1 -1
- package/dist/src/runtime/emit/drop-view.d.ts.map +1 -1
- package/dist/src/runtime/emit/drop-view.js +5 -0
- package/dist/src/runtime/emit/drop-view.js.map +1 -1
- package/dist/src/runtime/emit/expression-drop-guard.d.ts +57 -0
- package/dist/src/runtime/emit/expression-drop-guard.d.ts.map +1 -0
- package/dist/src/runtime/emit/expression-drop-guard.js +82 -0
- package/dist/src/runtime/emit/expression-drop-guard.js.map +1 -0
- package/dist/src/runtime/emit/filter.d.ts +1 -1
- package/dist/src/runtime/emit/filter.js +1 -1
- package/dist/src/runtime/emit/hash-aggregate.d.ts.map +1 -1
- package/dist/src/runtime/emit/hash-aggregate.js +18 -88
- package/dist/src/runtime/emit/hash-aggregate.js.map +1 -1
- package/dist/src/runtime/emit/literal.d.ts +14 -1
- package/dist/src/runtime/emit/literal.d.ts.map +1 -1
- package/dist/src/runtime/emit/literal.js +33 -7
- package/dist/src/runtime/emit/literal.js.map +1 -1
- package/dist/src/runtime/emit/materialized-view-helpers.d.ts +33 -10
- package/dist/src/runtime/emit/materialized-view-helpers.d.ts.map +1 -1
- package/dist/src/runtime/emit/materialized-view-helpers.js +158 -49
- package/dist/src/runtime/emit/materialized-view-helpers.js.map +1 -1
- package/dist/src/runtime/emit/materialized-view.d.ts.map +1 -1
- package/dist/src/runtime/emit/materialized-view.js +3 -0
- package/dist/src/runtime/emit/materialized-view.js.map +1 -1
- package/dist/src/runtime/emit/parameter.d.ts +3 -1
- package/dist/src/runtime/emit/parameter.d.ts.map +1 -1
- package/dist/src/runtime/emit/parameter.js +7 -2
- package/dist/src/runtime/emit/parameter.js.map +1 -1
- package/dist/src/runtime/emit/scalar-function.d.ts +29 -1
- package/dist/src/runtime/emit/scalar-function.d.ts.map +1 -1
- package/dist/src/runtime/emit/scalar-function.js +66 -16
- package/dist/src/runtime/emit/scalar-function.js.map +1 -1
- package/dist/src/runtime/emit/scalar-op.d.ts +63 -0
- package/dist/src/runtime/emit/scalar-op.d.ts.map +1 -0
- package/dist/src/runtime/emit/scalar-op.js +37 -0
- package/dist/src/runtime/emit/scalar-op.js.map +1 -0
- package/dist/src/runtime/emit/scan.d.ts.map +1 -1
- package/dist/src/runtime/emit/scan.js +19 -1
- package/dist/src/runtime/emit/scan.js.map +1 -1
- package/dist/src/runtime/emit/temporal-arithmetic.d.ts +18 -8
- package/dist/src/runtime/emit/temporal-arithmetic.d.ts.map +1 -1
- package/dist/src/runtime/emit/temporal-arithmetic.js +29 -311
- package/dist/src/runtime/emit/temporal-arithmetic.js.map +1 -1
- package/dist/src/runtime/emit/unary.d.ts +2 -0
- package/dist/src/runtime/emit/unary.d.ts.map +1 -1
- package/dist/src/runtime/emit/unary.js +125 -53
- package/dist/src/runtime/emit/unary.js.map +1 -1
- package/dist/src/runtime/emitters.d.ts +22 -0
- package/dist/src/runtime/emitters.d.ts.map +1 -1
- package/dist/src/runtime/emitters.js +29 -0
- package/dist/src/runtime/emitters.js.map +1 -1
- package/dist/src/runtime/scalar-fusion.d.ts +47 -0
- package/dist/src/runtime/scalar-fusion.d.ts.map +1 -0
- package/dist/src/runtime/scalar-fusion.js +275 -0
- package/dist/src/runtime/scalar-fusion.js.map +1 -0
- package/dist/src/runtime/strict-flags.d.ts +9 -0
- package/dist/src/runtime/strict-flags.d.ts.map +1 -1
- package/dist/src/runtime/strict-flags.js +9 -0
- package/dist/src/runtime/strict-flags.js.map +1 -1
- package/dist/src/runtime/strict-fork.js +2 -2
- package/dist/src/runtime/strict-fork.js.map +1 -1
- package/dist/src/runtime/strict-representation.d.ts +78 -0
- package/dist/src/runtime/strict-representation.d.ts.map +1 -0
- package/dist/src/runtime/strict-representation.js +159 -0
- package/dist/src/runtime/strict-representation.js.map +1 -0
- package/dist/src/schema/assertion.d.ts +58 -0
- package/dist/src/schema/assertion.d.ts.map +1 -1
- package/dist/src/schema/assertion.js +78 -0
- package/dist/src/schema/assertion.js.map +1 -1
- package/dist/src/schema/catalog-persistability.d.ts +11 -3
- package/dist/src/schema/catalog-persistability.d.ts.map +1 -1
- package/dist/src/schema/catalog-persistability.js +48 -29
- package/dist/src/schema/catalog-persistability.js.map +1 -1
- package/dist/src/schema/catalog.d.ts +22 -0
- package/dist/src/schema/catalog.d.ts.map +1 -1
- package/dist/src/schema/catalog.js +4 -1
- package/dist/src/schema/catalog.js.map +1 -1
- package/dist/src/schema/column-republication.d.ts +126 -0
- package/dist/src/schema/column-republication.d.ts.map +1 -0
- package/dist/src/schema/column-republication.js +121 -0
- package/dist/src/schema/column-republication.js.map +1 -0
- package/dist/src/schema/column-source-resolver.d.ts +29 -6
- package/dist/src/schema/column-source-resolver.d.ts.map +1 -1
- package/dist/src/schema/column-source-resolver.js +78 -9
- package/dist/src/schema/column-source-resolver.js.map +1 -1
- package/dist/src/schema/expression-dependents.d.ts +160 -0
- package/dist/src/schema/expression-dependents.d.ts.map +1 -0
- package/dist/src/schema/expression-dependents.js +228 -0
- package/dist/src/schema/expression-dependents.js.map +1 -0
- package/dist/src/schema/function.d.ts +15 -0
- package/dist/src/schema/function.d.ts.map +1 -1
- package/dist/src/schema/function.js.map +1 -1
- package/dist/src/schema/object-dependency-closure.d.ts +127 -0
- package/dist/src/schema/object-dependency-closure.d.ts.map +1 -0
- package/dist/src/schema/object-dependency-closure.js +117 -0
- package/dist/src/schema/object-dependency-closure.js.map +1 -0
- package/dist/src/schema/object-ref-resolver.d.ts +83 -0
- package/dist/src/schema/object-ref-resolver.d.ts.map +1 -0
- package/dist/src/schema/object-ref-resolver.js +135 -0
- package/dist/src/schema/object-ref-resolver.js.map +1 -0
- package/dist/src/schema/rename/column-rename.d.ts +228 -0
- package/dist/src/schema/rename/column-rename.d.ts.map +1 -0
- package/dist/src/schema/rename/column-rename.js +1225 -0
- package/dist/src/schema/rename/column-rename.js.map +1 -0
- package/dist/src/schema/rename/self-qualifier-strip.d.ts +29 -0
- package/dist/src/schema/rename/self-qualifier-strip.d.ts.map +1 -0
- package/dist/src/schema/rename/self-qualifier-strip.js +267 -0
- package/dist/src/schema/rename/self-qualifier-strip.js.map +1 -0
- package/dist/src/schema/rename/shared.d.ts +108 -0
- package/dist/src/schema/rename/shared.d.ts.map +1 -0
- package/dist/src/schema/rename/shared.js +49 -0
- package/dist/src/schema/rename/shared.js.map +1 -0
- package/dist/src/schema/rename/table-rename.d.ts +263 -0
- package/dist/src/schema/rename/table-rename.d.ts.map +1 -0
- package/dist/src/schema/rename/table-rename.js +860 -0
- package/dist/src/schema/rename/table-rename.js.map +1 -0
- package/dist/src/schema/rename-rewriter.d.ts +18 -278
- package/dist/src/schema/rename-rewriter.d.ts.map +1 -1
- package/dist/src/schema/rename-rewriter.js +17 -1506
- package/dist/src/schema/rename-rewriter.js.map +1 -1
- package/dist/src/schema/schema-differ.d.ts.map +1 -1
- package/dist/src/schema/schema-differ.js +228 -21
- package/dist/src/schema/schema-differ.js.map +1 -1
- package/dist/src/types/builtin-types.d.ts.map +1 -1
- package/dist/src/types/builtin-types.js +29 -36
- package/dist/src/types/builtin-types.js.map +1 -1
- package/dist/src/types/cast-semantics.d.ts +7 -5
- package/dist/src/types/cast-semantics.d.ts.map +1 -1
- package/dist/src/types/cast-semantics.js +20 -9
- package/dist/src/types/cast-semantics.js.map +1 -1
- package/dist/src/types/index.d.ts +1 -1
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +1 -1
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/types/registry.d.ts.map +1 -1
- package/dist/src/types/registry.js +2 -1
- package/dist/src/types/registry.js.map +1 -1
- package/dist/src/types/temporal-ops.d.ts +119 -0
- package/dist/src/types/temporal-ops.d.ts.map +1 -0
- package/dist/src/types/temporal-ops.js +348 -0
- package/dist/src/types/temporal-ops.js.map +1 -0
- package/dist/src/types/temporal-types.d.ts +11 -0
- package/dist/src/types/temporal-types.d.ts.map +1 -1
- package/dist/src/types/temporal-types.js +87 -0
- package/dist/src/types/temporal-types.js.map +1 -1
- package/dist/src/util/affinity.d.ts +2 -1
- package/dist/src/util/affinity.d.ts.map +1 -1
- package/dist/src/util/affinity.js +16 -5
- package/dist/src/util/affinity.js.map +1 -1
- package/dist/src/util/ast-spine-clone.d.ts +2 -2
- package/dist/src/util/ast-spine-clone.js +2 -2
- package/dist/src/util/coercion.d.ts +22 -7
- package/dist/src/util/coercion.d.ts.map +1 -1
- package/dist/src/util/coercion.js +28 -15
- package/dist/src/util/coercion.js.map +1 -1
- package/dist/src/util/comparison.d.ts +25 -0
- package/dist/src/util/comparison.d.ts.map +1 -1
- package/dist/src/util/comparison.js +25 -0
- package/dist/src/util/comparison.js.map +1 -1
- package/dist/src/util/key-tuple-codec.d.ts +12 -3
- package/dist/src/util/key-tuple-codec.d.ts.map +1 -1
- package/dist/src/util/key-tuple-codec.js.map +1 -1
- package/dist/src/util/numeric-canonical.d.ts +26 -0
- package/dist/src/util/numeric-canonical.d.ts.map +1 -0
- package/dist/src/util/numeric-canonical.js +66 -0
- package/dist/src/util/numeric-canonical.js.map +1 -0
- package/dist/src/util/value-text.d.ts +48 -0
- package/dist/src/util/value-text.d.ts.map +1 -0
- package/dist/src/util/value-text.js +35 -0
- package/dist/src/util/value-text.js.map +1 -0
- package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/manager.js +14 -5
- package/dist/src/vtab/memory/layer/manager.js.map +1 -1
- package/dist/src/vtab/module.d.ts +25 -0
- package/dist/src/vtab/module.d.ts.map +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-rename.js","sourceRoot":"","sources":["../../../../src/schema/rename/table-rename.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,280 +1,20 @@
|
|
|
1
|
-
import type * as AST from '../parser/ast.js';
|
|
2
1
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
* re-case identifiers — would both break it.
|
|
22
|
-
*
|
|
23
|
-
* `name` is passed as both old and new name; under `dryRun` the new name is
|
|
24
|
-
* never read.
|
|
25
|
-
*
|
|
26
|
-
* The column-level probes ({@link columnReferencedInAst},
|
|
27
|
-
* {@link columnReferencedInCheckExpression}) reach the same equivalence a
|
|
28
|
-
* different way — a real rename, to a sentinel name, over a throwaway
|
|
29
|
-
* {@link spineCloneAst} copy — because the column walker has ~8 mutation points
|
|
30
|
-
* and a CTE-re-exposure branch that reads the new name, so threading `dryRun`
|
|
31
|
-
* through it is the riskier of the two. Neither flaw of the identity-rename
|
|
32
|
-
* trick warned against above applies there: the mutated node is a discarded
|
|
33
|
-
* clone (nothing user-visible is re-cased), and the target is a fresh name no
|
|
34
|
-
* column can hold, so `newCol !== oldCol` and the re-exposure branch answers
|
|
35
|
-
* exactly as it would for a real rename to an unused name.
|
|
36
|
-
*/
|
|
37
|
-
export declare function tableReferencedInAst(node: AST.AstNode | undefined, name: string, defaultSchemaName: string): boolean;
|
|
38
|
-
/**
|
|
39
|
-
* Rewrite the renamed table inside every partial-index predicate of `indexes`,
|
|
40
|
-
* in place. A predicate may carry a table-qualified self-reference
|
|
41
|
-
* (`create index ix on t (b) where t.b > 0`), which a table rename must follow.
|
|
42
|
-
*
|
|
43
|
-
* Sharing and idempotence work exactly as in {@link renameColumnInIndexPredicates}:
|
|
44
|
-
* the predicate `Expression` is shared by reference with the catalog's
|
|
45
|
-
* `TableSchema` and with a unique partial index's `derivedFromIndex` UNIQUE
|
|
46
|
-
* constraint, so one in-place rewrite covers all of them, and a second call with
|
|
47
|
-
* the same pair finds nothing naming `oldName` and returns false.
|
|
48
|
-
*/
|
|
49
|
-
export declare function renameTableInIndexPredicates(indexes: ReadonlyArray<{
|
|
50
|
-
readonly predicate?: AST.Expression;
|
|
51
|
-
}> | undefined, oldName: string, newName: string, defaultSchemaName: string): boolean;
|
|
52
|
-
/**
|
|
53
|
-
* Rewrite the renamed table inside every CHECK constraint expression of `checks`,
|
|
54
|
-
* in place. A CHECK may carry a table-qualified self-reference (`check (t.b > 0)`)
|
|
55
|
-
* exactly as a partial-index predicate may, and a table rename must follow it.
|
|
56
|
-
*
|
|
57
|
-
* Same sharing and idempotence story as {@link renameTableInIndexPredicates}: the
|
|
58
|
-
* `expr` is the very AST the catalog's `TableSchema` holds, so one rewrite covers
|
|
59
|
-
* every holder and a second call with the same pair is a no-op.
|
|
60
|
-
*/
|
|
61
|
-
export declare function renameTableInCheckConstraints(checks: ReadonlyArray<{
|
|
62
|
-
readonly expr: AST.Expression;
|
|
63
|
-
}> | undefined, oldName: string, newName: string, defaultSchemaName: string): boolean;
|
|
64
|
-
/**
|
|
65
|
-
* Rewrite the renamed table inside the two expressions a `ColumnSchema` can carry —
|
|
66
|
-
* a column DEFAULT (`w integer default ((select min(v) from u))`, however authored:
|
|
67
|
-
* inline, or via `ALTER TABLE … ALTER COLUMN … SET DEFAULT`, which writes the same
|
|
68
|
-
* field) and a generated column's body (`g integer generated always as ((select
|
|
69
|
-
* min(u.v) from u) + id)`) — in place.
|
|
70
|
-
*
|
|
71
|
-
* Unlike the column-rename counterpart ({@link renameColumnInColumnExpressions}) there
|
|
72
|
-
* is no seeded/unseeded split: {@link renameTableInAst} resolves nothing against an
|
|
73
|
-
* implicit owning table, so the SAME entry point is correct for the renamed table's own
|
|
74
|
-
* columns (a self-referencing default, `default ((select count(*) from t))`) and for
|
|
75
|
-
* every other table's.
|
|
76
|
-
*
|
|
77
|
-
* Same sharing and idempotence story as {@link renameTableInCheckConstraints}: the
|
|
78
|
-
* `Expression` is the very AST the catalog's `TableSchema` holds, so one in-place
|
|
79
|
-
* rewrite reaches every holder and a second call with the same pair finds nothing
|
|
80
|
-
* naming `oldName` and returns false.
|
|
81
|
-
*
|
|
82
|
-
* The parameter is structurally typed rather than `ColumnSchema[]` so this module stays
|
|
83
|
-
* free of catalog imports; `ColumnSchema` satisfies it.
|
|
84
|
-
*/
|
|
85
|
-
export declare function renameTableInColumnExpressions(columns: ReadonlyArray<{
|
|
86
|
-
readonly defaultValue?: AST.Expression | null;
|
|
87
|
-
readonly generatedExpr?: AST.Expression;
|
|
88
|
-
}> | undefined, oldName: string, newName: string, defaultSchemaName: string): boolean;
|
|
89
|
-
/**
|
|
90
|
-
* Rewrite column references inside a full statement/expression AST, resolving
|
|
91
|
-
* unqualified refs against the FROM scopes the walk descends (no implicit seed,
|
|
92
|
-
* unlike {@link renameColumnInCheckExpression}). The walk descends a select
|
|
93
|
-
* body's trailing `with defaults (…)` clause ({@link AST.SelectStmt.defaults}),
|
|
94
|
-
* whose entry exprs evaluate in the body's FROM scope.
|
|
95
|
-
*
|
|
96
|
-
* When `resolveColumnInSource` is supplied, the scope walk consults it at each
|
|
97
|
-
* inner FROM frame so an unqualified ref that legitimately binds to a like-named
|
|
98
|
-
* column on a subquery's own FROM source is NOT false-captured by an enclosing
|
|
99
|
-
* binding (e.g. a `with defaults` expr `cap + (select max(cap) from lim)` under
|
|
100
|
-
* a `t.cap` rename must leave the inner `lim.cap` untouched). The same callback
|
|
101
|
-
* infrastructure backs {@link renameColumnInCheckExpression}; both the forward
|
|
102
|
-
* propagation (live schema lookup) and the differ's inverse reconcile
|
|
103
|
-
* (declared-side resolver) pass it so the two stay in parity.
|
|
104
|
-
*/
|
|
105
|
-
export declare function renameColumnInAst(node: AST.AstNode | undefined, tableName: string, oldColName: string, newColName: string, defaultSchemaName: string, resolveColumnInSource?: ResolveColumnInSource): boolean;
|
|
106
|
-
/**
|
|
107
|
-
* Rewrite a column reference inside a CHECK expression. Unlike
|
|
108
|
-
* `renameColumnInAst`, this entry point seeds the scope stack with an
|
|
109
|
-
* implicit unaliased binding to `tableName` so top-level unqualified
|
|
110
|
-
* `ColumnExpr` nodes resolve to the owning table. CHECK expressions
|
|
111
|
-
* cannot reference other tables at top level, so the implicit binding
|
|
112
|
-
* is safe there.
|
|
113
|
-
*
|
|
114
|
-
* When `resolveColumnInSource` is supplied, the scope walk consults it at
|
|
115
|
-
* each inner FROM frame: if any real-table source in that frame exposes
|
|
116
|
-
* `oldColName`, the unqualified ref binds inside the subquery and the
|
|
117
|
-
* walk stops before reaching the seed. This stops the rewriter from
|
|
118
|
-
* false-positively rewriting an inner unqualified ref that legitimately
|
|
119
|
-
* binds to a like-named column on the subquery's FROM (e.g.
|
|
120
|
-
* `check ((select min(v) from u) > 0)` when `u` also has a `v` column).
|
|
121
|
-
*
|
|
122
|
-
* Limitation: aliased subquery / function-source / CTE-projection inner
|
|
123
|
-
* sources are not asked (the rewriter would need recursive column-set
|
|
124
|
-
* inference on their bodies). `renameColumnInAst` shares the same callback
|
|
125
|
-
* (passed by the view-body callers) and the same limitation.
|
|
126
|
-
*
|
|
127
|
-
* The seed also makes this walk the owner of the `new.` / `old.` **row-image**
|
|
128
|
-
* namespace: a CHECK may name the row being written explicitly
|
|
129
|
-
* (`check (new.a > 0)`, `check on delete (old.a > 0)` — `docs/sql-ddl.md`
|
|
130
|
-
* § CHECK Constraints), and those qualifiers name the owning table's row, not
|
|
131
|
-
* anything a FROM clause binds. So the qualified-ref case matches them too —
|
|
132
|
-
* but only here, never through `renameColumnInAst`, where a `new.` ref belongs
|
|
133
|
-
* to some other table's row image.
|
|
134
|
-
*
|
|
135
|
-
* That match is scope-**aware**, not depth-blind, because `new` and `old` are
|
|
136
|
-
* not reserved words in this parser: `create table "new" (…)` is legal, so a
|
|
137
|
-
* CHECK may legitimately contain `(select max("new".a) from "new")`. The match
|
|
138
|
-
* therefore requires that no FROM/WITH frame above the seed rebind the
|
|
139
|
-
* qualifier — see `matchesRowImage`.
|
|
140
|
-
*/
|
|
141
|
-
export declare function renameColumnInCheckExpression(expr: AST.AstNode | undefined, tableName: string, oldColName: string, newColName: string, defaultSchemaName: string, resolveColumnInSource?: ResolveColumnInSource): boolean;
|
|
142
|
-
/**
|
|
143
|
-
* Whether `node` refers to `tableName`.`columnName` — read-only with respect to
|
|
144
|
-
* the caller's AST; a throwaway {@link spineCloneAst} copy is what gets
|
|
145
|
-
* rewritten.
|
|
146
|
-
*
|
|
147
|
-
* Same equivalence {@link tableReferencedInAst} establishes for the table verb,
|
|
148
|
-
* and for the same reason: "refers to" must mean "would have been rewritten by
|
|
149
|
-
* `ALTER TABLE … RENAME COLUMN`", or a DROP guard built on it refuses a
|
|
150
|
-
* different set of cases than the rename follows. See that function's comment
|
|
151
|
-
* for why the column verb reaches it by clone+sentinel rather than by `dryRun`.
|
|
152
|
-
*
|
|
153
|
-
* `resolveColumnInSource` is **not optional in practice**: without it the walk
|
|
154
|
-
* has no way to tell that an unqualified ref inside a subquery binds to a
|
|
155
|
-
* like-named column on the subquery's own FROM source, and a caller asking
|
|
156
|
-
* "does this body name `t.v`?" gets `true` for a body whose only `v` is
|
|
157
|
-
* another table's. Every caller should pass the catalog-backed resolver
|
|
158
|
-
* (`buildColumnSourceResolver`).
|
|
159
|
-
*
|
|
160
|
-
* NOTE: one spine clone plus one walk per probe, and the DROP COLUMN guard probes every
|
|
161
|
-
* live assertion. Trivial at the handful-of-assertions scale schemas have today, and it
|
|
162
|
-
* only runs on DDL; if a schema ever carries assertions by the hundred, filter by
|
|
163
|
-
* `tableReferencedInAst` (no clone) before paying for the column probe.
|
|
164
|
-
*/
|
|
165
|
-
export declare function columnReferencedInAst(node: AST.AstNode | undefined, tableName: string, columnName: string, defaultSchemaName: string, resolveColumnInSource?: ResolveColumnInSource): boolean;
|
|
166
|
-
/**
|
|
167
|
-
* {@link columnReferencedInAst} for an expression that resolves unqualified refs
|
|
168
|
-
* against an implicit binding to `tableName` — a CHECK expression or a
|
|
169
|
-
* partial-index predicate. Uses {@link renameColumnInCheckExpression}'s seeded
|
|
170
|
-
* entry point so the probe answers for exactly the scope that expression is
|
|
171
|
-
* planned in.
|
|
172
|
-
*/
|
|
173
|
-
export declare function columnReferencedInCheckExpression(expr: AST.AstNode | undefined, tableName: string, columnName: string, defaultSchemaName: string, resolveColumnInSource?: ResolveColumnInSource): boolean;
|
|
174
|
-
/**
|
|
175
|
-
* Rewrite the renamed column inside every partial-index predicate of `indexes`,
|
|
176
|
-
* in place. A predicate resolves unqualified refs against the indexed table
|
|
177
|
-
* itself — the same implicit seed a CHECK expression uses — so
|
|
178
|
-
* {@link renameColumnInCheckExpression} is the correct entry point here, not
|
|
179
|
-
* {@link renameColumnInAst}.
|
|
180
|
-
*
|
|
181
|
-
* The predicate `Expression` is shared by reference between the catalog's
|
|
182
|
-
* `TableSchema`, any module-local copy of it, and — for a unique partial index —
|
|
183
|
-
* the `derivedFromIndex` UNIQUE constraint that carries the same predicate.
|
|
184
|
-
* Rewriting in place keeps all of them in step; cloning would strand the derived
|
|
185
|
-
* constraint on the old AST.
|
|
186
|
-
*
|
|
187
|
-
* Idempotent: once rewritten, nothing names `oldColName` any more, so a second
|
|
188
|
-
* call with the same pair returns false without touching the AST.
|
|
189
|
-
*
|
|
190
|
-
* The parameter is structurally typed rather than `IndexSchema[]` so this module
|
|
191
|
-
* stays free of catalog imports; `IndexSchema` satisfies it.
|
|
192
|
-
*
|
|
193
|
-
* Sharing the seeded entry point also brings its `new.` / `old.` row-image match
|
|
194
|
-
* along, which is inert here: a partial-index predicate describes rows already
|
|
195
|
-
* stored, has no written-row context, and a predicate naming one would not plan
|
|
196
|
-
* in the first place. Nothing to suppress — noted so the shared entry point does
|
|
197
|
-
* not read as an oversight.
|
|
198
|
-
*/
|
|
199
|
-
export declare function renameColumnInIndexPredicates(indexes: ReadonlyArray<{
|
|
200
|
-
readonly predicate?: AST.Expression;
|
|
201
|
-
}> | undefined, tableName: string, oldColName: string, newColName: string, defaultSchemaName: string, resolveColumnInSource?: ResolveColumnInSource): boolean;
|
|
202
|
-
/**
|
|
203
|
-
* Rewrite the renamed column inside every CHECK constraint expression of `checks`
|
|
204
|
-
* belonging to the renamed table itself, in place. The seeded-scope entry point
|
|
205
|
-
* applies for the same reason it does for a partial-index predicate: a CHECK
|
|
206
|
-
* resolves unqualified refs against its owning table.
|
|
207
|
-
*
|
|
208
|
-
* Only pass the renamed table's OWN checks — a CHECK on a *different* table that
|
|
209
|
-
* happens to reference the renamed table needs {@link renameColumnInAst}, whose
|
|
210
|
-
* walk has no implicit seed.
|
|
211
|
-
*/
|
|
212
|
-
export declare function renameColumnInCheckConstraints(checks: ReadonlyArray<{
|
|
213
|
-
readonly expr: AST.Expression;
|
|
214
|
-
}> | undefined, tableName: string, oldColName: string, newColName: string, defaultSchemaName: string, resolveColumnInSource?: ResolveColumnInSource): boolean;
|
|
215
|
-
/**
|
|
216
|
-
* Rewrite the renamed column inside the two expressions a `ColumnSchema` can carry —
|
|
217
|
-
* a column DEFAULT (`b integer default (new.a + 1)`, however authored: inline, or via
|
|
218
|
-
* `ALTER TABLE … ALTER COLUMN … SET DEFAULT`, which writes the same field) and a
|
|
219
|
-
* generated column's body (`g integer generated always as (a + 1)`) — in place, for
|
|
220
|
-
* every column of the renamed table itself.
|
|
221
|
-
*
|
|
222
|
-
* The seeded {@link renameColumnInCheckExpression} entry point is correct for both, for
|
|
223
|
-
* the two halves of what the seed provides:
|
|
224
|
-
*
|
|
225
|
-
* - The implicit unaliased binding to the owning table is what makes a generated
|
|
226
|
-
* column's **bare** `a` resolve — it has no FROM clause to bind against, exactly like
|
|
227
|
-
* a CHECK.
|
|
228
|
-
* - The seed also owns the `new.` / `old.` **row-image** namespace, which is what makes a
|
|
229
|
-
* default's `new.a` resolve. A default is evaluated against the row being written, so
|
|
230
|
-
* that qualifier names this table's row image, not anything a FROM binds.
|
|
231
|
-
*
|
|
232
|
-
* Case folding (`NEW.A`) and the shadowing edge (a real table literally named `new`,
|
|
233
|
-
* reached from a subquery inside the expression) therefore behave exactly as they do for
|
|
234
|
-
* a CHECK, because the same walk decides all three.
|
|
235
|
-
*
|
|
236
|
-
* Only pass the renamed table's OWN columns. A default on a *different* table can reach
|
|
237
|
-
* this table only through a subquery, so an unqualified ref there must bind inside that
|
|
238
|
-
* subquery's FROM — that caller wants {@link renameColumnInAst}, whose walk has no seed.
|
|
239
|
-
*
|
|
240
|
-
* Same sharing and idempotence story as {@link renameColumnInCheckConstraints}: a
|
|
241
|
-
* module's rename hook rebuilds only the renamed column's `ColumnSchema` and keeps every
|
|
242
|
-
* other one by reference, and even the rebuilt one carries the SAME expression nodes
|
|
243
|
-
* (`buildConstraintsFromColumn` passes them into the reconstructed `ColumnDef` by
|
|
244
|
-
* reference and `columnDefToSchema` assigns them straight back), so one in-place rewrite
|
|
245
|
-
* reaches every holder and a second call with the same pair is a no-op.
|
|
246
|
-
*
|
|
247
|
-
* The parameter is structurally typed rather than `ColumnSchema[]` so this module stays
|
|
248
|
-
* free of catalog imports; `ColumnSchema` satisfies it.
|
|
249
|
-
*/
|
|
250
|
-
export declare function renameColumnInColumnExpressions(columns: ReadonlyArray<{
|
|
251
|
-
readonly defaultValue?: AST.Expression | null;
|
|
252
|
-
readonly generatedExpr?: AST.Expression;
|
|
253
|
-
}> | undefined, tableName: string, oldColName: string, newColName: string, defaultSchemaName: string, resolveColumnInSource?: ResolveColumnInSource): boolean;
|
|
254
|
-
/**
|
|
255
|
-
* Strip table-qualified self-references in a CHECK expression down to the
|
|
256
|
-
* unqualified form: `check (t.qty > 0)` (or `main.t.qty`) becomes
|
|
257
|
-
* `check (qty > 0)` so the constraint planner's row-context scope — which
|
|
258
|
-
* registers bare / `NEW.` / `OLD.` column names only — can resolve it.
|
|
259
|
-
*
|
|
260
|
-
* Deliberately NOT done by seeding `<table>.<col>` keys into the constraint
|
|
261
|
-
* scope: that scope is an ancestor of every subquery planned inside the
|
|
262
|
-
* CHECK, and a join peer's parent-chain fallback (`MultiScope` first-match
|
|
263
|
-
* on qualified names) would resolve an inner relation's qualified columns
|
|
264
|
-
* against the outer row context (observed with lens view expansions).
|
|
265
|
-
*
|
|
266
|
-
* The walk mirrors SQL shadowing rules: a qualifier rebound by an inner
|
|
267
|
-
* FROM (same table re-selected, an alias, or a CTE) is left untouched. A
|
|
268
|
-
* self-qualified ref inside a subquery is stripped only when no
|
|
269
|
-
* intervening FROM frame could capture the resulting unqualified name —
|
|
270
|
-
* real-table sources are asked via `resolveColumnInSource`; subquery /
|
|
271
|
-
* function / CTE sources are unanalyzable and conservatively block the
|
|
272
|
-
* strip (the ref then stays qualified and fails to resolve exactly as it
|
|
273
|
-
* did before this rewrite existed). CTE and derived-table bodies cannot
|
|
274
|
-
* correlate to the constraint row, so stripping is suppressed inside them.
|
|
275
|
-
*
|
|
276
|
-
* Mutates `expr` in place (callers pass a clone of the stored constraint
|
|
277
|
-
* AST) and returns whether anything was rewritten.
|
|
278
|
-
*/
|
|
279
|
-
export declare function stripSelfQualifierInCheckExpression(expr: AST.AstNode | undefined, tableName: string, defaultSchemaName: string, resolveColumnInSource: ResolveColumnInSource): boolean;
|
|
2
|
+
* In-place, scope-aware AST rewriters over schema-object expressions: the
|
|
3
|
+
* rename walkers propagate ALTER TABLE RENAME operations into dependent
|
|
4
|
+
* objects (CHECK expressions, view SELECT bodies, etc.), and the
|
|
5
|
+
* self-qualifier strip folds a CHECK's table-qualified self-references so
|
|
6
|
+
* the constraint planner's row-context scope can resolve them.
|
|
7
|
+
*
|
|
8
|
+
* The three walkers live in `rename/`, split along their seams — table
|
|
9
|
+
* rename (`rename/table-rename.ts`), column rename
|
|
10
|
+
* (`rename/column-rename.ts`), self-qualifier strip
|
|
11
|
+
* (`rename/self-qualifier-strip.ts`) — over the shared vocabulary in
|
|
12
|
+
* `rename/shared.ts`. This module re-exports the public surface so callers
|
|
13
|
+
* keep one import path.
|
|
14
|
+
*/
|
|
15
|
+
export type { ResolveColumnInSource, ResolveObjectRef, RowImageContext, TableRenameTarget } from './rename/shared.js';
|
|
16
|
+
export { objectRefKey, objectRefKeySchema, singleSchemaObjectRefResolver } from './rename/shared.js';
|
|
17
|
+
export { renameTableInAst, tableReferencedInAst, collectTableRefsInAst, renameTableInIndexPredicates, renameTableInCheckConstraints, renameTableInColumnExpressions, type TableRenameOpts, } from './rename/table-rename.js';
|
|
18
|
+
export { PROBE_COLUMN_NAME, renameColumnInAst, renameColumnInCheckExpression, columnReferencedInAst, columnReferencedInCheckExpression, renameColumnInIndexPredicates, renameColumnInCheckConstraints, renameColumnInColumnExpressions, bodyExposesRenamedColumn, bodyPublishesColumnNamed, } from './rename/column-rename.js';
|
|
19
|
+
export { stripSelfQualifierInCheckExpression } from './rename/self-qualifier-strip.js';
|
|
280
20
|
//# sourceMappingURL=rename-rewriter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rename-rewriter.d.ts","sourceRoot":"","sources":["../../../src/schema/rename-rewriter.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"rename-rewriter.d.ts","sourceRoot":"","sources":["../../../src/schema/rename-rewriter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACtH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACrG,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,4BAA4B,EAC5B,6BAA6B,EAC7B,8BAA8B,EAC9B,KAAK,eAAe,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACN,iBAAiB,EACjB,iBAAiB,EACjB,6BAA6B,EAC7B,qBAAqB,EACrB,iCAAiC,EACjC,6BAA6B,EAC7B,8BAA8B,EAC9B,+BAA+B,EAC/B,wBAAwB,EACxB,wBAAwB,GACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,mCAAmC,EAAE,MAAM,kCAAkC,CAAC"}
|