spark-sql-language-server 0.0.1-beta.6 → 0.2.0-beta.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/out/sparksql-server-worker.js +1 -1
- package/out/sparksql-server-worker.js.map +1 -1
- package/out-tsc/assets/built-in-functions.d.ts +2 -0
- package/out-tsc/assets/built-in-functions.d.ts.map +1 -0
- package/out-tsc/assets/built-in-functions.js +4 -2
- package/out-tsc/assets/built-in-functions.js.map +1 -1
- package/out-tsc/completion-parser.d.ts +11 -0
- package/out-tsc/completion-parser.d.ts.map +1 -0
- package/out-tsc/completion-parser.js +148 -0
- package/out-tsc/completion-parser.js.map +1 -0
- package/out-tsc/constants.d.ts +9 -0
- package/out-tsc/constants.d.ts.map +1 -0
- package/out-tsc/constants.js +12 -0
- package/out-tsc/constants.js.map +1 -0
- package/out-tsc/cursor.d.ts +10 -0
- package/out-tsc/cursor.d.ts.map +1 -0
- package/out-tsc/cursor.js +3 -0
- package/out-tsc/cursor.js.map +1 -1
- package/out-tsc/execute-command.d.ts +7 -0
- package/out-tsc/execute-command.d.ts.map +1 -0
- package/out-tsc/execute-command.js +78 -0
- package/out-tsc/execute-command.js.map +1 -0
- package/out-tsc/execute-commands.d.ts +1 -0
- package/out-tsc/execute-commands.d.ts.map +1 -0
- package/out-tsc/execute-commands.js +3 -4
- package/out-tsc/execute-commands.js.map +1 -1
- package/out-tsc/formatter/boundary-writer.d.ts +30 -0
- package/out-tsc/formatter/boundary-writer.d.ts.map +1 -0
- package/out-tsc/formatter/boundary-writer.js +47 -0
- package/out-tsc/formatter/boundary-writer.js.map +1 -0
- package/out-tsc/formatter/core/comment-helper.d.ts +11 -0
- package/out-tsc/formatter/core/comment-helper.d.ts.map +1 -0
- package/out-tsc/formatter/core/comment-helper.js +139 -0
- package/out-tsc/formatter/core/comment-helper.js.map +1 -0
- package/out-tsc/formatter/core/edit-collector.d.ts +110 -0
- package/out-tsc/formatter/core/edit-collector.d.ts.map +1 -0
- package/out-tsc/formatter/core/edit-collector.js +159 -0
- package/out-tsc/formatter/core/edit-collector.js.map +1 -0
- package/out-tsc/formatter/core/formatting-context.d.ts +183 -0
- package/out-tsc/formatter/core/formatting-context.d.ts.map +1 -0
- package/out-tsc/formatter/core/formatting-context.js +294 -0
- package/out-tsc/formatter/core/formatting-context.js.map +1 -0
- package/out-tsc/formatter/core/index.d.ts +25 -0
- package/out-tsc/formatter/core/index.d.ts.map +1 -0
- package/out-tsc/formatter/core/index.js +57 -0
- package/out-tsc/formatter/core/index.js.map +1 -0
- package/out-tsc/formatter/core/pipeline/formatting-pipeline.d.ts +116 -0
- package/out-tsc/formatter/core/pipeline/formatting-pipeline.d.ts.map +1 -0
- package/out-tsc/formatter/core/pipeline/formatting-pipeline.js +237 -0
- package/out-tsc/formatter/core/pipeline/formatting-pipeline.js.map +1 -0
- package/out-tsc/formatter/core/pipeline/index.d.ts +12 -0
- package/out-tsc/formatter/core/pipeline/index.d.ts.map +1 -0
- package/out-tsc/formatter/core/pipeline/index.js +19 -0
- package/out-tsc/formatter/core/pipeline/index.js.map +1 -0
- package/out-tsc/formatter/core/pipeline/statement-separation.d.ts +5 -0
- package/out-tsc/formatter/core/pipeline/statement-separation.d.ts.map +1 -0
- package/out-tsc/formatter/core/pipeline/statement-separation.js +149 -0
- package/out-tsc/formatter/core/pipeline/statement-separation.js.map +1 -0
- package/out-tsc/formatter/core/rules/index.d.ts +11 -0
- package/out-tsc/formatter/core/rules/index.d.ts.map +1 -0
- package/out-tsc/formatter/core/rules/index.js +29 -0
- package/out-tsc/formatter/core/rules/index.js.map +1 -0
- package/out-tsc/formatter/core/rules/newline-rules.d.ts +169 -0
- package/out-tsc/formatter/core/rules/newline-rules.d.ts.map +1 -0
- package/out-tsc/formatter/core/rules/newline-rules.js +246 -0
- package/out-tsc/formatter/core/rules/newline-rules.js.map +1 -0
- package/out-tsc/formatter/core/rules/spacing-rules.d.ts +150 -0
- package/out-tsc/formatter/core/rules/spacing-rules.d.ts.map +1 -0
- package/out-tsc/formatter/core/rules/spacing-rules.js +219 -0
- package/out-tsc/formatter/core/rules/spacing-rules.js.map +1 -0
- package/out-tsc/formatter/core/strategy-bridge.d.ts +56 -0
- package/out-tsc/formatter/core/strategy-bridge.d.ts.map +1 -0
- package/out-tsc/formatter/core/strategy-bridge.js +159 -0
- package/out-tsc/formatter/core/strategy-bridge.js.map +1 -0
- package/out-tsc/formatter/core/strategy-interface.d.ts +123 -0
- package/out-tsc/formatter/core/strategy-interface.d.ts.map +1 -0
- package/out-tsc/formatter/core/strategy-interface.js +83 -0
- package/out-tsc/formatter/core/strategy-interface.js.map +1 -0
- package/out-tsc/formatter/core/token-helper.d.ts +12 -0
- package/out-tsc/formatter/core/token-helper.d.ts.map +1 -0
- package/out-tsc/formatter/core/token-helper.js +79 -0
- package/out-tsc/formatter/core/token-helper.js.map +1 -0
- package/out-tsc/formatter/core/unicode-utils.d.ts +107 -0
- package/out-tsc/formatter/core/unicode-utils.d.ts.map +1 -0
- package/out-tsc/formatter/core/unicode-utils.js +181 -0
- package/out-tsc/formatter/core/unicode-utils.js.map +1 -0
- package/out-tsc/formatter/core/whitespace-writer.d.ts +20 -0
- package/out-tsc/formatter/core/whitespace-writer.d.ts.map +1 -0
- package/out-tsc/formatter/core/whitespace-writer.js +86 -0
- package/out-tsc/formatter/core/whitespace-writer.js.map +1 -0
- package/out-tsc/formatter/formatter-adapter.d.ts +56 -0
- package/out-tsc/formatter/formatter-adapter.d.ts.map +1 -0
- package/out-tsc/formatter/formatter-adapter.js +719 -0
- package/out-tsc/formatter/formatter-adapter.js.map +1 -0
- package/out-tsc/formatter/index.d.ts +16 -0
- package/out-tsc/formatter/index.d.ts.map +1 -0
- package/out-tsc/formatter/index.js +43 -0
- package/out-tsc/formatter/index.js.map +1 -0
- package/out-tsc/formatter/pipe-step-classifier.d.ts +9 -0
- package/out-tsc/formatter/pipe-step-classifier.d.ts.map +1 -0
- package/out-tsc/formatter/pipe-step-classifier.js +49 -0
- package/out-tsc/formatter/pipe-step-classifier.js.map +1 -0
- package/out-tsc/formatter/state.d.ts +10 -0
- package/out-tsc/formatter/state.d.ts.map +1 -0
- package/out-tsc/formatter/state.js +12 -0
- package/out-tsc/formatter/state.js.map +1 -0
- package/out-tsc/formatter/strategies/block.strategy.d.ts +191 -0
- package/out-tsc/formatter/strategies/block.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/block.strategy.js +238 -0
- package/out-tsc/formatter/strategies/block.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/clause-head-body.strategy.d.ts +17 -0
- package/out-tsc/formatter/strategies/clause-head-body.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/clause-head-body.strategy.js +13 -0
- package/out-tsc/formatter/strategies/clause-head-body.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/alter-table-extended.strategy.d.ts +68 -0
- package/out-tsc/formatter/strategies/ddl/alter-table-extended.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/alter-table-extended.strategy.js +242 -0
- package/out-tsc/formatter/strategies/ddl/alter-table-extended.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/alter-table.strategy.d.ts +146 -0
- package/out-tsc/formatter/strategies/ddl/alter-table.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/alter-table.strategy.js +578 -0
- package/out-tsc/formatter/strategies/ddl/alter-table.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/create-table.strategy.d.ts +103 -0
- package/out-tsc/formatter/strategies/ddl/create-table.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/create-table.strategy.js +659 -0
- package/out-tsc/formatter/strategies/ddl/create-table.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/create-view-function.strategy.d.ts +64 -0
- package/out-tsc/formatter/strategies/ddl/create-view-function.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/create-view-function.strategy.js +402 -0
- package/out-tsc/formatter/strategies/ddl/create-view-function.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/drop-utility.strategy.d.ts +119 -0
- package/out-tsc/formatter/strategies/ddl/drop-utility.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/drop-utility.strategy.js +863 -0
- package/out-tsc/formatter/strategies/ddl/drop-utility.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/index.d.ts +17 -0
- package/out-tsc/formatter/strategies/ddl/index.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/index.js +57 -0
- package/out-tsc/formatter/strategies/ddl/index.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/namespace-catalog.strategy.d.ts +26 -0
- package/out-tsc/formatter/strategies/ddl/namespace-catalog.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/namespace-catalog.strategy.js +77 -0
- package/out-tsc/formatter/strategies/ddl/namespace-catalog.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/pipeline.strategy.d.ts +99 -0
- package/out-tsc/formatter/strategies/ddl/pipeline.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/pipeline.strategy.js +385 -0
- package/out-tsc/formatter/strategies/ddl/pipeline.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/set-reset-config.strategy.d.ts +48 -0
- package/out-tsc/formatter/strategies/ddl/set-reset-config.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/set-reset-config.strategy.js +145 -0
- package/out-tsc/formatter/strategies/ddl/set-reset-config.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/ddl/show-utility.strategy.d.ts +71 -0
- package/out-tsc/formatter/strategies/ddl/show-utility.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/ddl/show-utility.strategy.js +196 -0
- package/out-tsc/formatter/strategies/ddl/show-utility.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/dml/index.d.ts +10 -0
- package/out-tsc/formatter/strategies/dml/index.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/dml/index.js +35 -0
- package/out-tsc/formatter/strategies/dml/index.js.map +1 -0
- package/out-tsc/formatter/strategies/dml/insert-update-delete.strategy.d.ts +113 -0
- package/out-tsc/formatter/strategies/dml/insert-update-delete.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/dml/insert-update-delete.strategy.js +438 -0
- package/out-tsc/formatter/strategies/dml/insert-update-delete.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/dml/select-clause.strategy.d.ts +76 -0
- package/out-tsc/formatter/strategies/dml/select-clause.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/dml/select-clause.strategy.js +480 -0
- package/out-tsc/formatter/strategies/dml/select-clause.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/expression/function-call.strategy.d.ts +50 -0
- package/out-tsc/formatter/strategies/expression/function-call.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/expression/function-call.strategy.js +319 -0
- package/out-tsc/formatter/strategies/expression/function-call.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/expression/index.d.ts +18 -0
- package/out-tsc/formatter/strategies/expression/index.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/expression/index.js +51 -0
- package/out-tsc/formatter/strategies/expression/index.js.map +1 -0
- package/out-tsc/formatter/strategies/expression/logical-comparison.strategy.d.ts +55 -0
- package/out-tsc/formatter/strategies/expression/logical-comparison.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/expression/logical-comparison.strategy.js +266 -0
- package/out-tsc/formatter/strategies/expression/logical-comparison.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/expression/subquery-parenthesis.strategy.d.ts +38 -0
- package/out-tsc/formatter/strategies/expression/subquery-parenthesis.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/expression/subquery-parenthesis.strategy.js +397 -0
- package/out-tsc/formatter/strategies/expression/subquery-parenthesis.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/function-call.strategy.d.ts +80 -0
- package/out-tsc/formatter/strategies/function-call.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/function-call.strategy.js +136 -0
- package/out-tsc/formatter/strategies/function-call.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/index.d.ts +87 -0
- package/out-tsc/formatter/strategies/index.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/index.js +121 -0
- package/out-tsc/formatter/strategies/index.js.map +1 -0
- package/out-tsc/formatter/strategies/join.strategy.d.ts +31 -0
- package/out-tsc/formatter/strategies/join.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/join.strategy.js +29 -0
- package/out-tsc/formatter/strategies/join.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/keyword.strategy.d.ts +82 -0
- package/out-tsc/formatter/strategies/keyword.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/keyword.strategy.js +129 -0
- package/out-tsc/formatter/strategies/keyword.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/list.strategy.d.ts +159 -0
- package/out-tsc/formatter/strategies/list.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/list.strategy.js +193 -0
- package/out-tsc/formatter/strategies/list.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-aggregate.strategy.d.ts +24 -0
- package/out-tsc/formatter/strategies/pipe-aggregate.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-aggregate.strategy.js +47 -0
- package/out-tsc/formatter/strategies/pipe-aggregate.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-drop.strategy.d.ts +21 -0
- package/out-tsc/formatter/strategies/pipe-drop.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-drop.strategy.js +52 -0
- package/out-tsc/formatter/strategies/pipe-drop.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-extend.strategy.d.ts +21 -0
- package/out-tsc/formatter/strategies/pipe-extend.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-extend.strategy.js +45 -0
- package/out-tsc/formatter/strategies/pipe-extend.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-join.strategy.d.ts +22 -0
- package/out-tsc/formatter/strategies/pipe-join.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-join.strategy.js +42 -0
- package/out-tsc/formatter/strategies/pipe-join.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-pivot.strategy.d.ts +7 -0
- package/out-tsc/formatter/strategies/pipe-pivot.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-pivot.strategy.js +34 -0
- package/out-tsc/formatter/strategies/pipe-pivot.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-query-organization.strategy.d.ts +7 -0
- package/out-tsc/formatter/strategies/pipe-query-organization.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-query-organization.strategy.js +14 -0
- package/out-tsc/formatter/strategies/pipe-query-organization.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-sample.strategy.d.ts +7 -0
- package/out-tsc/formatter/strategies/pipe-sample.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-sample.strategy.js +18 -0
- package/out-tsc/formatter/strategies/pipe-sample.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-select.strategy.d.ts +22 -0
- package/out-tsc/formatter/strategies/pipe-select.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-select.strategy.js +51 -0
- package/out-tsc/formatter/strategies/pipe-select.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-set-operation.strategy.d.ts +7 -0
- package/out-tsc/formatter/strategies/pipe-set-operation.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-set-operation.strategy.js +30 -0
- package/out-tsc/formatter/strategies/pipe-set-operation.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-set.strategy.d.ts +21 -0
- package/out-tsc/formatter/strategies/pipe-set.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-set.strategy.js +52 -0
- package/out-tsc/formatter/strategies/pipe-set.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-step.strategy.d.ts +25 -0
- package/out-tsc/formatter/strategies/pipe-step.strategy.d.ts.map +1 -0
- package/out-tsc/{lib/SparkSqlParserVisitor.js → formatter/strategies/pipe-step.strategy.js} +1 -1
- package/out-tsc/formatter/strategies/pipe-step.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-unpivot.strategy.d.ts +7 -0
- package/out-tsc/formatter/strategies/pipe-unpivot.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-unpivot.strategy.js +33 -0
- package/out-tsc/formatter/strategies/pipe-unpivot.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/pipe-where.strategy.d.ts +21 -0
- package/out-tsc/formatter/strategies/pipe-where.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/pipe-where.strategy.js +44 -0
- package/out-tsc/formatter/strategies/pipe-where.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/procedure/case-statement.strategy.d.ts +20 -0
- package/out-tsc/formatter/strategies/procedure/case-statement.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/procedure/case-statement.strategy.js +132 -0
- package/out-tsc/formatter/strategies/procedure/case-statement.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/procedure/compound-statement.strategy.d.ts +43 -0
- package/out-tsc/formatter/strategies/procedure/compound-statement.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/procedure/compound-statement.strategy.js +174 -0
- package/out-tsc/formatter/strategies/procedure/compound-statement.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/procedure/handler.strategy.d.ts +23 -0
- package/out-tsc/formatter/strategies/procedure/handler.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/procedure/handler.strategy.js +81 -0
- package/out-tsc/formatter/strategies/procedure/handler.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/procedure/if-else.strategy.d.ts +19 -0
- package/out-tsc/formatter/strategies/procedure/if-else.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/procedure/if-else.strategy.js +80 -0
- package/out-tsc/formatter/strategies/procedure/if-else.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/procedure/index.d.ts +27 -0
- package/out-tsc/formatter/strategies/procedure/index.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/procedure/index.js +63 -0
- package/out-tsc/formatter/strategies/procedure/index.js.map +1 -0
- package/out-tsc/formatter/strategies/procedure/leave-iterate.strategy.d.ts +19 -0
- package/out-tsc/formatter/strategies/procedure/leave-iterate.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/procedure/leave-iterate.strategy.js +54 -0
- package/out-tsc/formatter/strategies/procedure/leave-iterate.strategy.js.map +1 -0
- package/out-tsc/formatter/strategies/procedure/loop.strategy.d.ts +71 -0
- package/out-tsc/formatter/strategies/procedure/loop.strategy.d.ts.map +1 -0
- package/out-tsc/formatter/strategies/procedure/loop.strategy.js +216 -0
- package/out-tsc/formatter/strategies/procedure/loop.strategy.js.map +1 -0
- package/out-tsc/formatter/strategy-based-formatter.d.ts +329 -0
- package/out-tsc/formatter/strategy-based-formatter.d.ts.map +1 -0
- package/out-tsc/formatter/strategy-based-formatter.js +3808 -0
- package/out-tsc/formatter/strategy-based-formatter.js.map +1 -0
- package/out-tsc/formatter/strategy-dispatcher.d.ts +24 -0
- package/out-tsc/formatter/strategy-dispatcher.d.ts.map +1 -0
- package/out-tsc/formatter/strategy-dispatcher.js +19 -0
- package/out-tsc/formatter/strategy-dispatcher.js.map +1 -0
- package/out-tsc/formatter/types.d.ts +2 -0
- package/out-tsc/formatter/types.d.ts.map +1 -0
- package/out-tsc/{lib/SparkSqlParserListener.js → formatter/types.js} +1 -1
- package/out-tsc/formatter/types.js.map +1 -0
- package/out-tsc/formatter/visitor/ddl/alter-table.d.ts +48 -0
- package/out-tsc/formatter/visitor/ddl/alter-table.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/ddl/alter-table.js +133 -0
- package/out-tsc/formatter/visitor/ddl/alter-table.js.map +1 -0
- package/out-tsc/formatter/visitor/ddl/create-table.d.ts +54 -0
- package/out-tsc/formatter/visitor/ddl/create-table.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/ddl/create-table.js +142 -0
- package/out-tsc/formatter/visitor/ddl/create-table.js.map +1 -0
- package/out-tsc/formatter/visitor/ddl/create-view.d.ts +27 -0
- package/out-tsc/formatter/visitor/ddl/create-view.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/ddl/create-view.js +61 -0
- package/out-tsc/formatter/visitor/ddl/create-view.js.map +1 -0
- package/out-tsc/formatter/visitor/ddl/drop.d.ts +30 -0
- package/out-tsc/formatter/visitor/ddl/drop.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/ddl/drop.js +69 -0
- package/out-tsc/formatter/visitor/ddl/drop.js.map +1 -0
- package/out-tsc/formatter/visitor/ddl/index.d.ts +10 -0
- package/out-tsc/formatter/visitor/ddl/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/ddl/index.js +26 -0
- package/out-tsc/formatter/visitor/ddl/index.js.map +1 -0
- package/out-tsc/formatter/visitor/dml/delete.d.ts +26 -0
- package/out-tsc/formatter/visitor/dml/delete.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/dml/delete.js +38 -0
- package/out-tsc/formatter/visitor/dml/delete.js.map +1 -0
- package/out-tsc/formatter/visitor/dml/index.d.ts +10 -0
- package/out-tsc/formatter/visitor/dml/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/dml/index.js +26 -0
- package/out-tsc/formatter/visitor/dml/index.js.map +1 -0
- package/out-tsc/formatter/visitor/dml/insert.d.ts +42 -0
- package/out-tsc/formatter/visitor/dml/insert.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/dml/insert.js +112 -0
- package/out-tsc/formatter/visitor/dml/insert.js.map +1 -0
- package/out-tsc/formatter/visitor/dml/merge.d.ts +40 -0
- package/out-tsc/formatter/visitor/dml/merge.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/dml/merge.js +67 -0
- package/out-tsc/formatter/visitor/dml/merge.js.map +1 -0
- package/out-tsc/formatter/visitor/dml/update.d.ts +33 -0
- package/out-tsc/formatter/visitor/dml/update.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/dml/update.js +49 -0
- package/out-tsc/formatter/visitor/dml/update.js.map +1 -0
- package/out-tsc/formatter/visitor/expression/arithmetic.d.ts +20 -0
- package/out-tsc/formatter/visitor/expression/arithmetic.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/expression/arithmetic.js +44 -0
- package/out-tsc/formatter/visitor/expression/arithmetic.js.map +1 -0
- package/out-tsc/formatter/visitor/expression/case-when.d.ts +41 -0
- package/out-tsc/formatter/visitor/expression/case-when.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/expression/case-when.js +94 -0
- package/out-tsc/formatter/visitor/expression/case-when.js.map +1 -0
- package/out-tsc/formatter/visitor/expression/comparison.d.ts +20 -0
- package/out-tsc/formatter/visitor/expression/comparison.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/expression/comparison.js +26 -0
- package/out-tsc/formatter/visitor/expression/comparison.js.map +1 -0
- package/out-tsc/formatter/visitor/expression/function-call.d.ts +20 -0
- package/out-tsc/formatter/visitor/expression/function-call.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/expression/function-call.js +33 -0
- package/out-tsc/formatter/visitor/expression/function-call.js.map +1 -0
- package/out-tsc/formatter/visitor/expression/index.d.ts +11 -0
- package/out-tsc/formatter/visitor/expression/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/expression/index.js +27 -0
- package/out-tsc/formatter/visitor/expression/index.js.map +1 -0
- package/out-tsc/formatter/visitor/expression/logical.d.ts +26 -0
- package/out-tsc/formatter/visitor/expression/logical.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/expression/logical.js +46 -0
- package/out-tsc/formatter/visitor/expression/logical.js.map +1 -0
- package/out-tsc/formatter/visitor/formatter-core.d.ts +79 -0
- package/out-tsc/formatter/visitor/formatter-core.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/formatter-core.js +211 -0
- package/out-tsc/formatter/visitor/formatter-core.js.map +1 -0
- package/out-tsc/formatter/visitor/index.d.ts +21 -0
- package/out-tsc/formatter/visitor/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/index.js +26 -0
- package/out-tsc/formatter/visitor/index.js.map +1 -0
- package/out-tsc/formatter/visitor/management/cache.d.ts +26 -0
- package/out-tsc/formatter/visitor/management/cache.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/management/cache.js +58 -0
- package/out-tsc/formatter/visitor/management/cache.js.map +1 -0
- package/out-tsc/formatter/visitor/management/index.d.ts +8 -0
- package/out-tsc/formatter/visitor/management/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/management/index.js +24 -0
- package/out-tsc/formatter/visitor/management/index.js.map +1 -0
- package/out-tsc/formatter/visitor/management/refresh.d.ts +26 -0
- package/out-tsc/formatter/visitor/management/refresh.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/management/refresh.js +55 -0
- package/out-tsc/formatter/visitor/management/refresh.js.map +1 -0
- package/out-tsc/formatter/visitor/pipeline/delta-live-tables.d.ts +31 -0
- package/out-tsc/formatter/visitor/pipeline/delta-live-tables.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/pipeline/delta-live-tables.js +46 -0
- package/out-tsc/formatter/visitor/pipeline/delta-live-tables.js.map +1 -0
- package/out-tsc/formatter/visitor/pipeline/index.d.ts +7 -0
- package/out-tsc/formatter/visitor/pipeline/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/pipeline/index.js +23 -0
- package/out-tsc/formatter/visitor/pipeline/index.js.map +1 -0
- package/out-tsc/formatter/visitor/query/cte.d.ts +34 -0
- package/out-tsc/formatter/visitor/query/cte.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/query/cte.js +54 -0
- package/out-tsc/formatter/visitor/query/cte.js.map +1 -0
- package/out-tsc/formatter/visitor/query/index.d.ts +11 -0
- package/out-tsc/formatter/visitor/query/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/query/index.js +27 -0
- package/out-tsc/formatter/visitor/query/index.js.map +1 -0
- package/out-tsc/formatter/visitor/query/query-organization.d.ts +25 -0
- package/out-tsc/formatter/visitor/query/query-organization.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/query/query-organization.js +75 -0
- package/out-tsc/formatter/visitor/query/query-organization.js.map +1 -0
- package/out-tsc/formatter/visitor/query/query.d.ts +22 -0
- package/out-tsc/formatter/visitor/query/query.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/query/query.js +30 -0
- package/out-tsc/formatter/visitor/query/query.js.map +1 -0
- package/out-tsc/formatter/visitor/query/select-clause.d.ts +17 -0
- package/out-tsc/formatter/visitor/query/select-clause.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/query/select-clause.js +35 -0
- package/out-tsc/formatter/visitor/query/select-clause.js.map +1 -0
- package/out-tsc/formatter/visitor/query/set-operation.d.ts +25 -0
- package/out-tsc/formatter/visitor/query/set-operation.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/query/set-operation.js +52 -0
- package/out-tsc/formatter/visitor/query/set-operation.js.map +1 -0
- package/out-tsc/formatter/visitor/statements/index.d.ts +7 -0
- package/out-tsc/formatter/visitor/statements/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/statements/index.js +23 -0
- package/out-tsc/formatter/visitor/statements/index.js.map +1 -0
- package/out-tsc/formatter/visitor/statements/program.d.ts +33 -0
- package/out-tsc/formatter/visitor/statements/program.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/statements/program.js +69 -0
- package/out-tsc/formatter/visitor/statements/program.js.map +1 -0
- package/out-tsc/formatter/visitor/types/complex-types.d.ts +24 -0
- package/out-tsc/formatter/visitor/types/complex-types.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/types/complex-types.js +47 -0
- package/out-tsc/formatter/visitor/types/complex-types.js.map +1 -0
- package/out-tsc/formatter/visitor/types/index.d.ts +8 -0
- package/out-tsc/formatter/visitor/types/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/types/index.js +24 -0
- package/out-tsc/formatter/visitor/types/index.js.map +1 -0
- package/out-tsc/formatter/visitor/types/primitive-types.d.ts +22 -0
- package/out-tsc/formatter/visitor/types/primitive-types.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/types/primitive-types.js +37 -0
- package/out-tsc/formatter/visitor/types/primitive-types.js.map +1 -0
- package/out-tsc/formatter/visitor/utils/context-helpers.d.ts +32 -0
- package/out-tsc/formatter/visitor/utils/context-helpers.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/utils/context-helpers.js +98 -0
- package/out-tsc/formatter/visitor/utils/context-helpers.js.map +1 -0
- package/out-tsc/formatter/visitor/utils/index.d.ts +11 -0
- package/out-tsc/formatter/visitor/utils/index.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/utils/index.js +45 -0
- package/out-tsc/formatter/visitor/utils/index.js.map +1 -0
- package/out-tsc/formatter/visitor/utils/keyword-formatting.d.ts +57 -0
- package/out-tsc/formatter/visitor/utils/keyword-formatting.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/utils/keyword-formatting.js +87 -0
- package/out-tsc/formatter/visitor/utils/keyword-formatting.js.map +1 -0
- package/out-tsc/formatter/visitor/utils/parenthesis-formatting.d.ts +53 -0
- package/out-tsc/formatter/visitor/utils/parenthesis-formatting.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/utils/parenthesis-formatting.js +88 -0
- package/out-tsc/formatter/visitor/utils/parenthesis-formatting.js.map +1 -0
- package/out-tsc/formatter/visitor/utils/space-compression.d.ts +55 -0
- package/out-tsc/formatter/visitor/utils/space-compression.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/utils/space-compression.js +71 -0
- package/out-tsc/formatter/visitor/utils/space-compression.js.map +1 -0
- package/out-tsc/formatter/visitor/utils/token-helpers.d.ts +64 -0
- package/out-tsc/formatter/visitor/utils/token-helpers.d.ts.map +1 -0
- package/out-tsc/formatter/visitor/utils/token-helpers.js +249 -0
- package/out-tsc/formatter/visitor/utils/token-helpers.js.map +1 -0
- package/out-tsc/index.d.ts +2 -1
- package/out-tsc/index.d.ts.map +1 -0
- package/out-tsc/index.js +3 -1
- package/out-tsc/index.js.map +1 -1
- package/out-tsc/lib/SparkSQLLexer.d.ts +557 -0
- package/out-tsc/lib/SparkSQLLexer.d.ts.map +1 -0
- package/out-tsc/lib/SparkSQLLexer.js +3676 -0
- package/out-tsc/lib/SparkSQLLexer.js.map +1 -0
- package/out-tsc/lib/SparkSQLParser.d.ts +7884 -0
- package/out-tsc/lib/SparkSQLParser.d.ts.map +1 -0
- package/out-tsc/lib/SparkSQLParser.js +45848 -0
- package/out-tsc/lib/SparkSQLParser.js.map +1 -0
- package/out-tsc/lib/SparkSQLParserListener.d.ts +5855 -0
- package/out-tsc/lib/SparkSQLParserListener.d.ts.map +1 -0
- package/out-tsc/lib/SparkSQLParserListener.js +4 -0
- package/out-tsc/lib/SparkSQLParserListener.js.map +1 -0
- package/out-tsc/lib/SparkSQLParserVisitor.d.ts +3674 -0
- package/out-tsc/lib/SparkSQLParserVisitor.d.ts.map +1 -0
- package/out-tsc/lib/SparkSQLParserVisitor.js +4 -0
- package/out-tsc/lib/SparkSQLParserVisitor.js.map +1 -0
- package/out-tsc/lineage.typing.d.ts +64 -0
- package/out-tsc/lineage.typing.d.ts.map +1 -0
- package/out-tsc/lineage.typing.js +3 -0
- package/out-tsc/lineage.typing.js.map +1 -0
- package/out-tsc/listeners/parse-error.listener.d.ts +3 -2
- package/out-tsc/listeners/parse-error.listener.d.ts.map +1 -0
- package/out-tsc/listeners/parse-error.listener.js +4 -4
- package/out-tsc/listeners/parse-error.listener.js.map +1 -1
- package/out-tsc/listeners/schema.listener.d.ts +32 -39
- package/out-tsc/listeners/schema.listener.d.ts.map +1 -0
- package/out-tsc/listeners/schema.listener.js +58 -100
- package/out-tsc/listeners/schema.listener.js.map +1 -1
- package/out-tsc/listeners/statement.listener.d.ts +263 -5
- package/out-tsc/listeners/statement.listener.d.ts.map +1 -0
- package/out-tsc/listeners/statement.listener.js +836 -11
- package/out-tsc/listeners/statement.listener.js.map +1 -1
- package/out-tsc/listeners/structure.listener.d.ts +70 -0
- package/out-tsc/listeners/structure.listener.d.ts.map +1 -0
- package/out-tsc/listeners/structure.listener.js +211 -0
- package/out-tsc/listeners/structure.listener.js.map +1 -0
- package/out-tsc/listeners/tokens-collector.listener.d.ts +27 -0
- package/out-tsc/listeners/tokens-collector.listener.d.ts.map +1 -0
- package/out-tsc/listeners/tokens-collector.listener.js +102 -0
- package/out-tsc/listeners/tokens-collector.listener.js.map +1 -0
- package/out-tsc/lsp-server.d.ts +79 -8
- package/out-tsc/lsp-server.d.ts.map +1 -0
- package/out-tsc/lsp-server.js +672 -237
- package/out-tsc/lsp-server.js.map +1 -1
- package/out-tsc/metadata.typing.d.ts +1 -0
- package/out-tsc/metadata.typing.d.ts.map +1 -0
- package/out-tsc/monaco-config.d.ts +219 -0
- package/out-tsc/monaco-config.d.ts.map +1 -0
- package/out-tsc/monaco-config.js +1032 -0
- package/out-tsc/monaco-config.js.map +1 -0
- package/out-tsc/parsing-warehouse.d.ts +8 -3
- package/out-tsc/parsing-warehouse.d.ts.map +1 -0
- package/out-tsc/parsing-warehouse.js +62 -6
- package/out-tsc/parsing-warehouse.js.map +1 -1
- package/out-tsc/protocol-translation.d.ts +12 -5
- package/out-tsc/protocol-translation.d.ts.map +1 -0
- package/out-tsc/protocol-translation.js +72 -19
- package/out-tsc/protocol-translation.js.map +1 -1
- package/out-tsc/public-apis.d.ts +1 -0
- package/out-tsc/public-apis.d.ts.map +1 -0
- package/out-tsc/schema-registry.d.ts +10 -7
- package/out-tsc/schema-registry.d.ts.map +1 -0
- package/out-tsc/schema-registry.js +87 -106
- package/out-tsc/schema-registry.js.map +1 -1
- package/out-tsc/server-worker.d.ts +1 -0
- package/out-tsc/server-worker.d.ts.map +1 -0
- package/out-tsc/server-worker.js +159 -44
- package/out-tsc/server-worker.js.map +1 -1
- package/out-tsc/tests/folding/block-comment-folding.test.d.ts +7 -0
- package/out-tsc/tests/folding/block-comment-folding.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/block-comment-folding.test.js +268 -0
- package/out-tsc/tests/folding/block-comment-folding.test.js.map +1 -0
- package/out-tsc/tests/folding/caching.test.d.ts +11 -0
- package/out-tsc/tests/folding/caching.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/caching.test.js +141 -0
- package/out-tsc/tests/folding/caching.test.js.map +1 -0
- package/out-tsc/tests/folding/cte-dependency-chain.test.d.ts +15 -0
- package/out-tsc/tests/folding/cte-dependency-chain.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/cte-dependency-chain.test.js +323 -0
- package/out-tsc/tests/folding/cte-dependency-chain.test.js.map +1 -0
- package/out-tsc/tests/folding/debug-format-flow.test.d.ts +2 -0
- package/out-tsc/tests/folding/debug-format-flow.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/debug-format-flow.test.js +114 -0
- package/out-tsc/tests/folding/debug-format-flow.test.js.map +1 -0
- package/out-tsc/tests/folding/debug-formatted.test.d.ts +2 -0
- package/out-tsc/tests/folding/debug-formatted.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/debug-formatted.test.js +175 -0
- package/out-tsc/tests/folding/debug-formatted.test.js.map +1 -0
- package/out-tsc/tests/folding/deduplication.test.d.ts +10 -0
- package/out-tsc/tests/folding/deduplication.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/deduplication.test.js +206 -0
- package/out-tsc/tests/folding/deduplication.test.js.map +1 -0
- package/out-tsc/tests/folding/edge-cases.test.d.ts +8 -0
- package/out-tsc/tests/folding/edge-cases.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/edge-cases.test.js +319 -0
- package/out-tsc/tests/folding/edge-cases.test.js.map +1 -0
- package/out-tsc/tests/folding/folding-level-config.test.d.ts +11 -0
- package/out-tsc/tests/folding/folding-level-config.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/folding-level-config.test.js +313 -0
- package/out-tsc/tests/folding/folding-level-config.test.js.map +1 -0
- package/out-tsc/tests/folding/folding-statistics.test.d.ts +13 -0
- package/out-tsc/tests/folding/folding-statistics.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/folding-statistics.test.js +144 -0
- package/out-tsc/tests/folding/folding-statistics.test.js.map +1 -0
- package/out-tsc/tests/folding/index.d.ts +8 -0
- package/out-tsc/tests/folding/index.d.ts.map +1 -0
- package/out-tsc/tests/folding/index.js +24 -0
- package/out-tsc/tests/folding/index.js.map +1 -0
- package/out-tsc/tests/folding/join-folding.test.d.ts +11 -0
- package/out-tsc/tests/folding/join-folding.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/join-folding.test.js +167 -0
- package/out-tsc/tests/folding/join-folding.test.js.map +1 -0
- package/out-tsc/tests/folding/kind-classification.test.d.ts +11 -0
- package/out-tsc/tests/folding/kind-classification.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/kind-classification.test.js +270 -0
- package/out-tsc/tests/folding/kind-classification.test.js.map +1 -0
- package/out-tsc/tests/folding/level1-statement.test.d.ts +8 -0
- package/out-tsc/tests/folding/level1-statement.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/level1-statement.test.js +278 -0
- package/out-tsc/tests/folding/level1-statement.test.js.map +1 -0
- package/out-tsc/tests/folding/level2-query-block.test.d.ts +8 -0
- package/out-tsc/tests/folding/level2-query-block.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/level2-query-block.test.js +374 -0
- package/out-tsc/tests/folding/level2-query-block.test.js.map +1 -0
- package/out-tsc/tests/folding/level3-expression.test.d.ts +8 -0
- package/out-tsc/tests/folding/level3-expression.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/level3-expression.test.js +361 -0
- package/out-tsc/tests/folding/level3-expression.test.js.map +1 -0
- package/out-tsc/tests/folding/level4-structure.test.d.ts +8 -0
- package/out-tsc/tests/folding/level4-structure.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/level4-structure.test.js +270 -0
- package/out-tsc/tests/folding/level4-structure.test.js.map +1 -0
- package/out-tsc/tests/folding/line-comment-folding.test.d.ts +13 -0
- package/out-tsc/tests/folding/line-comment-folding.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/line-comment-folding.test.js +215 -0
- package/out-tsc/tests/folding/line-comment-folding.test.js.map +1 -0
- package/out-tsc/tests/folding/nested-folding.test.d.ts +8 -0
- package/out-tsc/tests/folding/nested-folding.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/nested-folding.test.js +386 -0
- package/out-tsc/tests/folding/nested-folding.test.js.map +1 -0
- package/out-tsc/tests/folding/performance-benchmark.test.d.ts +11 -0
- package/out-tsc/tests/folding/performance-benchmark.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/performance-benchmark.test.js +256 -0
- package/out-tsc/tests/folding/performance-benchmark.test.js.map +1 -0
- package/out-tsc/tests/folding/region-marker-folding.test.d.ts +11 -0
- package/out-tsc/tests/folding/region-marker-folding.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/region-marker-folding.test.js +245 -0
- package/out-tsc/tests/folding/region-marker-folding.test.js.map +1 -0
- package/out-tsc/tests/folding/select-columns-folding.test.d.ts +10 -0
- package/out-tsc/tests/folding/select-columns-folding.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/select-columns-folding.test.js +139 -0
- package/out-tsc/tests/folding/select-columns-folding.test.js.map +1 -0
- package/out-tsc/tests/folding/test-utils.d.ts +73 -0
- package/out-tsc/tests/folding/test-utils.d.ts.map +1 -0
- package/out-tsc/tests/folding/test-utils.js +98 -0
- package/out-tsc/tests/folding/test-utils.js.map +1 -0
- package/out-tsc/tests/folding/values-folding.test.d.ts +10 -0
- package/out-tsc/tests/folding/values-folding.test.d.ts.map +1 -0
- package/out-tsc/tests/folding/values-folding.test.js +102 -0
- package/out-tsc/tests/folding/values-folding.test.js.map +1 -0
- package/out-tsc/tests/format/ddl/datatype-constraint.test.d.ts +5 -0
- package/out-tsc/tests/format/ddl/datatype-constraint.test.d.ts.map +1 -0
- package/out-tsc/tests/format/ddl/datatype-constraint.test.js +132 -0
- package/out-tsc/tests/format/ddl/datatype-constraint.test.js.map +1 -0
- package/out-tsc/tests/format/ddl/index.test.d.ts +5 -0
- package/out-tsc/tests/format/ddl/index.test.d.ts.map +1 -0
- package/out-tsc/tests/format/ddl/index.test.js +74 -0
- package/out-tsc/tests/format/ddl/index.test.js.map +1 -0
- package/out-tsc/tests/format/ddl/materialized-view.test.d.ts +5 -0
- package/out-tsc/tests/format/ddl/materialized-view.test.d.ts.map +1 -0
- package/out-tsc/tests/format/ddl/materialized-view.test.js +92 -0
- package/out-tsc/tests/format/ddl/materialized-view.test.js.map +1 -0
- package/out-tsc/tests/format/ddl/partition.test.d.ts +5 -0
- package/out-tsc/tests/format/ddl/partition.test.d.ts.map +1 -0
- package/out-tsc/tests/format/ddl/partition.test.js +109 -0
- package/out-tsc/tests/format/ddl/partition.test.js.map +1 -0
- package/out-tsc/tests/format/ddl/variable.test.d.ts +5 -0
- package/out-tsc/tests/format/ddl/variable.test.d.ts.map +1 -0
- package/out-tsc/tests/format/ddl/variable.test.js +58 -0
- package/out-tsc/tests/format/ddl/variable.test.js.map +1 -0
- package/out-tsc/tests/format/dml/select.test.d.ts +5 -0
- package/out-tsc/tests/format/dml/select.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dml/select.test.js +114 -0
- package/out-tsc/tests/format/dml/select.test.js.map +1 -0
- package/out-tsc/tests/format/dml/subquery.test.d.ts +5 -0
- package/out-tsc/tests/format/dml/subquery.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dml/subquery.test.js +221 -0
- package/out-tsc/tests/format/dml/subquery.test.js.map +1 -0
- package/out-tsc/tests/format/dql/comment.test.d.ts +7 -0
- package/out-tsc/tests/format/dql/comment.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dql/comment.test.js +279 -0
- package/out-tsc/tests/format/dql/comment.test.js.map +1 -0
- package/out-tsc/tests/format/dql/cte.test.d.ts +7 -0
- package/out-tsc/tests/format/dql/cte.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dql/cte.test.js +31 -0
- package/out-tsc/tests/format/dql/cte.test.js.map +1 -0
- package/out-tsc/tests/format/dql/dql-detail.test.d.ts +5 -0
- package/out-tsc/tests/format/dql/dql-detail.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dql/dql-detail.test.js +191 -0
- package/out-tsc/tests/format/dql/dql-detail.test.js.map +1 -0
- package/out-tsc/tests/format/dql/lateral-view.test.d.ts +7 -0
- package/out-tsc/tests/format/dql/lateral-view.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dql/lateral-view.test.js +34 -0
- package/out-tsc/tests/format/dql/lateral-view.test.js.map +1 -0
- package/out-tsc/tests/format/dql/pivot.test.d.ts +7 -0
- package/out-tsc/tests/format/dql/pivot.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dql/pivot.test.js +56 -0
- package/out-tsc/tests/format/dql/pivot.test.js.map +1 -0
- package/out-tsc/tests/format/dql/window.test.d.ts +7 -0
- package/out-tsc/tests/format/dql/window.test.d.ts.map +1 -0
- package/out-tsc/tests/format/dql/window.test.js +89 -0
- package/out-tsc/tests/format/dql/window.test.js.map +1 -0
- package/out-tsc/tests/format/expression/expression.test.d.ts +5 -0
- package/out-tsc/tests/format/expression/expression.test.d.ts.map +1 -0
- package/out-tsc/tests/format/expression/expression.test.js +203 -0
- package/out-tsc/tests/format/expression/expression.test.js.map +1 -0
- package/out-tsc/tests/format/pipe/pipe-operator.test.d.ts +5 -0
- package/out-tsc/tests/format/pipe/pipe-operator.test.d.ts.map +1 -0
- package/out-tsc/tests/format/pipe/pipe-operator.test.js +290 -0
- package/out-tsc/tests/format/pipe/pipe-operator.test.js.map +1 -0
- package/out-tsc/tests/format/procedure/compound-statement.test.d.ts +16 -0
- package/out-tsc/tests/format/procedure/compound-statement.test.d.ts.map +1 -0
- package/out-tsc/tests/format/procedure/compound-statement.test.js +254 -0
- package/out-tsc/tests/format/procedure/compound-statement.test.js.map +1 -0
- package/out-tsc/tests/format/resource/resource.test.d.ts +5 -0
- package/out-tsc/tests/format/resource/resource.test.d.ts.map +1 -0
- package/out-tsc/tests/format/resource/resource.test.js +69 -0
- package/out-tsc/tests/format/resource/resource.test.js.map +1 -0
- package/out-tsc/tests/format/test-utils.d.ts +40 -0
- package/out-tsc/tests/format/test-utils.d.ts.map +1 -0
- package/out-tsc/tests/format/test-utils.js +53 -0
- package/out-tsc/tests/format/test-utils.js.map +1 -0
- package/out-tsc/tests/lsp-server.test.d.ts +2 -0
- package/out-tsc/tests/lsp-server.test.d.ts.map +1 -0
- package/out-tsc/tests/lsp-server.test.js +1525 -0
- package/out-tsc/tests/lsp-server.test.js.map +1 -0
- package/out-tsc/tests/spark-sql-inputs.test.d.ts +17 -0
- package/out-tsc/tests/spark-sql-inputs.test.d.ts.map +1 -0
- package/out-tsc/tests/spark-sql-inputs.test.js +570 -0
- package/out-tsc/tests/spark-sql-inputs.test.js.map +1 -0
- package/out-tsc/tests/validation.test.d.ts +2 -0
- package/out-tsc/tests/validation.test.d.ts.map +1 -0
- package/out-tsc/tests/validation.test.js +115 -0
- package/out-tsc/tests/validation.test.js.map +1 -0
- package/out-tsc/typings.d.ts +115 -1
- package/out-tsc/typings.d.ts.map +1 -0
- package/out-tsc/typings.js +28 -0
- package/out-tsc/typings.js.map +1 -1
- package/out-tsc/utils.d.ts +1 -0
- package/out-tsc/utils.d.ts.map +1 -0
- package/out-tsc/utils.js +4 -5
- package/out-tsc/utils.js.map +1 -1
- package/out-tsc/visitors/completion.visitor.d.ts +85 -0
- package/out-tsc/visitors/completion.visitor.d.ts.map +1 -0
- package/out-tsc/visitors/completion.visitor.js +379 -0
- package/out-tsc/visitors/completion.visitor.js.map +1 -0
- package/out-tsc/visitors/lineage.visitor.d.ts +34 -0
- package/out-tsc/visitors/lineage.visitor.d.ts.map +1 -0
- package/out-tsc/visitors/lineage.visitor.js +181 -0
- package/out-tsc/visitors/lineage.visitor.js.map +1 -0
- package/out-tsc/visitors/space-replacer-format.visitor.d.ts +1641 -0
- package/out-tsc/visitors/space-replacer-format.visitor.d.ts.map +1 -0
- package/out-tsc/visitors/space-replacer-format.visitor.js +7529 -0
- package/out-tsc/visitors/space-replacer-format.visitor.js.map +1 -0
- package/out-tsc/visitors/sparksql-relation.visitor.d.ts +154 -0
- package/out-tsc/visitors/sparksql-relation.visitor.d.ts.map +1 -0
- package/out-tsc/visitors/sparksql-relation.visitor.js +749 -0
- package/out-tsc/visitors/sparksql-relation.visitor.js.map +1 -0
- package/package.json +36 -9
- package/out-tsc/constant.d.ts +0 -3
- package/out-tsc/constant.js +0 -7
- package/out-tsc/constant.js.map +0 -1
- package/out-tsc/lib/SparkSqlLexer.d.ts +0 -421
- package/out-tsc/lib/SparkSqlLexer.js +0 -2750
- package/out-tsc/lib/SparkSqlLexer.js.map +0 -1
- package/out-tsc/lib/SparkSqlParser.d.ts +0 -6203
- package/out-tsc/lib/SparkSqlParser.js +0 -34733
- package/out-tsc/lib/SparkSqlParser.js.map +0 -1
- package/out-tsc/lib/SparkSqlParserListener.d.ts +0 -1158
- package/out-tsc/lib/SparkSqlParserListener.js.map +0 -1
- package/out-tsc/lib/SparkSqlParserVisitor.d.ts +0 -773
- package/out-tsc/lib/SparkSqlParserVisitor.js.map +0 -1
|
@@ -0,0 +1,659 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PropertyListStrategy = exports.CreateTableStrategy = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* CREATE TABLE Strategy
|
|
6
|
+
*
|
|
7
|
+
* Handles formatting for CREATE TABLE, CREATE TABLE LIKE, and REPLACE TABLE statements.
|
|
8
|
+
*/
|
|
9
|
+
const SparkSQLParser_1 = require("../../../lib/SparkSQLParser");
|
|
10
|
+
const core_1 = require("../../core");
|
|
11
|
+
class CreateTableStrategy extends core_1.BaseFormattingStrategy {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.id = 'ddl.createTable';
|
|
15
|
+
}
|
|
16
|
+
canHandle(ctx) {
|
|
17
|
+
// Don't handle TableElementListContext if it's part of a Pipeline statement
|
|
18
|
+
if (ctx instanceof SparkSQLParser_1.TableElementListContext) {
|
|
19
|
+
const parent = ctx.parent;
|
|
20
|
+
if (parent && parent.constructor.name === 'CreatePipelineDatasetContext') {
|
|
21
|
+
return false; // Let PipelineStrategy handle this
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return (ctx instanceof SparkSQLParser_1.CreateTableContext ||
|
|
25
|
+
ctx instanceof SparkSQLParser_1.CreateTableLikeContext ||
|
|
26
|
+
ctx instanceof SparkSQLParser_1.CreateTableHeaderContext ||
|
|
27
|
+
ctx instanceof SparkSQLParser_1.CreateTableClausesContext ||
|
|
28
|
+
ctx instanceof SparkSQLParser_1.PartitionFieldListContext ||
|
|
29
|
+
ctx instanceof SparkSQLParser_1.TableProviderContext ||
|
|
30
|
+
ctx instanceof SparkSQLParser_1.TableElementListContext ||
|
|
31
|
+
ctx instanceof SparkSQLParser_1.ColDefinitionContext ||
|
|
32
|
+
ctx instanceof SparkSQLParser_1.ReplaceTableContext ||
|
|
33
|
+
ctx instanceof SparkSQLParser_1.ReplaceTableHeaderContext);
|
|
34
|
+
}
|
|
35
|
+
format(ctx, bridge) {
|
|
36
|
+
if (ctx instanceof SparkSQLParser_1.CreateTableContext) {
|
|
37
|
+
this.formatCreateTable(ctx, bridge);
|
|
38
|
+
}
|
|
39
|
+
else if (ctx instanceof SparkSQLParser_1.CreateTableLikeContext) {
|
|
40
|
+
this.formatCreateTableLike(ctx, bridge);
|
|
41
|
+
}
|
|
42
|
+
else if (ctx instanceof SparkSQLParser_1.CreateTableHeaderContext) {
|
|
43
|
+
this.formatCreateTableHeader(ctx, bridge);
|
|
44
|
+
}
|
|
45
|
+
else if (ctx instanceof SparkSQLParser_1.CreateTableClausesContext) {
|
|
46
|
+
this.formatCreateTableClauses(ctx, bridge);
|
|
47
|
+
}
|
|
48
|
+
else if (ctx instanceof SparkSQLParser_1.PartitionFieldListContext) {
|
|
49
|
+
this.formatPartitionFieldList(ctx, bridge);
|
|
50
|
+
}
|
|
51
|
+
else if (ctx instanceof SparkSQLParser_1.TableProviderContext) {
|
|
52
|
+
this.formatTableProvider(ctx, bridge);
|
|
53
|
+
}
|
|
54
|
+
else if (ctx instanceof SparkSQLParser_1.TableElementListContext) {
|
|
55
|
+
this.formatTableElementList(ctx, bridge);
|
|
56
|
+
}
|
|
57
|
+
else if (ctx instanceof SparkSQLParser_1.ColDefinitionContext) {
|
|
58
|
+
this.formatColDefinition(ctx, bridge);
|
|
59
|
+
}
|
|
60
|
+
else if (ctx instanceof SparkSQLParser_1.ReplaceTableContext) {
|
|
61
|
+
this.formatReplaceTable(ctx, bridge);
|
|
62
|
+
}
|
|
63
|
+
else if (ctx instanceof SparkSQLParser_1.ReplaceTableHeaderContext) {
|
|
64
|
+
this.formatReplaceTableHeader(ctx, bridge);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Format CREATE TABLE statement
|
|
69
|
+
* Hanging indent style:
|
|
70
|
+
* CREATE TABLE student (
|
|
71
|
+
* id INT,
|
|
72
|
+
* name STRING
|
|
73
|
+
* )
|
|
74
|
+
* USING CSV
|
|
75
|
+
* PARTITIONED BY (...)
|
|
76
|
+
* TBLPROPERTIES (...);
|
|
77
|
+
*
|
|
78
|
+
* Without columns:
|
|
79
|
+
* CREATE TABLE t
|
|
80
|
+
* USING PARQUET
|
|
81
|
+
* LOCATION '/path';
|
|
82
|
+
*/
|
|
83
|
+
formatCreateTable(ctx, bridge) {
|
|
84
|
+
const leftParen = ctx.LEFT_PAREN();
|
|
85
|
+
const rightParen = ctx.RIGHT_PAREN();
|
|
86
|
+
if (leftParen) {
|
|
87
|
+
// Space before left parenthesis (stays on same line as table name)
|
|
88
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, ' ');
|
|
89
|
+
}
|
|
90
|
+
// Process tableElementList first (it will handle its own double indent)
|
|
91
|
+
const tableElementList = ctx.tableElementList();
|
|
92
|
+
const tableProvider = ctx.tableProvider();
|
|
93
|
+
const createTableClauses = ctx.createTableClauses();
|
|
94
|
+
const hasSubsequentClauses = tableProvider || createTableClauses;
|
|
95
|
+
if (tableElementList) {
|
|
96
|
+
// Add single indent base for right paren and subsequent clauses
|
|
97
|
+
bridge.addIndent();
|
|
98
|
+
bridge.visit(tableElementList);
|
|
99
|
+
}
|
|
100
|
+
else if (hasSubsequentClauses) {
|
|
101
|
+
// No columns but has USING/PARTITIONED BY etc., add indent for subsequent clauses
|
|
102
|
+
bridge.addIndent();
|
|
103
|
+
}
|
|
104
|
+
// After tableElementList, we're back to single indent
|
|
105
|
+
// Right parenthesis on new line with single indent
|
|
106
|
+
if (rightParen) {
|
|
107
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, bridge.newlineIndent);
|
|
108
|
+
}
|
|
109
|
+
// Process subsequent clauses (USING, PARTITIONED BY, etc.) with same single indent
|
|
110
|
+
if (tableProvider) {
|
|
111
|
+
bridge.updateAfterPreviousTokenByContext(tableProvider, bridge.newlineIndent);
|
|
112
|
+
bridge.visit(tableProvider);
|
|
113
|
+
}
|
|
114
|
+
// Process createTableClauses (PARTITIONED BY, TBLPROPERTIES, etc.)
|
|
115
|
+
if (createTableClauses) {
|
|
116
|
+
bridge.visit(createTableClauses);
|
|
117
|
+
}
|
|
118
|
+
// Handle AS keyword for CTAS
|
|
119
|
+
const asNode = ctx.AS();
|
|
120
|
+
const query = ctx.query();
|
|
121
|
+
if (asNode && query) {
|
|
122
|
+
// Minus indent BEFORE visiting query so SELECT is at baseline
|
|
123
|
+
if (tableElementList || hasSubsequentClauses) {
|
|
124
|
+
bridge.minusIndent();
|
|
125
|
+
}
|
|
126
|
+
bridge.updateAfterPreviousTokenByNode(asNode, ' ');
|
|
127
|
+
bridge.updateBeforeNextTokenByNode(asNode, '\n');
|
|
128
|
+
bridge.visit(query);
|
|
129
|
+
}
|
|
130
|
+
else if (tableElementList || hasSubsequentClauses) {
|
|
131
|
+
// No AS query, just minus indent
|
|
132
|
+
bridge.minusIndent();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Format CREATE TABLE ... LIKE statement
|
|
137
|
+
* Target format:
|
|
138
|
+
* CREATE TABLE target_table
|
|
139
|
+
* LIKE source_table
|
|
140
|
+
* USING CSV
|
|
141
|
+
* LOCATION '/path/to/data';
|
|
142
|
+
*/
|
|
143
|
+
formatCreateTableLike(ctx, bridge) {
|
|
144
|
+
const createNode = ctx.CREATE();
|
|
145
|
+
const tableNode = ctx.TABLE();
|
|
146
|
+
// Single space between CREATE and TABLE
|
|
147
|
+
bridge.updateBeforeNextTokenByNode(createNode, ' ');
|
|
148
|
+
// Handle IF NOT EXISTS
|
|
149
|
+
const ifNode = ctx.IF();
|
|
150
|
+
const existsNode = ctx.EXISTS();
|
|
151
|
+
const errorCapturingNot = ctx.errorCapturingNot();
|
|
152
|
+
if (ifNode && existsNode && errorCapturingNot) {
|
|
153
|
+
bridge.updateAfterPreviousTokenByNode(ifNode, ' ');
|
|
154
|
+
bridge.updateBeforeNextTokenByNode(ifNode, ' ');
|
|
155
|
+
bridge.updateAfterPreviousTokenByContext(errorCapturingNot, ' ');
|
|
156
|
+
bridge.updateBeforeNextTokenByContext(errorCapturingNot, ' ');
|
|
157
|
+
bridge.updateAfterPreviousTokenByNode(existsNode, ' ');
|
|
158
|
+
bridge.updateBeforeNextTokenByNode(existsNode, ' ');
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
bridge.updateBeforeNextTokenByNode(tableNode, ' ');
|
|
162
|
+
}
|
|
163
|
+
// LIKE keyword on same line as table name
|
|
164
|
+
const likeNode = ctx.LIKE();
|
|
165
|
+
if (likeNode) {
|
|
166
|
+
bridge.updateAfterPreviousTokenByNode(likeNode, ' ');
|
|
167
|
+
bridge.updateBeforeNextTokenByNode(likeNode, ' ');
|
|
168
|
+
}
|
|
169
|
+
// Add indent for subsequent clauses (USING, LOCATION, etc.)
|
|
170
|
+
bridge.addIndent();
|
|
171
|
+
// Format optional clauses on separate lines with 2-space indent
|
|
172
|
+
const tableProviders = ctx.tableProvider();
|
|
173
|
+
for (const provider of tableProviders) {
|
|
174
|
+
bridge.updateAfterPreviousTokenByContext(provider, bridge.newlineIndent);
|
|
175
|
+
}
|
|
176
|
+
const rowFormats = ctx.rowFormat();
|
|
177
|
+
for (const rf of rowFormats) {
|
|
178
|
+
bridge.updateAfterPreviousTokenByContext(rf, bridge.newlineIndent);
|
|
179
|
+
}
|
|
180
|
+
const fileFormats = ctx.createFileFormat();
|
|
181
|
+
for (const ff of fileFormats) {
|
|
182
|
+
bridge.updateAfterPreviousTokenByContext(ff, bridge.newlineIndent);
|
|
183
|
+
}
|
|
184
|
+
const locations = ctx.locationSpec();
|
|
185
|
+
for (const loc of locations) {
|
|
186
|
+
bridge.updateAfterPreviousTokenByContext(loc, bridge.newlineIndent);
|
|
187
|
+
}
|
|
188
|
+
const tblPropsNodes = ctx.TBLPROPERTIES();
|
|
189
|
+
for (let i = 0; i < tblPropsNodes.length; i++) {
|
|
190
|
+
bridge.updateAfterPreviousTokenByNode(tblPropsNodes[i], bridge.newlineIndent);
|
|
191
|
+
bridge.updateBeforeNextTokenByNode(tblPropsNodes[i], ' ');
|
|
192
|
+
}
|
|
193
|
+
bridge.visitChildren(ctx);
|
|
194
|
+
// Minus indent after processing
|
|
195
|
+
bridge.minusIndent();
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Format CREATE TABLE header
|
|
199
|
+
* Format: CREATE TABLE IF NOT EXISTS table_name
|
|
200
|
+
*/
|
|
201
|
+
formatCreateTableHeader(ctx, bridge) {
|
|
202
|
+
if (ctx.TEMPORARY()) {
|
|
203
|
+
bridge.updateAfterPreviousTokenByNode(ctx.TEMPORARY(), ' ');
|
|
204
|
+
bridge.updateBeforeNextTokenByNode(ctx.TEMPORARY(), ' ');
|
|
205
|
+
}
|
|
206
|
+
if (ctx.EXTERNAL()) {
|
|
207
|
+
bridge.updateAfterPreviousTokenByNode(ctx.EXTERNAL(), ' ');
|
|
208
|
+
bridge.updateBeforeNextTokenByNode(ctx.EXTERNAL(), ' ');
|
|
209
|
+
}
|
|
210
|
+
bridge.updateAfterPreviousTokenByNode(ctx.TABLE(), ' ');
|
|
211
|
+
bridge.updateBeforeNextTokenByNode(ctx.TABLE(), ' ');
|
|
212
|
+
if (ctx.IF()) {
|
|
213
|
+
bridge.updateAfterPreviousTokenByNode(ctx.IF(), ' ');
|
|
214
|
+
bridge.updateBeforeNextTokenByNode(ctx.IF(), ' ');
|
|
215
|
+
}
|
|
216
|
+
const errorCapturingNot = ctx.errorCapturingNot();
|
|
217
|
+
if (errorCapturingNot) {
|
|
218
|
+
bridge.updateAfterPreviousTokenByContext(errorCapturingNot, ' ');
|
|
219
|
+
bridge.updateBeforeNextTokenByContext(errorCapturingNot, ' ');
|
|
220
|
+
}
|
|
221
|
+
if (ctx.EXISTS()) {
|
|
222
|
+
bridge.updateAfterPreviousTokenByNode(ctx.EXISTS(), ' ');
|
|
223
|
+
bridge.updateBeforeNextTokenByNode(ctx.EXISTS(), ' ');
|
|
224
|
+
}
|
|
225
|
+
bridge.visitChildren(ctx);
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Format CREATE TABLE clauses (OPTIONS, PARTITIONED BY, etc.)
|
|
229
|
+
*/
|
|
230
|
+
formatCreateTableClauses(ctx, bridge) {
|
|
231
|
+
// IMPORTANT: First visit children (including partitionFieldList) to set right paren formatting
|
|
232
|
+
// Then set subsequent clause formatting (CLUSTERED BY, etc.) to avoid edit conflicts
|
|
233
|
+
bridge.visitChildren(ctx);
|
|
234
|
+
// Now set newline for subsequent clauses AFTER right paren
|
|
235
|
+
// OPTIONS clause
|
|
236
|
+
const optionsTokens = ctx.OPTIONS();
|
|
237
|
+
if (optionsTokens.length > 0) {
|
|
238
|
+
bridge.updateAfterPreviousTokenByNode(optionsTokens[0], bridge.newlineIndent);
|
|
239
|
+
}
|
|
240
|
+
// PARTITIONED BY clause
|
|
241
|
+
const partitionedTokens = ctx.PARTITIONED();
|
|
242
|
+
const byTokens = ctx.BY();
|
|
243
|
+
if (partitionedTokens.length > 0) {
|
|
244
|
+
bridge.updateAfterPreviousTokenByNode(partitionedTokens[0], bridge.newlineIndent);
|
|
245
|
+
if (byTokens.length > 0) {
|
|
246
|
+
bridge.updateBeforeNextTokenByNode(partitionedTokens[0], ' ');
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
// COMMENT clause
|
|
250
|
+
const comment = ctx.commentSpec();
|
|
251
|
+
if (comment.length > 0) {
|
|
252
|
+
bridge.updateAfterPreviousTokenByContext(comment[0], bridge.newlineIndent);
|
|
253
|
+
}
|
|
254
|
+
// CLUSTERED BY clause - set newline before CLUSTERED keyword
|
|
255
|
+
const clusteredBy = ctx.bucketSpec();
|
|
256
|
+
for (const bucket of clusteredBy) {
|
|
257
|
+
const clusteredNode = bucket.CLUSTERED();
|
|
258
|
+
if (clusteredNode) {
|
|
259
|
+
bridge.updateAfterPreviousTokenByNode(clusteredNode, bridge.newlineIndent);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
// ROW FORMAT clause
|
|
263
|
+
const rowFormat = ctx.rowFormat();
|
|
264
|
+
if (rowFormat.length > 0) {
|
|
265
|
+
bridge.updateAfterPreviousTokenByContext(rowFormat[0], bridge.newlineIndent);
|
|
266
|
+
}
|
|
267
|
+
// STORED AS/BY clause
|
|
268
|
+
const createFileFormat = ctx.createFileFormat();
|
|
269
|
+
if (createFileFormat.length > 0) {
|
|
270
|
+
bridge.updateAfterPreviousTokenByContext(createFileFormat[0], bridge.newlineIndent);
|
|
271
|
+
}
|
|
272
|
+
// LOCATION clause
|
|
273
|
+
const location = ctx.locationSpec();
|
|
274
|
+
if (location.length > 0) {
|
|
275
|
+
bridge.updateAfterPreviousTokenByContext(location[0], bridge.newlineIndent);
|
|
276
|
+
}
|
|
277
|
+
// TBLPROPERTIES clause
|
|
278
|
+
const tblPropertiesTokens = ctx.TBLPROPERTIES();
|
|
279
|
+
if (tblPropertiesTokens.length > 0) {
|
|
280
|
+
bridge.updateAfterPreviousTokenByNode(tblPropertiesTokens[0], bridge.newlineIndent);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* Format tableProvider: USING provider_name
|
|
285
|
+
*/
|
|
286
|
+
formatTableProvider(ctx, bridge) {
|
|
287
|
+
const usingNode = ctx.USING();
|
|
288
|
+
if (usingNode) {
|
|
289
|
+
bridge.updateBeforeNextTokenByNode(usingNode, ' ');
|
|
290
|
+
}
|
|
291
|
+
bridge.visitChildren(ctx);
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Format table element list (column definitions)
|
|
295
|
+
* Hanging indent style:
|
|
296
|
+
* CREATE TABLE t (
|
|
297
|
+
* id INT,
|
|
298
|
+
* name STRING
|
|
299
|
+
* )
|
|
300
|
+
* USING ...
|
|
301
|
+
*
|
|
302
|
+
* Note: Caller (formatCreateTable) already added single indent for right paren
|
|
303
|
+
* This method adds one more indent for content (total 4 spaces)
|
|
304
|
+
*/
|
|
305
|
+
formatTableElementList(ctx, bridge) {
|
|
306
|
+
// Add one more indent for content (caller already has single indent)
|
|
307
|
+
// Total: 2 spaces from caller + 2 spaces from here = 4 spaces for content
|
|
308
|
+
bridge.addIndent();
|
|
309
|
+
// First column on new line with double indent
|
|
310
|
+
const elements = ctx.tableElement();
|
|
311
|
+
if (elements.length > 0) {
|
|
312
|
+
bridge.updateAfterPreviousTokenByContext(elements[0], bridge.newlineIndent);
|
|
313
|
+
}
|
|
314
|
+
// Format commas: each subsequent column on separate line
|
|
315
|
+
const commas = ctx.COMMA();
|
|
316
|
+
for (let i = 0; i < commas.length; i++) {
|
|
317
|
+
bridge.updateAfterPreviousTokenByNode(commas[i], '');
|
|
318
|
+
bridge.updateBeforeNextTokenByNode(commas[i], bridge.newlineIndent);
|
|
319
|
+
}
|
|
320
|
+
bridge.visitChildren(ctx);
|
|
321
|
+
// Minus indent for right parenthesis (back to single indent = 2 spaces)
|
|
322
|
+
// Right paren is handled by formatCreateTable
|
|
323
|
+
bridge.minusIndent();
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Format partition field list (PARTITIONED BY columns)
|
|
327
|
+
* Hanging indent style:
|
|
328
|
+
* PARTITIONED BY (
|
|
329
|
+
* dt STRING,
|
|
330
|
+
* region STRING
|
|
331
|
+
* )
|
|
332
|
+
*/
|
|
333
|
+
formatPartitionFieldList(ctx, bridge) {
|
|
334
|
+
const leftParen = ctx.LEFT_PAREN();
|
|
335
|
+
const rightParen = ctx.RIGHT_PAREN();
|
|
336
|
+
const fields = ctx.partitionField();
|
|
337
|
+
// Space before left parenthesis (on same line as PARTITIONED BY)
|
|
338
|
+
if (leftParen) {
|
|
339
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, ' ');
|
|
340
|
+
}
|
|
341
|
+
// Add one more indent for fields (caller already has single indent)
|
|
342
|
+
bridge.addIndent();
|
|
343
|
+
// First field on new line with double indent
|
|
344
|
+
if (fields.length > 0) {
|
|
345
|
+
bridge.updateAfterPreviousTokenByContext(fields[0], bridge.newlineIndent);
|
|
346
|
+
}
|
|
347
|
+
// Format commas: each subsequent field on separate line
|
|
348
|
+
const commas = ctx.COMMA();
|
|
349
|
+
for (let i = 0; i < commas.length; i++) {
|
|
350
|
+
bridge.updateAfterPreviousTokenByNode(commas[i], '');
|
|
351
|
+
bridge.updateBeforeNextTokenByNode(commas[i], bridge.newlineIndent);
|
|
352
|
+
}
|
|
353
|
+
bridge.visitChildren(ctx);
|
|
354
|
+
// Minus indent for right parenthesis (back to single indent)
|
|
355
|
+
bridge.minusIndent();
|
|
356
|
+
// Right parenthesis on new line with single indent
|
|
357
|
+
// Set newline BEFORE right paren
|
|
358
|
+
// Note: Don't set content AFTER right paren here - let CLUSTERED BY handling do it
|
|
359
|
+
if (rightParen) {
|
|
360
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, bridge.newlineIndent);
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
/**
|
|
364
|
+
* Format column definition
|
|
365
|
+
*/
|
|
366
|
+
formatColDefinition(ctx, bridge) {
|
|
367
|
+
const colName = ctx.errorCapturingIdentifier();
|
|
368
|
+
if (colName) {
|
|
369
|
+
bridge.updateBeforeNextTokenByContext(colName, ' ');
|
|
370
|
+
}
|
|
371
|
+
bridge.visitChildren(ctx);
|
|
372
|
+
}
|
|
373
|
+
/**
|
|
374
|
+
* Format REPLACE TABLE statement
|
|
375
|
+
* Same format as CREATE TABLE:
|
|
376
|
+
* REPLACE TABLE table_name (
|
|
377
|
+
* col1 INT,
|
|
378
|
+
* col2 STRING
|
|
379
|
+
* )
|
|
380
|
+
* USING parquet
|
|
381
|
+
* AS SELECT ...;
|
|
382
|
+
*/
|
|
383
|
+
formatReplaceTable(ctx, bridge) {
|
|
384
|
+
const leftParen = ctx.LEFT_PAREN();
|
|
385
|
+
const rightParen = ctx.RIGHT_PAREN();
|
|
386
|
+
if (leftParen) {
|
|
387
|
+
// Space before left parenthesis (stays on same line as table name)
|
|
388
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, ' ');
|
|
389
|
+
}
|
|
390
|
+
// Process tableElementList first (it will handle its own double indent)
|
|
391
|
+
const tableElementList = ctx.tableElementList();
|
|
392
|
+
if (tableElementList) {
|
|
393
|
+
// Add single indent base for right paren and subsequent clauses
|
|
394
|
+
bridge.addIndent();
|
|
395
|
+
bridge.visit(tableElementList);
|
|
396
|
+
}
|
|
397
|
+
// After tableElementList, we're back to single indent
|
|
398
|
+
// Right parenthesis on new line with single indent
|
|
399
|
+
if (rightParen) {
|
|
400
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, bridge.newlineIndent);
|
|
401
|
+
}
|
|
402
|
+
// Process subsequent clauses (USING, etc.) with same single indent
|
|
403
|
+
const tableProvider = ctx.tableProvider();
|
|
404
|
+
if (tableProvider) {
|
|
405
|
+
bridge.updateAfterPreviousTokenByContext(tableProvider, bridge.newlineIndent);
|
|
406
|
+
bridge.visit(tableProvider);
|
|
407
|
+
}
|
|
408
|
+
// Handle AS keyword
|
|
409
|
+
const asNode = ctx.AS();
|
|
410
|
+
const query = ctx.query();
|
|
411
|
+
if (asNode && query) {
|
|
412
|
+
// Minus indent BEFORE visiting query so SELECT is at baseline
|
|
413
|
+
if (tableElementList) {
|
|
414
|
+
bridge.minusIndent();
|
|
415
|
+
}
|
|
416
|
+
bridge.updateAfterPreviousTokenByNode(asNode, ' ');
|
|
417
|
+
bridge.updateBeforeNextTokenByNode(asNode, '\n');
|
|
418
|
+
bridge.visit(query);
|
|
419
|
+
}
|
|
420
|
+
else if (tableElementList) {
|
|
421
|
+
// No AS query, just minus indent
|
|
422
|
+
bridge.minusIndent();
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
/**
|
|
426
|
+
* Format REPLACE TABLE header
|
|
427
|
+
* Format: CREATE OR REPLACE TABLE table_name
|
|
428
|
+
* Or: REPLACE TABLE table_name
|
|
429
|
+
*/
|
|
430
|
+
formatReplaceTableHeader(ctx, bridge) {
|
|
431
|
+
const createNode = ctx.CREATE();
|
|
432
|
+
const orNode = ctx.OR();
|
|
433
|
+
const replaceNode = ctx.REPLACE();
|
|
434
|
+
const tableNode = ctx.TABLE();
|
|
435
|
+
// Format CREATE
|
|
436
|
+
if (createNode) {
|
|
437
|
+
bridge.updateBeforeNextTokenByNode(createNode, ' ');
|
|
438
|
+
}
|
|
439
|
+
// Format OR REPLACE
|
|
440
|
+
if (orNode) {
|
|
441
|
+
bridge.updateAfterPreviousTokenByNode(orNode, ' ');
|
|
442
|
+
bridge.updateBeforeNextTokenByNode(orNode, ' ');
|
|
443
|
+
}
|
|
444
|
+
// Format REPLACE TABLE
|
|
445
|
+
if (replaceNode) {
|
|
446
|
+
bridge.updateAfterPreviousTokenByNode(replaceNode, ' ');
|
|
447
|
+
bridge.updateBeforeNextTokenByNode(replaceNode, ' ');
|
|
448
|
+
}
|
|
449
|
+
if (tableNode) {
|
|
450
|
+
bridge.updateAfterPreviousTokenByNode(tableNode, ' ');
|
|
451
|
+
}
|
|
452
|
+
bridge.visitChildren(ctx);
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
exports.CreateTableStrategy = CreateTableStrategy;
|
|
456
|
+
/**
|
|
457
|
+
* Property List Strategy
|
|
458
|
+
* Handles formatting for property lists in TBLPROPERTIES, OPTIONS, etc.
|
|
459
|
+
*/
|
|
460
|
+
class PropertyListStrategy extends core_1.BaseFormattingStrategy {
|
|
461
|
+
constructor() {
|
|
462
|
+
super(...arguments);
|
|
463
|
+
this.id = 'ddl.propertyList';
|
|
464
|
+
}
|
|
465
|
+
canHandle(ctx) {
|
|
466
|
+
// Don't handle PropertyList if it's part of a Pipeline statement
|
|
467
|
+
if (ctx instanceof SparkSQLParser_1.PropertyListContext || ctx instanceof SparkSQLParser_1.ExpressionPropertyListContext) {
|
|
468
|
+
const parent = ctx.parent;
|
|
469
|
+
// If parent is CreateTableClausesContext, check if its parent is CreatePipelineDatasetContext
|
|
470
|
+
if (parent && parent.constructor.name === 'CreateTableClausesContext') {
|
|
471
|
+
const grandParent = parent.parent;
|
|
472
|
+
if (grandParent && grandParent.constructor.name === 'CreatePipelineDatasetContext') {
|
|
473
|
+
return false; // Let PipelineStrategy handle this
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
// Don't handle PropertyList if it's part of a CREATE INDEX statement
|
|
477
|
+
if (parent && parent.constructor.name === 'CreateIndexContext') {
|
|
478
|
+
return false; // Let DropStatementStrategy handle this
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
return (ctx instanceof SparkSQLParser_1.PropertyListContext ||
|
|
482
|
+
ctx instanceof SparkSQLParser_1.ExpressionPropertyListContext ||
|
|
483
|
+
ctx instanceof SparkSQLParser_1.PropertyWithKeyAndEqualsContext ||
|
|
484
|
+
ctx instanceof SparkSQLParser_1.ExpressionPropertyWithKeyAndEqualsContext);
|
|
485
|
+
}
|
|
486
|
+
format(ctx, bridge) {
|
|
487
|
+
if (ctx instanceof SparkSQLParser_1.PropertyListContext) {
|
|
488
|
+
this.formatPropertyList(ctx, bridge);
|
|
489
|
+
}
|
|
490
|
+
else if (ctx instanceof SparkSQLParser_1.ExpressionPropertyListContext) {
|
|
491
|
+
this.formatExpressionPropertyList(ctx, bridge);
|
|
492
|
+
}
|
|
493
|
+
else if (ctx instanceof SparkSQLParser_1.PropertyWithKeyAndEqualsContext) {
|
|
494
|
+
this.formatPropertyWithKeyAndEquals(ctx, bridge);
|
|
495
|
+
}
|
|
496
|
+
else if (ctx instanceof SparkSQLParser_1.ExpressionPropertyWithKeyAndEqualsContext) {
|
|
497
|
+
this.formatExpressionPropertyWithKeyAndEquals(ctx, bridge);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
formatPropertyList(ctx, bridge) {
|
|
501
|
+
// Compact format for ALTER TABLE/NAMESPACE contexts
|
|
502
|
+
const parent = ctx.parent;
|
|
503
|
+
const useCompactFormat = this.shouldUseCompactFormat(parent);
|
|
504
|
+
const properties = ctx.property();
|
|
505
|
+
const isSingleProperty = properties.length === 1;
|
|
506
|
+
// Check if this is SET TBLPROPERTIES context
|
|
507
|
+
const isSetTableProperties = parent?.constructor?.name === 'SetTablePropertiesContext';
|
|
508
|
+
if (useCompactFormat) {
|
|
509
|
+
const leftParen = ctx.LEFT_PAREN();
|
|
510
|
+
const rightParen = ctx.RIGHT_PAREN();
|
|
511
|
+
if (leftParen) {
|
|
512
|
+
bridge.updateBeforeNextTokenByNode(leftParen, '');
|
|
513
|
+
}
|
|
514
|
+
if (rightParen) {
|
|
515
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, '');
|
|
516
|
+
}
|
|
517
|
+
const commas = ctx.COMMA();
|
|
518
|
+
for (const comma of commas) {
|
|
519
|
+
bridge.updateAfterPreviousTokenByNode(comma, '');
|
|
520
|
+
bridge.updateBeforeNextTokenByNode(comma, ' ');
|
|
521
|
+
}
|
|
522
|
+
bridge.visitChildren(ctx);
|
|
523
|
+
return;
|
|
524
|
+
}
|
|
525
|
+
// Hanging indent format for CREATE TABLE / SET TBLPROPERTIES contexts
|
|
526
|
+
// Single property: compact format
|
|
527
|
+
// Multi property: content 4 spaces indent, right paren 2 spaces indent
|
|
528
|
+
const leftParen = ctx.LEFT_PAREN();
|
|
529
|
+
const rightParen = ctx.RIGHT_PAREN();
|
|
530
|
+
if (isSingleProperty) {
|
|
531
|
+
// Single property: compact format on same line
|
|
532
|
+
if (isSetTableProperties) {
|
|
533
|
+
// SET TBLPROPERTIES single: left paren on new line, compact content
|
|
534
|
+
if (leftParen) {
|
|
535
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, bridge.newlineIndent);
|
|
536
|
+
}
|
|
537
|
+
if (rightParen) {
|
|
538
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, '');
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
else {
|
|
542
|
+
// CREATE TABLE / other contexts
|
|
543
|
+
if (leftParen) {
|
|
544
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, ' ');
|
|
545
|
+
}
|
|
546
|
+
if (rightParen) {
|
|
547
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, '');
|
|
548
|
+
}
|
|
549
|
+
}
|
|
550
|
+
}
|
|
551
|
+
else {
|
|
552
|
+
// Multi property: hanging indent
|
|
553
|
+
if (isSetTableProperties) {
|
|
554
|
+
// SET TBLPROPERTIES multi: left paren on new line (caller already set indent)
|
|
555
|
+
if (leftParen) {
|
|
556
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, bridge.newlineIndent);
|
|
557
|
+
}
|
|
558
|
+
// Add one indent for content (total 4 spaces)
|
|
559
|
+
bridge.addIndent();
|
|
560
|
+
// First property on new line
|
|
561
|
+
if (properties.length > 0) {
|
|
562
|
+
bridge.updateAfterPreviousTokenByContext(properties[0], bridge.newlineIndent);
|
|
563
|
+
}
|
|
564
|
+
const commas = ctx.COMMA();
|
|
565
|
+
for (const comma of commas) {
|
|
566
|
+
bridge.updateAfterPreviousTokenByNode(comma, '');
|
|
567
|
+
bridge.updateBeforeNextTokenByNode(comma, bridge.newlineIndent);
|
|
568
|
+
}
|
|
569
|
+
bridge.minusIndent();
|
|
570
|
+
// Right paren on new line with 2 spaces indent
|
|
571
|
+
if (rightParen) {
|
|
572
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, bridge.newlineIndent);
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
else {
|
|
576
|
+
// CREATE TABLE / other contexts
|
|
577
|
+
if (leftParen) {
|
|
578
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, ' ');
|
|
579
|
+
}
|
|
580
|
+
// Caller already has base indent (2 spaces)
|
|
581
|
+
// Add one indent for content (total 4 spaces)
|
|
582
|
+
bridge.addIndent();
|
|
583
|
+
if (properties.length > 0) {
|
|
584
|
+
bridge.updateAfterPreviousTokenByContext(properties[0], bridge.newlineIndent);
|
|
585
|
+
}
|
|
586
|
+
const commas = ctx.COMMA();
|
|
587
|
+
for (const comma of commas) {
|
|
588
|
+
bridge.updateAfterPreviousTokenByNode(comma, '');
|
|
589
|
+
bridge.updateBeforeNextTokenByNode(comma, bridge.newlineIndent);
|
|
590
|
+
}
|
|
591
|
+
bridge.minusIndent();
|
|
592
|
+
// Right paren on new line with 2 spaces indent
|
|
593
|
+
if (rightParen) {
|
|
594
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, bridge.newlineIndent);
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
bridge.visitChildren(ctx);
|
|
599
|
+
}
|
|
600
|
+
formatExpressionPropertyList(ctx, bridge) {
|
|
601
|
+
const properties = ctx.expressionProperty();
|
|
602
|
+
const isSingleProperty = properties.length === 1;
|
|
603
|
+
const leftParen = ctx.LEFT_PAREN();
|
|
604
|
+
const rightParen = ctx.RIGHT_PAREN();
|
|
605
|
+
if (leftParen) {
|
|
606
|
+
bridge.updateAfterPreviousTokenByNode(leftParen, ' ');
|
|
607
|
+
}
|
|
608
|
+
if (isSingleProperty) {
|
|
609
|
+
// Single property: compact format on same line
|
|
610
|
+
if (rightParen) {
|
|
611
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, '');
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
else {
|
|
615
|
+
// Multi property: hanging indent
|
|
616
|
+
bridge.addIndent();
|
|
617
|
+
if (properties.length > 0) {
|
|
618
|
+
bridge.updateAfterPreviousTokenByContext(properties[0], bridge.newlineIndent);
|
|
619
|
+
}
|
|
620
|
+
const commas = ctx.COMMA();
|
|
621
|
+
for (const comma of commas) {
|
|
622
|
+
bridge.updateAfterPreviousTokenByNode(comma, '');
|
|
623
|
+
bridge.updateBeforeNextTokenByNode(comma, bridge.newlineIndent);
|
|
624
|
+
}
|
|
625
|
+
bridge.minusIndent();
|
|
626
|
+
if (rightParen) {
|
|
627
|
+
bridge.updateAfterPreviousTokenByNode(rightParen, bridge.newlineIndent);
|
|
628
|
+
}
|
|
629
|
+
}
|
|
630
|
+
bridge.visitChildren(ctx);
|
|
631
|
+
}
|
|
632
|
+
formatPropertyWithKeyAndEquals(ctx, bridge) {
|
|
633
|
+
const eqNode = ctx.EQ();
|
|
634
|
+
if (eqNode) {
|
|
635
|
+
bridge.updateAfterPreviousTokenByNode(eqNode, ' ');
|
|
636
|
+
bridge.updateBeforeNextTokenByNode(eqNode, ' ');
|
|
637
|
+
}
|
|
638
|
+
bridge.visitChildren(ctx);
|
|
639
|
+
}
|
|
640
|
+
formatExpressionPropertyWithKeyAndEquals(ctx, bridge) {
|
|
641
|
+
const eqNode = ctx.EQ();
|
|
642
|
+
if (eqNode) {
|
|
643
|
+
bridge.updateAfterPreviousTokenByNode(eqNode, ' ');
|
|
644
|
+
bridge.updateBeforeNextTokenByNode(eqNode, ' ');
|
|
645
|
+
}
|
|
646
|
+
bridge.visitChildren(ctx);
|
|
647
|
+
}
|
|
648
|
+
shouldUseCompactFormat(parent) {
|
|
649
|
+
// Check if parent is an ALTER TABLE/NAMESPACE context that uses compact format
|
|
650
|
+
// Note: SetTablePropertiesContext is NOT in this list - it uses hanging indent for multi-property
|
|
651
|
+
const className = parent?.constructor?.name;
|
|
652
|
+
return (className === 'SetTableSerDeContext' ||
|
|
653
|
+
className === 'UnsetTablePropertiesContext' ||
|
|
654
|
+
className === 'SetNamespacePropertiesContext' ||
|
|
655
|
+
className === 'UnsetNamespacePropertiesContext');
|
|
656
|
+
}
|
|
657
|
+
}
|
|
658
|
+
exports.PropertyListStrategy = PropertyListStrategy;
|
|
659
|
+
//# sourceMappingURL=create-table.strategy.js.map
|