@aster-cloud/aster-lang-ts 1.0.30 → 1.0.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/scripts/aster.js +11 -26
- package/dist/scripts/aster.js.map +1 -1
- package/dist/scripts/corpus-loader.d.ts +17 -0
- package/dist/scripts/corpus-loader.d.ts.map +1 -0
- package/dist/scripts/corpus-loader.js +60 -0
- package/dist/scripts/corpus-loader.js.map +1 -0
- package/dist/scripts/emit-classfiles-core.js +5 -13
- package/dist/scripts/emit-classfiles-core.js.map +1 -1
- package/dist/scripts/emit-classfiles.js +7 -12
- package/dist/scripts/emit-classfiles.js.map +1 -1
- package/dist/scripts/generate_error_codes.js +2 -0
- package/dist/scripts/generate_error_codes.js.map +1 -1
- package/dist/scripts/golden.js +4 -1
- package/dist/scripts/golden.js.map +1 -1
- package/dist/scripts/test-lossless-golden.js +2 -1
- package/dist/scripts/test-lossless-golden.js.map +1 -1
- package/dist/scripts/validate_error_codes.js +1 -0
- package/dist/scripts/validate_error_codes.js.map +1 -1
- package/dist/scripts/verify-lexicon-sync.js +5 -1
- package/dist/scripts/verify-lexicon-sync.js.map +1 -1
- package/dist/src/ast/ast.d.ts +1 -1
- package/dist/src/ast/ast.d.ts.map +1 -1
- package/dist/src/ast/ast.js +2 -1
- package/dist/src/ast/ast.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 +4 -0
- package/dist/src/browser.js.map +1 -1
- package/dist/src/cli/utils/gradle-env.d.ts +9 -0
- package/dist/src/cli/utils/gradle-env.d.ts.map +1 -0
- package/dist/src/cli/utils/gradle-env.js +18 -0
- package/dist/src/cli/utils/gradle-env.js.map +1 -0
- package/dist/src/cli/utils/out-dir.d.ts +18 -0
- package/dist/src/cli/utils/out-dir.d.ts.map +1 -0
- package/dist/src/cli/utils/out-dir.js +49 -0
- package/dist/src/cli/utils/out-dir.js.map +1 -0
- package/dist/src/cnl-printer.d.ts +10 -0
- package/dist/src/cnl-printer.d.ts.map +1 -0
- package/dist/src/cnl-printer.js +360 -0
- package/dist/src/cnl-printer.js.map +1 -0
- package/dist/src/config/lexicons/de-DE.d.ts.map +1 -1
- package/dist/src/config/lexicons/de-DE.js +8 -2
- package/dist/src/config/lexicons/de-DE.js.map +1 -1
- package/dist/src/config/lexicons/en-US.d.ts.map +1 -1
- package/dist/src/config/lexicons/en-US.js +8 -4
- package/dist/src/config/lexicons/en-US.js.map +1 -1
- package/dist/src/config/lexicons/hi-IN.d.ts.map +1 -1
- package/dist/src/config/lexicons/hi-IN.js +8 -2
- package/dist/src/config/lexicons/hi-IN.js.map +1 -1
- package/dist/src/config/lexicons/template.d.ts.map +1 -1
- package/dist/src/config/lexicons/template.js +12 -0
- package/dist/src/config/lexicons/template.js.map +1 -1
- package/dist/src/config/lexicons/zh-CN.d.ts.map +1 -1
- package/dist/src/config/lexicons/zh-CN.js +9 -3
- package/dist/src/config/lexicons/zh-CN.js.map +1 -1
- package/dist/src/config/semantic.d.ts +6 -0
- package/dist/src/config/semantic.d.ts.map +1 -1
- package/dist/src/config/semantic.js +8 -0
- package/dist/src/config/semantic.js.map +1 -1
- package/dist/src/config/token-kind.d.ts +12 -0
- package/dist/src/config/token-kind.d.ts.map +1 -1
- package/dist/src/config/token-kind.js +18 -0
- package/dist/src/config/token-kind.js.map +1 -1
- package/dist/src/core/core_ir.d.ts +1 -1
- package/dist/src/core/core_ir.d.ts.map +1 -1
- package/dist/src/core/core_ir.js +3 -1
- package/dist/src/core/core_ir.js.map +1 -1
- package/dist/src/core/interpreter.d.ts.map +1 -1
- package/dist/src/core/interpreter.js +222 -18
- package/dist/src/core/interpreter.js.map +1 -1
- package/dist/src/cst/cst_printer.d.ts.map +1 -1
- package/dist/src/cst/cst_printer.js +66 -32
- package/dist/src/cst/cst_printer.js.map +1 -1
- package/dist/src/diagnostics/diagnostics.d.ts +1 -0
- package/dist/src/diagnostics/diagnostics.d.ts.map +1 -1
- package/dist/src/diagnostics/diagnostics.js +1 -0
- package/dist/src/diagnostics/diagnostics.js.map +1 -1
- package/dist/src/diagnostics/error_codes.d.ts +10 -2
- package/dist/src/diagnostics/error_codes.d.ts.map +1 -1
- package/dist/src/diagnostics/error_codes.js +64 -0
- package/dist/src/diagnostics/error_codes.js.map +1 -1
- package/dist/src/effects/effect_inference.js +1 -1
- package/dist/src/effects/effect_inference.js.map +1 -1
- package/dist/src/formatter.d.ts +3 -0
- package/dist/src/formatter.d.ts.map +1 -1
- package/dist/src/formatter.js +8 -261
- package/dist/src/formatter.js.map +1 -1
- package/dist/src/frontend/transformers.d.ts.map +1 -1
- package/dist/src/frontend/transformers.js +10 -2
- package/dist/src/frontend/transformers.js.map +1 -1
- package/dist/src/governance/controls-registry.data.d.ts +40 -0
- package/dist/src/governance/controls-registry.data.d.ts.map +1 -0
- package/dist/src/governance/controls-registry.data.js +35 -0
- package/dist/src/governance/controls-registry.data.js.map +1 -0
- package/dist/src/governance/controls.d.ts +23 -0
- package/dist/src/governance/controls.d.ts.map +1 -0
- package/dist/src/governance/controls.js +77 -0
- package/dist/src/governance/controls.js.map +1 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/lower_to_core.js +1 -1
- package/dist/src/lower_to_core.js.map +1 -1
- package/dist/src/lsp/completion.d.ts +22 -1
- package/dist/src/lsp/completion.d.ts.map +1 -1
- package/dist/src/lsp/completion.js +42 -1
- package/dist/src/lsp/completion.js.map +1 -1
- package/dist/src/lsp/debounce-map.d.ts +16 -0
- package/dist/src/lsp/debounce-map.d.ts.map +1 -0
- package/dist/src/lsp/debounce-map.js +32 -0
- package/dist/src/lsp/debounce-map.js.map +1 -0
- package/dist/src/lsp/server.js +6 -8
- package/dist/src/lsp/server.js.map +1 -1
- package/dist/src/lsp/utils.d.ts.map +1 -1
- package/dist/src/lsp/utils.js +2 -0
- package/dist/src/lsp/utils.js.map +1 -1
- package/dist/src/lsp/workspace/file-watcher.d.ts +1 -0
- package/dist/src/lsp/workspace/file-watcher.d.ts.map +1 -1
- package/dist/src/lsp/workspace/file-watcher.js +24 -14
- package/dist/src/lsp/workspace/file-watcher.js.map +1 -1
- package/dist/src/manifest.d.ts +2 -0
- package/dist/src/manifest.d.ts.map +1 -1
- package/dist/src/manifest.js.map +1 -1
- package/dist/src/package/manifest-parser.d.ts +10 -0
- package/dist/src/package/manifest-parser.d.ts.map +1 -1
- package/dist/src/package/manifest-parser.js +27 -28
- package/dist/src/package/manifest-parser.js.map +1 -1
- package/dist/src/package/manifest-schema.d.ts +15 -0
- package/dist/src/package/manifest-schema.d.ts.map +1 -0
- package/dist/src/package/manifest-schema.js +116 -0
- package/dist/src/package/manifest-schema.js.map +1 -0
- package/dist/src/parser/context.d.ts +2 -0
- package/dist/src/parser/context.d.ts.map +1 -1
- package/dist/src/parser/context.js +1 -0
- package/dist/src/parser/context.js.map +1 -1
- package/dist/src/parser/decl-parser.d.ts.map +1 -1
- package/dist/src/parser/decl-parser.js +26 -10
- package/dist/src/parser/decl-parser.js.map +1 -1
- package/dist/src/parser/expr-stmt-parser.d.ts +4 -1
- package/dist/src/parser/expr-stmt-parser.d.ts.map +1 -1
- package/dist/src/parser/expr-stmt-parser.js +199 -6
- package/dist/src/parser/expr-stmt-parser.js.map +1 -1
- package/dist/src/parser/import-parser.d.ts +12 -0
- package/dist/src/parser/import-parser.d.ts.map +1 -1
- package/dist/src/parser/import-parser.js +28 -0
- package/dist/src/parser/import-parser.js.map +1 -1
- package/dist/src/parser.js +1 -1
- package/dist/src/parser.js.map +1 -1
- package/dist/src/typecheck/browser.d.ts +3 -0
- package/dist/src/typecheck/browser.d.ts.map +1 -1
- package/dist/src/typecheck/browser.js +10 -1
- package/dist/src/typecheck/browser.js.map +1 -1
- package/dist/src/typecheck/context.d.ts +3 -0
- package/dist/src/typecheck/context.d.ts.map +1 -1
- package/dist/src/typecheck/context.js.map +1 -1
- package/dist/src/typecheck/expression.d.ts +6 -0
- package/dist/src/typecheck/expression.d.ts.map +1 -1
- package/dist/src/typecheck/expression.js +54 -2
- package/dist/src/typecheck/expression.js.map +1 -1
- package/dist/src/typecheck/generics.d.ts.map +1 -1
- package/dist/src/typecheck/generics.js +3 -0
- package/dist/src/typecheck/generics.js.map +1 -1
- package/dist/src/typecheck/governance.d.ts +43 -0
- package/dist/src/typecheck/governance.d.ts.map +1 -0
- package/dist/src/typecheck/governance.js +162 -0
- package/dist/src/typecheck/governance.js.map +1 -0
- package/dist/src/typecheck/module.d.ts.map +1 -1
- package/dist/src/typecheck/module.js +10 -1
- package/dist/src/typecheck/module.js.map +1 -1
- package/dist/src/typecheck/statement.d.ts.map +1 -1
- package/dist/src/typecheck/statement.js +2 -2
- package/dist/src/typecheck/statement.js.map +1 -1
- package/dist/src/typecheck/type_system.d.ts.map +1 -1
- package/dist/src/typecheck/type_system.js +4 -0
- package/dist/src/typecheck/type_system.js.map +1 -1
- package/dist/src/typecheck/verdict_signatures.d.ts +19 -0
- package/dist/src/typecheck/verdict_signatures.d.ts.map +1 -0
- package/dist/src/typecheck/verdict_signatures.js +23 -0
- package/dist/src/typecheck/verdict_signatures.js.map +1 -0
- package/dist/src/types/base.d.ts +2 -0
- package/dist/src/types/base.d.ts.map +1 -1
- package/dist/test/helpers/sibling-source.d.ts +10 -0
- package/dist/test/helpers/sibling-source.d.ts.map +1 -0
- package/dist/test/helpers/sibling-source.js +20 -0
- package/dist/test/helpers/sibling-source.js.map +1 -0
- package/dist/test/unit/allocation-budget.test.d.ts +2 -0
- package/dist/test/unit/allocation-budget.test.d.ts.map +1 -0
- package/dist/test/unit/allocation-budget.test.js +160 -0
- package/dist/test/unit/allocation-budget.test.js.map +1 -0
- package/dist/test/unit/apply-call.test.js +5 -0
- package/dist/test/unit/apply-call.test.js.map +1 -1
- package/dist/test/unit/canonicalizer/possessive-anchor.test.js +10 -0
- package/dist/test/unit/canonicalizer/possessive-anchor.test.js.map +1 -1
- package/dist/test/unit/cli/gradle-env-guard.test.d.ts +2 -0
- package/dist/test/unit/cli/gradle-env-guard.test.d.ts.map +1 -0
- package/dist/test/unit/cli/gradle-env-guard.test.js +53 -0
- package/dist/test/unit/cli/gradle-env-guard.test.js.map +1 -0
- package/dist/test/unit/cli/gradle-env.test.d.ts +2 -0
- package/dist/test/unit/cli/gradle-env.test.d.ts.map +1 -0
- package/dist/test/unit/cli/gradle-env.test.js +31 -0
- package/dist/test/unit/cli/gradle-env.test.js.map +1 -0
- package/dist/test/unit/cli/out-dir.test.d.ts +2 -0
- package/dist/test/unit/cli/out-dir.test.d.ts.map +1 -0
- package/dist/test/unit/cli/out-dir.test.js +96 -0
- package/dist/test/unit/cli/out-dir.test.js.map +1 -0
- package/dist/test/unit/eval-regression-poker-straight-high.test.d.ts +2 -0
- package/dist/test/unit/eval-regression-poker-straight-high.test.d.ts.map +1 -0
- package/dist/test/unit/eval-regression-poker-straight-high.test.js +61 -0
- package/dist/test/unit/eval-regression-poker-straight-high.test.js.map +1 -0
- package/dist/test/unit/formatter-corpus-roundtrip.test.d.ts +2 -0
- package/dist/test/unit/formatter-corpus-roundtrip.test.d.ts.map +1 -0
- package/dist/test/unit/formatter-corpus-roundtrip.test.js +190 -0
- package/dist/test/unit/formatter-corpus-roundtrip.test.js.map +1 -0
- package/dist/test/unit/formatter-roundtrip.test.d.ts +2 -0
- package/dist/test/unit/formatter-roundtrip.test.d.ts.map +1 -0
- package/dist/test/unit/formatter-roundtrip.test.js +125 -0
- package/dist/test/unit/formatter-roundtrip.test.js.map +1 -0
- package/dist/test/unit/governance/controls-registry-parity.test.d.ts +2 -0
- package/dist/test/unit/governance/controls-registry-parity.test.d.ts.map +1 -0
- package/dist/test/unit/governance/controls-registry-parity.test.js +28 -0
- package/dist/test/unit/governance/controls-registry-parity.test.js.map +1 -0
- package/dist/test/unit/governance/controls-registry-profiles.test.d.ts +2 -0
- package/dist/test/unit/governance/controls-registry-profiles.test.d.ts.map +1 -0
- package/dist/test/unit/governance/controls-registry-profiles.test.js +106 -0
- package/dist/test/unit/governance/controls-registry-profiles.test.js.map +1 -0
- package/dist/test/unit/governance/governance-check.test.d.ts +2 -0
- package/dist/test/unit/governance/governance-check.test.d.ts.map +1 -0
- package/dist/test/unit/governance/governance-check.test.js +169 -0
- package/dist/test/unit/governance/governance-check.test.js.map +1 -0
- package/dist/test/unit/governance/profile-check.test.d.ts +2 -0
- package/dist/test/unit/governance/profile-check.test.d.ts.map +1 -0
- package/dist/test/unit/governance/profile-check.test.js +139 -0
- package/dist/test/unit/governance/profile-check.test.js.map +1 -0
- package/dist/test/unit/governance/verdict-typecheck.test.d.ts +2 -0
- package/dist/test/unit/governance/verdict-typecheck.test.d.ts.map +1 -0
- package/dist/test/unit/governance/verdict-typecheck.test.js +80 -0
- package/dist/test/unit/governance/verdict-typecheck.test.js.map +1 -0
- package/dist/test/unit/interpreter/verdict-builtins.test.d.ts +2 -0
- package/dist/test/unit/interpreter/verdict-builtins.test.d.ts.map +1 -0
- package/dist/test/unit/interpreter/verdict-builtins.test.js +72 -0
- package/dist/test/unit/interpreter/verdict-builtins.test.js.map +1 -0
- package/dist/test/unit/list-numeric-fail-loud.test.d.ts +2 -0
- package/dist/test/unit/list-numeric-fail-loud.test.d.ts.map +1 -0
- package/dist/test/unit/list-numeric-fail-loud.test.js +83 -0
- package/dist/test/unit/list-numeric-fail-loud.test.js.map +1 -0
- package/dist/test/unit/lossless-mirror.test.d.ts +2 -0
- package/dist/test/unit/lossless-mirror.test.d.ts.map +1 -0
- package/dist/test/unit/lossless-mirror.test.js +41 -0
- package/dist/test/unit/lossless-mirror.test.js.map +1 -0
- package/dist/test/unit/lossless-reflow.test.d.ts +2 -0
- package/dist/test/unit/lossless-reflow.test.d.ts.map +1 -0
- package/dist/test/unit/lossless-reflow.test.js +84 -0
- package/dist/test/unit/lossless-reflow.test.js.map +1 -0
- package/dist/test/unit/lowering/lowering.test.js +35 -35
- package/dist/test/unit/lowering/lowering.test.js.map +1 -1
- package/dist/test/unit/lsp/control-completion.test.d.ts +2 -0
- package/dist/test/unit/lsp/control-completion.test.d.ts.map +1 -0
- package/dist/test/unit/lsp/control-completion.test.js +46 -0
- package/dist/test/unit/lsp/control-completion.test.js.map +1 -0
- package/dist/test/unit/lsp/debounce-map.test.d.ts +2 -0
- package/dist/test/unit/lsp/debounce-map.test.d.ts.map +1 -0
- package/dist/test/unit/lsp/debounce-map.test.js +47 -0
- package/dist/test/unit/lsp/debounce-map.test.js.map +1 -0
- package/dist/test/unit/lsp/file-watcher-restart.test.d.ts +2 -0
- package/dist/test/unit/lsp/file-watcher-restart.test.d.ts.map +1 -0
- package/dist/test/unit/lsp/file-watcher-restart.test.js +40 -0
- package/dist/test/unit/lsp/file-watcher-restart.test.js.map +1 -0
- package/dist/test/unit/manifest-parser.test.js +8 -0
- package/dist/test/unit/manifest-parser.test.js.map +1 -1
- package/dist/test/unit/manifest-schema.test.d.ts +7 -5
- package/dist/test/unit/manifest-schema.test.d.ts.map +1 -1
- package/dist/test/unit/manifest-schema.test.js +48 -10
- package/dist/test/unit/manifest-schema.test.js.map +1 -1
- package/dist/test/unit/mapping/redos-budget.test.js +60 -23
- package/dist/test/unit/mapping/redos-budget.test.js.map +1 -1
- package/dist/test/unit/parser/governance-sugar.test.d.ts +2 -0
- package/dist/test/unit/parser/governance-sugar.test.d.ts.map +1 -0
- package/dist/test/unit/parser/governance-sugar.test.js +258 -0
- package/dist/test/unit/parser/governance-sugar.test.js.map +1 -0
- package/dist/test/unit/parser/module-header.test.d.ts +2 -0
- package/dist/test/unit/parser/module-header.test.d.ts.map +1 -0
- package/dist/test/unit/parser/module-header.test.js +25 -0
- package/dist/test/unit/parser/module-header.test.js.map +1 -0
- package/dist/test/unit/parser/positional-annotation-args.test.d.ts +2 -0
- package/dist/test/unit/parser/positional-annotation-args.test.d.ts.map +1 -0
- package/dist/test/unit/parser/positional-annotation-args.test.js +26 -0
- package/dist/test/unit/parser/positional-annotation-args.test.js.map +1 -0
- package/dist/test/unit/parser/prefix-operator-call.test.d.ts +2 -0
- package/dist/test/unit/parser/prefix-operator-call.test.d.ts.map +1 -0
- package/dist/test/unit/parser/prefix-operator-call.test.js +185 -0
- package/dist/test/unit/parser/prefix-operator-call.test.js.map +1 -0
- package/dist/test/unit/scripts/corpus-loader.test.d.ts +2 -0
- package/dist/test/unit/scripts/corpus-loader.test.d.ts.map +1 -0
- package/dist/test/unit/scripts/corpus-loader.test.js +85 -0
- package/dist/test/unit/scripts/corpus-loader.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* manifest.json 的 JSON Schema(内联常量)
|
|
3
|
+
*
|
|
4
|
+
* 为什么内联而不是运行时读文件:npm 包只发布 dist/,仓库根的
|
|
5
|
+
* manifest.schema.json 不在产物里;运行时按相对路径回溯读取在本地开发
|
|
6
|
+
* 恰好命中仓库根,到了消费者的 node_modules 里文件就不存在,schema 校验
|
|
7
|
+
* 被静默跳过,非法 manifest 全量放行。内联后校验函数与代码同包同版本,
|
|
8
|
+
* 不再依赖任何文件布局。
|
|
9
|
+
*
|
|
10
|
+
* 仓库根的 manifest.schema.json 仍保留给编辑器 / 外部工具引用,
|
|
11
|
+
* 由 test/unit/manifest-schema.test.ts 断言两者逐字段一致。
|
|
12
|
+
*/
|
|
13
|
+
import type { SchemaObject } from 'ajv';
|
|
14
|
+
export declare const MANIFEST_SCHEMA: SchemaObject;
|
|
15
|
+
//# sourceMappingURL=manifest-schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest-schema.d.ts","sourceRoot":"","sources":["../../../src/package/manifest-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AAqBxC,eAAO,MAAM,eAAe,EAAE,YAqF7B,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* manifest.json 的 JSON Schema(内联常量)
|
|
3
|
+
*
|
|
4
|
+
* 为什么内联而不是运行时读文件:npm 包只发布 dist/,仓库根的
|
|
5
|
+
* manifest.schema.json 不在产物里;运行时按相对路径回溯读取在本地开发
|
|
6
|
+
* 恰好命中仓库根,到了消费者的 node_modules 里文件就不存在,schema 校验
|
|
7
|
+
* 被静默跳过,非法 manifest 全量放行。内联后校验函数与代码同包同版本,
|
|
8
|
+
* 不再依赖任何文件布局。
|
|
9
|
+
*
|
|
10
|
+
* 仓库根的 manifest.schema.json 仍保留给编辑器 / 外部工具引用,
|
|
11
|
+
* 由 test/unit/manifest-schema.test.ts 断言两者逐字段一致。
|
|
12
|
+
*/
|
|
13
|
+
/** 与 shared/capabilities.json displayName 单源对齐的能力枚举 */
|
|
14
|
+
const CAPABILITY_ENUM = [
|
|
15
|
+
'Http',
|
|
16
|
+
'Network',
|
|
17
|
+
'Sql',
|
|
18
|
+
'Time',
|
|
19
|
+
'Files',
|
|
20
|
+
'Secrets',
|
|
21
|
+
'Crypto',
|
|
22
|
+
'Process',
|
|
23
|
+
'AiModel',
|
|
24
|
+
'Cpu',
|
|
25
|
+
'Payment',
|
|
26
|
+
'Inventory',
|
|
27
|
+
];
|
|
28
|
+
/** 依赖版本约束:^1.0.0 / ~1.0.0 / 1.0.0 */
|
|
29
|
+
const VERSION_CONSTRAINT_PATTERN = '^(\\^|~)?\\d+\\.\\d+\\.\\d+$';
|
|
30
|
+
export const MANIFEST_SCHEMA = {
|
|
31
|
+
$schema: 'http://json-schema.org/draft-07/schema#',
|
|
32
|
+
type: 'object',
|
|
33
|
+
properties: {
|
|
34
|
+
name: {
|
|
35
|
+
type: 'string',
|
|
36
|
+
description: '包名称,使用点号分隔的标识符(如 aster.finance.loan)',
|
|
37
|
+
pattern: '^[a-z][a-z0-9_]*(\\.[a-z][a-z0-9_]*)*$',
|
|
38
|
+
},
|
|
39
|
+
version: {
|
|
40
|
+
type: 'string',
|
|
41
|
+
description: '包版本,遵循 SemVer 规范',
|
|
42
|
+
pattern: '^\\d+\\.\\d+\\.\\d+$',
|
|
43
|
+
},
|
|
44
|
+
description: {
|
|
45
|
+
type: 'string',
|
|
46
|
+
description: '包的一句话描述,供 aster search 结果展示',
|
|
47
|
+
},
|
|
48
|
+
dependencies: {
|
|
49
|
+
type: 'object',
|
|
50
|
+
description: '生产依赖包及其版本约束',
|
|
51
|
+
additionalProperties: {
|
|
52
|
+
type: 'string',
|
|
53
|
+
pattern: VERSION_CONSTRAINT_PATTERN,
|
|
54
|
+
},
|
|
55
|
+
default: {},
|
|
56
|
+
},
|
|
57
|
+
devDependencies: {
|
|
58
|
+
type: 'object',
|
|
59
|
+
description: '开发依赖包及其版本约束',
|
|
60
|
+
additionalProperties: {
|
|
61
|
+
type: 'string',
|
|
62
|
+
pattern: VERSION_CONSTRAINT_PATTERN,
|
|
63
|
+
},
|
|
64
|
+
default: {},
|
|
65
|
+
},
|
|
66
|
+
effects: {
|
|
67
|
+
type: 'array',
|
|
68
|
+
description: '该包导出的自定义效果类型',
|
|
69
|
+
items: {
|
|
70
|
+
type: 'string',
|
|
71
|
+
pattern: '^[A-Z][a-zA-Z0-9]*$',
|
|
72
|
+
},
|
|
73
|
+
default: [],
|
|
74
|
+
},
|
|
75
|
+
capabilities: {
|
|
76
|
+
type: 'object',
|
|
77
|
+
description: '包需要的系统能力(可选,向后兼容)',
|
|
78
|
+
properties: {
|
|
79
|
+
allow: {
|
|
80
|
+
type: 'array',
|
|
81
|
+
items: { enum: CAPABILITY_ENUM },
|
|
82
|
+
},
|
|
83
|
+
deny: {
|
|
84
|
+
type: 'array',
|
|
85
|
+
items: { enum: CAPABILITY_ENUM },
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
additionalProperties: false,
|
|
91
|
+
examples: [
|
|
92
|
+
{
|
|
93
|
+
name: 'aster.finance.loan',
|
|
94
|
+
version: '1.0.0',
|
|
95
|
+
description: '贷款审批规则包',
|
|
96
|
+
dependencies: {
|
|
97
|
+
'aster.http': '^2.1.0',
|
|
98
|
+
'aster.time': '~1.5.3',
|
|
99
|
+
},
|
|
100
|
+
devDependencies: {
|
|
101
|
+
'aster.test': '^3.0.0',
|
|
102
|
+
},
|
|
103
|
+
effects: ['CreditCheck', 'FraudDetection'],
|
|
104
|
+
capabilities: {
|
|
105
|
+
allow: ['Http', 'Sql', 'Time'],
|
|
106
|
+
deny: ['Secrets'],
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
capabilities: {
|
|
111
|
+
allow: ['Files'],
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
],
|
|
115
|
+
};
|
|
116
|
+
//# sourceMappingURL=manifest-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest-schema.js","sourceRoot":"","sources":["../../../src/package/manifest-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,uDAAuD;AACvD,MAAM,eAAe,GAAG;IACtB,MAAM;IACN,SAAS;IACT,KAAK;IACL,MAAM;IACN,OAAO;IACP,SAAS;IACT,QAAQ;IACR,SAAS;IACT,SAAS;IACT,KAAK;IACL,SAAS;IACT,WAAW;CACZ,CAAC;AAEF,qCAAqC;AACrC,MAAM,0BAA0B,GAAG,8BAA8B,CAAC;AAElE,MAAM,CAAC,MAAM,eAAe,GAAiB;IAC3C,OAAO,EAAE,yCAAyC;IAClD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sCAAsC;YACnD,OAAO,EAAE,wCAAwC;SAClD;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kBAAkB;YAC/B,OAAO,EAAE,sBAAsB;SAChC;QACD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,6BAA6B;SAC3C;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,aAAa;YAC1B,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,0BAA0B;aACpC;YACD,OAAO,EAAE,EAAE;SACZ;QACD,eAAe,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,aAAa;YAC1B,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,0BAA0B;aACpC;YACD,OAAO,EAAE,EAAE;SACZ;QACD,OAAO,EAAE;YACP,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,cAAc;YAC3B,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,qBAAqB;aAC/B;YACD,OAAO,EAAE,EAAE;SACZ;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,mBAAmB;YAChC,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;iBACjC;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;iBACjC;aACF;SACF;KACF;IACD,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE;QACR;YACE,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,SAAS;YACtB,YAAY,EAAE;gBACZ,YAAY,EAAE,QAAQ;gBACtB,YAAY,EAAE,QAAQ;aACvB;YACD,eAAe,EAAE;gBACf,YAAY,EAAE,QAAQ;aACvB;YACD,OAAO,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;YAC1C,YAAY,EAAE;gBACZ,KAAK,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;gBAC9B,IAAI,EAAE,CAAC,SAAS,CAAC;aAClB;SACF;QACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,CAAC,OAAO,CAAC;aACjB;SACF;KACF;CACF,CAAC"}
|
|
@@ -10,6 +10,8 @@ export interface ParserContext {
|
|
|
10
10
|
readonly lexicon?: Lexicon;
|
|
11
11
|
index: number;
|
|
12
12
|
moduleName: string | null;
|
|
13
|
+
/** 模块头之后声明的治理档案 id(ADR 0046),未声明为 null */
|
|
14
|
+
moduleProfile: string | null;
|
|
13
15
|
declaredTypes: Set<string>;
|
|
14
16
|
/**
|
|
15
17
|
* 可【构造】的类型名(Data/Enum 记录类型),不含 type alias。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/parser/context.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/parser/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -98,6 +98,7 @@ export function createParserContext(tokens, lexicon) {
|
|
|
98
98
|
...(lexicon !== undefined && { lexicon }),
|
|
99
99
|
index: 0,
|
|
100
100
|
moduleName: null,
|
|
101
|
+
moduleProfile: null,
|
|
101
102
|
declaredTypes: new Set(),
|
|
102
103
|
declaredRecordTypes: new Set(),
|
|
103
104
|
currentTypeVars: new Set(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/parser/context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/parser/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decl-parser.d.ts","sourceRoot":"","sources":["../../../src/parser/decl-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAyC,WAAW,EAAE,KAAK,EAAQ,MAAM,aAAa,CAAC;AAC/G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"decl-parser.d.ts","sourceRoot":"","sources":["../../../src/parser/decl-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAyC,WAAW,EAAE,KAAK,EAAQ,MAAM,aAAa,CAAC;AAC/G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAmJrD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,KAAK,KAAK,EAC1C,SAAS,EAAE,MAAM,IAAI,EACrB,cAAc,EAAE,MAAM,MAAM,GAC3B,WAAW,CA8Bb;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,KAAK,KAAK,EAC1C,SAAS,EAAE,MAAM,IAAI,EACrB,cAAc,EAAE,MAAM,MAAM,GAC3B,WAAW,CAmCb;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,KAAK,KAAK,EAC1C,aAAa,EAAE,MAAM,IAAI,EACzB,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,EAChD,aAAa,EAAE,MAAM,IAAI,EACzB,UAAU,EAAE,MAAM,MAAM,EACxB,WAAW,GAAE,SAAS,UAAU,EAAO,EACvC,YAAY,CAAC,EAAE,KAAK,GACnB,WAAW,CAoSb;AA2FD,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,WAAW,GACjB;IAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAAC,WAAW,EAAE,UAAU,EAAE,CAAA;CAAE,CAoHrD"}
|
|
@@ -6,7 +6,7 @@ import { KW, TokenKind } from '../frontend/tokens.js';
|
|
|
6
6
|
import { Node } from '../ast/ast.js';
|
|
7
7
|
import { toDiagnostic } from '../diagnostics/diagnostics.js';
|
|
8
8
|
import { kwParts, tokLowerAt } from './context.js';
|
|
9
|
-
import { parseModuleHeader, parseImport } from './import-parser.js';
|
|
9
|
+
import { atProfileDecl, MODULE_MISPLACED, parseModuleHeader, parseImport, parseProfileDecl, PROFILE_MISPLACED, } from './import-parser.js';
|
|
10
10
|
import { parseType, parseEffectList, separateEffectsAndCaps } from './type-parser.js';
|
|
11
11
|
import { parseBlock, parseExplicitBlock, parseParamList } from './expr-stmt-parser.js';
|
|
12
12
|
import { parseFieldList, parseVariantList } from './field-variant-parser.js';
|
|
@@ -82,22 +82,28 @@ function parseAnnotationValue(ctx, error) {
|
|
|
82
82
|
error('Expected annotation argument value', tok);
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
|
+
/** 当前位置是否为 `name: value` 形式的命名注解参数(标识符后紧跟冒号)。 */
|
|
86
|
+
function isNamedAnnotationArg(ctx) {
|
|
87
|
+
return (ctx.at(TokenKind.IDENT) || ctx.at(TokenKind.TYPE_IDENT)) && ctx.peek(1)?.kind === TokenKind.COLON;
|
|
88
|
+
}
|
|
85
89
|
function parseAnnotationArgs(ctx, error) {
|
|
86
90
|
if (!ctx.at(TokenKind.LPAREN))
|
|
87
91
|
return undefined;
|
|
88
92
|
ctx.next();
|
|
89
93
|
const args = [];
|
|
94
|
+
// 位置参数按出现顺序编号为 $0、$1…,与 Java AstBuilder 的键名一致;可与命名参数混用。
|
|
95
|
+
let positionalIndex = 0;
|
|
90
96
|
while (!ctx.at(TokenKind.RPAREN) && !ctx.at(TokenKind.EOF)) {
|
|
91
|
-
if (!
|
|
92
|
-
|
|
97
|
+
if (!isNamedAnnotationArg(ctx)) {
|
|
98
|
+
const value = parseAnnotationValue(ctx, error);
|
|
99
|
+
args.push({ name: `$${positionalIndex++}`, value });
|
|
93
100
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
101
|
+
else {
|
|
102
|
+
const name = String(ctx.next().value);
|
|
103
|
+
ctx.next();
|
|
104
|
+
const value = parseAnnotationValue(ctx, error);
|
|
105
|
+
args.push({ name, value });
|
|
97
106
|
}
|
|
98
|
-
ctx.next();
|
|
99
|
-
const value = parseAnnotationValue(ctx, error);
|
|
100
|
-
args.push({ name, value });
|
|
101
107
|
if (ctx.at(TokenKind.COMMA)) {
|
|
102
108
|
ctx.next();
|
|
103
109
|
continue;
|
|
@@ -406,7 +412,7 @@ export function parseFuncDecl(ctx, error, expectCommaOr, expectKeyword, expectNe
|
|
|
406
412
|
}
|
|
407
413
|
// 如果没有显式声明类型参数,尝试从类型使用中推断
|
|
408
414
|
if (typeParams.length === 0) {
|
|
409
|
-
const BUILTINS = new Set(['Int', 'Bool', 'Text', 'Long', 'Double', 'Number', 'Float', 'Option', 'Result', 'List', 'Map']);
|
|
415
|
+
const BUILTINS = new Set(['Int', 'Bool', 'Text', 'Long', 'Double', 'Number', 'Float', 'Option', 'Result', 'List', 'Map', 'Verdict']);
|
|
410
416
|
const found = new Set();
|
|
411
417
|
const visitType = (t) => {
|
|
412
418
|
switch (t.kind) {
|
|
@@ -584,7 +590,17 @@ export function collectTopLevelDecls(ctx, tools) {
|
|
|
584
590
|
try {
|
|
585
591
|
// 解析模块头: Module foo.bar.
|
|
586
592
|
if (ctx.isKeywordSeq(KW.MODULE_IS)) {
|
|
593
|
+
if (ctx.moduleName !== null || decls.length > 0)
|
|
594
|
+
tools.error(MODULE_MISPLACED);
|
|
587
595
|
parseModuleHeader(ctx, tools.error, tools.expectDot);
|
|
596
|
+
// ADR 0046:Profile 只能紧跟模块头(中间可有空行);模块头唯一,故此处至多解析一条,其余交给下方分支报错
|
|
597
|
+
ctx.consumeNewlines();
|
|
598
|
+
if (atProfileDecl(ctx))
|
|
599
|
+
parseProfileDecl(ctx, tools.error, tools.expectDot);
|
|
600
|
+
}
|
|
601
|
+
// 其余位置出现的 Profile(重复、模块头之前或声明之间)一律报错
|
|
602
|
+
else if (ctx.isKeyword(KW.PROFILE)) {
|
|
603
|
+
tools.error(PROFILE_MISPLACED);
|
|
588
604
|
}
|
|
589
605
|
// 解析导入: use foo.bar. 或 use foo.bar as Baz.
|
|
590
606
|
else if (ctx.isKeyword(KW.USE)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decl-parser.js","sourceRoot":"","sources":["../../../src/parser/decl-parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"decl-parser.js","sourceRoot":"","sources":["../../../src/parser/decl-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { Block, Expression, Parameter, Pattern, Statement, Type } from '../types.js';
|
|
2
2
|
import type { ParserContext } from './context.js';
|
|
3
|
+
/** 语法糖结论非法时的报告方式:立即抛错,或记下待块结束再报。 */
|
|
4
|
+
type OutcomeErrorSink = (msg: string) => void;
|
|
3
5
|
/**
|
|
4
6
|
* 解析代码块(Block)
|
|
5
7
|
* @param ctx Parser 上下文
|
|
@@ -16,7 +18,7 @@ export declare function parseBlock(ctx: ParserContext, error: (msg: string) => n
|
|
|
16
18
|
* 独立于 parseBlock(不复用其 fallback 分支),终止条件只认 BLOCK_END,空块报错(对齐 stmt+)。
|
|
17
19
|
*/
|
|
18
20
|
export declare function parseExplicitBlock(ctx: ParserContext, error: (msg: string) => never): Block;
|
|
19
|
-
export declare function parseStatement(ctx: ParserContext, error: (msg: string) => never): Statement;
|
|
21
|
+
export declare function parseStatement(ctx: ParserContext, error: (msg: string) => never, reportOutcomeError?: OutcomeErrorSink): Statement;
|
|
20
22
|
/**
|
|
21
23
|
* 解析表达式
|
|
22
24
|
* @param ctx Parser 上下文
|
|
@@ -51,4 +53,5 @@ export declare function parseParamList(ctx: ParserContext, error: (msg: string,
|
|
|
51
53
|
* @returns Type
|
|
52
54
|
*/
|
|
53
55
|
export declare function inferLambdaReturnType(e: Expression): Type;
|
|
56
|
+
export {};
|
|
54
57
|
//# sourceMappingURL=expr-stmt-parser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expr-stmt-parser.d.ts","sourceRoot":"","sources":["../../../src/parser/expr-stmt-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EAGL,UAAU,EAEV,SAAS,EACT,OAAO,
|
|
1
|
+
{"version":3,"file":"expr-stmt-parser.d.ts","sourceRoot":"","sources":["../../../src/parser/expr-stmt-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EAGL,UAAU,EAEV,SAAS,EACT,OAAO,EAGP,SAAS,EAGT,IAAI,EAIL,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAiElD,oCAAoC;AACpC,KAAK,gBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;AA4B9C;;;;;GAKG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,GAC5B,KAAK,CAqDP;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,GAC5B,KAAK,CAiBP;AAmND,wBAAgB,cAAc,CAC5B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,EAC7B,kBAAkB,GAAE,gBAAwB,GAC3C,SAAS,CAsMX;AA2ND;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,GAC5B,UAAU,CAiBZ;AA6+BD;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,GAC5B,UAAU,EAAE,CAcd;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,KAAK,GAC5B,OAAO,CAiDT;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,aAAa,EAAE,KAAK,KAAK,KAAK,GAC/D,SAAS,EAAE,CAsIb;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI,CA2BzD"}
|