@mpeggroup/mpeg-sdl-parser 4.1.2 → 4.1.3
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 +13 -12
- package/dist/index.d.ts +82 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +82 -11833
- package/dist/src/analyser/checks/check-array-definition.d.ts +3 -0
- package/dist/src/analyser/checks/check-array-definition.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-array-definition.js +54 -0
- package/dist/src/analyser/checks/check-array-element-access.d.ts +3 -0
- package/dist/src/analyser/checks/check-array-element-access.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-array-element-access.js +19 -0
- package/dist/src/analyser/checks/check-class-declaration.d.ts +3 -0
- package/dist/src/analyser/checks/check-class-declaration.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-class-declaration.js +252 -0
- package/dist/src/analyser/checks/check-computed-array-definition.d.ts +3 -0
- package/dist/src/analyser/checks/check-computed-array-definition.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-computed-array-definition.js +29 -0
- package/dist/src/analyser/checks/check-computed-elementary-type-definition.d.ts +3 -0
- package/dist/src/analyser/checks/check-computed-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-computed-elementary-type-definition.js +27 -0
- package/dist/src/analyser/checks/check-elementary-type-definition.d.ts +3 -0
- package/dist/src/analyser/checks/check-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-elementary-type-definition.js +121 -0
- package/dist/src/analyser/checks/check-expression-binary.d.ts +3 -0
- package/dist/src/analyser/checks/check-expression-binary.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-expression-binary.js +177 -0
- package/dist/src/analyser/checks/check-expression-lengthof.d.ts +3 -0
- package/dist/src/analyser/checks/check-expression-lengthof.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-expression-lengthof.js +23 -0
- package/dist/src/analyser/checks/check-expression-unary.d.ts +3 -0
- package/dist/src/analyser/checks/check-expression-unary.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-expression-unary.js +104 -0
- package/dist/src/analyser/checks/check-identifier.d.ts +3 -0
- package/dist/src/analyser/checks/check-identifier.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-identifier.js +55 -0
- package/dist/src/analyser/checks/check-if-statement.d.ts +5 -0
- package/dist/src/analyser/checks/check-if-statement.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-if-statement.js +122 -0
- package/dist/src/analyser/checks/check-map-declaration.d.ts +3 -0
- package/dist/src/analyser/checks/check-map-declaration.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-map-declaration.js +130 -0
- package/dist/src/analyser/checks/check-map-definition.d.ts +3 -0
- package/dist/src/analyser/checks/check-map-definition.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-map-definition.js +72 -0
- package/dist/src/analyser/checks/check-number-literal-float.d.ts +3 -0
- package/dist/src/analyser/checks/check-number-literal-float.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-number-literal-float.js +17 -0
- package/dist/src/analyser/checks/check-parameter-list.d.ts +3 -0
- package/dist/src/analyser/checks/check-parameter-list.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-parameter-list.js +26 -0
- package/dist/src/analyser/checks/check-specification.d.ts +3 -0
- package/dist/src/analyser/checks/check-specification.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-specification.js +37 -0
- package/dist/src/analyser/checks/check-switch-statement.d.ts +3 -0
- package/dist/src/analyser/checks/check-switch-statement.d.ts.map +1 -0
- package/dist/src/analyser/checks/check-switch-statement.js +140 -0
- package/dist/src/analyser/checks/check.d.ts +15 -0
- package/dist/src/analyser/checks/check.d.ts.map +1 -0
- package/dist/src/analyser/checks/check.js +1 -0
- package/dist/src/analyser/create-sdl-analyser.d.ts +18 -0
- package/dist/src/analyser/create-sdl-analyser.d.ts.map +1 -0
- package/dist/src/analyser/create-sdl-analyser.js +72 -0
- package/dist/src/analyser/node-handler/abstract-analysis-node-handler.d.ts +63 -0
- package/dist/src/analyser/node-handler/abstract-analysis-node-handler.d.ts.map +1 -0
- package/dist/src/analyser/node-handler/abstract-analysis-node-handler.js +376 -0
- package/dist/src/analyser/node-handler/build-symbol-table-node-handler.d.ts +18 -0
- package/dist/src/analyser/node-handler/build-symbol-table-node-handler.d.ts.map +1 -0
- package/dist/src/analyser/node-handler/build-symbol-table-node-handler.js +350 -0
- package/dist/src/analyser/node-handler/specific-check-node-handler.d.ts +9 -0
- package/dist/src/analyser/node-handler/specific-check-node-handler.d.ts.map +1 -0
- package/dist/src/analyser/node-handler/specific-check-node-handler.js +29 -0
- package/dist/src/analyser/node-handler/validate-scope-node-handler.d.ts +18 -0
- package/dist/src/analyser/node-handler/validate-scope-node-handler.d.ts.map +1 -0
- package/dist/src/analyser/node-handler/validate-scope-node-handler.js +144 -0
- package/dist/src/analyser/node-handler/validate-type-node-handler.d.ts +13 -0
- package/dist/src/analyser/node-handler/validate-type-node-handler.d.ts.map +1 -0
- package/dist/src/analyser/node-handler/validate-type-node-handler.js +240 -0
- package/dist/src/analyser/sdl-analyser.d.ts +20 -0
- package/dist/src/analyser/sdl-analyser.d.ts.map +1 -0
- package/dist/src/analyser/sdl-analyser.js +69 -0
- package/dist/src/analyser/symbol-table.d.ts +103 -0
- package/dist/src/analyser/symbol-table.d.ts.map +1 -0
- package/dist/src/analyser/symbol-table.js +239 -0
- package/dist/src/analyser/util/symbol-table-utils.d.ts +67 -0
- package/dist/src/analyser/util/symbol-table-utils.d.ts.map +1 -0
- package/dist/src/analyser/util/symbol-table-utils.js +279 -0
- package/dist/src/analyser/util/type-utils.d.ts +14 -0
- package/dist/src/analyser/util/type-utils.d.ts.map +1 -0
- package/dist/src/analyser/util/type-utils.js +147 -0
- package/dist/src/ast/build/consume/consume-abstract-node.d.ts +20 -0
- package/dist/src/ast/build/consume/consume-abstract-node.d.ts.map +1 -0
- package/dist/src/ast/build/consume/consume-abstract-node.js +160 -0
- package/dist/src/ast/build/consume/consume-ast-node.d.ts +4 -0
- package/dist/src/ast/build/consume/consume-ast-node.d.ts.map +1 -0
- package/dist/src/ast/build/consume/consume-ast-node.js +297 -0
- package/dist/src/ast/build/consume/consume-primitive.d.ts +4 -0
- package/dist/src/ast/build/consume/consume-primitive.d.ts.map +1 -0
- package/dist/src/ast/build/consume/consume-primitive.js +47 -0
- package/dist/src/ast/build/consume/consume-trivia.d.ts +8 -0
- package/dist/src/ast/build/consume/consume-trivia.d.ts.map +1 -0
- package/dist/src/ast/build/consume/consume-trivia.js +67 -0
- package/dist/src/ast/build/consume/consume-white-space-and-missing-errors.d.ts +3 -0
- package/dist/src/ast/build/consume/consume-white-space-and-missing-errors.d.ts.map +1 -0
- package/dist/src/ast/build/consume/consume-white-space-and-missing-errors.js +17 -0
- package/dist/src/ast/build/node/build-aggregate-output-value.d.ts +4 -0
- package/dist/src/ast/build/node/build-aggregate-output-value.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-aggregate-output-value.js +24 -0
- package/dist/src/ast/build/node/build-aligned-modifier.d.ts +4 -0
- package/dist/src/ast/build/node/build-aligned-modifier.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-aligned-modifier.js +58 -0
- package/dist/src/ast/build/node/build-array-definition.d.ts +4 -0
- package/dist/src/ast/build/node/build-array-definition.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-array-definition.js +57 -0
- package/dist/src/ast/build/node/build-array-element-access.d.ts +4 -0
- package/dist/src/ast/build/node/build-array-element-access.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-array-element-access.js +19 -0
- package/dist/src/ast/build/node/build-base64-string-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-base64-string-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-base64-string-literal.js +24 -0
- package/dist/src/ast/build/node/build-binary-expression.d.ts +4 -0
- package/dist/src/ast/build/node/build-binary-expression.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-binary-expression.js +90 -0
- package/dist/src/ast/build/node/build-binary-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-binary-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-binary-literal.js +16 -0
- package/dist/src/ast/build/node/build-bit-modifier.d.ts +4 -0
- package/dist/src/ast/build/node/build-bit-modifier.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-bit-modifier.js +33 -0
- package/dist/src/ast/build/node/build-case-clause.d.ts +4 -0
- package/dist/src/ast/build/node/build-case-clause.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-case-clause.js +43 -0
- package/dist/src/ast/build/node/build-class-declaration.d.ts +4 -0
- package/dist/src/ast/build/node/build-class-declaration.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-class-declaration.js +46 -0
- package/dist/src/ast/build/node/build-class-definition.d.ts +4 -0
- package/dist/src/ast/build/node/build-class-definition.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-class-definition.js +22 -0
- package/dist/src/ast/build/node/build-class-id-range.d.ts +4 -0
- package/dist/src/ast/build/node/build-class-id-range.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-class-id-range.js +15 -0
- package/dist/src/ast/build/node/build-class-id.d.ts +4 -0
- package/dist/src/ast/build/node/build-class-id.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-class-id.js +7 -0
- package/dist/src/ast/build/node/build-class-member-access.d.ts +4 -0
- package/dist/src/ast/build/node/build-class-member-access.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-class-member-access.js +12 -0
- package/dist/src/ast/build/node/build-compound-statement.d.ts +4 -0
- package/dist/src/ast/build/node/build-compound-statement.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-compound-statement.js +15 -0
- package/dist/src/ast/build/node/build-computed-array-definition.d.ts +4 -0
- package/dist/src/ast/build/node/build-computed-array-definition.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-computed-array-definition.js +14 -0
- package/dist/src/ast/build/node/build-computed-elementary-type-definition.d.ts +4 -0
- package/dist/src/ast/build/node/build-computed-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-computed-elementary-type-definition.js +37 -0
- package/dist/src/ast/build/node/build-decimal-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-decimal-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-decimal-literal.js +6 -0
- package/dist/src/ast/build/node/build-default-clause.d.ts +4 -0
- package/dist/src/ast/build/node/build-default-clause.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-default-clause.js +30 -0
- package/dist/src/ast/build/node/build-do-statement.d.ts +4 -0
- package/dist/src/ast/build/node/build-do-statement.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-do-statement.js +24 -0
- package/dist/src/ast/build/node/build-elementary-type-definition.d.ts +4 -0
- package/dist/src/ast/build/node/build-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-elementary-type-definition.js +71 -0
- package/dist/src/ast/build/node/build-elementary-type-output-value.d.ts +4 -0
- package/dist/src/ast/build/node/build-elementary-type-output-value.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-elementary-type-output-value.js +13 -0
- package/dist/src/ast/build/node/build-elementary-type.d.ts +4 -0
- package/dist/src/ast/build/node/build-elementary-type.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-elementary-type.js +19 -0
- package/dist/src/ast/build/node/build-expandable-modifier.d.ts +4 -0
- package/dist/src/ast/build/node/build-expandable-modifier.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-expandable-modifier.js +31 -0
- package/dist/src/ast/build/node/build-explicit-array-dimension.d.ts +4 -0
- package/dist/src/ast/build/node/build-explicit-array-dimension.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-explicit-array-dimension.js +18 -0
- package/dist/src/ast/build/node/build-expression-statement.d.ts +4 -0
- package/dist/src/ast/build/node/build-expression-statement.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-expression-statement.js +12 -0
- package/dist/src/ast/build/node/build-extended-class-id-range.d.ts +4 -0
- package/dist/src/ast/build/node/build-extended-class-id-range.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-extended-class-id-range.js +10 -0
- package/dist/src/ast/build/node/build-extends-modifier.d.ts +4 -0
- package/dist/src/ast/build/node/build-extends-modifier.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-extends-modifier.js +16 -0
- package/dist/src/ast/build/node/build-floating-point-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-floating-point-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-floating-point-literal.js +6 -0
- package/dist/src/ast/build/node/build-for-statement.d.ts +4 -0
- package/dist/src/ast/build/node/build-for-statement.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-for-statement.js +53 -0
- package/dist/src/ast/build/node/build-hexadecimal-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-hexadecimal-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-hexadecimal-literal.js +16 -0
- package/dist/src/ast/build/node/build-identifier.d.ts +4 -0
- package/dist/src/ast/build/node/build-identifier.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-identifier.js +4 -0
- package/dist/src/ast/build/node/build-if-statement.d.ts +4 -0
- package/dist/src/ast/build/node/build-if-statement.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-if-statement.js +31 -0
- package/dist/src/ast/build/node/build-implicit-array-dimension.d.ts +4 -0
- package/dist/src/ast/build/node/build-implicit-array-dimension.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-implicit-array-dimension.js +37 -0
- package/dist/src/ast/build/node/build-integer-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-integer-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-integer-literal.js +6 -0
- package/dist/src/ast/build/node/build-length-attribute.d.ts +4 -0
- package/dist/src/ast/build/node/build-length-attribute.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-length-attribute.js +18 -0
- package/dist/src/ast/build/node/build-lengthof-expression.d.ts +4 -0
- package/dist/src/ast/build/node/build-lengthof-expression.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-lengthof-expression.js +14 -0
- package/dist/src/ast/build/node/build-map-declaration.d.ts +4 -0
- package/dist/src/ast/build/node/build-map-declaration.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-map-declaration.js +43 -0
- package/dist/src/ast/build/node/build-map-definition.d.ts +4 -0
- package/dist/src/ast/build/node/build-map-definition.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-map-definition.js +42 -0
- package/dist/src/ast/build/node/build-map-entry.d.ts +4 -0
- package/dist/src/ast/build/node/build-map-entry.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-map-entry.js +14 -0
- package/dist/src/ast/build/node/build-missing-error.d.ts +4 -0
- package/dist/src/ast/build/node/build-missing-error.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-missing-error.js +7 -0
- package/dist/src/ast/build/node/build-multiple-character-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-multiple-character-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-multiple-character-literal.js +38 -0
- package/dist/src/ast/build/node/build-parameter-list.d.ts +4 -0
- package/dist/src/ast/build/node/build-parameter-list.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-parameter-list.js +20 -0
- package/dist/src/ast/build/node/build-parameter-value-list.d.ts +4 -0
- package/dist/src/ast/build/node/build-parameter-value-list.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-parameter-value-list.js +20 -0
- package/dist/src/ast/build/node/build-parameter.d.ts +4 -0
- package/dist/src/ast/build/node/build-parameter.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-parameter.js +25 -0
- package/dist/src/ast/build/node/build-partial-array-dimension.d.ts +4 -0
- package/dist/src/ast/build/node/build-partial-array-dimension.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-partial-array-dimension.js +22 -0
- package/dist/src/ast/build/node/build-specification.d.ts +4 -0
- package/dist/src/ast/build/node/build-specification.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-specification.js +12 -0
- package/dist/src/ast/build/node/build-string-definition.d.ts +4 -0
- package/dist/src/ast/build/node/build-string-definition.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-string-definition.js +50 -0
- package/dist/src/ast/build/node/build-switch-statement.d.ts +4 -0
- package/dist/src/ast/build/node/build-switch-statement.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-switch-statement.js +28 -0
- package/dist/src/ast/build/node/build-token.d.ts +4 -0
- package/dist/src/ast/build/node/build-token.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-token.js +16 -0
- package/dist/src/ast/build/node/build-unary-expression.d.ts +6 -0
- package/dist/src/ast/build/node/build-unary-expression.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-unary-expression.js +53 -0
- package/dist/src/ast/build/node/build-unexpected-error.d.ts +4 -0
- package/dist/src/ast/build/node/build-unexpected-error.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-unexpected-error.js +6 -0
- package/dist/src/ast/build/node/build-utf-string-literal.d.ts +4 -0
- package/dist/src/ast/build/node/build-utf-string-literal.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-utf-string-literal.js +54 -0
- package/dist/src/ast/build/node/build-while-statement.d.ts +4 -0
- package/dist/src/ast/build/node/build-while-statement.d.ts.map +1 -0
- package/dist/src/ast/build/node/build-while-statement.js +12 -0
- package/dist/src/ast/build/util/array-dimension-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/array-dimension-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/array-dimension-kind-by-token-type-id-map.js +152 -0
- package/dist/src/ast/build/util/binary-operator-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/binary-operator-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/binary-operator-kind-by-token-type-id-map.js +145 -0
- package/dist/src/ast/build/util/build-context.d.ts +35 -0
- package/dist/src/ast/build/util/build-context.d.ts.map +1 -0
- package/dist/src/ast/build/util/build-context.js +1 -0
- package/dist/src/ast/build/util/class-id-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/class-id-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/class-id-kind-by-token-type-id-map.js +152 -0
- package/dist/src/ast/build/util/expression-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/expression-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/expression-kind-by-token-type-id-map.js +152 -0
- package/dist/src/ast/build/util/fetch-node.d.ts +13 -0
- package/dist/src/ast/build/util/fetch-node.d.ts.map +1 -0
- package/dist/src/ast/build/util/fetch-node.js +285 -0
- package/dist/src/ast/build/util/node-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/node-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/node-kind-by-token-type-id-map.js +193 -0
- package/dist/src/ast/build/util/statement-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/statement-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/statement-kind-by-token-type-id-map.js +178 -0
- package/dist/src/ast/build/util/string-literal-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/string-literal-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/string-literal-kind-by-token-type-id-map.js +150 -0
- package/dist/src/ast/build/util/token-kind-by-token-type-id-map.d.ts +3 -0
- package/dist/src/ast/build/util/token-kind-by-token-type-id-map.d.ts.map +1 -0
- package/dist/src/ast/build/util/token-kind-by-token-type-id-map.js +309 -0
- package/dist/src/ast/build-ast.d.ts +13 -0
- package/dist/src/ast/build-ast.d.ts.map +1 -0
- package/dist/src/ast/build-ast.js +65 -0
- package/dist/src/ast/node/abstract-array-definition.d.ts +12 -0
- package/dist/src/ast/node/abstract-array-definition.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-array-definition.js +10 -0
- package/dist/src/ast/node/abstract-array-dimension.d.ts +12 -0
- package/dist/src/ast/node/abstract-array-dimension.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-array-dimension.js +14 -0
- package/dist/src/ast/node/abstract-class-id.d.ts +8 -0
- package/dist/src/ast/node/abstract-class-id.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-class-id.js +10 -0
- package/dist/src/ast/node/abstract-composite-node.d.ts +17 -0
- package/dist/src/ast/node/abstract-composite-node.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-composite-node.js +47 -0
- package/dist/src/ast/node/abstract-elementary-type-definition.d.ts +19 -0
- package/dist/src/ast/node/abstract-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-elementary-type-definition.js +18 -0
- package/dist/src/ast/node/abstract-expression.d.ts +8 -0
- package/dist/src/ast/node/abstract-expression.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-expression.js +10 -0
- package/dist/src/ast/node/abstract-leaf-node.d.ts +6 -0
- package/dist/src/ast/node/abstract-leaf-node.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-leaf-node.js +6 -0
- package/dist/src/ast/node/abstract-node.d.ts +12 -0
- package/dist/src/ast/node/abstract-node.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-node.js +11 -0
- package/dist/src/ast/node/abstract-statement.d.ts +9 -0
- package/dist/src/ast/node/abstract-statement.d.ts.map +1 -0
- package/dist/src/ast/node/abstract-statement.js +12 -0
- package/dist/src/ast/node/aggregate-output-value.d.ts +14 -0
- package/dist/src/ast/node/aggregate-output-value.d.ts.map +1 -0
- package/dist/src/ast/node/aggregate-output-value.js +15 -0
- package/dist/src/ast/node/aligned-modifier.d.ts +13 -0
- package/dist/src/ast/node/aligned-modifier.d.ts.map +1 -0
- package/dist/src/ast/node/aligned-modifier.js +17 -0
- package/dist/src/ast/node/array-definition.d.ts +24 -0
- package/dist/src/ast/node/array-definition.d.ts.map +1 -0
- package/dist/src/ast/node/array-definition.js +25 -0
- package/dist/src/ast/node/array-element-access.d.ts +14 -0
- package/dist/src/ast/node/array-element-access.d.ts.map +1 -0
- package/dist/src/ast/node/array-element-access.js +13 -0
- package/dist/src/ast/node/binary-expression.d.ts +15 -0
- package/dist/src/ast/node/binary-expression.d.ts.map +1 -0
- package/dist/src/ast/node/binary-expression.js +15 -0
- package/dist/src/ast/node/bit-modifier.d.ts +19 -0
- package/dist/src/ast/node/bit-modifier.d.ts.map +1 -0
- package/dist/src/ast/node/bit-modifier.js +23 -0
- package/dist/src/ast/node/case-clause.d.ts +18 -0
- package/dist/src/ast/node/case-clause.d.ts.map +1 -0
- package/dist/src/ast/node/case-clause.js +23 -0
- package/dist/src/ast/node/class-declaration.d.ts +25 -0
- package/dist/src/ast/node/class-declaration.d.ts.map +1 -0
- package/dist/src/ast/node/class-declaration.js +29 -0
- package/dist/src/ast/node/class-definition.d.ts +15 -0
- package/dist/src/ast/node/class-definition.d.ts.map +1 -0
- package/dist/src/ast/node/class-definition.js +17 -0
- package/dist/src/ast/node/class-id-range.d.ts +12 -0
- package/dist/src/ast/node/class-id-range.d.ts.map +1 -0
- package/dist/src/ast/node/class-id-range.js +13 -0
- package/dist/src/ast/node/class-id.d.ts +9 -0
- package/dist/src/ast/node/class-id.d.ts.map +1 -0
- package/dist/src/ast/node/class-id.js +9 -0
- package/dist/src/ast/node/class-member-access.d.ts +11 -0
- package/dist/src/ast/node/class-member-access.d.ts.map +1 -0
- package/dist/src/ast/node/class-member-access.js +11 -0
- package/dist/src/ast/node/compound-statement.d.ts +11 -0
- package/dist/src/ast/node/compound-statement.d.ts.map +1 -0
- package/dist/src/ast/node/compound-statement.js +13 -0
- package/dist/src/ast/node/computed-array-definition.d.ts +14 -0
- package/dist/src/ast/node/computed-array-definition.d.ts.map +1 -0
- package/dist/src/ast/node/computed-array-definition.js +13 -0
- package/dist/src/ast/node/computed-elementary-type-definition.d.ts +13 -0
- package/dist/src/ast/node/computed-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/ast/node/computed-elementary-type-definition.js +9 -0
- package/dist/src/ast/node/default-clause.d.ts +14 -0
- package/dist/src/ast/node/default-clause.d.ts.map +1 -0
- package/dist/src/ast/node/default-clause.js +17 -0
- package/dist/src/ast/node/do-statement.d.ts +19 -0
- package/dist/src/ast/node/do-statement.d.ts.map +1 -0
- package/dist/src/ast/node/do-statement.js +21 -0
- package/dist/src/ast/node/elementary-type-definition.d.ts +21 -0
- package/dist/src/ast/node/elementary-type-definition.d.ts.map +1 -0
- package/dist/src/ast/node/elementary-type-definition.js +21 -0
- package/dist/src/ast/node/elementary-type-output-value.d.ts +11 -0
- package/dist/src/ast/node/elementary-type-output-value.d.ts.map +1 -0
- package/dist/src/ast/node/elementary-type-output-value.js +11 -0
- package/dist/src/ast/node/elementary-type.d.ts +10 -0
- package/dist/src/ast/node/elementary-type.d.ts.map +1 -0
- package/dist/src/ast/node/elementary-type.js +11 -0
- package/dist/src/ast/node/enum/array-dimension-kind.d.ts +12 -0
- package/dist/src/ast/node/enum/array-dimension-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/array-dimension-kind.js +12 -0
- package/dist/src/ast/node/enum/binary-operator-kind.d.ts +42 -0
- package/dist/src/ast/node/enum/binary-operator-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/binary-operator-kind.js +42 -0
- package/dist/src/ast/node/enum/class-id-kind.d.ts +13 -0
- package/dist/src/ast/node/enum/class-id-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/class-id-kind.js +13 -0
- package/dist/src/ast/node/enum/elementary-type-kind.d.ts +14 -0
- package/dist/src/ast/node/enum/elementary-type-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/elementary-type-kind.js +14 -0
- package/dist/src/ast/node/enum/expression-kind.d.ts +12 -0
- package/dist/src/ast/node/enum/expression-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/expression-kind.js +12 -0
- package/dist/src/ast/node/enum/node-kind.d.ts +58 -0
- package/dist/src/ast/node/enum/node-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/node-kind.js +58 -0
- package/dist/src/ast/node/enum/number-literal-kind.d.ts +18 -0
- package/dist/src/ast/node/enum/number-literal-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/number-literal-kind.js +18 -0
- package/dist/src/ast/node/enum/statement-kind.d.ts +38 -0
- package/dist/src/ast/node/enum/statement-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/statement-kind.js +38 -0
- package/dist/src/ast/node/enum/string-literal-kind.d.ts +14 -0
- package/dist/src/ast/node/enum/string-literal-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/string-literal-kind.js +14 -0
- package/dist/src/ast/node/enum/string-variable-kind.d.ts +26 -0
- package/dist/src/ast/node/enum/string-variable-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/string-variable-kind.js +26 -0
- package/dist/src/ast/node/enum/token-kind.d.ts +88 -0
- package/dist/src/ast/node/enum/token-kind.d.ts.map +1 -0
- package/dist/src/ast/node/enum/token-kind.js +88 -0
- package/dist/src/ast/node/expandable-modifier.d.ts +13 -0
- package/dist/src/ast/node/expandable-modifier.d.ts.map +1 -0
- package/dist/src/ast/node/expandable-modifier.js +15 -0
- package/dist/src/ast/node/explicit-array-dimension.d.ts +12 -0
- package/dist/src/ast/node/explicit-array-dimension.d.ts.map +1 -0
- package/dist/src/ast/node/explicit-array-dimension.js +9 -0
- package/dist/src/ast/node/expression-statement.d.ts +13 -0
- package/dist/src/ast/node/expression-statement.d.ts.map +1 -0
- package/dist/src/ast/node/expression-statement.js +11 -0
- package/dist/src/ast/node/extended-class-id-range.d.ts +12 -0
- package/dist/src/ast/node/extended-class-id-range.d.ts.map +1 -0
- package/dist/src/ast/node/extended-class-id-range.js +11 -0
- package/dist/src/ast/node/extends-modifier.d.ts +13 -0
- package/dist/src/ast/node/extends-modifier.d.ts.map +1 -0
- package/dist/src/ast/node/extends-modifier.js +13 -0
- package/dist/src/ast/node/for-statement.d.ts +20 -0
- package/dist/src/ast/node/for-statement.d.ts.map +1 -0
- package/dist/src/ast/node/for-statement.js +31 -0
- package/dist/src/ast/node/identifier.d.ts +7 -0
- package/dist/src/ast/node/identifier.d.ts.map +1 -0
- package/dist/src/ast/node/identifier.js +9 -0
- package/dist/src/ast/node/if-statement.d.ts +18 -0
- package/dist/src/ast/node/if-statement.d.ts.map +1 -0
- package/dist/src/ast/node/if-statement.js +21 -0
- package/dist/src/ast/node/implicit-array-dimension.d.ts +14 -0
- package/dist/src/ast/node/implicit-array-dimension.d.ts.map +1 -0
- package/dist/src/ast/node/implicit-array-dimension.js +13 -0
- package/dist/src/ast/node/length-attribute.d.ts +14 -0
- package/dist/src/ast/node/length-attribute.d.ts.map +1 -0
- package/dist/src/ast/node/length-attribute.js +13 -0
- package/dist/src/ast/node/length-of-expression.d.ts +13 -0
- package/dist/src/ast/node/length-of-expression.d.ts.map +1 -0
- package/dist/src/ast/node/length-of-expression.js +15 -0
- package/dist/src/ast/node/map-declaration.d.ts +21 -0
- package/dist/src/ast/node/map-declaration.d.ts.map +1 -0
- package/dist/src/ast/node/map-declaration.js +27 -0
- package/dist/src/ast/node/map-definition.d.ts +19 -0
- package/dist/src/ast/node/map-definition.d.ts.map +1 -0
- package/dist/src/ast/node/map-definition.js +25 -0
- package/dist/src/ast/node/map-entry.d.ts +13 -0
- package/dist/src/ast/node/map-entry.d.ts.map +1 -0
- package/dist/src/ast/node/map-entry.js +13 -0
- package/dist/src/ast/node/missing-error.d.ts +6 -0
- package/dist/src/ast/node/missing-error.d.ts.map +1 -0
- package/dist/src/ast/node/missing-error.js +7 -0
- package/dist/src/ast/node/number-literal.d.ts +11 -0
- package/dist/src/ast/node/number-literal.d.ts.map +1 -0
- package/dist/src/ast/node/number-literal.js +15 -0
- package/dist/src/ast/node/parameter-list.d.ts +13 -0
- package/dist/src/ast/node/parameter-list.d.ts.map +1 -0
- package/dist/src/ast/node/parameter-list.js +15 -0
- package/dist/src/ast/node/parameter-value-list.d.ts +15 -0
- package/dist/src/ast/node/parameter-value-list.d.ts.map +1 -0
- package/dist/src/ast/node/parameter-value-list.js +15 -0
- package/dist/src/ast/node/parameter.d.ts +12 -0
- package/dist/src/ast/node/parameter.d.ts.map +1 -0
- package/dist/src/ast/node/parameter.js +13 -0
- package/dist/src/ast/node/partial-array-dimension.d.ts +14 -0
- package/dist/src/ast/node/partial-array-dimension.d.ts.map +1 -0
- package/dist/src/ast/node/partial-array-dimension.js +13 -0
- package/dist/src/ast/node/specification.d.ts +9 -0
- package/dist/src/ast/node/specification.d.ts.map +1 -0
- package/dist/src/ast/node/specification.js +7 -0
- package/dist/src/ast/node/string-definition.d.ts +20 -0
- package/dist/src/ast/node/string-definition.d.ts.map +1 -0
- package/dist/src/ast/node/string-definition.js +25 -0
- package/dist/src/ast/node/string-literal.d.ts +12 -0
- package/dist/src/ast/node/string-literal.d.ts.map +1 -0
- package/dist/src/ast/node/string-literal.js +16 -0
- package/dist/src/ast/node/switch-statement.d.ts +21 -0
- package/dist/src/ast/node/switch-statement.d.ts.map +1 -0
- package/dist/src/ast/node/switch-statement.js +23 -0
- package/dist/src/ast/node/token.d.ts +11 -0
- package/dist/src/ast/node/token.d.ts.map +1 -0
- package/dist/src/ast/node/token.js +16 -0
- package/dist/src/ast/node/trivia.d.ts +13 -0
- package/dist/src/ast/node/trivia.d.ts.map +1 -0
- package/dist/src/ast/node/trivia.js +1 -0
- package/dist/src/ast/node/unary-expression.d.ts +19 -0
- package/dist/src/ast/node/unary-expression.d.ts.map +1 -0
- package/dist/src/ast/node/unary-expression.js +21 -0
- package/dist/src/ast/node/unexpected-error.d.ts +8 -0
- package/dist/src/ast/node/unexpected-error.d.ts.map +1 -0
- package/dist/src/ast/node/unexpected-error.js +9 -0
- package/dist/src/ast/node/while-statement.d.ts +16 -0
- package/dist/src/ast/node/while-statement.d.ts.map +1 -0
- package/dist/src/ast/node/while-statement.js +17 -0
- package/dist/src/ast/util/types.d.ts +39 -0
- package/dist/src/ast/util/types.d.ts.map +1 -0
- package/dist/src/ast/util/types.js +58 -0
- package/dist/src/ast/visitor/node-handler.d.ts +13 -0
- package/dist/src/ast/visitor/node-handler.d.ts.map +1 -0
- package/dist/src/ast/visitor/node-handler.js +1 -0
- package/dist/src/ast/visitor/node-visitor.d.ts +13 -0
- package/dist/src/ast/visitor/node-visitor.d.ts.map +1 -0
- package/dist/src/ast/visitor/node-visitor.js +1 -0
- package/dist/src/ast/visitor/traversing-visitor.d.ts +17 -0
- package/dist/src/ast/visitor/traversing-visitor.d.ts.map +1 -0
- package/dist/src/ast/visitor/traversing-visitor.js +51 -0
- package/dist/src/completion/completion-rules.d.ts +10 -0
- package/dist/src/completion/completion-rules.d.ts.map +1 -0
- package/dist/src/completion/completion-rules.js +345 -0
- package/dist/src/completion/get-potential-syntactic-tokens.d.ts +10 -0
- package/dist/src/completion/get-potential-syntactic-tokens.d.ts.map +1 -0
- package/dist/src/completion/get-potential-syntactic-tokens.js +33 -0
- package/dist/src/completion/get-potential-token-type-ids.d.ts +10 -0
- package/dist/src/completion/get-potential-token-type-ids.d.ts.map +1 -0
- package/dist/src/completion/get-potential-token-type-ids.js +74 -0
- package/dist/src/completion/hierarchical-map.d.ts +11 -0
- package/dist/src/completion/hierarchical-map.d.ts.map +1 -0
- package/dist/src/completion/hierarchical-map.js +35 -0
- package/dist/src/completion/rules/abstract-types.d.ts +7 -0
- package/dist/src/completion/rules/abstract-types.d.ts.map +1 -0
- package/dist/src/completion/rules/abstract-types.js +165 -0
- package/dist/src/completion/rules/aggregate-output-value-rules.d.ts +8 -0
- package/dist/src/completion/rules/aggregate-output-value-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/aggregate-output-value-rules.js +29 -0
- package/dist/src/completion/rules/aligned-modifier-rules.d.ts +8 -0
- package/dist/src/completion/rules/aligned-modifier-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/aligned-modifier-rules.js +42 -0
- package/dist/src/completion/rules/array-definition-rules.d.ts +14 -0
- package/dist/src/completion/rules/array-definition-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/array-definition-rules.js +78 -0
- package/dist/src/completion/rules/array-element-access-rules.d.ts +8 -0
- package/dist/src/completion/rules/array-element-access-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/array-element-access-rules.js +17 -0
- package/dist/src/completion/rules/assignment-expression-rules.d.ts +8 -0
- package/dist/src/completion/rules/assignment-expression-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/assignment-expression-rules.js +17 -0
- package/dist/src/completion/rules/binary-expression-rules.d.ts +8 -0
- package/dist/src/completion/rules/binary-expression-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/binary-expression-rules.js +21 -0
- package/dist/src/completion/rules/bit-modifier-rules.d.ts +8 -0
- package/dist/src/completion/rules/bit-modifier-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/bit-modifier-rules.js +24 -0
- package/dist/src/completion/rules/case-clause-rules.d.ts +8 -0
- package/dist/src/completion/rules/case-clause-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/case-clause-rules.js +37 -0
- package/dist/src/completion/rules/class-declaration-rules.d.ts +8 -0
- package/dist/src/completion/rules/class-declaration-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/class-declaration-rules.js +59 -0
- package/dist/src/completion/rules/class-definition-rules.d.ts +11 -0
- package/dist/src/completion/rules/class-definition-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/class-definition-rules.js +24 -0
- package/dist/src/completion/rules/class-id-range-rules.d.ts +5 -0
- package/dist/src/completion/rules/class-id-range-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/class-id-range-rules.js +16 -0
- package/dist/src/completion/rules/class-id-rules.d.ts +5 -0
- package/dist/src/completion/rules/class-id-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/class-id-rules.js +8 -0
- package/dist/src/completion/rules/class-member-access-rules.d.ts +5 -0
- package/dist/src/completion/rules/class-member-access-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/class-member-access-rules.js +6 -0
- package/dist/src/completion/rules/compound-statement-rules.d.ts +8 -0
- package/dist/src/completion/rules/compound-statement-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/compound-statement-rules.js +17 -0
- package/dist/src/completion/rules/computed-array-definition-rules.d.ts +8 -0
- package/dist/src/completion/rules/computed-array-definition-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/computed-array-definition-rules.js +24 -0
- package/dist/src/completion/rules/computed-elementary-type-rules.d.ts +14 -0
- package/dist/src/completion/rules/computed-elementary-type-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/computed-elementary-type-rules.js +35 -0
- package/dist/src/completion/rules/default-clause-rules.d.ts +8 -0
- package/dist/src/completion/rules/default-clause-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/default-clause-rules.js +21 -0
- package/dist/src/completion/rules/do-statement-rules.d.ts +8 -0
- package/dist/src/completion/rules/do-statement-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/do-statement-rules.js +33 -0
- package/dist/src/completion/rules/elementary-type-definition-rules.d.ts +11 -0
- package/dist/src/completion/rules/elementary-type-definition-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/elementary-type-definition-rules.js +52 -0
- package/dist/src/completion/rules/elementary-type-output-value-rules.d.ts +5 -0
- package/dist/src/completion/rules/elementary-type-output-value-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/elementary-type-output-value-rules.js +12 -0
- package/dist/src/completion/rules/elementary-type-rules.d.ts +8 -0
- package/dist/src/completion/rules/elementary-type-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/elementary-type-rules.js +12 -0
- package/dist/src/completion/rules/expandable-modifier-rules.d.ts +5 -0
- package/dist/src/completion/rules/expandable-modifier-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/expandable-modifier-rules.js +20 -0
- package/dist/src/completion/rules/explicit-array-dimension-rules.d.ts +8 -0
- package/dist/src/completion/rules/explicit-array-dimension-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/explicit-array-dimension-rules.js +17 -0
- package/dist/src/completion/rules/expression-statement-rules.d.ts +8 -0
- package/dist/src/completion/rules/expression-statement-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/expression-statement-rules.js +17 -0
- package/dist/src/completion/rules/extended-class-id-range-rules.d.ts +8 -0
- package/dist/src/completion/rules/extended-class-id-range-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/extended-class-id-range-rules.js +16 -0
- package/dist/src/completion/rules/extends-modifier-rules.d.ts +5 -0
- package/dist/src/completion/rules/extends-modifier-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/extends-modifier-rules.js +16 -0
- package/dist/src/completion/rules/for-statement-rules.d.ts +11 -0
- package/dist/src/completion/rules/for-statement-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/for-statement-rules.js +37 -0
- package/dist/src/completion/rules/if-statement-rules.d.ts +8 -0
- package/dist/src/completion/rules/if-statement-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/if-statement-rules.js +33 -0
- package/dist/src/completion/rules/implicit-array-dimension-rules.d.ts +11 -0
- package/dist/src/completion/rules/implicit-array-dimension-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/implicit-array-dimension-rules.js +20 -0
- package/dist/src/completion/rules/length-attribute-rules.d.ts +8 -0
- package/dist/src/completion/rules/length-attribute-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/length-attribute-rules.js +14 -0
- package/dist/src/completion/rules/lengthof-expression-rules.d.ts +8 -0
- package/dist/src/completion/rules/lengthof-expression-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/lengthof-expression-rules.js +21 -0
- package/dist/src/completion/rules/map-declaration-rules.d.ts +11 -0
- package/dist/src/completion/rules/map-declaration-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/map-declaration-rules.js +44 -0
- package/dist/src/completion/rules/map-definition-rules.d.ts +11 -0
- package/dist/src/completion/rules/map-definition-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/map-definition-rules.js +45 -0
- package/dist/src/completion/rules/map-entry-rules.d.ts +5 -0
- package/dist/src/completion/rules/map-entry-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/map-entry-rules.js +16 -0
- package/dist/src/completion/rules/parameter-list-rules.d.ts +8 -0
- package/dist/src/completion/rules/parameter-list-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/parameter-list-rules.js +20 -0
- package/dist/src/completion/rules/parameter-rules.d.ts +11 -0
- package/dist/src/completion/rules/parameter-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/parameter-rules.js +16 -0
- package/dist/src/completion/rules/parameter-value-list-rules.d.ts +8 -0
- package/dist/src/completion/rules/parameter-value-list-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/parameter-value-list-rules.js +21 -0
- package/dist/src/completion/rules/partial-array-dimension-rules.d.ts +14 -0
- package/dist/src/completion/rules/partial-array-dimension-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/partial-array-dimension-rules.js +25 -0
- package/dist/src/completion/rules/specification-rules.d.ts +5 -0
- package/dist/src/completion/rules/specification-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/specification-rules.js +36 -0
- package/dist/src/completion/rules/string-definition-rules.d.ts +11 -0
- package/dist/src/completion/rules/string-definition-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/string-definition-rules.js +74 -0
- package/dist/src/completion/rules/switch-statement-rules.d.ts +8 -0
- package/dist/src/completion/rules/switch-statement-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/switch-statement-rules.js +37 -0
- package/dist/src/completion/rules/unary-expression-rules.d.ts +5 -0
- package/dist/src/completion/rules/unary-expression-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/unary-expression-rules.js +33 -0
- package/dist/src/completion/rules/utf-string-literal-rules.d.ts +5 -0
- package/dist/src/completion/rules/utf-string-literal-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/utf-string-literal-rules.js +16 -0
- package/dist/src/completion/rules/while-statement-rules.d.ts +8 -0
- package/dist/src/completion/rules/while-statement-rules.d.ts.map +1 -0
- package/dist/src/completion/rules/while-statement-rules.js +29 -0
- package/dist/src/lezer/context-tracker.d.ts +4 -0
- package/dist/src/lezer/context-tracker.d.ts.map +1 -0
- package/dist/src/lezer/context-tracker.js +35 -0
- package/dist/src/lezer/create-sdl-parser.d.ts +10 -0
- package/dist/src/lezer/create-sdl-parser.d.ts.map +1 -0
- package/dist/src/lezer/create-sdl-parser.js +76 -0
- package/dist/src/lezer/create-syntax-error-from-text-and-cursor.d.ts +12 -0
- package/dist/src/lezer/create-syntax-error-from-text-and-cursor.d.ts.map +1 -0
- package/dist/src/lezer/create-syntax-error-from-text-and-cursor.js +68 -0
- package/dist/src/lezer/create-syntax-error-from-text-and-position.d.ts +11 -0
- package/dist/src/lezer/create-syntax-error-from-text-and-position.d.ts.map +1 -0
- package/dist/src/lezer/create-syntax-error-from-text-and-position.js +24 -0
- package/dist/src/lezer/parser.d.ts +3 -0
- package/dist/src/lezer/parser.d.ts.map +1 -0
- package/dist/src/lezer/parser.js +60 -0
- package/dist/src/lezer/parser.terms.d.ts +2 -0
- package/dist/src/lezer/parser.terms.d.ts.map +1 -0
- package/dist/src/lezer/parser.terms.js +2 -0
- package/dist/src/lezer/props/fold-node-prop-source.d.ts +2 -0
- package/dist/src/lezer/props/fold-node-prop-source.d.ts.map +1 -0
- package/dist/src/lezer/props/fold-node-prop-source.js +24 -0
- package/dist/src/lezer/props/primitive-node-prop-source.d.ts +4 -0
- package/dist/src/lezer/props/primitive-node-prop-source.d.ts.map +1 -0
- package/dist/src/lezer/props/primitive-node-prop-source.js +13 -0
- package/dist/src/lezer/props/style-tags-node-prop-source.d.ts +2 -0
- package/dist/src/lezer/props/style-tags-node-prop-source.d.ts.map +1 -0
- package/dist/src/lezer/props/style-tags-node-prop-source.js +181 -0
- package/dist/src/lezer/props/syntactic-token-node-prop-source.d.ts +5 -0
- package/dist/src/lezer/props/syntactic-token-node-prop-source.d.ts.map +1 -0
- package/dist/src/lezer/props/syntactic-token-node-prop-source.js +290 -0
- package/dist/src/lezer/sdl-string-input.d.ts +33 -0
- package/dist/src/lezer/sdl-string-input.d.ts.map +1 -0
- package/dist/src/lezer/sdl-string-input.js +39 -0
- package/dist/src/location.d.ts +14 -0
- package/dist/src/location.d.ts.map +1 -0
- package/dist/src/location.js +1 -0
- package/dist/src/parse-helper.d.ts +28 -0
- package/dist/src/parse-helper.d.ts.map +1 -0
- package/dist/src/parse-helper.js +67 -0
- package/dist/src/prettier/prettier-plugin-sdl.d.ts +3 -0
- package/dist/src/prettier/prettier-plugin-sdl.d.ts.map +1 -0
- package/dist/src/prettier/prettier-plugin-sdl.js +70 -0
- package/dist/src/prettier/print-abstract-array-dimension.d.ts +5 -0
- package/dist/src/prettier/print-abstract-array-dimension.d.ts.map +1 -0
- package/dist/src/prettier/print-abstract-array-dimension.js +41 -0
- package/dist/src/prettier/print-abstract-class-id.d.ts +5 -0
- package/dist/src/prettier/print-abstract-class-id.d.ts.map +1 -0
- package/dist/src/prettier/print-abstract-class-id.js +27 -0
- package/dist/src/prettier/print-abstract-expression.d.ts +5 -0
- package/dist/src/prettier/print-abstract-expression.d.ts.map +1 -0
- package/dist/src/prettier/print-abstract-expression.js +74 -0
- package/dist/src/prettier/print-abstract-node.d.ts +5 -0
- package/dist/src/prettier/print-abstract-node.d.ts.map +1 -0
- package/dist/src/prettier/print-abstract-node.js +144 -0
- package/dist/src/prettier/print-abstract-statement.d.ts +5 -0
- package/dist/src/prettier/print-abstract-statement.d.ts.map +1 -0
- package/dist/src/prettier/print-abstract-statement.js +70 -0
- package/dist/src/prettier/print-aggregate-output-value.d.ts +5 -0
- package/dist/src/prettier/print-aggregate-output-value.d.ts.map +1 -0
- package/dist/src/prettier/print-aggregate-output-value.js +11 -0
- package/dist/src/prettier/print-aligned-modifier.d.ts +5 -0
- package/dist/src/prettier/print-aligned-modifier.d.ts.map +1 -0
- package/dist/src/prettier/print-aligned-modifier.js +16 -0
- package/dist/src/prettier/print-array-definition.d.ts +5 -0
- package/dist/src/prettier/print-array-definition.d.ts.map +1 -0
- package/dist/src/prettier/print-array-definition.js +40 -0
- package/dist/src/prettier/print-array-element-access.d.ts +5 -0
- package/dist/src/prettier/print-array-element-access.d.ts.map +1 -0
- package/dist/src/prettier/print-array-element-access.js +7 -0
- package/dist/src/prettier/print-bit-modifier.d.ts +5 -0
- package/dist/src/prettier/print-bit-modifier.d.ts.map +1 -0
- package/dist/src/prettier/print-bit-modifier.js +22 -0
- package/dist/src/prettier/print-case-clause.d.ts +5 -0
- package/dist/src/prettier/print-case-clause.d.ts.map +1 -0
- package/dist/src/prettier/print-case-clause.js +28 -0
- package/dist/src/prettier/print-class-declaration.d.ts +5 -0
- package/dist/src/prettier/print-class-declaration.d.ts.map +1 -0
- package/dist/src/prettier/print-class-declaration.js +39 -0
- package/dist/src/prettier/print-class-definition.d.ts +5 -0
- package/dist/src/prettier/print-class-definition.d.ts.map +1 -0
- package/dist/src/prettier/print-class-definition.js +20 -0
- package/dist/src/prettier/print-class-member-access.d.ts +5 -0
- package/dist/src/prettier/print-class-member-access.d.ts.map +1 -0
- package/dist/src/prettier/print-class-member-access.js +3 -0
- package/dist/src/prettier/print-computed-array-definition.d.ts +5 -0
- package/dist/src/prettier/print-computed-array-definition.d.ts.map +1 -0
- package/dist/src/prettier/print-computed-array-definition.js +15 -0
- package/dist/src/prettier/print-computed-elementary-type-definition.d.ts +5 -0
- package/dist/src/prettier/print-computed-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/prettier/print-computed-elementary-type-definition.js +24 -0
- package/dist/src/prettier/print-default-clause.d.ts +5 -0
- package/dist/src/prettier/print-default-clause.d.ts.map +1 -0
- package/dist/src/prettier/print-default-clause.js +15 -0
- package/dist/src/prettier/print-do-statement.d.ts +5 -0
- package/dist/src/prettier/print-do-statement.d.ts.map +1 -0
- package/dist/src/prettier/print-do-statement.js +19 -0
- package/dist/src/prettier/print-elementary-type-definition.d.ts +5 -0
- package/dist/src/prettier/print-elementary-type-definition.d.ts.map +1 -0
- package/dist/src/prettier/print-elementary-type-definition.js +42 -0
- package/dist/src/prettier/print-elementary-type-output-value.d.ts +5 -0
- package/dist/src/prettier/print-elementary-type-output-value.d.ts.map +1 -0
- package/dist/src/prettier/print-elementary-type-output-value.js +3 -0
- package/dist/src/prettier/print-elementary-type.d.ts +5 -0
- package/dist/src/prettier/print-elementary-type.d.ts.map +1 -0
- package/dist/src/prettier/print-elementary-type.js +12 -0
- package/dist/src/prettier/print-expandable-modifier.d.ts +5 -0
- package/dist/src/prettier/print-expandable-modifier.d.ts.map +1 -0
- package/dist/src/prettier/print-expandable-modifier.js +13 -0
- package/dist/src/prettier/print-extends-modifier.d.ts +5 -0
- package/dist/src/prettier/print-extends-modifier.d.ts.map +1 -0
- package/dist/src/prettier/print-extends-modifier.js +12 -0
- package/dist/src/prettier/print-for-statement.d.ts +5 -0
- package/dist/src/prettier/print-for-statement.d.ts.map +1 -0
- package/dist/src/prettier/print-for-statement.js +33 -0
- package/dist/src/prettier/print-identifier.d.ts +5 -0
- package/dist/src/prettier/print-identifier.d.ts.map +1 -0
- package/dist/src/prettier/print-identifier.js +3 -0
- package/dist/src/prettier/print-if-statement.d.ts +5 -0
- package/dist/src/prettier/print-if-statement.d.ts.map +1 -0
- package/dist/src/prettier/print-if-statement.js +44 -0
- package/dist/src/prettier/print-length-attribute.d.ts +5 -0
- package/dist/src/prettier/print-length-attribute.d.ts.map +1 -0
- package/dist/src/prettier/print-length-attribute.js +7 -0
- package/dist/src/prettier/print-map-declaration.d.ts +5 -0
- package/dist/src/prettier/print-map-declaration.d.ts.map +1 -0
- package/dist/src/prettier/print-map-declaration.js +31 -0
- package/dist/src/prettier/print-map-definition.d.ts +5 -0
- package/dist/src/prettier/print-map-definition.d.ts.map +1 -0
- package/dist/src/prettier/print-map-definition.js +28 -0
- package/dist/src/prettier/print-map-entry.d.ts +5 -0
- package/dist/src/prettier/print-map-entry.d.ts.map +1 -0
- package/dist/src/prettier/print-map-entry.js +9 -0
- package/dist/src/prettier/print-number-literal.d.ts +5 -0
- package/dist/src/prettier/print-number-literal.d.ts.map +1 -0
- package/dist/src/prettier/print-number-literal.js +62 -0
- package/dist/src/prettier/print-parameter-list.d.ts +5 -0
- package/dist/src/prettier/print-parameter-list.d.ts.map +1 -0
- package/dist/src/prettier/print-parameter-list.js +9 -0
- package/dist/src/prettier/print-parameter-value-list.d.ts +5 -0
- package/dist/src/prettier/print-parameter-value-list.d.ts.map +1 -0
- package/dist/src/prettier/print-parameter-value-list.js +9 -0
- package/dist/src/prettier/print-parameter.d.ts +5 -0
- package/dist/src/prettier/print-parameter.d.ts.map +1 -0
- package/dist/src/prettier/print-parameter.js +15 -0
- package/dist/src/prettier/print-specification.d.ts +5 -0
- package/dist/src/prettier/print-specification.d.ts.map +1 -0
- package/dist/src/prettier/print-specification.js +30 -0
- package/dist/src/prettier/print-string-definition.d.ts +5 -0
- package/dist/src/prettier/print-string-definition.d.ts.map +1 -0
- package/dist/src/prettier/print-string-definition.js +57 -0
- package/dist/src/prettier/print-string-literal.d.ts +5 -0
- package/dist/src/prettier/print-string-literal.d.ts.map +1 -0
- package/dist/src/prettier/print-string-literal.js +50 -0
- package/dist/src/prettier/print-switch-statement.d.ts +5 -0
- package/dist/src/prettier/print-switch-statement.d.ts.map +1 -0
- package/dist/src/prettier/print-switch-statement.js +20 -0
- package/dist/src/prettier/print-token.d.ts +4 -0
- package/dist/src/prettier/print-token.d.ts.map +1 -0
- package/dist/src/prettier/print-token.js +4 -0
- package/dist/src/prettier/print-unexpected-error.d.ts +5 -0
- package/dist/src/prettier/print-unexpected-error.d.ts.map +1 -0
- package/dist/src/prettier/print-unexpected-error.js +3 -0
- package/dist/src/prettier/print-while-statement.d.ts +5 -0
- package/dist/src/prettier/print-while-statement.d.ts.map +1 -0
- package/dist/src/prettier/print-while-statement.js +15 -0
- package/dist/src/prettier/util/print-utils.d.ts +56 -0
- package/dist/src/prettier/util/print-utils.d.ts.map +1 -0
- package/dist/src/prettier/util/print-utils.js +456 -0
- package/dist/src/prettier/util/types.d.ts +13 -0
- package/dist/src/prettier/util/types.d.ts.map +1 -0
- package/dist/src/prettier/util/types.js +20 -0
- package/dist/src/scanner-error.d.ts +36 -0
- package/dist/src/scanner-error.d.ts.map +1 -0
- package/dist/src/scanner-error.js +51 -0
- package/dist/src/util/location-utils.d.ts +4 -0
- package/dist/src/util/location-utils.d.ts.map +1 -0
- package/dist/src/util/location-utils.js +11 -0
- package/dist/src/util/logger.d.ts +22 -0
- package/dist/src/util/logger.d.ts.map +1 -0
- package/dist/src/util/logger.js +94 -0
- package/package.json +34 -30
- package/src/analyser/checks/check-array-definition.ts +5 -15
- package/src/analyser/checks/check-array-element-access.ts +1 -5
- package/src/analyser/checks/check-class-declaration.ts +26 -83
- package/src/analyser/checks/check-computed-array-definition.ts +3 -12
- package/src/analyser/checks/check-computed-elementary-type-definition.ts +2 -7
- package/src/analyser/checks/check-elementary-type-definition.ts +41 -48
- package/src/analyser/checks/check-expression-binary.ts +66 -60
- package/src/analyser/checks/check-expression-lengthof.ts +2 -7
- package/src/analyser/checks/check-expression-unary.ts +9 -19
- package/src/analyser/checks/check-identifier.ts +2 -7
- package/src/analyser/checks/check-if-statement.ts +4 -15
- package/src/analyser/checks/check-map-declaration.ts +15 -17
- package/src/analyser/checks/check-map-definition.ts +9 -22
- package/src/analyser/checks/check-number-literal-float.ts +2 -7
- package/src/analyser/checks/check-parameter-list.ts +3 -12
- package/src/analyser/checks/check-specification.ts +4 -13
- package/src/analyser/checks/check-switch-statement.ts +11 -27
- package/src/analyser/checks/check.ts +1 -5
- package/src/analyser/create-sdl-analyser.ts +2 -6
- package/src/analyser/node-handler/abstract-analysis-node-handler.ts +76 -154
- package/src/analyser/node-handler/build-symbol-table-node-handler.ts +39 -112
- package/src/analyser/node-handler/specific-check-node-handler.ts +14 -24
- package/src/analyser/node-handler/validate-scope-node-handler.ts +26 -55
- package/src/analyser/node-handler/validate-type-node-handler.ts +45 -108
- package/src/analyser/sdl-analyser.ts +5 -16
- package/src/analyser/symbol-table.ts +14 -25
- package/src/analyser/util/symbol-table-utils.ts +28 -80
- package/src/analyser/util/type-utils.ts +38 -78
- package/src/ast/build/consume/consume-abstract-node.ts +10 -13
- package/src/ast/build/consume/consume-ast-node.ts +16 -44
- package/src/ast/build/consume/consume-primitive.ts +4 -6
- package/src/ast/build/consume/consume-trivia.ts +5 -15
- package/src/ast/build/consume/consume-white-space-and-missing-errors.ts +3 -6
- package/src/ast/build/node/build-aggregate-output-value.ts +9 -15
- package/src/ast/build/node/build-aligned-modifier.ts +9 -19
- package/src/ast/build/node/build-array-definition.ts +10 -38
- package/src/ast/build/node/build-array-element-access.ts +7 -15
- package/src/ast/build/node/build-base64-string-literal.ts +9 -19
- package/src/ast/build/node/build-binary-expression.ts +32 -38
- package/src/ast/build/node/build-binary-literal.ts +3 -12
- package/src/ast/build/node/build-bit-modifier.ts +6 -25
- package/src/ast/build/node/build-case-clause.ts +8 -34
- package/src/ast/build/node/build-class-declaration.ts +7 -29
- package/src/ast/build/node/build-class-definition.ts +4 -16
- package/src/ast/build/node/build-class-id-range.ts +5 -14
- package/src/ast/build/node/build-class-id.ts +3 -11
- package/src/ast/build/node/build-class-member-access.ts +4 -10
- package/src/ast/build/node/build-compound-statement.ts +5 -11
- package/src/ast/build/node/build-computed-array-definition.ts +4 -18
- package/src/ast/build/node/build-computed-elementary-type-definition.ts +9 -25
- package/src/ast/build/node/build-decimal-literal.ts +2 -8
- package/src/ast/build/node/build-default-clause.ts +5 -22
- package/src/ast/build/node/build-do-statement.ts +4 -16
- package/src/ast/build/node/build-elementary-type-definition.ts +16 -32
- package/src/ast/build/node/build-elementary-type-output-value.ts +3 -7
- package/src/ast/build/node/build-elementary-type.ts +7 -13
- package/src/ast/build/node/build-expandable-modifier.ts +2 -7
- package/src/ast/build/node/build-explicit-array-dimension.ts +9 -13
- package/src/ast/build/node/build-expression-statement.ts +4 -9
- package/src/ast/build/node/build-extended-class-id-range.ts +5 -14
- package/src/ast/build/node/build-extends-modifier.ts +4 -18
- package/src/ast/build/node/build-floating-point-literal.ts +2 -8
- package/src/ast/build/node/build-for-statement.ts +9 -33
- package/src/ast/build/node/build-hexadecimal-literal.ts +3 -12
- package/src/ast/build/node/build-identifier.ts +1 -3
- package/src/ast/build/node/build-if-statement.ts +6 -24
- package/src/ast/build/node/build-implicit-array-dimension.ts +8 -15
- package/src/ast/build/node/build-integer-literal.ts +2 -8
- package/src/ast/build/node/build-length-attribute.ts +6 -9
- package/src/ast/build/node/build-lengthof-expression.ts +6 -13
- package/src/ast/build/node/build-map-declaration.ts +8 -21
- package/src/ast/build/node/build-map-definition.ts +6 -24
- package/src/ast/build/node/build-map-entry.ts +5 -15
- package/src/ast/build/node/build-multiple-character-literal.ts +18 -23
- package/src/ast/build/node/build-parameter-list.ts +6 -11
- package/src/ast/build/node/build-parameter-value-list.ts +6 -14
- package/src/ast/build/node/build-parameter.ts +5 -21
- package/src/ast/build/node/build-partial-array-dimension.ts +6 -9
- package/src/ast/build/node/build-specification.ts +2 -6
- package/src/ast/build/node/build-string-definition.ts +11 -31
- package/src/ast/build/node/build-switch-statement.ts +6 -24
- package/src/ast/build/node/build-token.ts +3 -5
- package/src/ast/build/node/build-unary-expression.ts +13 -19
- package/src/ast/build/node/build-unexpected-error.ts +2 -6
- package/src/ast/build/node/build-utf-string-literal.ts +43 -66
- package/src/ast/build/node/build-while-statement.ts +5 -22
- package/src/ast/build/util/array-dimension-kind-by-token-type-id-map.ts +5 -17
- package/src/ast/build/util/binary-operator-kind-by-token-type-id-map.ts +2 -5
- package/src/ast/build/util/class-id-kind-by-token-type-id-map.ts +2 -7
- package/src/ast/build/util/expression-kind-by-token-type-id-map.ts +5 -17
- package/src/ast/build/util/fetch-node.ts +73 -108
- package/src/ast/build/util/node-kind-by-token-type-id-map.ts +2 -7
- package/src/ast/build/util/statement-kind-by-token-type-id-map.ts +9 -35
- package/src/ast/build/util/string-literal-kind-by-token-type-id-map.ts +4 -13
- package/src/ast/build/util/token-kind-by-token-type-id-map.ts +8 -31
- package/src/ast/build-ast.ts +9 -24
- package/src/ast/node/abstract-array-dimension.ts +1 -4
- package/src/ast/node/abstract-composite-node.ts +2 -4
- package/src/ast/node/abstract-elementary-type-definition.ts +2 -7
- package/src/ast/node/abstract-leaf-node.ts +1 -3
- package/src/ast/node/abstract-node.ts +1 -2
- package/src/ast/node/aggregate-output-value.ts +2 -9
- package/src/ast/node/aligned-modifier.ts +1 -4
- package/src/ast/node/array-definition.ts +4 -18
- package/src/ast/node/array-element-access.ts +2 -7
- package/src/ast/node/binary-expression.ts +2 -10
- package/src/ast/node/case-clause.ts +2 -9
- package/src/ast/node/class-declaration.ts +3 -12
- package/src/ast/node/class-definition.ts +1 -4
- package/src/ast/node/class-member-access.ts +1 -4
- package/src/ast/node/compound-statement.ts +1 -4
- package/src/ast/node/computed-array-definition.ts +1 -6
- package/src/ast/node/computed-elementary-type-definition.ts +1 -2
- package/src/ast/node/default-clause.ts +2 -9
- package/src/ast/node/do-statement.ts +1 -5
- package/src/ast/node/elementary-type-definition.ts +2 -10
- package/src/ast/node/elementary-type-output-value.ts +1 -4
- package/src/ast/node/elementary-type.ts +1 -4
- package/src/ast/node/expandable-modifier.ts +1 -4
- package/src/ast/node/explicit-array-dimension.ts +2 -9
- package/src/ast/node/expression-statement.ts +2 -7
- package/src/ast/node/extended-class-id-range.ts +1 -4
- package/src/ast/node/extends-modifier.ts +1 -4
- package/src/ast/node/for-statement.ts +1 -3
- package/src/ast/node/if-statement.ts +2 -7
- package/src/ast/node/implicit-array-dimension.ts +3 -16
- package/src/ast/node/length-attribute.ts +2 -7
- package/src/ast/node/length-of-expression.ts +1 -4
- package/src/ast/node/map-declaration.ts +2 -10
- package/src/ast/node/map-definition.ts +1 -4
- package/src/ast/node/number-literal.ts +0 -2
- package/src/ast/node/parameter-list.ts +2 -9
- package/src/ast/node/parameter-value-list.ts +3 -12
- package/src/ast/node/parameter.ts +1 -4
- package/src/ast/node/partial-array-dimension.ts +2 -9
- package/src/ast/node/specification.ts +2 -9
- package/src/ast/node/string-definition.ts +1 -4
- package/src/ast/node/string-literal.ts +1 -4
- package/src/ast/node/switch-statement.ts +2 -8
- package/src/ast/node/token.ts +1 -3
- package/src/ast/node/unary-expression.ts +2 -9
- package/src/ast/node/unexpected-error.ts +1 -3
- package/src/ast/node/while-statement.ts +2 -7
- package/src/ast/util/types.ts +31 -59
- package/src/ast/visitor/traversing-visitor.ts +7 -14
- package/src/completion/completion-rules.ts +25 -93
- package/src/completion/get-potential-syntactic-tokens.ts +7 -18
- package/src/completion/get-potential-token-type-ids.ts +11 -22
- package/src/completion/rules/abstract-types.ts +1 -3
- package/src/completion/rules/aggregate-output-value-rules.ts +5 -22
- package/src/completion/rules/aligned-modifier-rules.ts +1 -3
- package/src/completion/rules/array-definition-rules.ts +2 -10
- package/src/completion/rules/array-element-access-rules.ts +1 -4
- package/src/completion/rules/class-declaration-rules.ts +6 -26
- package/src/completion/rules/class-definition-rules.ts +1 -4
- package/src/completion/rules/compound-statement-rules.ts +2 -8
- package/src/completion/rules/computed-elementary-type-rules.ts +2 -9
- package/src/completion/rules/do-statement-rules.ts +1 -4
- package/src/completion/rules/elementary-type-definition-rules.ts +2 -10
- package/src/completion/rules/elementary-type-rules.ts +1 -6
- package/src/completion/rules/explicit-array-dimension-rules.ts +1 -4
- package/src/completion/rules/expression-statement-rules.ts +1 -4
- package/src/completion/rules/for-statement-rules.ts +5 -17
- package/src/completion/rules/if-statement-rules.ts +2 -9
- package/src/completion/rules/length-attribute-rules.ts +1 -4
- package/src/completion/rules/parameter-value-list-rules.ts +1 -5
- package/src/completion/rules/partial-array-dimension-rules.ts +2 -8
- package/src/completion/rules/string-definition-rules.ts +8 -36
- package/src/completion/rules/switch-statement-rules.ts +3 -14
- package/src/completion/rules/while-statement-rules.ts +2 -9
- package/src/lezer/create-sdl-parser.ts +1 -3
- package/src/lezer/create-syntax-error-from-text-and-cursor.ts +15 -39
- package/src/lezer/create-syntax-error-from-text-and-position.ts +1 -6
- package/src/lezer/parser.ts +8 -7
- package/src/lezer/props/primitive-node-prop-source.ts +2 -2
- package/src/lezer/props/style-tags-node-prop-source.ts +2 -5
- package/src/lezer/props/syntactic-token-node-prop-source.ts +3 -5
- package/src/parse-helper.ts +3 -10
- package/src/prettier/prettier-plugin-sdl.ts +7 -18
- package/src/prettier/print-abstract-array-dimension.ts +7 -30
- package/src/prettier/print-abstract-class-id.ts +3 -11
- package/src/prettier/print-abstract-expression.ts +17 -49
- package/src/prettier/print-abstract-node.ts +16 -45
- package/src/prettier/print-abstract-statement.ts +4 -16
- package/src/prettier/print-aggregate-output-value.ts +3 -13
- package/src/prettier/print-aligned-modifier.ts +3 -12
- package/src/prettier/print-array-definition.ts +9 -45
- package/src/prettier/print-bit-modifier.ts +3 -16
- package/src/prettier/print-case-clause.ts +10 -23
- package/src/prettier/print-class-declaration.ts +13 -35
- package/src/prettier/print-class-definition.ts +3 -13
- package/src/prettier/print-class-member-access.ts +1 -4
- package/src/prettier/print-computed-array-definition.ts +1 -4
- package/src/prettier/print-computed-elementary-type-definition.ts +4 -19
- package/src/prettier/print-default-clause.ts +3 -12
- package/src/prettier/print-do-statement.ts +1 -4
- package/src/prettier/print-elementary-type-definition.ts +10 -46
- package/src/prettier/print-elementary-type-output-value.ts +1 -4
- package/src/prettier/print-elementary-type.ts +1 -3
- package/src/prettier/print-expandable-modifier.ts +12 -23
- package/src/prettier/print-extends-modifier.ts +1 -6
- package/src/prettier/print-for-statement.ts +6 -20
- package/src/prettier/print-if-statement.ts +8 -19
- package/src/prettier/print-map-declaration.ts +5 -20
- package/src/prettier/print-map-definition.ts +6 -29
- package/src/prettier/print-map-entry.ts +1 -4
- package/src/prettier/print-number-literal.ts +2 -7
- package/src/prettier/print-parameter.ts +2 -12
- package/src/prettier/print-specification.ts +4 -4
- package/src/prettier/print-string-definition.ts +9 -43
- package/src/prettier/print-string-literal.ts +1 -1
- package/src/prettier/print-switch-statement.ts +3 -11
- package/src/prettier/util/print-utils.ts +23 -61
- package/src/prettier/util/types.ts +12 -19
- package/src/scanner-error.ts +2 -8
- package/src/util/location-utils.ts +1 -4
- package/src/util/logger.ts +13 -43
- package/bun.lock +0 -65
- package/tests/analyser/create-sdl-analyser.test.ts +0 -54
- package/tests/analyser/get-sdl-analyser-test-scenarios.ts +0 -80
- package/tests/analyser/sdl-analyser-scenarios.test.ts +0 -67
- package/tests/analyser/semantic-error-scenarios.test.ts +0 -40
- package/tests/analyser/symbol-table.test.ts +0 -188
- package/tests/analyser/test-cases/array_definition.txt +0 -50
- package/tests/analyser/test-cases/class_declaration.txt +0 -112
- package/tests/analyser/test-cases/class_definition.txt +0 -60
- package/tests/analyser/test-cases/compound_statement.txt +0 -63
- package/tests/analyser/test-cases/computed_array_definition.txt +0 -12
- package/tests/analyser/test-cases/computed_elementary_type_definition.txt +0 -39
- package/tests/analyser/test-cases/do_statement.txt +0 -16
- package/tests/analyser/test-cases/elementary_type_definition.txt +0 -58
- package/tests/analyser/test-cases/expression.txt +0 -159
- package/tests/analyser/test-cases/for_statement.txt +0 -55
- package/tests/analyser/test-cases/if_statement.txt +0 -57
- package/tests/analyser/test-cases/map_declaration.txt +0 -89
- package/tests/analyser/test-cases/map_definition.txt +0 -35
- package/tests/analyser/test-cases/number_literal.txt +0 -31
- package/tests/analyser/test-cases/parameter_list.txt +0 -16
- package/tests/analyser/test-cases/scopes.txt +0 -239
- package/tests/analyser/test-cases/specification.txt +0 -28
- package/tests/analyser/test-cases/string_definition.txt +0 -40
- package/tests/analyser/test-cases/switch_statement.txt +0 -96
- package/tests/analyser/test-cases/while_statement.txt +0 -16
- package/tests/analyser/util/symbol-table-utils.test.ts +0 -65
- package/tests/ast/__snapshots__/build-ast.test.ts.snap +0 -38897
- package/tests/ast/build-ast.test.ts +0 -463
- package/tests/ast/visitor/traversing-visitor.test.ts +0 -36
- package/tests/completion/get-potential-syntactic-tokens.test.ts +0 -89
- package/tests/completion/get-potential-token-type-ids.test.ts +0 -76
- package/tests/completion/test-potential-syntactic-tokens-scenario.ts +0 -24
- package/tests/completion/test-potential-token-type-ids-scenario.ts +0 -33
- package/tests/fixtures/history-recording-node-handler.ts +0 -232
- package/tests/lezer/create-parse-error-from-text-and-position.test.ts +0 -129
- package/tests/lezer/create-sdl-parser.test.ts +0 -15
- package/tests/lezer/sdl-parser-scenarios.test.ts +0 -24
- package/tests/lezer/sdl-string-input.test.ts +0 -12
- package/tests/lezer/syntax-error-scenarios.test.ts +0 -114
- package/tests/lezer/test-cases/array_definition.txt +0 -109
- package/tests/lezer/test-cases/class_declaration.txt +0 -141
- package/tests/lezer/test-cases/class_definition.txt +0 -89
- package/tests/lezer/test-cases/comment.txt +0 -335
- package/tests/lezer/test-cases/compound_statement.txt +0 -109
- package/tests/lezer/test-cases/computed_array_definition.txt +0 -33
- package/tests/lezer/test-cases/computed_elementary_type_definition.txt +0 -59
- package/tests/lezer/test-cases/do_statement.txt +0 -48
- package/tests/lezer/test-cases/elementary_type_definition.txt +0 -158
- package/tests/lezer/test-cases/expression.txt +0 -1203
- package/tests/lezer/test-cases/for_statement.txt +0 -183
- package/tests/lezer/test-cases/if_statement.txt +0 -183
- package/tests/lezer/test-cases/invalid.txt +0 -97
- package/tests/lezer/test-cases/map_declaration.txt +0 -152
- package/tests/lezer/test-cases/map_definition.txt +0 -59
- package/tests/lezer/test-cases/number_literal.txt +0 -273
- package/tests/lezer/test-cases/specification.txt +0 -38
- package/tests/lezer/test-cases/string_definition.txt +0 -263
- package/tests/lezer/test-cases/string_literal.txt +0 -303
- package/tests/lezer/test-cases/switch_statement.txt +0 -407
- package/tests/lezer/test-cases/while_statement.txt +0 -45
- package/tests/parse-helper.test.ts +0 -361
- package/tests/prettier/__snapshots__/prettier-plugin-sdl.test.ts.snap +0 -127
- package/tests/prettier/prettier-plugin-sdl.test.ts +0 -58
- package/tests/prettier/print-array.test.ts +0 -29
- package/tests/prettier/print-class.test.ts +0 -15
- package/tests/prettier/print-do.test.ts +0 -25
- package/tests/prettier/print-elementary-type.test.ts +0 -62
- package/tests/prettier/print-error.test.ts +0 -40
- package/tests/prettier/print-expression.test.ts +0 -17
- package/tests/prettier/print-for.test.ts +0 -23
- package/tests/prettier/print-if.test.ts +0 -71
- package/tests/prettier/print-number-literal.test.ts +0 -28
- package/tests/prettier/print-specification.test.ts +0 -54
- package/tests/prettier/print-string.test.ts +0 -36
- package/tests/prettier/print-switch.test.ts +0 -69
- package/tests/prettier/print-while.test.ts +0 -23
- package/tests/prettier/test-prettier-scenario.ts +0 -41
- package/tests/prettier/util/print-utils.test.ts +0 -665
- package/tests/prettier/util/types.test.ts +0 -38
- package/tests/sample-specifications/invalid.sdl +0 -24
- package/tests/sample-specifications/prettified-invalid.sdl +0 -28
- package/tests/sample-specifications/prettified-various-elements-narrow.sdl +0 -97
- package/tests/sample-specifications/prettified-various-elements.sdl +0 -90
- package/tests/sample-specifications/sample.sdl +0 -24
- package/tests/sample-specifications/various-elements.sdl +0 -88
- package/tests/util/logger.test.ts +0 -36
- package/tsconfig.json +0 -29
|
@@ -47,14 +47,10 @@ export function getRequiredIdentifier(
|
|
|
47
47
|
if (strict) {
|
|
48
48
|
throw new SemanticError(
|
|
49
49
|
"Required identifier property is missing",
|
|
50
|
-
parentNode.leadingTrivia
|
|
51
|
-
? parentNode.leadingTrivia[0].location
|
|
52
|
-
: undefined,
|
|
50
|
+
parentNode.leadingTrivia ? parentNode.leadingTrivia[0].location : undefined,
|
|
53
51
|
);
|
|
54
52
|
} else {
|
|
55
|
-
logger.debug(
|
|
56
|
-
"Ignoring missing required identifier property in lenient mode.",
|
|
57
|
-
);
|
|
53
|
+
logger.debug("Ignoring missing required identifier property in lenient mode.");
|
|
58
54
|
}
|
|
59
55
|
return undefined;
|
|
60
56
|
}
|
|
@@ -66,21 +62,16 @@ export function getRequiredIdentifier(
|
|
|
66
62
|
if (strict) {
|
|
67
63
|
if (isToken(node)) {
|
|
68
64
|
throw new SemanticError(
|
|
69
|
-
`Required identifier property is a Token node: ${
|
|
70
|
-
TokenKind[node.tokenKind]
|
|
71
|
-
}`,
|
|
65
|
+
`Required identifier property is a Token node: ${TokenKind[node.tokenKind]}`,
|
|
72
66
|
node.leadingTrivia ? node.leadingTrivia[0].location : undefined,
|
|
73
67
|
);
|
|
74
68
|
}
|
|
75
69
|
throw new SemanticError(
|
|
76
|
-
"Required identifier property is not an Identifier node: " +
|
|
77
|
-
NodeKind[node.nodeKind],
|
|
70
|
+
"Required identifier property is not an Identifier node: " + NodeKind[node.nodeKind],
|
|
78
71
|
node.leadingTrivia ? node.leadingTrivia[0].location : undefined,
|
|
79
72
|
);
|
|
80
73
|
} else {
|
|
81
|
-
logger.debug(
|
|
82
|
-
"Ignoring invalid required identifier property in lenient mode.",
|
|
83
|
-
);
|
|
74
|
+
logger.debug("Ignoring invalid required identifier property in lenient mode.");
|
|
84
75
|
return undefined;
|
|
85
76
|
}
|
|
86
77
|
}
|
|
@@ -104,14 +95,10 @@ export function getRequiredToken(
|
|
|
104
95
|
if (strict) {
|
|
105
96
|
throw new SemanticError(
|
|
106
97
|
"Required token property is missing",
|
|
107
|
-
parentNode.leadingTrivia
|
|
108
|
-
? parentNode.leadingTrivia[0].location
|
|
109
|
-
: undefined,
|
|
98
|
+
parentNode.leadingTrivia ? parentNode.leadingTrivia[0].location : undefined,
|
|
110
99
|
);
|
|
111
100
|
} else {
|
|
112
|
-
logger.debug(
|
|
113
|
-
"Ignoring missing required token property in lenient mode.",
|
|
114
|
-
);
|
|
101
|
+
logger.debug("Ignoring missing required token property in lenient mode.");
|
|
115
102
|
}
|
|
116
103
|
return undefined;
|
|
117
104
|
}
|
|
@@ -126,9 +113,7 @@ export function getRequiredToken(
|
|
|
126
113
|
node.leadingTrivia ? node.leadingTrivia[0].location : undefined,
|
|
127
114
|
);
|
|
128
115
|
} else {
|
|
129
|
-
logger.debug(
|
|
130
|
-
"Ignoring invalid required token property in lenient mode.",
|
|
131
|
-
);
|
|
116
|
+
logger.debug("Ignoring invalid required token property in lenient mode.");
|
|
132
117
|
return undefined;
|
|
133
118
|
}
|
|
134
119
|
}
|
|
@@ -152,14 +137,10 @@ export function getRequiredElementaryType(
|
|
|
152
137
|
if (strict) {
|
|
153
138
|
throw new SemanticError(
|
|
154
139
|
"Required elementary type property is missing",
|
|
155
|
-
parentNode.leadingTrivia
|
|
156
|
-
? parentNode.leadingTrivia[0].location
|
|
157
|
-
: undefined,
|
|
140
|
+
parentNode.leadingTrivia ? parentNode.leadingTrivia[0].location : undefined,
|
|
158
141
|
);
|
|
159
142
|
} else {
|
|
160
|
-
logger.debug(
|
|
161
|
-
"Ignoring missing required elementary type property in lenient mode.",
|
|
162
|
-
);
|
|
143
|
+
logger.debug("Ignoring missing required elementary type property in lenient mode.");
|
|
163
144
|
}
|
|
164
145
|
return undefined;
|
|
165
146
|
}
|
|
@@ -170,21 +151,16 @@ export function getRequiredElementaryType(
|
|
|
170
151
|
if (strict) {
|
|
171
152
|
if (isToken(node)) {
|
|
172
153
|
throw new SemanticError(
|
|
173
|
-
`Required identifier property is a Token node: ${
|
|
174
|
-
TokenKind[node.tokenKind]
|
|
175
|
-
}`,
|
|
154
|
+
`Required identifier property is a Token node: ${TokenKind[node.tokenKind]}`,
|
|
176
155
|
node.leadingTrivia ? node.leadingTrivia[0].location : undefined,
|
|
177
156
|
);
|
|
178
157
|
}
|
|
179
158
|
throw new SemanticError(
|
|
180
|
-
"Required elementary type property is not an ElementaryType node: " +
|
|
181
|
-
NodeKind[node.nodeKind],
|
|
159
|
+
"Required elementary type property is not an ElementaryType node: " + NodeKind[node.nodeKind],
|
|
182
160
|
node.leadingTrivia ? node.leadingTrivia[0].location : undefined,
|
|
183
161
|
);
|
|
184
162
|
} else {
|
|
185
|
-
logger.debug(
|
|
186
|
-
"Ignoring invalid required elementary type property in lenient mode.",
|
|
187
|
-
);
|
|
163
|
+
logger.debug("Ignoring invalid required elementary type property in lenient mode.");
|
|
188
164
|
return undefined;
|
|
189
165
|
}
|
|
190
166
|
}
|
|
@@ -204,21 +180,15 @@ export function getElementaryTypeKind(
|
|
|
204
180
|
throw new SemanticError(
|
|
205
181
|
"Elementary type unsigned qualifier is not a Token node: " +
|
|
206
182
|
NodeKind[elementaryType.unsignedQualifierKeyword.nodeKind],
|
|
207
|
-
elementaryType.leadingTrivia
|
|
208
|
-
? elementaryType.leadingTrivia[0].location
|
|
209
|
-
: undefined,
|
|
183
|
+
elementaryType.leadingTrivia ? elementaryType.leadingTrivia[0].location : undefined,
|
|
210
184
|
);
|
|
211
185
|
} else {
|
|
212
|
-
logger.debug(
|
|
213
|
-
"Ignoring invalid elementary type unsigned qualifier in lenient mode.",
|
|
214
|
-
);
|
|
186
|
+
logger.debug("Ignoring invalid elementary type unsigned qualifier in lenient mode.");
|
|
215
187
|
return undefined;
|
|
216
188
|
}
|
|
217
189
|
}
|
|
218
190
|
|
|
219
|
-
if (
|
|
220
|
-
elementaryType.unsignedQualifierKeyword.tokenKind !== TokenKind.UNSIGNED
|
|
221
|
-
) {
|
|
191
|
+
if (elementaryType.unsignedQualifierKeyword.tokenKind !== TokenKind.UNSIGNED) {
|
|
222
192
|
if (strict) {
|
|
223
193
|
throw new SemanticError(
|
|
224
194
|
`Elementary type unsigned qualifier has invalid token kind: ${
|
|
@@ -242,14 +212,10 @@ export function getElementaryTypeKind(
|
|
|
242
212
|
throw new SemanticError(
|
|
243
213
|
"Elementary type type keyword is not a Token node: " +
|
|
244
214
|
NodeKind[elementaryType.typeKeyword.nodeKind],
|
|
245
|
-
elementaryType.leadingTrivia
|
|
246
|
-
? elementaryType.leadingTrivia[0].location
|
|
247
|
-
: undefined,
|
|
215
|
+
elementaryType.leadingTrivia ? elementaryType.leadingTrivia[0].location : undefined,
|
|
248
216
|
);
|
|
249
217
|
} else {
|
|
250
|
-
logger.debug(
|
|
251
|
-
"Ignoring invalid elementary type type keyword in lenient mode.",
|
|
252
|
-
);
|
|
218
|
+
logger.debug("Ignoring invalid elementary type type keyword in lenient mode.");
|
|
253
219
|
return undefined;
|
|
254
220
|
}
|
|
255
221
|
}
|
|
@@ -259,9 +225,7 @@ export function getElementaryTypeKind(
|
|
|
259
225
|
|
|
260
226
|
switch (typeToken.tokenKind) {
|
|
261
227
|
case TokenKind.INT:
|
|
262
|
-
return isUnsigned
|
|
263
|
-
? ElementaryTypeKind.UNSIGNED_INTEGER
|
|
264
|
-
: ElementaryTypeKind.INTEGER;
|
|
228
|
+
return isUnsigned ? ElementaryTypeKind.UNSIGNED_INTEGER : ElementaryTypeKind.INTEGER;
|
|
265
229
|
case TokenKind.FLOAT:
|
|
266
230
|
return ElementaryTypeKind.FLOATING_POINT;
|
|
267
231
|
case TokenKind.BIT:
|
|
@@ -269,9 +233,7 @@ export function getElementaryTypeKind(
|
|
|
269
233
|
default:
|
|
270
234
|
if (strict) {
|
|
271
235
|
throw new SemanticError(
|
|
272
|
-
`Unsupported elementary type token kind: ${
|
|
273
|
-
TokenKind[typeToken.tokenKind]
|
|
274
|
-
}`,
|
|
236
|
+
`Unsupported elementary type token kind: ${TokenKind[typeToken.tokenKind]}`,
|
|
275
237
|
typeToken.getLocation(),
|
|
276
238
|
);
|
|
277
239
|
} else {
|
|
@@ -308,9 +270,7 @@ export function getStringVariableKind(
|
|
|
308
270
|
default:
|
|
309
271
|
if (strict) {
|
|
310
272
|
throw new SemanticError(
|
|
311
|
-
`Unsupported string variable kind token: ${
|
|
312
|
-
TokenKind[stringVariableKindToken.tokenKind]
|
|
313
|
-
}`,
|
|
273
|
+
`Unsupported string variable kind token: ${TokenKind[stringVariableKindToken.tokenKind]}`,
|
|
314
274
|
stringVariableKindToken.getLocation(),
|
|
315
275
|
);
|
|
316
276
|
} else {
|
|
@@ -344,21 +304,15 @@ export function getRequiredOperand(
|
|
|
344
304
|
if (strict) {
|
|
345
305
|
throw new SemanticError(
|
|
346
306
|
"Required operand property is missing",
|
|
347
|
-
parentNode.leadingTrivia
|
|
348
|
-
? parentNode.leadingTrivia[0].location
|
|
349
|
-
: undefined,
|
|
307
|
+
parentNode.leadingTrivia ? parentNode.leadingTrivia[0].location : undefined,
|
|
350
308
|
);
|
|
351
309
|
} else {
|
|
352
|
-
logger.debug(
|
|
353
|
-
"Ignoring missing required operand property in lenient mode.",
|
|
354
|
-
);
|
|
310
|
+
logger.debug("Ignoring missing required operand property in lenient mode.");
|
|
355
311
|
}
|
|
356
312
|
return undefined;
|
|
357
313
|
}
|
|
358
314
|
|
|
359
|
-
if (
|
|
360
|
-
isAbstractExpression(node) || isIdentifier(node) || isNumberLiteral(node)
|
|
361
|
-
) {
|
|
315
|
+
if (isAbstractExpression(node) || isIdentifier(node) || isNumberLiteral(node)) {
|
|
362
316
|
return node;
|
|
363
317
|
}
|
|
364
318
|
|
|
@@ -369,9 +323,7 @@ export function getRequiredOperand(
|
|
|
369
323
|
node.leadingTrivia ? node.leadingTrivia[0].location : undefined,
|
|
370
324
|
);
|
|
371
325
|
} else {
|
|
372
|
-
logger.debug(
|
|
373
|
-
"Ignoring invalid required operand property in lenient mode.",
|
|
374
|
-
);
|
|
326
|
+
logger.debug("Ignoring invalid required operand property in lenient mode.");
|
|
375
327
|
return undefined;
|
|
376
328
|
}
|
|
377
329
|
}
|
|
@@ -428,17 +380,13 @@ export function getSymbolTableString(symbolTable: SymbolTable): string {
|
|
|
428
380
|
}:`,
|
|
429
381
|
);
|
|
430
382
|
|
|
431
|
-
if (scope.classMemberSymbols &&
|
|
383
|
+
if (scope.classMemberSymbols && scope.classMemberSymbols.size > 0) {
|
|
432
384
|
lines.push(`${prefix} members:`);
|
|
433
385
|
|
|
434
386
|
for (const memberEntries of scope.classMemberSymbols.values()) {
|
|
435
387
|
for (const entry of memberEntries) {
|
|
436
|
-
const branchStr = entry.branchId
|
|
437
|
-
|
|
438
|
-
: "";
|
|
439
|
-
lines.push(
|
|
440
|
-
`${prefix} ${getSymbolString(entry.symbol)}${branchStr}`,
|
|
441
|
-
);
|
|
388
|
+
const branchStr = entry.branchId ? ` (branch: ${entry.branchId})` : "";
|
|
389
|
+
lines.push(`${prefix} ${getSymbolString(entry.symbol)}${branchStr}`);
|
|
442
390
|
}
|
|
443
391
|
}
|
|
444
392
|
}
|
|
@@ -7,19 +7,13 @@ import { NumberLiteralKind } from "../../ast/node/enum/number-literal-kind.ts";
|
|
|
7
7
|
import type { Identifier } from "../../ast/node/identifier.ts";
|
|
8
8
|
import type { BinaryExpression } from "../../ast/node/binary-expression.ts";
|
|
9
9
|
import type { UnaryExpression } from "../../ast/node/unary-expression.ts";
|
|
10
|
-
import {
|
|
11
|
-
isAbstractExpression,
|
|
12
|
-
isIdentifier,
|
|
13
|
-
isNumberLiteral,
|
|
14
|
-
} from "../../ast/util/types.ts";
|
|
10
|
+
import { isAbstractExpression, isIdentifier, isNumberLiteral } from "../../ast/util/types.ts";
|
|
15
11
|
import { NumericType, StringType, type SymbolTable } from "../symbol-table.ts";
|
|
16
12
|
import { InternalScannerError } from "../../scanner-error.ts";
|
|
17
13
|
import { StringVariableKind } from "../../ast/node/enum/string-variable-kind.ts";
|
|
18
14
|
import { NodeKind } from "../../ast/node/enum/node-kind.ts";
|
|
19
15
|
|
|
20
|
-
export function getNumericTypeFromElementaryTypeKind(
|
|
21
|
-
kind: ElementaryTypeKind,
|
|
22
|
-
): NumericType {
|
|
16
|
+
export function getNumericTypeFromElementaryTypeKind(kind: ElementaryTypeKind): NumericType {
|
|
23
17
|
switch (kind) {
|
|
24
18
|
case ElementaryTypeKind.INTEGER:
|
|
25
19
|
case ElementaryTypeKind.UNSIGNED_INTEGER:
|
|
@@ -29,16 +23,12 @@ export function getNumericTypeFromElementaryTypeKind(
|
|
|
29
23
|
return NumericType.FLOATING_POINT;
|
|
30
24
|
default: {
|
|
31
25
|
const exhaustiveCheck: never = kind;
|
|
32
|
-
throw new InternalScannerError(
|
|
33
|
-
"Unreachable code reached, kind == " + exhaustiveCheck,
|
|
34
|
-
);
|
|
26
|
+
throw new InternalScannerError("Unreachable code reached, kind == " + exhaustiveCheck);
|
|
35
27
|
}
|
|
36
28
|
}
|
|
37
29
|
}
|
|
38
30
|
|
|
39
|
-
export function getStringTypeFromStringVariableKind(
|
|
40
|
-
kind: StringVariableKind,
|
|
41
|
-
): StringType {
|
|
31
|
+
export function getStringTypeFromStringVariableKind(kind: StringVariableKind): StringType {
|
|
42
32
|
switch (kind) {
|
|
43
33
|
case StringVariableKind.BASE64:
|
|
44
34
|
return StringType.BASIC;
|
|
@@ -49,16 +39,12 @@ export function getStringTypeFromStringVariableKind(
|
|
|
49
39
|
return StringType.UCS;
|
|
50
40
|
default: {
|
|
51
41
|
const exhaustiveCheck: never = kind;
|
|
52
|
-
throw new InternalScannerError(
|
|
53
|
-
"Unreachable code reached, kind == " + exhaustiveCheck,
|
|
54
|
-
);
|
|
42
|
+
throw new InternalScannerError("Unreachable code reached, kind == " + exhaustiveCheck);
|
|
55
43
|
}
|
|
56
44
|
}
|
|
57
45
|
}
|
|
58
46
|
|
|
59
|
-
function getNumericTypeFromNumberLiteralKind(
|
|
60
|
-
kind: NumberLiteralKind,
|
|
61
|
-
): NumericType {
|
|
47
|
+
function getNumericTypeFromNumberLiteralKind(kind: NumberLiteralKind): NumericType {
|
|
62
48
|
switch (kind) {
|
|
63
49
|
case NumberLiteralKind.BINARY:
|
|
64
50
|
case NumberLiteralKind.HEXADECIMAL:
|
|
@@ -71,9 +57,7 @@ function getNumericTypeFromNumberLiteralKind(
|
|
|
71
57
|
return NumericType.DECIMAL;
|
|
72
58
|
default: {
|
|
73
59
|
const exhaustiveCheck: never = kind;
|
|
74
|
-
throw new InternalScannerError(
|
|
75
|
-
"Unreachable code reached, kind == " + exhaustiveCheck,
|
|
76
|
-
);
|
|
60
|
+
throw new InternalScannerError("Unreachable code reached, kind == " + exhaustiveCheck);
|
|
77
61
|
}
|
|
78
62
|
}
|
|
79
63
|
}
|
|
@@ -94,9 +78,7 @@ export function resolveNumericType(
|
|
|
94
78
|
return resolveNumericTypeFromExpression(node, symbolTable);
|
|
95
79
|
}
|
|
96
80
|
|
|
97
|
-
throw new InternalScannerError(
|
|
98
|
-
`Undexpected node kind: ${NodeKind[node.nodeKind]}`,
|
|
99
|
-
);
|
|
81
|
+
throw new InternalScannerError(`Undexpected node kind: ${NodeKind[node.nodeKind]}`);
|
|
100
82
|
}
|
|
101
83
|
|
|
102
84
|
function resolveNumericTypeFromIdentifier(
|
|
@@ -105,14 +87,14 @@ function resolveNumericTypeFromIdentifier(
|
|
|
105
87
|
): NumericType | undefined {
|
|
106
88
|
const symbol = symbolTable.lookupVariable(identifier.name);
|
|
107
89
|
|
|
108
|
-
if (symbol &&
|
|
90
|
+
if (symbol && symbol.attributes.numericType !== undefined) {
|
|
109
91
|
return symbol.attributes.numericType;
|
|
110
92
|
}
|
|
111
93
|
|
|
112
94
|
const classMembers = symbolTable.lookupClassMember(identifier.name);
|
|
113
95
|
|
|
114
96
|
// Use the first class member as they should all have the same type in different branches
|
|
115
|
-
if (classMembers &&
|
|
97
|
+
if (classMembers && classMembers.length > 0) {
|
|
116
98
|
const memberSymbol = classMembers[0].symbol;
|
|
117
99
|
|
|
118
100
|
if (memberSymbol.attributes.numericType !== undefined) {
|
|
@@ -132,22 +114,14 @@ function resolveNumericTypeFromExpression(
|
|
|
132
114
|
|
|
133
115
|
switch (kind) {
|
|
134
116
|
case ExpressionKind.BINARY:
|
|
135
|
-
return resolveBinaryExpressionType(
|
|
136
|
-
expression as BinaryExpression,
|
|
137
|
-
symbolTable,
|
|
138
|
-
);
|
|
117
|
+
return resolveBinaryExpressionType(expression as BinaryExpression, symbolTable);
|
|
139
118
|
case ExpressionKind.UNARY:
|
|
140
|
-
return resolveNumericType(
|
|
141
|
-
(expression as UnaryExpression).operand,
|
|
142
|
-
symbolTable,
|
|
143
|
-
);
|
|
119
|
+
return resolveNumericType((expression as UnaryExpression).operand, symbolTable);
|
|
144
120
|
case ExpressionKind.LENGTHOF:
|
|
145
121
|
return NumericType.INTEGER;
|
|
146
122
|
default: {
|
|
147
123
|
const exhaustiveCheck: never = kind;
|
|
148
|
-
throw new InternalScannerError(
|
|
149
|
-
"Unreachable code reached, kind == " + exhaustiveCheck,
|
|
150
|
-
);
|
|
124
|
+
throw new InternalScannerError("Unreachable code reached, kind == " + exhaustiveCheck);
|
|
151
125
|
}
|
|
152
126
|
}
|
|
153
127
|
}
|
|
@@ -166,39 +140,24 @@ function resolveBinaryExpressionType(
|
|
|
166
140
|
}
|
|
167
141
|
|
|
168
142
|
if (operatorKind === BinaryOperatorKind.ASSIGNMENT) {
|
|
169
|
-
return resolveNumericType(
|
|
170
|
-
expression.leftOperand as AbstractNode,
|
|
171
|
-
symbolTable,
|
|
172
|
-
);
|
|
143
|
+
return resolveNumericType(expression.leftOperand as AbstractNode, symbolTable);
|
|
173
144
|
}
|
|
174
145
|
|
|
175
|
-
const leftNumericType = resolveNumericType(
|
|
176
|
-
|
|
177
|
-
symbolTable,
|
|
178
|
-
);
|
|
179
|
-
const rightNumericType = resolveNumericType(
|
|
180
|
-
expression.rightOperand as AbstractNode,
|
|
181
|
-
symbolTable,
|
|
182
|
-
);
|
|
146
|
+
const leftNumericType = resolveNumericType(expression.leftOperand as AbstractNode, symbolTable);
|
|
147
|
+
const rightNumericType = resolveNumericType(expression.rightOperand as AbstractNode, symbolTable);
|
|
183
148
|
|
|
184
149
|
if (
|
|
185
|
-
|
|
186
|
-
|
|
150
|
+
leftNumericType === NumericType.FLOATING_POINT ||
|
|
151
|
+
rightNumericType === NumericType.FLOATING_POINT
|
|
187
152
|
) {
|
|
188
153
|
return NumericType.FLOATING_POINT;
|
|
189
154
|
}
|
|
190
155
|
|
|
191
|
-
if (
|
|
192
|
-
(leftNumericType === NumericType.DECIMAL) ||
|
|
193
|
-
(rightNumericType === NumericType.DECIMAL)
|
|
194
|
-
) {
|
|
156
|
+
if (leftNumericType === NumericType.DECIMAL || rightNumericType === NumericType.DECIMAL) {
|
|
195
157
|
return NumericType.DECIMAL;
|
|
196
158
|
}
|
|
197
159
|
|
|
198
|
-
if (
|
|
199
|
-
(leftNumericType === NumericType.INTEGER) ||
|
|
200
|
-
(rightNumericType === NumericType.INTEGER)
|
|
201
|
-
) {
|
|
160
|
+
if (leftNumericType === NumericType.INTEGER || rightNumericType === NumericType.INTEGER) {
|
|
202
161
|
return NumericType.INTEGER;
|
|
203
162
|
}
|
|
204
163
|
|
|
@@ -206,33 +165,34 @@ function resolveBinaryExpressionType(
|
|
|
206
165
|
}
|
|
207
166
|
|
|
208
167
|
export function isRelationalOperator(kind: BinaryOperatorKind): boolean {
|
|
209
|
-
return (
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
168
|
+
return (
|
|
169
|
+
kind === BinaryOperatorKind.LESS_THAN ||
|
|
170
|
+
kind === BinaryOperatorKind.LESS_THAN_OR_EQUAL ||
|
|
171
|
+
kind === BinaryOperatorKind.GREATER_THAN ||
|
|
172
|
+
kind === BinaryOperatorKind.GREATER_THAN_OR_EQUAL ||
|
|
173
|
+
kind === BinaryOperatorKind.EQUAL ||
|
|
174
|
+
kind === BinaryOperatorKind.NOT_EQUAL
|
|
175
|
+
);
|
|
215
176
|
}
|
|
216
177
|
|
|
217
178
|
export function isLogicalOperator(kind: BinaryOperatorKind): boolean {
|
|
218
|
-
return
|
|
219
|
-
(kind === BinaryOperatorKind.LOGICAL_OR);
|
|
179
|
+
return kind === BinaryOperatorKind.LOGICAL_AND || kind === BinaryOperatorKind.LOGICAL_OR;
|
|
220
180
|
}
|
|
221
181
|
|
|
222
182
|
export function isShiftOperator(kind: BinaryOperatorKind): boolean {
|
|
223
|
-
return
|
|
224
|
-
(kind === BinaryOperatorKind.SHIFT_RIGHT);
|
|
183
|
+
return kind === BinaryOperatorKind.SHIFT_LEFT || kind === BinaryOperatorKind.SHIFT_RIGHT;
|
|
225
184
|
}
|
|
226
185
|
|
|
227
186
|
export function isBitwiseOperator(kind: BinaryOperatorKind): boolean {
|
|
228
|
-
return
|
|
229
|
-
(kind === BinaryOperatorKind.BITWISE_OR);
|
|
187
|
+
return kind === BinaryOperatorKind.BITWISE_AND || kind === BinaryOperatorKind.BITWISE_OR;
|
|
230
188
|
}
|
|
231
189
|
|
|
232
190
|
export function isArithmeticOperator(kind: BinaryOperatorKind): boolean {
|
|
233
|
-
return (
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
191
|
+
return (
|
|
192
|
+
kind === BinaryOperatorKind.ADD ||
|
|
193
|
+
kind === BinaryOperatorKind.SUBTRACT ||
|
|
194
|
+
kind === BinaryOperatorKind.MULTIPLY ||
|
|
195
|
+
kind === BinaryOperatorKind.DIVIDE ||
|
|
196
|
+
kind === BinaryOperatorKind.MODULUS
|
|
197
|
+
);
|
|
238
198
|
}
|
|
@@ -34,9 +34,7 @@ export enum NodeScenario {
|
|
|
34
34
|
EMPTY_AST_NODE,
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
function determineNodeScenario(
|
|
38
|
-
buildContext: BuildContext,
|
|
39
|
-
): NodeScenario {
|
|
37
|
+
function determineNodeScenario(buildContext: BuildContext): NodeScenario {
|
|
40
38
|
const { cursor, text, lenient } = buildContext;
|
|
41
39
|
const isError = cursor.type.isError;
|
|
42
40
|
|
|
@@ -93,12 +91,9 @@ function determineNodeScenario(
|
|
|
93
91
|
/*
|
|
94
92
|
* Iterate through the syntax tree and consume parse tree tokens to create an AST node.
|
|
95
93
|
*/
|
|
96
|
-
export function consumeAbstractNode(
|
|
97
|
-
buildContext: BuildContext,
|
|
98
|
-
): AbstractNode | undefined {
|
|
94
|
+
export function consumeAbstractNode(buildContext: BuildContext): AbstractNode | undefined {
|
|
99
95
|
const { cursor } = buildContext;
|
|
100
|
-
const currentState =
|
|
101
|
-
buildContext.stateStack[buildContext.stateStack.length - 1];
|
|
96
|
+
const currentState = buildContext.stateStack[buildContext.stateStack.length - 1];
|
|
102
97
|
|
|
103
98
|
// Get any leading trivia for the node
|
|
104
99
|
const leadingTrivia = consumeTrivia(buildContext, false);
|
|
@@ -107,9 +102,7 @@ export function consumeAbstractNode(
|
|
|
107
102
|
if (currentState.isEndOfSiblings) {
|
|
108
103
|
if (leadingTrivia.length > 0) {
|
|
109
104
|
if (buildContext.unconsumedTrivia) {
|
|
110
|
-
throw new InternalScannerError(
|
|
111
|
-
`Expected no unconsumed trivia, but found some.`,
|
|
112
|
-
);
|
|
105
|
+
throw new InternalScannerError(`Expected no unconsumed trivia, but found some.`);
|
|
113
106
|
}
|
|
114
107
|
buildContext.unconsumedTrivia = leadingTrivia;
|
|
115
108
|
}
|
|
@@ -120,7 +113,9 @@ export function consumeAbstractNode(
|
|
|
120
113
|
const nodeScenario = determineNodeScenario(buildContext);
|
|
121
114
|
|
|
122
115
|
logger.debug(
|
|
123
|
-
currentState.indent +
|
|
116
|
+
currentState.indent +
|
|
117
|
+
"consuming node: " +
|
|
118
|
+
cursor.name +
|
|
124
119
|
` (scenario: ${NodeScenario[nodeScenario]})`,
|
|
125
120
|
);
|
|
126
121
|
|
|
@@ -191,7 +186,9 @@ export function consumeAbstractNode(
|
|
|
191
186
|
}
|
|
192
187
|
|
|
193
188
|
logger.debug(
|
|
194
|
-
currentState.indent +
|
|
189
|
+
currentState.indent +
|
|
190
|
+
"current node: " +
|
|
191
|
+
cursor.name +
|
|
195
192
|
(currentState.isEndOfSiblings ? ": end of siblings" : ""),
|
|
196
193
|
);
|
|
197
194
|
|
|
@@ -69,9 +69,7 @@ function consumeArrayDimension(
|
|
|
69
69
|
parentTypeId: number,
|
|
70
70
|
parentTypeName: string,
|
|
71
71
|
): AbstractNode {
|
|
72
|
-
const arrayDimensionKind = arrayDimensionKindByTokenTypeId.get(
|
|
73
|
-
parentTypeId,
|
|
74
|
-
);
|
|
72
|
+
const arrayDimensionKind = arrayDimensionKindByTokenTypeId.get(parentTypeId);
|
|
75
73
|
|
|
76
74
|
if (arrayDimensionKind === undefined) {
|
|
77
75
|
throw new InternalScannerError(
|
|
@@ -89,8 +87,7 @@ function consumeArrayDimension(
|
|
|
89
87
|
default: {
|
|
90
88
|
const exhaustiveCheck: never = arrayDimensionKind;
|
|
91
89
|
throw new InternalScannerError(
|
|
92
|
-
"Unreachable code reached, arrayDimensionKind == " +
|
|
93
|
-
exhaustiveCheck,
|
|
90
|
+
"Unreachable code reached, arrayDimensionKind == " + exhaustiveCheck,
|
|
94
91
|
);
|
|
95
92
|
}
|
|
96
93
|
}
|
|
@@ -101,9 +98,7 @@ function consumeClassId(
|
|
|
101
98
|
parentTypeId: number,
|
|
102
99
|
parentTypeName: string,
|
|
103
100
|
): AbstractNode {
|
|
104
|
-
const classIdKind = classIdKindByTokenTypeId.get(
|
|
105
|
-
parentTypeId,
|
|
106
|
-
);
|
|
101
|
+
const classIdKind = classIdKindByTokenTypeId.get(parentTypeId);
|
|
107
102
|
|
|
108
103
|
if (classIdKind === undefined) {
|
|
109
104
|
throw new InternalScannerError(
|
|
@@ -119,10 +114,7 @@ function consumeClassId(
|
|
|
119
114
|
return buildExtendedClassIdRange(buildContext);
|
|
120
115
|
default: {
|
|
121
116
|
const exhaustiveCheck: never = classIdKind;
|
|
122
|
-
throw new InternalScannerError(
|
|
123
|
-
"Unreachable code reached, classIdKind == " +
|
|
124
|
-
exhaustiveCheck,
|
|
125
|
-
);
|
|
117
|
+
throw new InternalScannerError("Unreachable code reached, classIdKind == " + exhaustiveCheck);
|
|
126
118
|
}
|
|
127
119
|
}
|
|
128
120
|
}
|
|
@@ -132,9 +124,7 @@ function consumeExpression(
|
|
|
132
124
|
parentTypeId: number,
|
|
133
125
|
parentTypeName: string,
|
|
134
126
|
): AbstractNode {
|
|
135
|
-
const expressionKind = expressionKindByTokenTypeId.get(
|
|
136
|
-
parentTypeId,
|
|
137
|
-
);
|
|
127
|
+
const expressionKind = expressionKindByTokenTypeId.get(parentTypeId);
|
|
138
128
|
|
|
139
129
|
if (expressionKind === undefined) {
|
|
140
130
|
throw new InternalScannerError(
|
|
@@ -151,8 +141,7 @@ function consumeExpression(
|
|
|
151
141
|
default: {
|
|
152
142
|
const exhaustiveCheck: never = expressionKind;
|
|
153
143
|
throw new InternalScannerError(
|
|
154
|
-
"Unreachable code reached, expressionKind == " +
|
|
155
|
-
exhaustiveCheck,
|
|
144
|
+
"Unreachable code reached, expressionKind == " + exhaustiveCheck,
|
|
156
145
|
);
|
|
157
146
|
}
|
|
158
147
|
}
|
|
@@ -163,9 +152,7 @@ function consumeStatement(
|
|
|
163
152
|
parentTypeId: number,
|
|
164
153
|
parentTypeName: string,
|
|
165
154
|
): AbstractNode {
|
|
166
|
-
const statementKind = statementKindByTokenTypeId.get(
|
|
167
|
-
parentTypeId,
|
|
168
|
-
);
|
|
155
|
+
const statementKind = statementKindByTokenTypeId.get(parentTypeId);
|
|
169
156
|
|
|
170
157
|
if (statementKind === undefined) {
|
|
171
158
|
throw new InternalScannerError(
|
|
@@ -208,8 +195,7 @@ function consumeStatement(
|
|
|
208
195
|
default: {
|
|
209
196
|
const exhaustiveCheck: never = statementKind;
|
|
210
197
|
throw new InternalScannerError(
|
|
211
|
-
"Unreachable code reached, statementKind == " +
|
|
212
|
-
exhaustiveCheck,
|
|
198
|
+
"Unreachable code reached, statementKind == " + exhaustiveCheck,
|
|
213
199
|
);
|
|
214
200
|
}
|
|
215
201
|
}
|
|
@@ -220,9 +206,7 @@ function consumeStringLiteral(
|
|
|
220
206
|
parentTypeId: number,
|
|
221
207
|
parentTypeName: string,
|
|
222
208
|
): AbstractNode {
|
|
223
|
-
const stringLiteralKind = stringLiteralKindByTokenTypeId.get(
|
|
224
|
-
parentTypeId,
|
|
225
|
-
);
|
|
209
|
+
const stringLiteralKind = stringLiteralKindByTokenTypeId.get(parentTypeId);
|
|
226
210
|
|
|
227
211
|
if (stringLiteralKind === undefined) {
|
|
228
212
|
throw new InternalScannerError(
|
|
@@ -237,8 +221,7 @@ function consumeStringLiteral(
|
|
|
237
221
|
default: {
|
|
238
222
|
const exhaustiveCheck: never = stringLiteralKind;
|
|
239
223
|
throw new InternalScannerError(
|
|
240
|
-
"Unreachable code reached, stringLiteralKind == " +
|
|
241
|
-
exhaustiveCheck,
|
|
224
|
+
"Unreachable code reached, stringLiteralKind == " + exhaustiveCheck,
|
|
242
225
|
);
|
|
243
226
|
}
|
|
244
227
|
}
|
|
@@ -246,8 +229,7 @@ function consumeStringLiteral(
|
|
|
246
229
|
|
|
247
230
|
export function consumeAstNode(buildContext: BuildContext): AbstractNode {
|
|
248
231
|
const { cursor } = buildContext;
|
|
249
|
-
const currentState =
|
|
250
|
-
buildContext.stateStack[buildContext.stateStack.length - 1];
|
|
232
|
+
const currentState = buildContext.stateStack[buildContext.stateStack.length - 1];
|
|
251
233
|
const parentTypeId = cursor.type.id;
|
|
252
234
|
const parentTypeName = cursor.type.name;
|
|
253
235
|
|
|
@@ -265,9 +247,7 @@ export function consumeAstNode(buildContext: BuildContext): AbstractNode {
|
|
|
265
247
|
);
|
|
266
248
|
}
|
|
267
249
|
|
|
268
|
-
logger.debug(
|
|
269
|
-
currentState.indent + "consuming AST node: " + NodeKind[nodeKind] + "...",
|
|
270
|
-
);
|
|
250
|
+
logger.debug(currentState.indent + "consuming AST node: " + NodeKind[nodeKind] + "...");
|
|
271
251
|
|
|
272
252
|
const childStack = {
|
|
273
253
|
isEndOfSiblings: false,
|
|
@@ -277,9 +257,7 @@ export function consumeAstNode(buildContext: BuildContext): AbstractNode {
|
|
|
277
257
|
buildContext.stateStack.push(childStack);
|
|
278
258
|
|
|
279
259
|
if (!cursor.firstChild()) {
|
|
280
|
-
throw new InternalScannerError(
|
|
281
|
-
`Expected AST node to have children: ${NodeKind[nodeKind]}`,
|
|
282
|
-
);
|
|
260
|
+
throw new InternalScannerError(`Expected AST node to have children: ${NodeKind[nodeKind]}`);
|
|
283
261
|
}
|
|
284
262
|
|
|
285
263
|
let node: AbstractNode;
|
|
@@ -365,9 +343,7 @@ export function consumeAstNode(buildContext: BuildContext): AbstractNode {
|
|
|
365
343
|
);
|
|
366
344
|
default: {
|
|
367
345
|
const exhaustiveCheck: never = nodeKind;
|
|
368
|
-
throw new InternalScannerError(
|
|
369
|
-
"Unreachable code reached, nodeKind == " + exhaustiveCheck,
|
|
370
|
-
);
|
|
346
|
+
throw new InternalScannerError("Unreachable code reached, nodeKind == " + exhaustiveCheck);
|
|
371
347
|
}
|
|
372
348
|
}
|
|
373
349
|
|
|
@@ -377,9 +353,7 @@ export function consumeAstNode(buildContext: BuildContext): AbstractNode {
|
|
|
377
353
|
|
|
378
354
|
if (!childStack.isEndOfSiblings) {
|
|
379
355
|
throw new InternalScannerError(
|
|
380
|
-
`Expected to have consumed all child nodes of ${
|
|
381
|
-
NodeKind[nodeKind]
|
|
382
|
-
}, but some remain.`,
|
|
356
|
+
`Expected to have consumed all child nodes of ${NodeKind[nodeKind]}, but some remain.`,
|
|
383
357
|
);
|
|
384
358
|
}
|
|
385
359
|
}
|
|
@@ -388,9 +362,7 @@ export function consumeAstNode(buildContext: BuildContext): AbstractNode {
|
|
|
388
362
|
|
|
389
363
|
if (!cursor.parent()) {
|
|
390
364
|
throw new InternalScannerError(
|
|
391
|
-
`Expected to move cursor back to parent of ${
|
|
392
|
-
NodeKind[nodeKind]
|
|
393
|
-
}, but failed.`,
|
|
365
|
+
`Expected to move cursor back to parent of ${NodeKind[nodeKind]}, but failed.`,
|
|
394
366
|
);
|
|
395
367
|
}
|
|
396
368
|
|