@quereus/quereus 2.9.0 → 3.0.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/README.md +224 -222
- package/dist/src/core/database-assertions.d.ts +36 -16
- package/dist/src/core/database-assertions.d.ts.map +1 -1
- package/dist/src/core/database-assertions.js +222 -118
- package/dist/src/core/database-assertions.js.map +1 -1
- package/dist/src/core/database-transaction.d.ts +96 -13
- package/dist/src/core/database-transaction.d.ts.map +1 -1
- package/dist/src/core/database-transaction.js +294 -35
- package/dist/src/core/database-transaction.js.map +1 -1
- package/dist/src/core/database-watchers.d.ts +58 -0
- package/dist/src/core/database-watchers.d.ts.map +1 -0
- package/dist/src/core/database-watchers.js +206 -0
- package/dist/src/core/database-watchers.js.map +1 -0
- package/dist/src/core/database.d.ts +78 -5
- package/dist/src/core/database.d.ts.map +1 -1
- package/dist/src/core/database.js +120 -20
- package/dist/src/core/database.js.map +1 -1
- package/dist/src/core/statement.d.ts +9 -0
- package/dist/src/core/statement.d.ts.map +1 -1
- package/dist/src/core/statement.js +29 -0
- package/dist/src/core/statement.js.map +1 -1
- package/dist/src/core/table-handle.d.ts +45 -0
- package/dist/src/core/table-handle.d.ts.map +1 -0
- package/dist/src/core/table-handle.js +54 -0
- package/dist/src/core/table-handle.js.map +1 -0
- package/dist/src/func/builtins/conversion.d.ts.map +1 -1
- package/dist/src/func/builtins/conversion.js +12 -1
- 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 +22 -8
- package/dist/src/func/builtins/explain.js.map +1 -1
- package/dist/src/func/builtins/generation.d.ts.map +1 -1
- package/dist/src/func/builtins/generation.js +26 -1
- package/dist/src/func/builtins/generation.js.map +1 -1
- package/dist/src/func/builtins/index.d.ts.map +1 -1
- package/dist/src/func/builtins/index.js +5 -1
- package/dist/src/func/builtins/index.js.map +1 -1
- package/dist/src/func/builtins/json-tvf.d.ts.map +1 -1
- package/dist/src/func/builtins/json-tvf.js +16 -2
- package/dist/src/func/builtins/json-tvf.js.map +1 -1
- package/dist/src/func/builtins/schema.d.ts +4 -0
- package/dist/src/func/builtins/schema.d.ts.map +1 -1
- package/dist/src/func/builtins/schema.js +270 -11
- package/dist/src/func/builtins/schema.js.map +1 -1
- package/dist/src/func/registration.d.ts +19 -1
- package/dist/src/func/registration.d.ts.map +1 -1
- package/dist/src/func/registration.js +8 -3
- package/dist/src/func/registration.js.map +1 -1
- package/dist/src/index.d.ts +7 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +5 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/parser/parser.d.ts.map +1 -1
- package/dist/src/parser/parser.js +12 -4
- package/dist/src/parser/parser.js.map +1 -1
- package/dist/src/planner/analysis/assertion-classifier.d.ts +71 -0
- package/dist/src/planner/analysis/assertion-classifier.d.ts.map +1 -0
- package/dist/src/planner/analysis/assertion-classifier.js +286 -0
- package/dist/src/planner/analysis/assertion-classifier.js.map +1 -0
- package/dist/src/planner/analysis/assertion-hoist-cache.d.ts +34 -0
- package/dist/src/planner/analysis/assertion-hoist-cache.d.ts.map +1 -0
- package/dist/src/planner/analysis/assertion-hoist-cache.js +119 -0
- package/dist/src/planner/analysis/assertion-hoist-cache.js.map +1 -0
- package/dist/src/planner/analysis/binding-extractor.d.ts +58 -0
- package/dist/src/planner/analysis/binding-extractor.d.ts.map +1 -0
- package/dist/src/planner/analysis/binding-extractor.js +110 -0
- package/dist/src/planner/analysis/binding-extractor.js.map +1 -0
- package/dist/src/planner/analysis/change-scope.d.ts +184 -0
- package/dist/src/planner/analysis/change-scope.d.ts.map +1 -0
- package/dist/src/planner/analysis/change-scope.js +825 -0
- package/dist/src/planner/analysis/change-scope.js.map +1 -0
- package/dist/src/planner/analysis/check-extraction.d.ts +29 -0
- package/dist/src/planner/analysis/check-extraction.d.ts.map +1 -0
- package/dist/src/planner/analysis/check-extraction.js +420 -0
- package/dist/src/planner/analysis/check-extraction.js.map +1 -0
- package/dist/src/planner/analysis/constraint-extractor.d.ts +47 -7
- package/dist/src/planner/analysis/constraint-extractor.d.ts.map +1 -1
- package/dist/src/planner/analysis/constraint-extractor.js +169 -92
- package/dist/src/planner/analysis/constraint-extractor.js.map +1 -1
- package/dist/src/planner/analysis/partial-unique-extraction.d.ts +68 -0
- package/dist/src/planner/analysis/partial-unique-extraction.d.ts.map +1 -0
- package/dist/src/planner/analysis/partial-unique-extraction.js +347 -0
- package/dist/src/planner/analysis/partial-unique-extraction.js.map +1 -0
- package/dist/src/planner/analysis/predicate-conjuncts.d.ts +14 -0
- package/dist/src/planner/analysis/predicate-conjuncts.d.ts.map +1 -0
- package/dist/src/planner/analysis/predicate-conjuncts.js +31 -0
- package/dist/src/planner/analysis/predicate-conjuncts.js.map +1 -0
- package/dist/src/planner/analysis/predicate-shape.d.ts +52 -0
- package/dist/src/planner/analysis/predicate-shape.d.ts.map +1 -0
- package/dist/src/planner/analysis/predicate-shape.js +119 -0
- package/dist/src/planner/analysis/predicate-shape.js.map +1 -0
- package/dist/src/planner/analysis/sat-checker.d.ts +43 -0
- package/dist/src/planner/analysis/sat-checker.d.ts.map +1 -0
- package/dist/src/planner/analysis/sat-checker.js +393 -0
- package/dist/src/planner/analysis/sat-checker.js.map +1 -0
- package/dist/src/planner/building/table.d.ts.map +1 -1
- package/dist/src/planner/building/table.js +1 -1
- package/dist/src/planner/building/table.js.map +1 -1
- package/dist/src/planner/framework/characteristics.d.ts +10 -1
- package/dist/src/planner/framework/characteristics.d.ts.map +1 -1
- package/dist/src/planner/framework/characteristics.js +24 -5
- package/dist/src/planner/framework/characteristics.js.map +1 -1
- package/dist/src/planner/framework/pass.d.ts.map +1 -1
- package/dist/src/planner/framework/pass.js +46 -16
- package/dist/src/planner/framework/pass.js.map +1 -1
- package/dist/src/planner/framework/physical-utils.d.ts +0 -9
- package/dist/src/planner/framework/physical-utils.d.ts.map +1 -1
- package/dist/src/planner/framework/physical-utils.js +0 -31
- package/dist/src/planner/framework/physical-utils.js.map +1 -1
- package/dist/src/planner/nodes/aggregate-node.d.ts +25 -0
- package/dist/src/planner/nodes/aggregate-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/aggregate-node.js +75 -8
- package/dist/src/planner/nodes/aggregate-node.js.map +1 -1
- package/dist/src/planner/nodes/alias-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/alias-node.js +6 -1
- package/dist/src/planner/nodes/alias-node.js.map +1 -1
- package/dist/src/planner/nodes/asof-scan-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/asof-scan-node.js +17 -3
- package/dist/src/planner/nodes/asof-scan-node.js.map +1 -1
- package/dist/src/planner/nodes/bloom-join-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/bloom-join-node.js +19 -9
- package/dist/src/planner/nodes/bloom-join-node.js.map +1 -1
- package/dist/src/planner/nodes/distinct-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/distinct-node.js +10 -6
- package/dist/src/planner/nodes/distinct-node.js.map +1 -1
- package/dist/src/planner/nodes/empty-relation-node.d.ts +27 -0
- package/dist/src/planner/nodes/empty-relation-node.d.ts.map +1 -0
- package/dist/src/planner/nodes/empty-relation-node.js +61 -0
- package/dist/src/planner/nodes/empty-relation-node.js.map +1 -0
- package/dist/src/planner/nodes/filter.d.ts.map +1 -1
- package/dist/src/planner/nodes/filter.js +65 -5
- package/dist/src/planner/nodes/filter.js.map +1 -1
- package/dist/src/planner/nodes/hash-aggregate.d.ts +1 -1
- package/dist/src/planner/nodes/hash-aggregate.d.ts.map +1 -1
- package/dist/src/planner/nodes/hash-aggregate.js +8 -6
- package/dist/src/planner/nodes/hash-aggregate.js.map +1 -1
- package/dist/src/planner/nodes/join-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/join-node.js +12 -9
- package/dist/src/planner/nodes/join-node.js.map +1 -1
- package/dist/src/planner/nodes/join-utils.d.ts +24 -1
- package/dist/src/planner/nodes/join-utils.d.ts.map +1 -1
- package/dist/src/planner/nodes/join-utils.js +86 -0
- package/dist/src/planner/nodes/join-utils.js.map +1 -1
- package/dist/src/planner/nodes/limit-offset.d.ts.map +1 -1
- package/dist/src/planner/nodes/limit-offset.js +6 -1
- package/dist/src/planner/nodes/limit-offset.js.map +1 -1
- package/dist/src/planner/nodes/merge-join-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/merge-join-node.js +19 -9
- package/dist/src/planner/nodes/merge-join-node.js.map +1 -1
- package/dist/src/planner/nodes/ordinal-slice-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/ordinal-slice-node.js +5 -2
- package/dist/src/planner/nodes/ordinal-slice-node.js.map +1 -1
- package/dist/src/planner/nodes/plan-node-type.d.ts +1 -0
- package/dist/src/planner/nodes/plan-node-type.d.ts.map +1 -1
- package/dist/src/planner/nodes/plan-node-type.js +1 -0
- package/dist/src/planner/nodes/plan-node-type.js.map +1 -1
- package/dist/src/planner/nodes/plan-node.d.ts +186 -4
- package/dist/src/planner/nodes/plan-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/plan-node.js.map +1 -1
- package/dist/src/planner/nodes/project-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/project-node.js +75 -30
- package/dist/src/planner/nodes/project-node.js.map +1 -1
- package/dist/src/planner/nodes/reference.d.ts +24 -2
- package/dist/src/planner/nodes/reference.d.ts.map +1 -1
- package/dist/src/planner/nodes/reference.js +101 -1
- package/dist/src/planner/nodes/reference.js.map +1 -1
- package/dist/src/planner/nodes/retrieve-node.d.ts +9 -1
- package/dist/src/planner/nodes/retrieve-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/retrieve-node.js +21 -0
- package/dist/src/planner/nodes/retrieve-node.js.map +1 -1
- package/dist/src/planner/nodes/returning-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/returning-node.js +64 -28
- package/dist/src/planner/nodes/returning-node.js.map +1 -1
- package/dist/src/planner/nodes/scalar.d.ts +1 -0
- package/dist/src/planner/nodes/scalar.d.ts.map +1 -1
- package/dist/src/planner/nodes/scalar.js +12 -0
- package/dist/src/planner/nodes/scalar.js.map +1 -1
- package/dist/src/planner/nodes/set-operation-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/set-operation-node.js +15 -0
- package/dist/src/planner/nodes/set-operation-node.js.map +1 -1
- package/dist/src/planner/nodes/single-row.d.ts.map +1 -1
- package/dist/src/planner/nodes/single-row.js +3 -1
- package/dist/src/planner/nodes/single-row.js.map +1 -1
- package/dist/src/planner/nodes/sort.d.ts.map +1 -1
- package/dist/src/planner/nodes/sort.js +10 -3
- package/dist/src/planner/nodes/sort.js.map +1 -1
- package/dist/src/planner/nodes/stream-aggregate.d.ts +1 -1
- package/dist/src/planner/nodes/stream-aggregate.d.ts.map +1 -1
- package/dist/src/planner/nodes/stream-aggregate.js +8 -8
- package/dist/src/planner/nodes/stream-aggregate.js.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.d.ts +3 -3
- package/dist/src/planner/nodes/table-access-nodes.d.ts.map +1 -1
- package/dist/src/planner/nodes/table-access-nodes.js +26 -8
- package/dist/src/planner/nodes/table-access-nodes.js.map +1 -1
- package/dist/src/planner/nodes/table-function-call.d.ts +4 -1
- package/dist/src/planner/nodes/table-function-call.d.ts.map +1 -1
- package/dist/src/planner/nodes/table-function-call.js +224 -14
- package/dist/src/planner/nodes/table-function-call.js.map +1 -1
- package/dist/src/planner/nodes/window-node.d.ts.map +1 -1
- package/dist/src/planner/nodes/window-node.js +9 -2
- package/dist/src/planner/nodes/window-node.js.map +1 -1
- package/dist/src/planner/optimizer-tuning.d.ts +29 -1
- package/dist/src/planner/optimizer-tuning.d.ts.map +1 -1
- package/dist/src/planner/optimizer-tuning.js +3 -0
- package/dist/src/planner/optimizer-tuning.js.map +1 -1
- package/dist/src/planner/optimizer.d.ts.map +1 -1
- package/dist/src/planner/optimizer.js +187 -0
- package/dist/src/planner/optimizer.js.map +1 -1
- package/dist/src/planner/rules/access/rule-select-access-path.d.ts.map +1 -1
- package/dist/src/planner/rules/access/rule-select-access-path.js +22 -7
- package/dist/src/planner/rules/access/rule-select-access-path.js.map +1 -1
- package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.d.ts +30 -0
- package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.d.ts.map +1 -0
- package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.js +116 -0
- package/dist/src/planner/rules/aggregate/rule-groupby-fd-simplification.js.map +1 -0
- package/dist/src/planner/rules/distinct/rule-distinct-elimination.d.ts +7 -7
- package/dist/src/planner/rules/distinct/rule-distinct-elimination.d.ts.map +1 -1
- package/dist/src/planner/rules/distinct/rule-distinct-elimination.js +18 -16
- package/dist/src/planner/rules/distinct/rule-distinct-elimination.js.map +1 -1
- package/dist/src/planner/rules/join/rule-join-elimination.d.ts +56 -0
- package/dist/src/planner/rules/join/rule-join-elimination.d.ts.map +1 -0
- package/dist/src/planner/rules/join/rule-join-elimination.js +326 -0
- package/dist/src/planner/rules/join/rule-join-elimination.js.map +1 -0
- package/dist/src/planner/rules/join/rule-join-greedy-commute.d.ts.map +1 -1
- package/dist/src/planner/rules/join/rule-join-greedy-commute.js +10 -2
- package/dist/src/planner/rules/join/rule-join-greedy-commute.js.map +1 -1
- package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.d.ts +20 -0
- package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.d.ts.map +1 -0
- package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.js +181 -0
- package/dist/src/planner/rules/predicate/rule-aggregate-predicate-pushdown.js.map +1 -0
- package/dist/src/planner/rules/predicate/rule-empty-relation-folding.d.ts +46 -0
- package/dist/src/planner/rules/predicate/rule-empty-relation-folding.d.ts.map +1 -0
- package/dist/src/planner/rules/predicate/rule-empty-relation-folding.js +156 -0
- package/dist/src/planner/rules/predicate/rule-empty-relation-folding.js.map +1 -0
- package/dist/src/planner/rules/predicate/rule-filter-contradiction.d.ts +30 -0
- package/dist/src/planner/rules/predicate/rule-filter-contradiction.d.ts.map +1 -0
- package/dist/src/planner/rules/predicate/rule-filter-contradiction.js +60 -0
- package/dist/src/planner/rules/predicate/rule-filter-contradiction.js.map +1 -0
- package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.d.ts +45 -0
- package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.d.ts.map +1 -0
- package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.js +210 -0
- package/dist/src/planner/rules/predicate/rule-predicate-inference-equivalence.js.map +1 -0
- package/dist/src/planner/rules/predicate/rule-sargable-range-rewrite.d.ts +29 -0
- package/dist/src/planner/rules/predicate/rule-sargable-range-rewrite.d.ts.map +1 -0
- package/dist/src/planner/rules/predicate/rule-sargable-range-rewrite.js +161 -0
- package/dist/src/planner/rules/predicate/rule-sargable-range-rewrite.js.map +1 -0
- package/dist/src/planner/rules/sort/rule-orderby-fd-pruning.d.ts +39 -0
- package/dist/src/planner/rules/sort/rule-orderby-fd-pruning.d.ts.map +1 -0
- package/dist/src/planner/rules/sort/rule-orderby-fd-pruning.js +91 -0
- package/dist/src/planner/rules/sort/rule-orderby-fd-pruning.js.map +1 -0
- package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.d.ts +35 -0
- package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.d.ts.map +1 -0
- package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.js +74 -0
- package/dist/src/planner/rules/subquery/rule-anti-join-fk-empty.js.map +1 -0
- package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.d.ts +27 -0
- package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.d.ts.map +1 -0
- package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.js +103 -0
- package/dist/src/planner/rules/subquery/rule-semi-join-fk-trivial.js.map +1 -0
- package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.d.ts.map +1 -1
- package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js +1 -25
- package/dist/src/planner/rules/subquery/rule-subquery-decorrelation.js.map +1 -1
- package/dist/src/planner/scopes/global.js +2 -2
- package/dist/src/planner/scopes/global.js.map +1 -1
- package/dist/src/planner/type-utils.d.ts.map +1 -1
- package/dist/src/planner/type-utils.js +11 -0
- package/dist/src/planner/type-utils.js.map +1 -1
- package/dist/src/planner/util/fd-utils.d.ts +245 -0
- package/dist/src/planner/util/fd-utils.d.ts.map +1 -0
- package/dist/src/planner/util/fd-utils.js +1416 -0
- package/dist/src/planner/util/fd-utils.js.map +1 -0
- package/dist/src/planner/util/ind-utils.d.ts +79 -0
- package/dist/src/planner/util/ind-utils.d.ts.map +1 -0
- package/dist/src/planner/util/ind-utils.js +146 -0
- package/dist/src/planner/util/ind-utils.js.map +1 -0
- package/dist/src/planner/util/key-utils.d.ts +75 -14
- package/dist/src/planner/util/key-utils.d.ts.map +1 -1
- package/dist/src/planner/util/key-utils.js +234 -57
- package/dist/src/planner/util/key-utils.js.map +1 -1
- package/dist/src/runtime/delta-executor.d.ts +134 -0
- package/dist/src/runtime/delta-executor.d.ts.map +1 -0
- package/dist/src/runtime/delta-executor.js +382 -0
- package/dist/src/runtime/delta-executor.js.map +1 -0
- package/dist/src/runtime/emit/alter-table.d.ts.map +1 -1
- package/dist/src/runtime/emit/alter-table.js +52 -16
- package/dist/src/runtime/emit/alter-table.js.map +1 -1
- package/dist/src/runtime/emit/create-assertion.d.ts.map +1 -1
- package/dist/src/runtime/emit/create-assertion.js +3 -2
- package/dist/src/runtime/emit/create-assertion.js.map +1 -1
- package/dist/src/runtime/emit/dml-executor.d.ts.map +1 -1
- package/dist/src/runtime/emit/dml-executor.js +40 -13
- package/dist/src/runtime/emit/dml-executor.js.map +1 -1
- package/dist/src/runtime/emit/drop-assertion.js +1 -1
- package/dist/src/runtime/emit/drop-assertion.js.map +1 -1
- package/dist/src/runtime/emit/empty-relation.d.ts +5 -0
- package/dist/src/runtime/emit/empty-relation.d.ts.map +1 -0
- package/dist/src/runtime/emit/empty-relation.js +11 -0
- package/dist/src/runtime/emit/empty-relation.js.map +1 -0
- package/dist/src/runtime/foreign-key-actions.d.ts +16 -0
- package/dist/src/runtime/foreign-key-actions.d.ts.map +1 -1
- package/dist/src/runtime/foreign-key-actions.js +81 -1
- package/dist/src/runtime/foreign-key-actions.js.map +1 -1
- package/dist/src/runtime/register.d.ts.map +1 -1
- package/dist/src/runtime/register.js +2 -0
- package/dist/src/runtime/register.js.map +1 -1
- package/dist/src/schema/assertion.d.ts +8 -0
- package/dist/src/schema/assertion.d.ts.map +1 -1
- package/dist/src/schema/change-events.d.ts +5 -1
- package/dist/src/schema/change-events.d.ts.map +1 -1
- package/dist/src/schema/change-events.js.map +1 -1
- package/dist/src/schema/function.d.ts +65 -1
- package/dist/src/schema/function.d.ts.map +1 -1
- package/dist/src/schema/function.js +31 -0
- package/dist/src/schema/function.js.map +1 -1
- package/dist/src/schema/manager.d.ts +33 -0
- package/dist/src/schema/manager.d.ts.map +1 -1
- package/dist/src/schema/manager.js +95 -4
- package/dist/src/schema/manager.js.map +1 -1
- package/dist/src/schema/rename-rewriter.d.ts.map +1 -1
- package/dist/src/schema/rename-rewriter.js +303 -102
- package/dist/src/schema/rename-rewriter.js.map +1 -1
- package/dist/src/schema/table.d.ts +21 -2
- package/dist/src/schema/table.d.ts.map +1 -1
- package/dist/src/schema/table.js +17 -8
- package/dist/src/schema/table.js.map +1 -1
- package/dist/src/types/temporal-types.d.ts.map +1 -1
- package/dist/src/types/temporal-types.js +32 -0
- package/dist/src/types/temporal-types.js.map +1 -1
- package/dist/src/vtab/events.d.ts +9 -0
- package/dist/src/vtab/events.d.ts.map +1 -1
- package/dist/src/vtab/events.js +19 -0
- package/dist/src/vtab/events.js.map +1 -1
- package/dist/src/vtab/memory/layer/manager.d.ts.map +1 -1
- package/dist/src/vtab/memory/layer/manager.js +24 -5
- package/dist/src/vtab/memory/layer/manager.js.map +1 -1
- package/dist/src/vtab/memory/utils/predicate.d.ts +2 -1
- package/dist/src/vtab/memory/utils/predicate.d.ts.map +1 -1
- package/dist/src/vtab/memory/utils/predicate.js +32 -1
- package/dist/src/vtab/memory/utils/predicate.js.map +1 -1
- package/package.json +3 -3
|
@@ -5,6 +5,39 @@ import { isScalarFunctionSchema, isTableValuedFunctionSchema, isAggregateFunctio
|
|
|
5
5
|
import { isWindowFunction } from "../../schema/window-function.js";
|
|
6
6
|
import { INTEGER_TYPE, TEXT_TYPE } from "../../types/builtin-types.js";
|
|
7
7
|
import { FunctionFlags } from "../../common/constants.js";
|
|
8
|
+
import { RowOpFlag } from "../../schema/table.js";
|
|
9
|
+
import { jsonStringify } from "../../util/serialization.js";
|
|
10
|
+
import { expressionToString } from "../../emit/ast-stringify.js";
|
|
11
|
+
/**
|
|
12
|
+
* Encodes a tag bag as a JSON object string. Returns null when there are no
|
|
13
|
+
* tags so callers can use `WHERE tags IS NULL` to filter untagged objects.
|
|
14
|
+
* BigInt values are coerced to JSON-safe numbers/strings via `jsonStringify`.
|
|
15
|
+
*/
|
|
16
|
+
function tagsToJson(tags) {
|
|
17
|
+
if (!tags)
|
|
18
|
+
return null;
|
|
19
|
+
const keys = Object.keys(tags);
|
|
20
|
+
if (keys.length === 0)
|
|
21
|
+
return null;
|
|
22
|
+
return jsonStringify(tags);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Converts a RowOpMask bitmask to a comma-joined operations list.
|
|
26
|
+
* An empty/default mask returns the canonical default-all string so the
|
|
27
|
+
* value round-trips cleanly.
|
|
28
|
+
*/
|
|
29
|
+
function rowOpMaskToString(mask) {
|
|
30
|
+
const parts = [];
|
|
31
|
+
if (mask & RowOpFlag.INSERT)
|
|
32
|
+
parts.push('insert');
|
|
33
|
+
if (mask & RowOpFlag.UPDATE)
|
|
34
|
+
parts.push('update');
|
|
35
|
+
if (mask & RowOpFlag.DELETE)
|
|
36
|
+
parts.push('delete');
|
|
37
|
+
if (parts.length === 0)
|
|
38
|
+
return 'insert,update,delete';
|
|
39
|
+
return parts.join(',');
|
|
40
|
+
}
|
|
8
41
|
/**
|
|
9
42
|
* Generates a function signature string for display
|
|
10
43
|
*/
|
|
@@ -28,7 +61,8 @@ export const schemaFunc = createIntegratedTableValuedFunction({
|
|
|
28
61
|
{ name: 'type', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
29
62
|
{ name: 'name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
30
63
|
{ name: 'tbl_name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
31
|
-
{ name: 'sql', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true }
|
|
64
|
+
{ name: 'sql', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
65
|
+
{ name: 'tags', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true }
|
|
32
66
|
],
|
|
33
67
|
keys: [],
|
|
34
68
|
rowConstraints: []
|
|
@@ -54,7 +88,8 @@ export const schemaFunc = createIntegratedTableValuedFunction({
|
|
|
54
88
|
tableSchema.isView ? 'view' : 'table',
|
|
55
89
|
tableSchema.name,
|
|
56
90
|
tableSchema.name,
|
|
57
|
-
createSql
|
|
91
|
+
createSql,
|
|
92
|
+
tagsToJson(tableSchema.tags)
|
|
58
93
|
];
|
|
59
94
|
// Process Indexes for this table
|
|
60
95
|
if (tableSchema.indexes) {
|
|
@@ -82,7 +117,8 @@ export const schemaFunc = createIntegratedTableValuedFunction({
|
|
|
82
117
|
'index',
|
|
83
118
|
indexSchema.name,
|
|
84
119
|
tableSchema.name,
|
|
85
|
-
indexSql
|
|
120
|
+
indexSql,
|
|
121
|
+
tagsToJson(indexSchema.tags)
|
|
86
122
|
];
|
|
87
123
|
}
|
|
88
124
|
}
|
|
@@ -94,7 +130,8 @@ export const schemaFunc = createIntegratedTableValuedFunction({
|
|
|
94
130
|
'view',
|
|
95
131
|
viewSchema.name,
|
|
96
132
|
viewSchema.name,
|
|
97
|
-
viewSchema.sql
|
|
133
|
+
viewSchema.sql,
|
|
134
|
+
tagsToJson(viewSchema.tags)
|
|
98
135
|
];
|
|
99
136
|
}
|
|
100
137
|
// Process Functions
|
|
@@ -104,7 +141,8 @@ export const schemaFunc = createIntegratedTableValuedFunction({
|
|
|
104
141
|
'function',
|
|
105
142
|
funcSchema.name,
|
|
106
143
|
funcSchema.name,
|
|
107
|
-
stringifyCreateFunction(funcSchema)
|
|
144
|
+
stringifyCreateFunction(funcSchema),
|
|
145
|
+
null
|
|
108
146
|
];
|
|
109
147
|
}
|
|
110
148
|
};
|
|
@@ -116,7 +154,7 @@ export const schemaFunc = createIntegratedTableValuedFunction({
|
|
|
116
154
|
}
|
|
117
155
|
catch (error) {
|
|
118
156
|
// If schema introspection fails, yield an error row
|
|
119
|
-
yield ['', 'error', 'schema_error', 'schema_error', `Failed to introspect schema: ${error.message}
|
|
157
|
+
yield ['', 'error', 'schema_error', 'schema_error', `Failed to introspect schema: ${error.message}`, null];
|
|
120
158
|
}
|
|
121
159
|
});
|
|
122
160
|
// Table information function (table-valued function)
|
|
@@ -134,11 +172,19 @@ export const tableInfoFunc = createIntegratedTableValuedFunction({
|
|
|
134
172
|
{ name: 'type', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
135
173
|
{ name: 'notnull', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
136
174
|
{ name: 'dflt_value', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
137
|
-
{ name: 'pk', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true }
|
|
175
|
+
{ name: 'pk', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
176
|
+
{ name: 'tags', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
177
|
+
{ name: 'collation', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
178
|
+
{ name: 'generated', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true }
|
|
138
179
|
],
|
|
139
180
|
keys: [],
|
|
140
181
|
rowConstraints: []
|
|
141
|
-
}
|
|
182
|
+
},
|
|
183
|
+
relationalAdvertisement: {
|
|
184
|
+
isSet: true,
|
|
185
|
+
// `cid` (column 0) is the column ordinal — unique per row.
|
|
186
|
+
keys: [[{ index: 0 }]],
|
|
187
|
+
},
|
|
142
188
|
}, async function* (db, tableName) {
|
|
143
189
|
if (typeof tableName !== 'string') {
|
|
144
190
|
throw new QuereusError('table_info() requires a table name string argument', StatusCode.ERROR);
|
|
@@ -150,13 +196,20 @@ export const tableInfoFunc = createIntegratedTableValuedFunction({
|
|
|
150
196
|
for (let i = 0; i < table.columns.length; i++) {
|
|
151
197
|
const column = table.columns[i];
|
|
152
198
|
const isPrimaryKey = table.primaryKeyDefinition.some(pk => pk.index === i);
|
|
199
|
+
// 0 = not generated, 1 = virtual generated, 2 = stored generated
|
|
200
|
+
const generatedFlag = column.generated
|
|
201
|
+
? (column.generatedStored ? 2 : 1)
|
|
202
|
+
: 0;
|
|
153
203
|
yield [
|
|
154
204
|
i, // cid
|
|
155
205
|
column.name, // name
|
|
156
206
|
column.logicalType.name, // type
|
|
157
207
|
column.notNull ? 1 : 0, // notnull
|
|
158
208
|
column.defaultValue?.toString() || null, // dflt_value
|
|
159
|
-
isPrimaryKey ? 1 : 0 // pk
|
|
209
|
+
isPrimaryKey ? 1 : 0, // pk
|
|
210
|
+
tagsToJson(column.tags), // tags
|
|
211
|
+
column.collation || 'BINARY', // collation
|
|
212
|
+
generatedFlag // generated
|
|
160
213
|
];
|
|
161
214
|
}
|
|
162
215
|
});
|
|
@@ -181,10 +234,16 @@ export const foreignKeyInfoFunc = createIntegratedTableValuedFunction({
|
|
|
181
234
|
{ name: 'on_delete', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
182
235
|
{ name: 'deferred', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
183
236
|
{ name: 'seq', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
237
|
+
{ name: 'tags', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
184
238
|
],
|
|
185
239
|
keys: [],
|
|
186
240
|
rowConstraints: []
|
|
187
|
-
}
|
|
241
|
+
},
|
|
242
|
+
relationalAdvertisement: {
|
|
243
|
+
isSet: true,
|
|
244
|
+
// Composite key (id, seq): each FK has one row per referenced column.
|
|
245
|
+
keys: [[{ index: 0 }, { index: 10 }]],
|
|
246
|
+
},
|
|
188
247
|
}, async function* (db, tableName) {
|
|
189
248
|
if (typeof tableName !== 'string') {
|
|
190
249
|
throw new QuereusError('foreign_key_info() requires a table name string argument', StatusCode.ERROR);
|
|
@@ -198,6 +257,7 @@ export const foreignKeyInfoFunc = createIntegratedTableValuedFunction({
|
|
|
198
257
|
return;
|
|
199
258
|
for (let fkIdx = 0; fkIdx < foreignKeys.length; fkIdx++) {
|
|
200
259
|
const fk = foreignKeys[fkIdx];
|
|
260
|
+
const fkTagJson = tagsToJson(fk.tags);
|
|
201
261
|
for (let seq = 0; seq < fk.columns.length; seq++) {
|
|
202
262
|
const fromCol = table.columns[fk.columns[seq]];
|
|
203
263
|
// Resolve parent column name
|
|
@@ -226,10 +286,204 @@ export const foreignKeyInfoFunc = createIntegratedTableValuedFunction({
|
|
|
226
286
|
fk.onDelete, // on_delete
|
|
227
287
|
fk.deferred ? 1 : 0, // deferred
|
|
228
288
|
seq, // seq
|
|
289
|
+
fkTagJson, // tags
|
|
290
|
+
];
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
});
|
|
294
|
+
// Index information function (table-valued function)
|
|
295
|
+
export const indexInfoFunc = createIntegratedTableValuedFunction({
|
|
296
|
+
name: 'index_info',
|
|
297
|
+
numArgs: 1,
|
|
298
|
+
deterministic: false,
|
|
299
|
+
returnType: {
|
|
300
|
+
typeClass: 'relation',
|
|
301
|
+
isReadOnly: true,
|
|
302
|
+
isSet: false,
|
|
303
|
+
columns: [
|
|
304
|
+
{ name: 'index_name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
305
|
+
{ name: 'seq', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
306
|
+
{ name: 'column_name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
307
|
+
{ name: 'desc', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
308
|
+
{ name: 'collation', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
309
|
+
{ name: 'unique', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
310
|
+
{ name: 'partial', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
311
|
+
{ name: 'tags', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
312
|
+
],
|
|
313
|
+
keys: [],
|
|
314
|
+
rowConstraints: []
|
|
315
|
+
},
|
|
316
|
+
relationalAdvertisement: {
|
|
317
|
+
isSet: true,
|
|
318
|
+
// Composite key (index_name, seq): each index has one row per indexed column position.
|
|
319
|
+
keys: [[{ index: 0 }, { index: 1 }]],
|
|
320
|
+
},
|
|
321
|
+
}, async function* (db, tableName) {
|
|
322
|
+
if (typeof tableName !== 'string') {
|
|
323
|
+
throw new QuereusError('index_info() requires a table name string argument', StatusCode.ERROR);
|
|
324
|
+
}
|
|
325
|
+
const table = db._findTable(tableName);
|
|
326
|
+
if (!table) {
|
|
327
|
+
throw new QuereusError(`Table '${tableName}' not found`, StatusCode.ERROR);
|
|
328
|
+
}
|
|
329
|
+
if (!table.indexes)
|
|
330
|
+
return;
|
|
331
|
+
for (const idx of table.indexes) {
|
|
332
|
+
const tagJson = tagsToJson(idx.tags);
|
|
333
|
+
const uniqueFlag = idx.unique ? 1 : 0;
|
|
334
|
+
const partialFlag = idx.predicate ? 1 : 0;
|
|
335
|
+
for (let seq = 0; seq < idx.columns.length; seq++) {
|
|
336
|
+
const col = idx.columns[seq];
|
|
337
|
+
const tableCol = table.columns[col.index];
|
|
338
|
+
yield [
|
|
339
|
+
idx.name, // index_name
|
|
340
|
+
seq, // seq
|
|
341
|
+
tableCol.name, // column_name
|
|
342
|
+
col.desc ? 1 : 0, // desc
|
|
343
|
+
col.collation ?? null, // collation
|
|
344
|
+
uniqueFlag, // unique
|
|
345
|
+
partialFlag, // partial
|
|
346
|
+
tagJson, // tags
|
|
347
|
+
];
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
});
|
|
351
|
+
// CHECK constraint information function (table-valued function)
|
|
352
|
+
export const checkConstraintInfoFunc = createIntegratedTableValuedFunction({
|
|
353
|
+
name: 'check_constraint_info',
|
|
354
|
+
numArgs: 1,
|
|
355
|
+
deterministic: false,
|
|
356
|
+
returnType: {
|
|
357
|
+
typeClass: 'relation',
|
|
358
|
+
isReadOnly: true,
|
|
359
|
+
isSet: false,
|
|
360
|
+
columns: [
|
|
361
|
+
{ name: 'id', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
362
|
+
{ name: 'name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
363
|
+
{ name: 'expr', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
364
|
+
{ name: 'operations', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
365
|
+
{ name: 'deferrable', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
366
|
+
{ name: 'initially_deferred', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
367
|
+
{ name: 'tags', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
368
|
+
],
|
|
369
|
+
keys: [],
|
|
370
|
+
rowConstraints: []
|
|
371
|
+
},
|
|
372
|
+
relationalAdvertisement: {
|
|
373
|
+
isSet: true,
|
|
374
|
+
// `id` (column 0) is the constraint ordinal — unique per emitted row.
|
|
375
|
+
keys: [[{ index: 0 }]],
|
|
376
|
+
},
|
|
377
|
+
}, async function* (db, tableName) {
|
|
378
|
+
if (typeof tableName !== 'string') {
|
|
379
|
+
throw new QuereusError('check_constraint_info() requires a table name string argument', StatusCode.ERROR);
|
|
380
|
+
}
|
|
381
|
+
const table = db._findTable(tableName);
|
|
382
|
+
if (!table) {
|
|
383
|
+
throw new QuereusError(`Table '${tableName}' not found`, StatusCode.ERROR);
|
|
384
|
+
}
|
|
385
|
+
const checks = table.checkConstraints;
|
|
386
|
+
for (let i = 0; i < checks.length; i++) {
|
|
387
|
+
const cc = checks[i];
|
|
388
|
+
yield [
|
|
389
|
+
i, // id
|
|
390
|
+
cc.name ?? null, // name
|
|
391
|
+
expressionToString(cc.expr), // expr
|
|
392
|
+
rowOpMaskToString(cc.operations), // operations
|
|
393
|
+
cc.deferrable ? 1 : 0, // deferrable
|
|
394
|
+
cc.initiallyDeferred ? 1 : 0, // initially_deferred
|
|
395
|
+
tagsToJson(cc.tags), // tags
|
|
396
|
+
];
|
|
397
|
+
}
|
|
398
|
+
});
|
|
399
|
+
// UNIQUE constraint information function (table-valued function)
|
|
400
|
+
export const uniqueConstraintInfoFunc = createIntegratedTableValuedFunction({
|
|
401
|
+
name: 'unique_constraint_info',
|
|
402
|
+
numArgs: 1,
|
|
403
|
+
deterministic: false,
|
|
404
|
+
returnType: {
|
|
405
|
+
typeClass: 'relation',
|
|
406
|
+
isReadOnly: true,
|
|
407
|
+
isSet: false,
|
|
408
|
+
columns: [
|
|
409
|
+
{ name: 'id', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
410
|
+
{ name: 'name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
411
|
+
{ name: 'seq', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
412
|
+
{ name: 'column_name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
413
|
+
{ name: 'partial', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
414
|
+
{ name: 'tags', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: true, isReadOnly: true }, generated: true },
|
|
415
|
+
],
|
|
416
|
+
keys: [],
|
|
417
|
+
rowConstraints: []
|
|
418
|
+
},
|
|
419
|
+
relationalAdvertisement: {
|
|
420
|
+
isSet: true,
|
|
421
|
+
// Composite (id, seq): one row per (constraint, column position).
|
|
422
|
+
keys: [[{ index: 0 }, { index: 2 }]],
|
|
423
|
+
},
|
|
424
|
+
}, async function* (db, tableName) {
|
|
425
|
+
if (typeof tableName !== 'string') {
|
|
426
|
+
throw new QuereusError('unique_constraint_info() requires a table name string argument', StatusCode.ERROR);
|
|
427
|
+
}
|
|
428
|
+
const table = db._findTable(tableName);
|
|
429
|
+
if (!table) {
|
|
430
|
+
throw new QuereusError(`Table '${tableName}' not found`, StatusCode.ERROR);
|
|
431
|
+
}
|
|
432
|
+
const uniques = table.uniqueConstraints;
|
|
433
|
+
if (!uniques)
|
|
434
|
+
return;
|
|
435
|
+
for (let i = 0; i < uniques.length; i++) {
|
|
436
|
+
const uc = uniques[i];
|
|
437
|
+
const tagJson = tagsToJson(uc.tags);
|
|
438
|
+
const partialFlag = uc.predicate ? 1 : 0;
|
|
439
|
+
for (let seq = 0; seq < uc.columns.length; seq++) {
|
|
440
|
+
const tableCol = table.columns[uc.columns[seq]];
|
|
441
|
+
yield [
|
|
442
|
+
i, // id
|
|
443
|
+
uc.name ?? null, // name
|
|
444
|
+
seq, // seq
|
|
445
|
+
tableCol.name, // column_name
|
|
446
|
+
partialFlag, // partial
|
|
447
|
+
tagJson, // tags
|
|
229
448
|
];
|
|
230
449
|
}
|
|
231
450
|
}
|
|
232
451
|
});
|
|
452
|
+
// Assertion information function (table-valued function)
|
|
453
|
+
export const assertionInfoFunc = createIntegratedTableValuedFunction({
|
|
454
|
+
name: 'assertion_info',
|
|
455
|
+
numArgs: 0,
|
|
456
|
+
deterministic: false,
|
|
457
|
+
returnType: {
|
|
458
|
+
typeClass: 'relation',
|
|
459
|
+
isReadOnly: true,
|
|
460
|
+
isSet: false,
|
|
461
|
+
columns: [
|
|
462
|
+
{ name: 'name', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
463
|
+
{ name: 'violation_sql', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
464
|
+
{ name: 'deferrable', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
465
|
+
{ name: 'initially_deferred', type: { typeClass: 'scalar', logicalType: INTEGER_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
466
|
+
{ name: 'dependent_tables', type: { typeClass: 'scalar', logicalType: TEXT_TYPE, nullable: false, isReadOnly: true }, generated: true },
|
|
467
|
+
],
|
|
468
|
+
keys: [],
|
|
469
|
+
rowConstraints: []
|
|
470
|
+
},
|
|
471
|
+
relationalAdvertisement: {
|
|
472
|
+
isSet: true,
|
|
473
|
+
keys: [[{ index: 0 }]],
|
|
474
|
+
},
|
|
475
|
+
}, async function* (db) {
|
|
476
|
+
for (const assertion of db.schemaManager.getAllAssertions()) {
|
|
477
|
+
const deps = assertion.dependentTables ?? [];
|
|
478
|
+
yield [
|
|
479
|
+
assertion.name,
|
|
480
|
+
assertion.violationSql,
|
|
481
|
+
assertion.deferrable ? 1 : 0,
|
|
482
|
+
assertion.initiallyDeferred ? 1 : 0,
|
|
483
|
+
jsonStringify(deps),
|
|
484
|
+
];
|
|
485
|
+
}
|
|
486
|
+
});
|
|
233
487
|
export function classifyFunction(funcSchema) {
|
|
234
488
|
if (isWindowFunction(funcSchema.name))
|
|
235
489
|
return 'window';
|
|
@@ -271,7 +525,12 @@ export const functionInfoFunc = createIntegratedTableValuedFunction({
|
|
|
271
525
|
],
|
|
272
526
|
keys: [],
|
|
273
527
|
rowConstraints: []
|
|
274
|
-
}
|
|
528
|
+
},
|
|
529
|
+
relationalAdvertisement: {
|
|
530
|
+
isSet: true,
|
|
531
|
+
// Composite (name, num_args): function-key matches the (name, numArgs) registration key.
|
|
532
|
+
keys: [[{ index: 0 }, { index: 1 }]],
|
|
533
|
+
},
|
|
275
534
|
}, async function* (db, filterName) {
|
|
276
535
|
const nameFilter = (typeof filterName === 'string') ? filterName.toLowerCase() : null;
|
|
277
536
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/func/builtins/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/func/builtins/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AggregateFinalizer, AggregateReducer, IntegratedTableValuedFunc, ScalarFunc, TableValuedFunc, ScalarFunctionSchema, TableValuedFunctionSchema, AggregateFunctionSchema } from '../schema/function.js';
|
|
1
|
+
import type { AggregateFinalizer, AggregateReducer, IntegratedTableValuedFunc, ScalarFunc, TableValuedFunc, ScalarFunctionSchema, TableValuedFunctionSchema, AggregateFunctionSchema, TVFAdvertisement } from '../schema/function.js';
|
|
2
2
|
import { FunctionFlags } from '../common/constants.js';
|
|
3
3
|
import type { ScalarType, RelationType } from '../common/datatype.js';
|
|
4
4
|
import type { LogicalType } from '../types/logical-type.js';
|
|
@@ -29,6 +29,22 @@ interface ScalarFuncOptions {
|
|
|
29
29
|
* that the argument types are acceptable for this function.
|
|
30
30
|
*/
|
|
31
31
|
validateArgTypes?: (argTypes: ReadonlyArray<DeepReadonly<LogicalType>>) => boolean;
|
|
32
|
+
/** Argument indices on which this function is injective when all other arguments are held constant. */
|
|
33
|
+
injectiveOnArgs?: readonly number[];
|
|
34
|
+
/** Per-argument monotonicity when all other arguments are held constant. */
|
|
35
|
+
monotoneOnArgs?: {
|
|
36
|
+
readonly [argIndex: number]: 'increasing' | 'decreasing';
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Per-argument range-rewrite kind for monotone-but-lossy functions. The
|
|
40
|
+
* actual boundary computation lives on the argument's logical type
|
|
41
|
+
* (`LogicalType.bucketBounds(kind, value)`).
|
|
42
|
+
*/
|
|
43
|
+
rangeRewriteOnArg?: {
|
|
44
|
+
readonly [argIndex: number]: {
|
|
45
|
+
readonly kind: string;
|
|
46
|
+
};
|
|
47
|
+
};
|
|
32
48
|
}
|
|
33
49
|
/**
|
|
34
50
|
* Configuration options for table-valued functions
|
|
@@ -44,6 +60,8 @@ interface TableValuedFuncOptions {
|
|
|
44
60
|
deterministic?: boolean;
|
|
45
61
|
/** Return type (relation) information */
|
|
46
62
|
returnType?: RelationType;
|
|
63
|
+
/** Optional relational / physical property advertisement */
|
|
64
|
+
relationalAdvertisement?: TVFAdvertisement;
|
|
47
65
|
}
|
|
48
66
|
export type AggValue = any;
|
|
49
67
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../src/func/registration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,EAC/H,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../src/func/registration.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,10 @@ export function createScalarFunction(options, jsFunc) {
|
|
|
22
22
|
returnType,
|
|
23
23
|
implementation: jsFunc,
|
|
24
24
|
inferReturnType: options.inferReturnType,
|
|
25
|
-
validateArgTypes: options.validateArgTypes
|
|
25
|
+
validateArgTypes: options.validateArgTypes,
|
|
26
|
+
injectiveOnArgs: options.injectiveOnArgs,
|
|
27
|
+
monotoneOnArgs: options.monotoneOnArgs,
|
|
28
|
+
rangeRewriteOnArg: options.rangeRewriteOnArg,
|
|
26
29
|
};
|
|
27
30
|
}
|
|
28
31
|
/**
|
|
@@ -47,7 +50,8 @@ export function createTableValuedFunction(options, jsFunc) {
|
|
|
47
50
|
numArgs: options.numArgs,
|
|
48
51
|
flags: options.flags ?? (FunctionFlags.UTF8 | (options.deterministic !== false ? FunctionFlags.DETERMINISTIC : 0)),
|
|
49
52
|
returnType,
|
|
50
|
-
implementation: jsFunc
|
|
53
|
+
implementation: jsFunc,
|
|
54
|
+
relationalAdvertisement: options.relationalAdvertisement
|
|
51
55
|
};
|
|
52
56
|
}
|
|
53
57
|
/**
|
|
@@ -73,7 +77,8 @@ export function createIntegratedTableValuedFunction(options, jsFunc) {
|
|
|
73
77
|
flags: options.flags ?? (FunctionFlags.UTF8 | (options.deterministic !== false ? FunctionFlags.DETERMINISTIC : 0)),
|
|
74
78
|
returnType,
|
|
75
79
|
implementation: jsFunc,
|
|
76
|
-
isIntegrated: true
|
|
80
|
+
isIntegrated: true,
|
|
81
|
+
relationalAdvertisement: options.relationalAdvertisement
|
|
77
82
|
};
|
|
78
83
|
}
|
|
79
84
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../src/func/registration.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../src/func/registration.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
export { Database } from './core/database.js';
|
|
8
8
|
export type { DatabaseInternal } from './core/database-internal.js';
|
|
9
9
|
export { Statement } from './core/statement.js';
|
|
10
|
+
export { Table } from './core/table-handle.js';
|
|
10
11
|
export { StatusCode, SqlDataType } from './common/types.js';
|
|
11
12
|
export type { SqlValue, JsonSqlValue, SqlParameters, Row, MaybePromise, RowOp, ConstraintType, UpdateResult } from './common/types.js';
|
|
12
13
|
export { isUpdateOk, isConstraintViolation, isSqlValue } from './common/types.js';
|
|
@@ -39,12 +40,15 @@ export { validateValue, parseValue, validateAndParse, isValidForType, tryParse }
|
|
|
39
40
|
export { Parser } from './parser/parser.js';
|
|
40
41
|
export { Lexer, TokenType, KEYWORDS } from './parser/lexer.js';
|
|
41
42
|
export { ParseError } from './parser/parser.js';
|
|
43
|
+
export { tryFoldLiteral } from './parser/utils.js';
|
|
42
44
|
export { quoteIdentifier } from './emit/ast-stringify.js';
|
|
43
45
|
export { SchemaManager } from './schema/manager.js';
|
|
44
46
|
export { buildColumnIndexMap, columnDefToSchema } from './schema/table.js';
|
|
45
|
-
export type { TableSchema, IndexSchema as TableIndexSchema } from './schema/table.js';
|
|
47
|
+
export type { TableSchema, IndexSchema as TableIndexSchema, UniqueConstraintSchema } from './schema/table.js';
|
|
46
48
|
export type { ColumnSchema } from './schema/column.js';
|
|
47
49
|
export { generateTableDDL, generateIndexDDL } from './schema/ddl-generator.js';
|
|
50
|
+
export { compilePredicate } from './vtab/memory/utils/predicate.js';
|
|
51
|
+
export type { CompiledPredicate } from './vtab/memory/utils/predicate.js';
|
|
48
52
|
export { isAsyncIterable, getAsyncIterator, asyncIterableToArray } from './runtime/utils.js';
|
|
49
53
|
export { CollectingInstructionTracer } from './runtime/types.js';
|
|
50
54
|
export type { InstructionTracer, InstructionTraceEvent } from './runtime/types.js';
|
|
@@ -58,6 +62,8 @@ import './runtime/register.js';
|
|
|
58
62
|
export type { VirtualTableModule } from './vtab/module.js';
|
|
59
63
|
export type { ModuleCapabilities, IsolationCapableTable } from './vtab/capabilities.js';
|
|
60
64
|
export type { PluginManifest, PluginRecord, PluginSetting, VTablePluginInfo, FunctionPluginInfo, CollationPluginInfo, TypePluginInfo, PluginRegistrations } from './vtab/manifest.js';
|
|
65
|
+
export type { ChangeScope, TableWatch, WatchScope, ScopeValue, ParamScopeValue, PortableScalarType, NonDetSource, QualifiedName, SerializedChangeScope, Subscription, WatchEvent, MatchedWatch, WatchHandler, } from './planner/analysis/change-scope.js';
|
|
66
|
+
export { analyzeChangeScope, unionScopes, intersectScopes, bindParameters, isEmpty, describesEverything, serializeChangeScope, deserializeChangeScope, scalarTypeFromPortable, } from './planner/analysis/change-scope.js';
|
|
61
67
|
export { serializePlanTree, formatPlanTree, formatPlanSummary, serializePlanTreeWithOptions } from './planner/debug.js';
|
|
62
68
|
export type { PlanDisplayOptions } from './planner/debug.js';
|
|
63
69
|
export { enableLogging, disableLogging, isLoggingEnabled } from './common/logger.js';
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|