@aster-cloud/aster-lang-ts 1.6.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +64 -0
- package/dist/scripts/aster.js +5 -12
- package/dist/scripts/aster.js.map +1 -1
- package/dist/scripts/emit-classfiles.js +3 -1
- package/dist/scripts/emit-classfiles.js.map +1 -1
- package/dist/scripts/generate-core-ir-types.d.ts +16 -0
- package/dist/scripts/generate-core-ir-types.d.ts.map +1 -0
- package/dist/scripts/generate-core-ir-types.js +116 -0
- package/dist/scripts/generate-core-ir-types.js.map +1 -0
- package/dist/scripts/generate-naming-rules.d.ts +5 -0
- package/dist/scripts/generate-naming-rules.d.ts.map +1 -0
- package/dist/scripts/generate-naming-rules.js +35 -0
- package/dist/scripts/generate-naming-rules.js.map +1 -0
- package/dist/scripts/golden.js +1 -1
- package/dist/scripts/golden.js.map +1 -1
- package/dist/src/ast/ast_visitor.d.ts +27 -27
- package/dist/src/ast/ast_visitor.d.ts.map +1 -1
- package/dist/src/ast/ast_visitor.js.map +1 -1
- package/dist/src/browser/schema.d.ts.map +1 -1
- package/dist/src/browser/schema.js +1 -3
- package/dist/src/browser/schema.js.map +1 -1
- package/dist/src/browser.d.ts +7 -0
- package/dist/src/browser.d.ts.map +1 -1
- package/dist/src/browser.js +7 -4
- package/dist/src/browser.js.map +1 -1
- package/dist/src/cli/policy-converter.js +6 -10
- package/dist/src/cli/policy-converter.js.map +1 -1
- package/dist/src/cli/utils/core-ir-file.d.ts +8 -0
- package/dist/src/cli/utils/core-ir-file.d.ts.map +1 -0
- package/dist/src/cli/utils/core-ir-file.js +29 -0
- package/dist/src/cli/utils/core-ir-file.js.map +1 -0
- package/dist/src/cnl-printer.d.ts.map +1 -1
- package/dist/src/cnl-printer.js +13 -3
- package/dist/src/cnl-printer.js.map +1 -1
- package/dist/src/compile-pipeline.d.ts.map +1 -1
- package/dist/src/compile-pipeline.js +2 -3
- package/dist/src/compile-pipeline.js.map +1 -1
- package/dist/src/config/lexicons/diagnostic-overlays.generated.d.ts.map +1 -1
- package/dist/src/config/lexicons/diagnostic-overlays.generated.js +18 -6
- package/dist/src/config/lexicons/diagnostic-overlays.generated.js.map +1 -1
- package/dist/src/config/lexicons/fallback-lexicon.d.ts +1 -1
- package/dist/src/config/lexicons/fallback-lexicon.d.ts.map +1 -1
- package/dist/src/config/lexicons/fallback-lexicon.js +1 -4
- package/dist/src/config/lexicons/fallback-lexicon.js.map +1 -1
- package/dist/src/config/lexicons/overlay-loader.d.ts +0 -13
- package/dist/src/config/lexicons/overlay-loader.d.ts.map +1 -1
- package/dist/src/config/lexicons/overlay-loader.js +0 -18
- package/dist/src/config/lexicons/overlay-loader.js.map +1 -1
- package/dist/src/config/lexicons/types.d.ts +0 -3
- package/dist/src/config/lexicons/types.d.ts.map +1 -1
- package/dist/src/config/lexicons/types.js.map +1 -1
- package/dist/src/core/canonical-decimal.d.ts +3 -0
- package/dist/src/core/canonical-decimal.d.ts.map +1 -0
- package/dist/src/core/canonical-decimal.js +19 -0
- package/dist/src/core/canonical-decimal.js.map +1 -0
- package/dist/src/core/canonical-json.d.ts +59 -0
- package/dist/src/core/canonical-json.d.ts.map +1 -0
- package/dist/src/core/canonical-json.js +250 -0
- package/dist/src/core/canonical-json.js.map +1 -0
- package/dist/src/core/core-ir-v2.generated.d.ts +807 -0
- package/dist/src/core/core-ir-v2.generated.d.ts.map +1 -0
- package/dist/src/core/core-ir-v2.generated.js +6 -0
- package/dist/src/core/core-ir-v2.generated.js.map +1 -0
- package/dist/src/core/core-ir-v2.schema.generated.d.ts +6 -0
- package/dist/src/core/core-ir-v2.schema.generated.d.ts.map +1 -0
- package/dist/src/core/core-ir-v2.schema.generated.js +2636 -0
- package/dist/src/core/core-ir-v2.schema.generated.js.map +1 -0
- package/dist/src/core/core_ir.d.ts +27 -11
- package/dist/src/core/core_ir.d.ts.map +1 -1
- package/dist/src/core/core_ir.js +118 -63
- package/dist/src/core/core_ir.js.map +1 -1
- package/dist/src/core/index.d.ts +4 -3
- package/dist/src/core/index.d.ts.map +1 -1
- package/dist/src/core/index.js +3 -2
- package/dist/src/core/index.js.map +1 -1
- package/dist/src/core/inferred_fields.d.ts +9 -11
- package/dist/src/core/inferred_fields.d.ts.map +1 -1
- package/dist/src/core/inferred_fields.js +7 -28
- package/dist/src/core/inferred_fields.js.map +1 -1
- package/dist/src/core/interpreter.js +16 -35
- package/dist/src/core/interpreter.js.map +1 -1
- package/dist/src/core/lambda-captures.d.ts +14 -0
- package/dist/src/core/lambda-captures.d.ts.map +1 -0
- package/dist/src/core/lambda-captures.js +128 -0
- package/dist/src/core/lambda-captures.js.map +1 -0
- package/dist/src/core/pretty_core.d.ts.map +1 -1
- package/dist/src/core/pretty_core.js +6 -10
- package/dist/src/core/pretty_core.js.map +1 -1
- package/dist/src/core/read-core-ir.d.ts +15 -0
- package/dist/src/core/read-core-ir.d.ts.map +1 -0
- package/dist/src/core/read-core-ir.js +69 -0
- package/dist/src/core/read-core-ir.js.map +1 -0
- package/dist/src/core/resolution-mark.d.ts +3 -4
- package/dist/src/core/resolution-mark.d.ts.map +1 -1
- package/dist/src/core/resolution-mark.js +2 -3
- package/dist/src/core/resolution-mark.js.map +1 -1
- package/dist/src/core/resolve-typed-references.d.ts.map +1 -1
- package/dist/src/core/resolve-typed-references.js +11 -27
- package/dist/src/core/resolve-typed-references.js.map +1 -1
- package/dist/src/core/serialize-core-ir.d.ts +13 -0
- package/dist/src/core/serialize-core-ir.d.ts.map +1 -0
- package/dist/src/core/serialize-core-ir.js +125 -0
- package/dist/src/core/serialize-core-ir.js.map +1 -0
- package/dist/src/core/visitor.d.ts.map +1 -1
- package/dist/src/core/visitor.js +4 -1
- package/dist/src/core/visitor.js.map +1 -1
- package/dist/src/diagnostics/error_codes.d.ts +2 -0
- package/dist/src/diagnostics/error_codes.d.ts.map +1 -1
- package/dist/src/diagnostics/error_codes.js +16 -0
- package/dist/src/diagnostics/error_codes.js.map +1 -1
- package/dist/src/effects/declared-effects.d.ts +17 -0
- package/dist/src/effects/declared-effects.d.ts.map +1 -0
- package/dist/src/effects/declared-effects.js +27 -0
- package/dist/src/effects/declared-effects.js.map +1 -0
- package/dist/src/effects/effect_inference.d.ts.map +1 -1
- package/dist/src/effects/effect_inference.js +14 -10
- package/dist/src/effects/effect_inference.js.map +1 -1
- package/dist/src/effects/effect_inference_browser.d.ts.map +1 -1
- package/dist/src/effects/effect_inference_browser.js +14 -9
- package/dist/src/effects/effect_inference_browser.js.map +1 -1
- package/dist/src/frontend/keyword-translator.d.ts.map +1 -1
- package/dist/src/frontend/keyword-translator.js +3 -0
- package/dist/src/frontend/keyword-translator.js.map +1 -1
- package/dist/src/frontend/lexer.d.ts.map +1 -1
- package/dist/src/frontend/lexer.js +7 -3
- package/dist/src/frontend/lexer.js.map +1 -1
- package/dist/src/frontend/resolve-declarations.d.ts.map +1 -1
- package/dist/src/frontend/resolve-declarations.js +3 -23
- package/dist/src/frontend/resolve-declarations.js.map +1 -1
- package/dist/src/governance/input-refs.js +5 -8
- package/dist/src/governance/input-refs.js.map +1 -1
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/jvm/emitter.d.ts.map +1 -1
- package/dist/src/jvm/emitter.js +20 -29
- package/dist/src/jvm/emitter.js.map +1 -1
- package/dist/src/lower_to_core.d.ts +2 -19
- package/dist/src/lower_to_core.d.ts.map +1 -1
- package/dist/src/lower_to_core.js +194 -384
- package/dist/src/lower_to_core.js.map +1 -1
- package/dist/src/lsp/pii_diagnostics.d.ts.map +1 -1
- package/dist/src/lsp/pii_diagnostics.js +3 -8
- package/dist/src/lsp/pii_diagnostics.js.map +1 -1
- package/dist/src/mapping/mapping-ir.d.ts +3 -3
- package/dist/src/mapping/mapping-ir.js +3 -3
- package/dist/src/nodeid/node-id-map.d.ts +6 -15
- package/dist/src/nodeid/node-id-map.d.ts.map +1 -1
- package/dist/src/nodeid/node-id-map.js +6 -15
- package/dist/src/nodeid/node-id-map.js.map +1 -1
- package/dist/src/parser/constraint-parser.js +25 -6
- package/dist/src/parser/constraint-parser.js.map +1 -1
- package/dist/src/parser/decl-parser.d.ts.map +1 -1
- package/dist/src/parser/decl-parser.js +30 -59
- package/dist/src/parser/decl-parser.js.map +1 -1
- package/dist/src/parser/expr-stmt-parser.d.ts.map +1 -1
- package/dist/src/parser/expr-stmt-parser.js +17 -10
- package/dist/src/parser/expr-stmt-parser.js.map +1 -1
- package/dist/src/parser/field-variant-parser.d.ts.map +1 -1
- package/dist/src/parser/field-variant-parser.js +9 -3
- package/dist/src/parser/field-variant-parser.js.map +1 -1
- package/dist/src/parser/naming-rules.d.ts +19 -0
- package/dist/src/parser/naming-rules.d.ts.map +1 -0
- package/dist/src/parser/naming-rules.generated.d.ts +7 -0
- package/dist/src/parser/naming-rules.generated.d.ts.map +1 -0
- package/dist/src/parser/naming-rules.generated.js +392 -0
- package/dist/src/parser/naming-rules.generated.js.map +1 -0
- package/dist/src/parser/naming-rules.js +2 -0
- package/dist/src/parser/naming-rules.js.map +1 -0
- package/dist/src/parser/parse-issue.d.ts +2 -0
- package/dist/src/parser/parse-issue.d.ts.map +1 -1
- package/dist/src/parser/parse-issue.js +2 -0
- package/dist/src/parser/parse-issue.js.map +1 -1
- package/dist/src/parser/type-inference.d.ts +29 -70
- package/dist/src/parser/type-inference.d.ts.map +1 -1
- package/dist/src/parser/type-inference.js +82 -212
- package/dist/src/parser/type-inference.js.map +1 -1
- package/dist/src/parser/type-parser.d.ts +1 -1
- package/dist/src/parser/type-parser.d.ts.map +1 -1
- package/dist/src/parser/type-parser.js +31 -21
- package/dist/src/parser/type-parser.js.map +1 -1
- package/dist/src/parser.d.ts.map +1 -1
- package/dist/src/parser.js +2 -5
- package/dist/src/parser.js.map +1 -1
- package/dist/src/stability/stability_gate.d.ts +1 -1
- package/dist/src/stability/stability_gate.d.ts.map +1 -1
- package/dist/src/stability/stability_gate.js +2 -26
- package/dist/src/stability/stability_gate.js.map +1 -1
- package/dist/src/typecheck/async.d.ts.map +1 -1
- package/dist/src/typecheck/async.js +4 -1
- package/dist/src/typecheck/async.js.map +1 -1
- package/dist/src/typecheck/browser.d.ts.map +1 -1
- package/dist/src/typecheck/browser.js +4 -3
- package/dist/src/typecheck/browser.js.map +1 -1
- package/dist/src/typecheck/capabilities.d.ts.map +1 -1
- package/dist/src/typecheck/capabilities.js +3 -2
- package/dist/src/typecheck/capabilities.js.map +1 -1
- package/dist/src/typecheck/context.d.ts +5 -5
- package/dist/src/typecheck/context.d.ts.map +1 -1
- package/dist/src/typecheck/context.js.map +1 -1
- package/dist/src/typecheck/diagnostics.d.ts +2 -2
- package/dist/src/typecheck/diagnostics.d.ts.map +1 -1
- package/dist/src/typecheck/diagnostics.js.map +1 -1
- package/dist/src/typecheck/effects.js +18 -11
- package/dist/src/typecheck/effects.js.map +1 -1
- package/dist/src/typecheck/expression.d.ts +4 -4
- package/dist/src/typecheck/expression.d.ts.map +1 -1
- package/dist/src/typecheck/expression.js +1 -1
- package/dist/src/typecheck/expression.js.map +1 -1
- package/dist/src/typecheck/generics.d.ts +2 -2
- package/dist/src/typecheck/generics.d.ts.map +1 -1
- package/dist/src/typecheck/generics.js +23 -12
- package/dist/src/typecheck/generics.js.map +1 -1
- package/dist/src/typecheck/governance.d.ts +1 -1
- package/dist/src/typecheck/governance.d.ts.map +1 -1
- package/dist/src/typecheck/governance.js +1 -1
- package/dist/src/typecheck/governance.js.map +1 -1
- package/dist/src/typecheck/module.d.ts.map +1 -1
- package/dist/src/typecheck/module.js +7 -6
- package/dist/src/typecheck/module.js.map +1 -1
- package/dist/src/typecheck/pattern.d.ts +2 -2
- package/dist/src/typecheck/pattern.d.ts.map +1 -1
- package/dist/src/typecheck/pattern.js +12 -46
- package/dist/src/typecheck/pattern.js.map +1 -1
- package/dist/src/typecheck/pure.d.ts +19 -19
- package/dist/src/typecheck/pure.d.ts.map +1 -1
- package/dist/src/typecheck/pure.js.map +1 -1
- package/dist/src/typecheck/statement.d.ts +6 -6
- package/dist/src/typecheck/statement.d.ts.map +1 -1
- package/dist/src/typecheck/statement.js +17 -20
- package/dist/src/typecheck/statement.js.map +1 -1
- package/dist/src/typecheck/symbol_table.d.ts +2 -2
- package/dist/src/typecheck/symbol_table.d.ts.map +1 -1
- package/dist/src/typecheck/symbol_table.js.map +1 -1
- package/dist/src/typecheck/type_system.d.ts +4 -4
- package/dist/src/typecheck/type_system.d.ts.map +1 -1
- package/dist/src/typecheck/type_system.js +1 -1
- package/dist/src/typecheck/type_system.js.map +1 -1
- package/dist/src/typecheck/workflow.d.ts +3 -3
- package/dist/src/typecheck/workflow.d.ts.map +1 -1
- package/dist/src/typecheck/workflow.js.map +1 -1
- package/dist/src/typecheck-pii.d.ts.map +1 -1
- package/dist/src/typecheck-pii.js +2 -13
- package/dist/src/typecheck-pii.js.map +1 -1
- package/dist/src/types/type-inference.d.ts +1 -13
- package/dist/src/types/type-inference.d.ts.map +1 -1
- package/dist/src/types/type-inference.js +1 -2
- package/dist/src/types/type-inference.js.map +1 -1
- package/dist/src/types.d.ts +160 -172
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js.map +1 -1
- package/dist/src/version.d.ts +3 -3
- package/dist/src/version.js +3 -3
- package/dist/test/helpers/core-ir-v2.d.ts +5 -0
- package/dist/test/helpers/core-ir-v2.d.ts.map +1 -0
- package/dist/test/helpers/core-ir-v2.js +123 -0
- package/dist/test/helpers/core-ir-v2.js.map +1 -0
- package/dist/test/helpers/locales-core-ir.d.ts +7 -0
- package/dist/test/helpers/locales-core-ir.d.ts.map +1 -0
- package/dist/test/helpers/locales-core-ir.js +15 -0
- package/dist/test/helpers/locales-core-ir.js.map +1 -0
- package/dist/test/helpers/locales-type-inference.d.ts +6 -0
- package/dist/test/helpers/locales-type-inference.d.ts.map +1 -0
- package/dist/test/helpers/locales-type-inference.js +14 -0
- package/dist/test/helpers/locales-type-inference.js.map +1 -0
- package/dist/test/helpers/test-factories.d.ts +5 -5
- package/dist/test/helpers/test-factories.d.ts.map +1 -1
- package/dist/test/helpers/test-factories.js +9 -8
- package/dist/test/helpers/test-factories.js.map +1 -1
- package/dist/test/integration/compliance/compliance-smoke.test.js +1 -2
- package/dist/test/integration/compliance/compliance-smoke.test.js.map +1 -1
- package/dist/test/integration/pipeline/pipeline.test.js +1 -1
- package/dist/test/integration/pipeline/pipeline.test.js.map +1 -1
- package/dist/test/integration/vocabulary-resolution.test.js +1 -1
- package/dist/test/integration/vocabulary-resolution.test.js.map +1 -1
- package/dist/test/regression/type-checker-golden.test.js +1 -1
- package/dist/test/regression/type-checker-golden.test.js.map +1 -1
- package/dist/test/type-checker/pii-propagation.test.js +7 -6
- package/dist/test/type-checker/pii-propagation.test.js.map +1 -1
- package/dist/test/types/core-ir-v2.test-d.d.ts +28 -0
- package/dist/test/types/core-ir-v2.test-d.d.ts.map +1 -0
- package/dist/test/types/core-ir-v2.test-d.js +5 -0
- package/dist/test/types/core-ir-v2.test-d.js.map +1 -0
- package/dist/test/unit/browser/typecheck-browser-pii-failure.test.js +4 -3
- package/dist/test/unit/browser/typecheck-browser-pii-failure.test.js.map +1 -1
- package/dist/test/unit/canonicalizer/article-declaration-names.test.js +1 -1
- package/dist/test/unit/canonicalizer/article-declaration-names.test.js.map +1 -1
- package/dist/test/unit/canonicalizer/chinese-function-syntax.test.js +2 -1
- package/dist/test/unit/canonicalizer/chinese-function-syntax.test.js.map +1 -1
- package/dist/test/unit/core/canonical-json.test.d.ts +2 -0
- package/dist/test/unit/core/canonical-json.test.d.ts.map +1 -0
- package/dist/test/unit/core/canonical-json.test.js +38 -0
- package/dist/test/unit/core/canonical-json.test.js.map +1 -0
- package/dist/test/unit/core/caseless-pattern-name.test.js +6 -8
- package/dist/test/unit/core/caseless-pattern-name.test.js.map +1 -1
- package/dist/test/unit/core/core-ir-conformance.test.d.ts +2 -0
- package/dist/test/unit/core/core-ir-conformance.test.d.ts.map +1 -0
- package/dist/test/unit/core/core-ir-conformance.test.js +39 -0
- package/dist/test/unit/core/core-ir-conformance.test.js.map +1 -0
- package/dist/test/unit/core/core-ir-schema-parity.test.d.ts +2 -0
- package/dist/test/unit/core/core-ir-schema-parity.test.d.ts.map +1 -0
- package/dist/test/unit/core/core-ir-schema-parity.test.js +25 -0
- package/dist/test/unit/core/core-ir-schema-parity.test.js.map +1 -0
- package/dist/test/unit/core/core-ir-v2-outputs.test.d.ts +2 -0
- package/dist/test/unit/core/core-ir-v2-outputs.test.d.ts.map +1 -0
- package/dist/test/unit/core/core-ir-v2-outputs.test.js +128 -0
- package/dist/test/unit/core/core-ir-v2-outputs.test.js.map +1 -0
- package/dist/test/unit/core/read-core-ir.test.d.ts +2 -0
- package/dist/test/unit/core/read-core-ir.test.d.ts.map +1 -0
- package/dist/test/unit/core/read-core-ir.test.js +129 -0
- package/dist/test/unit/core/read-core-ir.test.js.map +1 -0
- package/dist/test/unit/core/resolve-typed-references.test.js +22 -18
- package/dist/test/unit/core/resolve-typed-references.test.js.map +1 -1
- package/dist/test/unit/diagnostics/lowering-diagnostics-parity.test.js +5 -5
- package/dist/test/unit/diagnostics/lowering-diagnostics-parity.test.js.map +1 -1
- package/dist/test/unit/diagnostics/parse-diagnostics-parity.test.js +3 -2
- package/dist/test/unit/diagnostics/parse-diagnostics-parity.test.js.map +1 -1
- package/dist/test/unit/effect/effect-caps-explicit-only.test.d.ts +2 -0
- package/dist/test/unit/effect/effect-caps-explicit-only.test.d.ts.map +1 -0
- package/dist/test/unit/effect/effect-caps-explicit-only.test.js +73 -0
- package/dist/test/unit/effect/effect-caps-explicit-only.test.js.map +1 -0
- package/dist/test/unit/effect/effect-inference.test.js +17 -13
- package/dist/test/unit/effect/effect-inference.test.js.map +1 -1
- package/dist/test/unit/emitter/emitter.test.js +47 -46
- package/dist/test/unit/emitter/emitter.test.js.map +1 -1
- package/dist/test/unit/formatter-corpus-roundtrip.test.js +5 -1
- package/dist/test/unit/formatter-corpus-roundtrip.test.js.map +1 -1
- package/dist/test/unit/formatter-roundtrip.test.js +5 -4
- package/dist/test/unit/formatter-roundtrip.test.js.map +1 -1
- package/dist/test/unit/frontend/resolve-declarations.test.js +13 -14
- package/dist/test/unit/frontend/resolve-declarations.test.js.map +1 -1
- package/dist/test/unit/governance/governance-check.test.js +1 -1
- package/dist/test/unit/governance/governance-check.test.js.map +1 -1
- package/dist/test/unit/governance/input-refs-parity.test.js +1 -1
- package/dist/test/unit/governance/input-refs-parity.test.js.map +1 -1
- package/dist/test/unit/governance/input-refs.test.js +2 -2
- package/dist/test/unit/governance/input-refs.test.js.map +1 -1
- package/dist/test/unit/governance/no-profile-ir-unchanged.test.js +6 -6
- package/dist/test/unit/governance/no-profile-ir-unchanged.test.js.map +1 -1
- package/dist/test/unit/interpreter/interpreter.test.js +23 -21
- package/dist/test/unit/interpreter/interpreter.test.js.map +1 -1
- package/dist/test/unit/interpreter/scope-writeback.test.js +28 -27
- package/dist/test/unit/interpreter/scope-writeback.test.js.map +1 -1
- package/dist/test/unit/keyword-aliases.test.js +1 -1
- package/dist/test/unit/lambda-capture-parity.test.js +43 -14
- package/dist/test/unit/lambda-capture-parity.test.js.map +1 -1
- package/dist/test/unit/lexicons/fallback-lexicon.test.d.ts +1 -1
- package/dist/test/unit/lexicons/fallback-lexicon.test.js +2 -4
- package/dist/test/unit/lexicons/fallback-lexicon.test.js.map +1 -1
- package/dist/test/unit/lowering/core-ir-v2.test.d.ts +2 -0
- package/dist/test/unit/lowering/core-ir-v2.test.d.ts.map +1 -0
- package/dist/test/unit/lowering/core-ir-v2.test.js +253 -0
- package/dist/test/unit/lowering/core-ir-v2.test.js.map +1 -0
- package/dist/test/unit/lowering/lowering.test.js +19 -14
- package/dist/test/unit/lowering/lowering.test.js.map +1 -1
- package/dist/test/unit/lsp/pii-diagnostics.test.js +33 -30
- package/dist/test/unit/lsp/pii-diagnostics.test.js.map +1 -1
- package/dist/test/unit/lsp/utils.test.js +5 -4
- package/dist/test/unit/lsp/utils.test.js.map +1 -1
- package/dist/test/unit/parser/effect-unknown-name.test.js +7 -7
- package/dist/test/unit/parser/effect-unknown-name.test.js.map +1 -1
- package/dist/test/unit/parser/entry-annotations.test.js +2 -1
- package/dist/test/unit/parser/entry-annotations.test.js.map +1 -1
- package/dist/test/unit/parser/func-type.test.js +3 -3
- package/dist/test/unit/parser/func-type.test.js.map +1 -1
- package/dist/test/unit/parser/governance-sugar.test.js +4 -4
- package/dist/test/unit/parser/governance-sugar.test.js.map +1 -1
- package/dist/test/unit/parser/inferred-type-anchor.test.d.ts +2 -0
- package/dist/test/unit/parser/inferred-type-anchor.test.d.ts.map +1 -0
- package/dist/test/unit/parser/inferred-type-anchor.test.js +83 -0
- package/dist/test/unit/parser/inferred-type-anchor.test.js.map +1 -0
- package/dist/test/unit/parser/naming-rules-parity.test.d.ts +2 -0
- package/dist/test/unit/parser/naming-rules-parity.test.d.ts.map +1 -0
- package/dist/test/unit/parser/naming-rules-parity.test.js +26 -0
- package/dist/test/unit/parser/naming-rules-parity.test.js.map +1 -0
- package/dist/test/unit/parser/parser.test.js +11 -32
- package/dist/test/unit/parser/parser.test.js.map +1 -1
- package/dist/test/unit/parser/type-inference-vectors.test.d.ts +2 -0
- package/dist/test/unit/parser/type-inference-vectors.test.d.ts.map +1 -0
- package/dist/test/unit/parser/type-inference-vectors.test.js +40 -0
- package/dist/test/unit/parser/type-inference-vectors.test.js.map +1 -0
- package/dist/test/unit/parser/type-inference.test.d.ts +2 -1
- package/dist/test/unit/parser/type-inference.test.d.ts.map +1 -1
- package/dist/test/unit/parser/type-inference.test.js +93 -159
- package/dist/test/unit/parser/type-inference.test.js.map +1 -1
- package/dist/test/unit/regex-guard.test.js +6 -6
- package/dist/test/unit/regex-guard.test.js.map +1 -1
- package/dist/test/unit/rule-call-checks.test.js +2 -1
- package/dist/test/unit/rule-call-checks.test.js.map +1 -1
- package/dist/test/unit/typecheck/async-discipline-extended.test.js +11 -10
- package/dist/test/unit/typecheck/async-discipline-extended.test.js.map +1 -1
- package/dist/test/unit/typecheck/effect-prefix-injection.test.js +3 -2
- package/dist/test/unit/typecheck/effect-prefix-injection.test.js.map +1 -1
- package/dist/test/unit/typecheck/function-return-inference.test.js +33 -32
- package/dist/test/unit/typecheck/function-return-inference.test.js.map +1 -1
- package/dist/test/unit/typecheck/pii-cross-runtime-conformance.test.js +5 -4
- package/dist/test/unit/typecheck/pii-cross-runtime-conformance.test.js.map +1 -1
- package/dist/test/unit/typecheck/regression-fixes.test.js +110 -112
- package/dist/test/unit/typecheck/regression-fixes.test.js.map +1 -1
- package/dist/test/unit/typecheck/symbol-table.test.js +3 -2
- package/dist/test/unit/typecheck/symbol-table.test.js.map +1 -1
- package/dist/test/unit/typecheck/type-system-extended.test.js +6 -5
- package/dist/test/unit/typecheck/type-system-extended.test.js.map +1 -1
- package/dist/test/unit/typecheck/type-system.test.js +20 -19
- package/dist/test/unit/typecheck/type-system.test.js.map +1 -1
- package/dist/test/unit/typecheck/typecheck-advanced.test.js +19 -18
- package/dist/test/unit/typecheck/typecheck-advanced.test.js.map +1 -1
- package/dist/test/unit/typecheck/untyped-field-dynamic.test.js +6 -4
- package/dist/test/unit/typecheck/untyped-field-dynamic.test.js.map +1 -1
- package/dist/test/unit/version.test.js +3 -3
- package/package.json +4 -3
- package/dist/src/config/lexicons/type-inference-rules.d.ts +0 -19
- package/dist/src/config/lexicons/type-inference-rules.d.ts.map +0 -1
- package/dist/src/config/lexicons/type-inference-rules.js +0 -63
- package/dist/src/config/lexicons/type-inference-rules.js.map +0 -1
- package/dist/src/core/core_ir_json.d.ts +0 -62
- package/dist/src/core/core_ir_json.d.ts.map +0 -1
- package/dist/src/core/core_ir_json.js +0 -81
- package/dist/src/core/core_ir_json.js.map +0 -1
- package/dist/test/unit/core_ir_json/core_ir_json.test.d.ts +0 -2
- package/dist/test/unit/core_ir_json/core_ir_json.test.d.ts.map +0 -1
- package/dist/test/unit/core_ir_json/core_ir_json.test.js +0 -218
- package/dist/test/unit/core_ir_json/core_ir_json.test.js.map +0 -1
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core IR v2 的规范序列化出口与不变式检查(ADR 0055 §3、§5)。
|
|
3
|
+
*
|
|
4
|
+
* - `serializeCoreIr`:输出 core `CanonicalJson` 规则下的字节(键按码点升序、数组保序、
|
|
5
|
+
* null 显式输出、只允许 safe integer)。凡是给持久化、哈希或 parity 用的 IR 都经这里产出。
|
|
6
|
+
* 规范十进制串(Double.value、Range.min/max)由 lowering 负责,这里只原样转义。
|
|
7
|
+
* - `validateCoreIrInvariants`:schema 表达不了的约束,规则与 locales `core-ir/README.md`
|
|
8
|
+
* 「不变式」一节、`build.gradle.kts` 的参考实现 `coreIrInvariantProblems` 逐条对应。
|
|
9
|
+
*
|
|
10
|
+
* 本模块是纯函数,不依赖 ajv 与 Node API,可进浏览器入口;严格读入见 `read-core-ir.ts`。
|
|
11
|
+
*/
|
|
12
|
+
import { canonicalJson } from './canonical-json.js';
|
|
13
|
+
/** 授权型具体效应名(schema `$defs/BuiltinEffect`)。 */
|
|
14
|
+
const BUILTIN_EFFECTS = new Set(['io', 'cpu']);
|
|
15
|
+
/** 保留效应名(schema `$defs/ReservedEffectName`),效应参数不得与其大小写不敏感地相同。 */
|
|
16
|
+
const RESERVED_EFFECT_NAMES = new Set(['io', 'cpu', 'pure', 'async']);
|
|
17
|
+
/** 「返回 Verdict」判定用的调用名(与 core `GovernanceChecker.returnsVerdict` 同义)。 */
|
|
18
|
+
const VERDICT_CALLS = new Set([
|
|
19
|
+
'Verdict.allow',
|
|
20
|
+
'Verdict.deny',
|
|
21
|
+
'Verdict.require_approval',
|
|
22
|
+
'Verdict.escalate',
|
|
23
|
+
]);
|
|
24
|
+
/** 把 Core IR v2 模块序列化为规范字节。遇到 undefined、非 safe integer 等非规范值即抛 CanonicalJsonError。 */
|
|
25
|
+
export function serializeCoreIr(m) {
|
|
26
|
+
return canonicalJson(m);
|
|
27
|
+
}
|
|
28
|
+
/** 检查 schema 之外的不变式;输入须已通过 schema。结果按 (path, code) 排序。 */
|
|
29
|
+
export function validateCoreIrInvariants(m) {
|
|
30
|
+
const out = [];
|
|
31
|
+
collectDuplicateArgs(m, '', out);
|
|
32
|
+
const hasProfile = m.profile !== null;
|
|
33
|
+
m.decls.forEach((decl, i) => {
|
|
34
|
+
if (decl.kind === 'Func')
|
|
35
|
+
out.push(...funcProblems(decl, `/decls/${i}`, hasProfile));
|
|
36
|
+
});
|
|
37
|
+
return out.sort(compareProblems);
|
|
38
|
+
}
|
|
39
|
+
function compareProblems(a, b) {
|
|
40
|
+
if (a.path !== b.path)
|
|
41
|
+
return a.path < b.path ? -1 : 1;
|
|
42
|
+
if (a.code !== b.code)
|
|
43
|
+
return a.code < b.code ? -1 : 1;
|
|
44
|
+
return 0;
|
|
45
|
+
}
|
|
46
|
+
/** 同一注解内参数名重复:报后出现的那个参数(树中任何位置的 annotations / retAnnotations)。 */
|
|
47
|
+
function collectDuplicateArgs(node, path, out) {
|
|
48
|
+
if (Array.isArray(node)) {
|
|
49
|
+
node.forEach((child, i) => collectDuplicateArgs(child, `${path}/${i}`, out));
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
if (node === null || typeof node !== 'object')
|
|
53
|
+
return;
|
|
54
|
+
for (const [key, child] of Object.entries(node)) {
|
|
55
|
+
if ((key === 'annotations' || key === 'retAnnotations') && Array.isArray(child)) {
|
|
56
|
+
child.forEach((ann, j) => duplicateArgsOf(ann, `${path}/${key}/${j}`, out));
|
|
57
|
+
}
|
|
58
|
+
collectDuplicateArgs(child, `${path}/${key}`, out);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
function duplicateArgsOf(annotation, path, out) {
|
|
62
|
+
const args = annotation.args;
|
|
63
|
+
if (!Array.isArray(args))
|
|
64
|
+
return;
|
|
65
|
+
const seen = new Set();
|
|
66
|
+
args.forEach((arg, k) => {
|
|
67
|
+
const name = String(arg.name);
|
|
68
|
+
if (seen.has(name))
|
|
69
|
+
out.push({ path: `${path}/args/${k}`, code: 'dup-annotation-arg' });
|
|
70
|
+
seen.add(name);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
function funcProblems(func, path, hasProfile) {
|
|
74
|
+
const out = [];
|
|
75
|
+
func.effectParams.forEach((p, k) => {
|
|
76
|
+
if (RESERVED_EFFECT_NAMES.has(asciiLower(p))) {
|
|
77
|
+
out.push({ path: `${path}/effectParams/${k}`, code: 'effect-param-shadows-builtin' });
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
// effects 按首次声明顺序去重:重复条目报后出现的那个;非 io / cpu 的条目必须是已声明的效应变量
|
|
81
|
+
const seen = new Set();
|
|
82
|
+
func.effects.forEach((name, k) => {
|
|
83
|
+
if (seen.has(name))
|
|
84
|
+
out.push({ path: `${path}/effects/${k}`, code: 'duplicate-effect' });
|
|
85
|
+
else if (!BUILTIN_EFFECTS.has(name) && !func.effectParams.includes(name)) {
|
|
86
|
+
out.push({ path: `${path}/effects/${k}`, code: 'undeclared-effect-var' });
|
|
87
|
+
}
|
|
88
|
+
seen.add(name);
|
|
89
|
+
});
|
|
90
|
+
// ADR 0055 #12:档案模块中返回 Verdict 的规则必须是数组,其余函数必须为 null
|
|
91
|
+
if (Array.isArray(func.inputRefs) !== (hasProfile && returnsVerdict(func))) {
|
|
92
|
+
out.push({ path: `${path}/inputRefs`, code: 'input-refs-state' });
|
|
93
|
+
}
|
|
94
|
+
return out;
|
|
95
|
+
}
|
|
96
|
+
/** 按 ASCII 大小写不敏感比较所用的小写化(保留效应名都是 ASCII)。 */
|
|
97
|
+
function asciiLower(s) {
|
|
98
|
+
return s.replace(/[A-Z]/g, ch => String.fromCharCode(ch.charCodeAt(0) + 32));
|
|
99
|
+
}
|
|
100
|
+
/** 「返回 Verdict」:ret 是 TypeName Verdict,或可达的某个 Return 是 Verdict.* 调用。 */
|
|
101
|
+
export function returnsVerdict(func) {
|
|
102
|
+
if (func.ret.kind === 'TypeName' && func.ret.name === 'Verdict')
|
|
103
|
+
return true;
|
|
104
|
+
return anyReturnIsVerdictCall(func.body);
|
|
105
|
+
}
|
|
106
|
+
function anyReturnIsVerdictCall(stmt) {
|
|
107
|
+
if (stmt === null)
|
|
108
|
+
return false;
|
|
109
|
+
switch (stmt.kind) {
|
|
110
|
+
case 'Return': {
|
|
111
|
+
const e = stmt.expr;
|
|
112
|
+
return e.kind === 'Call' && e.target.kind === 'Name' && VERDICT_CALLS.has(e.target.name);
|
|
113
|
+
}
|
|
114
|
+
case 'Block':
|
|
115
|
+
case 'Scope':
|
|
116
|
+
return stmt.statements.some(anyReturnIsVerdictCall);
|
|
117
|
+
case 'If':
|
|
118
|
+
return anyReturnIsVerdictCall(stmt.thenBlock) || anyReturnIsVerdictCall(stmt.elseBlock);
|
|
119
|
+
case 'Match':
|
|
120
|
+
return stmt.cases.some(c => anyReturnIsVerdictCall(c.body));
|
|
121
|
+
default:
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=serialize-core-ir.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serialize-core-ir.js","sourceRoot":"","sources":["../../../src/core/serialize-core-ir.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visitor.d.ts","sourceRoot":"","sources":["../../../src/core/visitor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,aAAa;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW;IACX,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,YAAY;IACZ,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CAIrD;AAED,MAAM,WAAW,WAAW,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI;IAExC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IACzC,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IAGnD,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IACvC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IAG/C,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IACjD,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IAC5C,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;CACvC;AAED;;;;;GAKG;AACH,qBAAa,kBAAkB,CAAC,GAAG,GAAG,cAAc,CAAE,YAAW,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC;IAE9E,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IACxC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IACrD,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAI3C,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAkBrD,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAIzC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"visitor.d.ts","sourceRoot":"","sources":["../../../src/core/visitor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAExC;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,aAAa;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW;IACX,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;IACpB,YAAY;IACZ,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CAIrD;AAED,MAAM,WAAW,WAAW,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI;IAExC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IACzC,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IAGnD,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IACvC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IAG/C,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IACjD,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;IAC5C,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC;CACvC;AAED;;;;;GAKG;AACH,qBAAa,kBAAkB,CAAC,GAAG,GAAG,cAAc,CAAE,YAAW,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC;IAE9E,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IACxC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IACrD,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAI3C,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAkBrD,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAIzC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IA2CjD,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;CAiDpD"}
|
package/dist/src/core/visitor.js
CHANGED
|
@@ -67,7 +67,10 @@ export class DefaultCoreVisitor {
|
|
|
67
67
|
return;
|
|
68
68
|
case 'Scope':
|
|
69
69
|
// Scope 语义为嵌套 Block
|
|
70
|
-
this.visitBlock({ kind: 'Block'
|
|
70
|
+
this.visitBlock({ ...s, kind: 'Block' }, ctx);
|
|
71
|
+
return;
|
|
72
|
+
case 'Block':
|
|
73
|
+
this.visitBlock(s, ctx);
|
|
71
74
|
return;
|
|
72
75
|
case 'Start':
|
|
73
76
|
this.visitExpression(s.expr, ctx);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../../src/core/visitor.ts"],"names":[],"mappings":"AAyBA;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO;QACL,IAAI,EAAE,IAAI,GAAG,EAAE;KAChB,CAAC;AACJ,CAAC;AAiBD;;;;;GAKG;AACH,MAAM,OAAO,kBAAkB;IAI7B,WAAW,CAAC,CAAc,EAAE,GAAQ;QAClC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK;YAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,gBAAgB,CAAC,CAAmB,EAAE,GAAQ;QAC5C,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,QAAQ;gBACX,OAAO;YACT,KAAK,MAAM;gBACT,oBAAoB;gBACpB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE;oBAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAC9D,OAAO;YACT,KAAK,MAAM;gBACT,OAAO;YACT,KAAK,MAAM;gBACT,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM;oBAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACxD,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC7B,IAAI,CAAC,CAAC,IAAI;oBAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACzC,OAAO;QACX,CAAC;IACH,CAAC;IAED,UAAU,CAAC,CAAa,EAAE,GAAQ;QAChC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU;YAAE,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED,cAAc,CAAC,CAAiB,EAAE,GAAQ;QACxC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,KAAK,CAAC;YACX,KAAK,KAAK,CAAC;YACX,KAAK,QAAQ;gBACX,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAClC,OAAO;YACT,KAAK,IAAI;gBACP,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAClC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAClC,IAAI,CAAC,CAAC,SAAS;oBAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACnD,OAAO;YACT,KAAK,OAAO;gBACV,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBAClC,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;oBAC3B,IAAI,IAAI,CAAC,OAAO;wBAAE,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBACzD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;wBAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;;wBACtE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACvC,CAAC;gBACD,OAAO;YACT,KAAK,OAAO;gBACV,oBAAoB;gBACpB,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../../src/core/visitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,6 +74,7 @@ export declare const enum ErrorCode {
|
|
|
74
74
|
EFFECT_VAR_UNDECLARED = "E210",
|
|
75
75
|
EFFECT_VAR_UNRESOLVED = "E211",
|
|
76
76
|
EFF_INFER_UNKNOWN_BUILTIN = "E212",
|
|
77
|
+
EFFECT_PARAM_SHADOWS_BUILTIN = "E213",
|
|
77
78
|
CAPABILITY_NOT_ALLOWED = "E300",
|
|
78
79
|
EFF_CAP_MISSING = "E301",
|
|
79
80
|
EFF_CAP_SUPERFLUOUS = "E302",
|
|
@@ -122,6 +123,7 @@ export declare const enum ErrorCode {
|
|
|
122
123
|
AMBIGUOUS_FIELD = "E805",
|
|
123
124
|
AMBIGUOUS_PATTERN = "E806",
|
|
124
125
|
DUPLICATE_DECLARATION = "E807",
|
|
126
|
+
PARSE_DUPLICATE_ANNOTATION_ARG = "E900",
|
|
125
127
|
SHADOWED_VOCABULARY = "W800",
|
|
126
128
|
RESOLVED_WITHOUT_TYPE = "W801"
|
|
127
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error_codes.d.ts","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"error_codes.d.ts","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,6 +74,7 @@ export const ERROR_MESSAGES = {
|
|
|
74
74
|
["E210" /* ErrorCode.EFFECT_VAR_UNDECLARED */]: "Effect variable {var} undeclared",
|
|
75
75
|
["E211" /* ErrorCode.EFFECT_VAR_UNRESOLVED */]: "Effect variable {vars} could not be resolved to concrete effects",
|
|
76
76
|
["E212" /* ErrorCode.EFF_INFER_UNKNOWN_BUILTIN */]: "Effect of builtin '{builtin}' called by '{func}' is unknown; it is NOT assumed pure",
|
|
77
|
+
["E213" /* ErrorCode.EFFECT_PARAM_SHADOWS_BUILTIN */]: "Effect parameter {name} of '{func}' has the same name as a built-in effect",
|
|
77
78
|
["E300" /* ErrorCode.CAPABILITY_NOT_ALLOWED */]: "Function '{func}' requires {cap} capability but manifest for module '{module}' denies it.",
|
|
78
79
|
["E301" /* ErrorCode.EFF_CAP_MISSING */]: "Function '{func}' uses {cap} capability but header declares [{declared}].",
|
|
79
80
|
["E302" /* ErrorCode.EFF_CAP_SUPERFLUOUS */]: "Function '{func}' declares {cap} capability but it is not used.",
|
|
@@ -122,6 +123,7 @@ export const ERROR_MESSAGES = {
|
|
|
122
123
|
["E805" /* ErrorCode.AMBIGUOUS_FIELD */]: "Field '{written}' in {role} position is ambiguous between: {candidates}",
|
|
123
124
|
["E806" /* ErrorCode.AMBIGUOUS_PATTERN */]: "Pattern '{written}' in {role} position is ambiguous between: {candidates}",
|
|
124
125
|
["E807" /* ErrorCode.DUPLICATE_DECLARATION */]: "Duplicate declaration of '{written}' in {role} position",
|
|
126
|
+
["E900" /* ErrorCode.PARSE_DUPLICATE_ANNOTATION_ARG */]: "Annotation @{annotation} repeats the argument {name}",
|
|
125
127
|
["W800" /* ErrorCode.SHADOWED_VOCABULARY */]: "Declaration '{written}' in {role} position shadows a vocabulary entry",
|
|
126
128
|
["W801" /* ErrorCode.RESOLVED_WITHOUT_TYPE */]: "Resolved '{written}' in {role} position without a known receiver type",
|
|
127
129
|
};
|
|
@@ -637,6 +639,13 @@ export const ERROR_METADATA = {
|
|
|
637
639
|
message: "Effect of builtin '{builtin}' called by '{func}' is unknown; it is NOT assumed pure",
|
|
638
640
|
help: "Declare it via ASTER_EFFECT_CONFIG prefixes, supply an imported effect signature, or use a known stdlib namespace.",
|
|
639
641
|
},
|
|
642
|
+
["E213" /* ErrorCode.EFFECT_PARAM_SHADOWS_BUILTIN */]: {
|
|
643
|
+
code: "E213" /* ErrorCode.EFFECT_PARAM_SHADOWS_BUILTIN */,
|
|
644
|
+
category: 'type',
|
|
645
|
+
severity: 'error',
|
|
646
|
+
message: "Effect parameter {name} of '{func}' has the same name as a built-in effect",
|
|
647
|
+
help: "Rename the effect parameter; the effect names io, cpu, pure and async are reserved in any letter case.",
|
|
648
|
+
},
|
|
640
649
|
["E300" /* ErrorCode.CAPABILITY_NOT_ALLOWED */]: {
|
|
641
650
|
code: "E300" /* ErrorCode.CAPABILITY_NOT_ALLOWED */,
|
|
642
651
|
category: 'capability',
|
|
@@ -972,6 +981,13 @@ export const ERROR_METADATA = {
|
|
|
972
981
|
message: "Duplicate declaration of '{written}' in {role} position",
|
|
973
982
|
help: "Rename one of the declarations or remove the duplicate.",
|
|
974
983
|
},
|
|
984
|
+
["E900" /* ErrorCode.PARSE_DUPLICATE_ANNOTATION_ARG */]: {
|
|
985
|
+
code: "E900" /* ErrorCode.PARSE_DUPLICATE_ANNOTATION_ARG */,
|
|
986
|
+
category: 'syntax',
|
|
987
|
+
severity: 'error',
|
|
988
|
+
message: "Annotation @{annotation} repeats the argument {name}",
|
|
989
|
+
help: "Give each named argument of an annotation at most once.",
|
|
990
|
+
},
|
|
975
991
|
["W800" /* ErrorCode.SHADOWED_VOCABULARY */]: {
|
|
976
992
|
code: "W800" /* ErrorCode.SHADOWED_VOCABULARY */,
|
|
977
993
|
category: 'scope',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error_codes.js","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"error_codes.js","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core IR v2 的 `Func.effects`(ADR 0055 #5)到效应检查用的效应引用。
|
|
3
|
+
*
|
|
4
|
+
* v2 的 effects 只含授权型具体效应 `io` / `cpu`(小写)与已声明的效应变量(名字等于 effectParams 中某项),
|
|
5
|
+
* 不再有 declaredEffects。这里把小写名映射回 Effect 枚举、把效应变量映射为 EffectVar;
|
|
6
|
+
* 其余名字(只可能出现在手工构造的 IR 中)按 pure 处理,与 core EffectChecker 一致。
|
|
7
|
+
* 纯函数,Node 与浏览器两份效应推断共用。
|
|
8
|
+
*/
|
|
9
|
+
import { Effect } from '../types.js';
|
|
10
|
+
import type { Core, Ty } from '../types.js';
|
|
11
|
+
/** 一个函数声明的效应:具体效应枚举或效应变量。 */
|
|
12
|
+
export type DeclaredEffect = Effect | Ty.EffectVar;
|
|
13
|
+
/** 按源码顺序返回函数声明的效应。 */
|
|
14
|
+
export declare function declaredEffectsOf(func: Pick<Core.Func, 'effects' | 'effectParams'>): DeclaredEffect[];
|
|
15
|
+
/** 函数是否声明了某个具体效应(io / cpu)。 */
|
|
16
|
+
export declare function declaresEffect(func: Pick<Core.Func, 'effects'>, effect: 'io' | 'cpu'): boolean;
|
|
17
|
+
//# sourceMappingURL=declared-effects.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"declared-effects.d.ts","sourceRoot":"","sources":["../../../src/effects/declared-effects.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAE5C,6BAA6B;AAC7B,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,EAAE,CAAC,SAAS,CAAC;AAEnD,sBAAsB;AACtB,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAAC,GAAG,cAAc,EAAE,CAQrG;AAED,+BAA+B;AAC/B,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,KAAK,GAAG,OAAO,CAE9F"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core IR v2 的 `Func.effects`(ADR 0055 #5)到效应检查用的效应引用。
|
|
3
|
+
*
|
|
4
|
+
* v2 的 effects 只含授权型具体效应 `io` / `cpu`(小写)与已声明的效应变量(名字等于 effectParams 中某项),
|
|
5
|
+
* 不再有 declaredEffects。这里把小写名映射回 Effect 枚举、把效应变量映射为 EffectVar;
|
|
6
|
+
* 其余名字(只可能出现在手工构造的 IR 中)按 pure 处理,与 core EffectChecker 一致。
|
|
7
|
+
* 纯函数,Node 与浏览器两份效应推断共用。
|
|
8
|
+
*/
|
|
9
|
+
import { Effect } from '../types.js';
|
|
10
|
+
/** 按源码顺序返回函数声明的效应。 */
|
|
11
|
+
export function declaredEffectsOf(func) {
|
|
12
|
+
const params = new Set(func.effectParams);
|
|
13
|
+
return func.effects.map((name) => {
|
|
14
|
+
if (params.has(name))
|
|
15
|
+
return { kind: 'EffectVar', name };
|
|
16
|
+
if (name === 'io')
|
|
17
|
+
return Effect.IO;
|
|
18
|
+
if (name === 'cpu')
|
|
19
|
+
return Effect.CPU;
|
|
20
|
+
return Effect.PURE;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
/** 函数是否声明了某个具体效应(io / cpu)。 */
|
|
24
|
+
export function declaresEffect(func, effect) {
|
|
25
|
+
return func.effects.includes(effect);
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=declared-effects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"declared-effects.js","sourceRoot":"","sources":["../../../src/effects/declared-effects.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAMrC,sBAAsB;AACtB,MAAM,UAAU,iBAAiB,CAAC,IAAiD;IACjF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAkB,EAAE;QAC/C,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QACzD,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC,EAAE,CAAC;QACpC,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,MAAM,CAAC,GAAG,CAAC;QACtC,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,+BAA+B;AAC/B,MAAM,UAAU,cAAc,CAAC,IAAgC,EAAE,MAAoB;IACnF,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effect_inference.d.ts","sourceRoot":"","sources":["../../../src/effects/effect_inference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"effect_inference.d.ts","sourceRoot":"","sources":["../../../src/effects/effect_inference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAY,MAAM,aAAa,CAAC;AAQ/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA6DD,MAAM,WAAW,sBAAsB;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,4GAA4G;IAC5G,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAC/D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,mBAAmB,EAAE,CAyHvG"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Effect } from '../types.js';
|
|
2
|
+
import { declaredEffectsOf } from './declared-effects.js';
|
|
2
3
|
import { getIOPrefixes, getCPUPrefixes } from '../config/effect_config.js';
|
|
3
4
|
import { DefaultCoreVisitor, createVisitorContext } from '../core/visitor.js';
|
|
4
5
|
import { resolveAlias } from '../typecheck/utils.js';
|
|
@@ -62,9 +63,7 @@ export function inferEffects(core, options) {
|
|
|
62
63
|
effectParams.set(func.name, paramSet);
|
|
63
64
|
bindings.set(func.name, initBindings(paramSet));
|
|
64
65
|
const declared = new Set();
|
|
65
|
-
const
|
|
66
|
-
func.effects;
|
|
67
|
-
for (const eff of declaredSource)
|
|
66
|
+
for (const eff of declaredEffectsOf(func))
|
|
68
67
|
declared.add(normalizeEffectRef(eff));
|
|
69
68
|
const inferred = new Set(declared);
|
|
70
69
|
const required = new Set();
|
|
@@ -100,7 +99,7 @@ export function inferEffects(core, options) {
|
|
|
100
99
|
for (const [funcName, unknowns] of unknownBuiltinsByFunc) {
|
|
101
100
|
const fn = funcIndex.get(funcName);
|
|
102
101
|
for (const [builtin, origin] of unknowns) {
|
|
103
|
-
const span = originToSpan(origin) ?? fn?.
|
|
102
|
+
const span = originToSpan(origin) ?? originToSpan(fn?.origin);
|
|
104
103
|
const diag = {
|
|
105
104
|
severity: 'warning',
|
|
106
105
|
message: `函数 '${funcName}' 调用的 builtin '${builtin}' 效果未知,不按 pure 处理。`,
|
|
@@ -511,7 +510,7 @@ function buildDiagnostics(funcIndex, declared, inferred, required, bindings, eff
|
|
|
511
510
|
message: `函数 '${name}' 缺少 @io 效果声明,推断要求 IO。`,
|
|
512
511
|
code: "E205" /* ErrorCode.EFF_INFER_MISSING_IO */,
|
|
513
512
|
help: '根据推断结果为函数添加 @io 效果。',
|
|
514
|
-
...(func.
|
|
513
|
+
...spanOf(func.origin),
|
|
515
514
|
data: { func: name, effect: 'io' },
|
|
516
515
|
};
|
|
517
516
|
diagnostics.push(diag);
|
|
@@ -522,7 +521,7 @@ function buildDiagnostics(funcIndex, declared, inferred, required, bindings, eff
|
|
|
522
521
|
message: `函数 '${name}' 缺少 @cpu 效果声明,推断要求 CPU(或 @io)。`,
|
|
523
522
|
code: "E206" /* ErrorCode.EFF_INFER_MISSING_CPU */,
|
|
524
523
|
help: '根据推断结果补齐 @cpu 或 @io 效果。',
|
|
525
|
-
...(func.
|
|
524
|
+
...spanOf(func.origin),
|
|
526
525
|
data: { func: name, effect: 'cpu' },
|
|
527
526
|
};
|
|
528
527
|
diagnostics.push(diag);
|
|
@@ -535,7 +534,7 @@ function buildDiagnostics(funcIndex, declared, inferred, required, bindings, eff
|
|
|
535
534
|
message: `函数 '${name}' 声明了 @io,但推断未发现 IO 副作用。`,
|
|
536
535
|
code: "E207" /* ErrorCode.EFF_INFER_REDUNDANT_IO */,
|
|
537
536
|
help: '确认是否需要保留 @io 声明。',
|
|
538
|
-
...(func.
|
|
537
|
+
...spanOf(func.origin),
|
|
539
538
|
data: { func: name, effect: 'io' },
|
|
540
539
|
};
|
|
541
540
|
diagnostics.push(diag);
|
|
@@ -547,7 +546,7 @@ function buildDiagnostics(funcIndex, declared, inferred, required, bindings, eff
|
|
|
547
546
|
message: `函数 '${name}' 声明了 @cpu,但推断未发现 CPU 副作用。`,
|
|
548
547
|
code: "E208" /* ErrorCode.EFF_INFER_REDUNDANT_CPU */,
|
|
549
548
|
help: '若无 CPU 副作用,可删除 @cpu 声明。',
|
|
550
|
-
...(func.
|
|
549
|
+
...spanOf(func.origin),
|
|
551
550
|
data: { func: name, effect: 'cpu' },
|
|
552
551
|
};
|
|
553
552
|
diagnostics.push(diag);
|
|
@@ -558,7 +557,7 @@ function buildDiagnostics(funcIndex, declared, inferred, required, bindings, eff
|
|
|
558
557
|
message: `函数 '${name}' 同时声明 @cpu 和 @io;由于需要 @io,@cpu 可移除。`,
|
|
559
558
|
code: "E209" /* ErrorCode.EFF_INFER_REDUNDANT_CPU_WITH_IO */,
|
|
560
559
|
help: '保留 @io 即可满足需求,移除多余的 @cpu。',
|
|
561
|
-
...(func.
|
|
560
|
+
...spanOf(func.origin),
|
|
562
561
|
data: { func: name, effect: 'cpu' },
|
|
563
562
|
};
|
|
564
563
|
diagnostics.push(diag);
|
|
@@ -579,7 +578,7 @@ function buildDiagnostics(funcIndex, declared, inferred, required, bindings, eff
|
|
|
579
578
|
code: "E211" /* ErrorCode.EFFECT_VAR_UNRESOLVED */,
|
|
580
579
|
message: `效应变量 ${unresolved.join(', ')} 无法推断出具体效果`,
|
|
581
580
|
help: '参考调用或声明补充明确的效果(pure/cpu/io/workflow),或移除未使用的效应变量。',
|
|
582
|
-
...(func.
|
|
581
|
+
...spanOf(func.origin),
|
|
583
582
|
data: { func: name, vars: unresolved },
|
|
584
583
|
};
|
|
585
584
|
diagnostics.push(diag);
|
|
@@ -614,4 +613,9 @@ function toEffectSet(source) {
|
|
|
614
613
|
}
|
|
615
614
|
return result;
|
|
616
615
|
}
|
|
616
|
+
/** 有源码位置时给出 `{ span }`,否则不带 span 键(exactOptionalPropertyTypes)。 */
|
|
617
|
+
function spanOf(origin) {
|
|
618
|
+
const span = originToSpan(origin);
|
|
619
|
+
return span ? { span } : {};
|
|
620
|
+
}
|
|
617
621
|
//# sourceMappingURL=effect_inference.js.map
|