@aster-cloud/aster-lang-ts 1.0.37 → 1.1.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.
Files changed (292) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +13 -7
  3. package/dist/scripts/aster.js +10 -5
  4. package/dist/scripts/aster.js.map +1 -1
  5. package/dist/scripts/core-ir-json.js +8 -3
  6. package/dist/scripts/core-ir-json.js.map +1 -1
  7. package/dist/scripts/emit-classfiles.js +3 -2
  8. package/dist/scripts/emit-classfiles.js.map +1 -1
  9. package/dist/scripts/emit-core.js +8 -5
  10. package/dist/scripts/emit-core.js.map +1 -1
  11. package/dist/scripts/generate-casefold.d.ts +2 -0
  12. package/dist/scripts/generate-casefold.d.ts.map +1 -0
  13. package/dist/scripts/generate-casefold.js +34 -0
  14. package/dist/scripts/generate-casefold.js.map +1 -0
  15. package/dist/scripts/golden.js +16 -16
  16. package/dist/scripts/golden.js.map +1 -1
  17. package/dist/scripts/perf-benchmark.js +1 -0
  18. package/dist/scripts/perf-benchmark.js.map +1 -1
  19. package/dist/scripts/profile-medium-project.js +1 -1
  20. package/dist/scripts/profile-medium-project.js.map +1 -1
  21. package/dist/scripts/repl.js +3 -8
  22. package/dist/scripts/repl.js.map +1 -1
  23. package/dist/scripts/typecheck-cli.js +10 -9
  24. package/dist/scripts/typecheck-cli.js.map +1 -1
  25. package/dist/scripts/update-eff-violation-expected.js +6 -6
  26. package/dist/scripts/update-eff-violation-expected.js.map +1 -1
  27. package/dist/scripts/verify-capabilities.js +3 -6
  28. package/dist/scripts/verify-capabilities.js.map +1 -1
  29. package/dist/src/ai/validator.d.ts +1 -1
  30. package/dist/src/ai/validator.d.ts.map +1 -1
  31. package/dist/src/ai/validator.js +12 -12
  32. package/dist/src/ai/validator.js.map +1 -1
  33. package/dist/src/ast/ast.d.ts +1 -0
  34. package/dist/src/ast/ast.d.ts.map +1 -1
  35. package/dist/src/ast/ast.js.map +1 -1
  36. package/dist/src/browser.d.ts +27 -10
  37. package/dist/src/browser.d.ts.map +1 -1
  38. package/dist/src/browser.js +42 -54
  39. package/dist/src/browser.js.map +1 -1
  40. package/dist/src/cli/policy-converter.js +5 -9
  41. package/dist/src/cli/policy-converter.js.map +1 -1
  42. package/dist/src/compile-pipeline.d.ts +48 -0
  43. package/dist/src/compile-pipeline.d.ts.map +1 -0
  44. package/dist/src/compile-pipeline.js +89 -0
  45. package/dist/src/compile-pipeline.js.map +1 -0
  46. package/dist/src/config/lexicons/diagnostic-messages.d.ts.map +1 -1
  47. package/dist/src/config/lexicons/diagnostic-messages.js +20 -0
  48. package/dist/src/config/lexicons/diagnostic-messages.js.map +1 -1
  49. package/dist/src/config/lexicons/identifiers/casefold-table.generated.d.ts +9 -0
  50. package/dist/src/config/lexicons/identifiers/casefold-table.generated.d.ts.map +1 -0
  51. package/dist/src/config/lexicons/identifiers/casefold-table.generated.js +1467 -0
  52. package/dist/src/config/lexicons/identifiers/casefold-table.generated.js.map +1 -0
  53. package/dist/src/config/lexicons/identifiers/casefold.d.ts +7 -0
  54. package/dist/src/config/lexicons/identifiers/casefold.d.ts.map +1 -0
  55. package/dist/src/config/lexicons/identifiers/casefold.js +37 -0
  56. package/dist/src/config/lexicons/identifiers/casefold.js.map +1 -0
  57. package/dist/src/config/lexicons/identifiers/domains/finance.loan.de-DE.d.ts.map +1 -1
  58. package/dist/src/config/lexicons/identifiers/domains/finance.loan.de-DE.js +8 -0
  59. package/dist/src/config/lexicons/identifiers/domains/finance.loan.de-DE.js.map +1 -1
  60. package/dist/src/config/lexicons/identifiers/domains/finance.loan.en-US.d.ts.map +1 -1
  61. package/dist/src/config/lexicons/identifiers/domains/finance.loan.en-US.js +8 -0
  62. package/dist/src/config/lexicons/identifiers/domains/finance.loan.en-US.js.map +1 -1
  63. package/dist/src/config/lexicons/identifiers/domains/finance.loan.zh-CN.d.ts.map +1 -1
  64. package/dist/src/config/lexicons/identifiers/domains/finance.loan.zh-CN.js +8 -0
  65. package/dist/src/config/lexicons/identifiers/domains/finance.loan.zh-CN.js.map +1 -1
  66. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.de-DE.d.ts.map +1 -1
  67. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.de-DE.js +6 -0
  68. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.de-DE.js.map +1 -1
  69. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.en-US.d.ts.map +1 -1
  70. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.en-US.js +6 -0
  71. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.en-US.js.map +1 -1
  72. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.zh-CN.d.ts.map +1 -1
  73. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.zh-CN.js +6 -0
  74. package/dist/src/config/lexicons/identifiers/domains/insurance.auto.zh-CN.js.map +1 -1
  75. package/dist/src/config/lexicons/identifiers/index.d.ts +7 -9
  76. package/dist/src/config/lexicons/identifiers/index.d.ts.map +1 -1
  77. package/dist/src/config/lexicons/identifiers/index.js +8 -9
  78. package/dist/src/config/lexicons/identifiers/index.js.map +1 -1
  79. package/dist/src/config/lexicons/identifiers/registry.d.ts +11 -5
  80. package/dist/src/config/lexicons/identifiers/registry.d.ts.map +1 -1
  81. package/dist/src/config/lexicons/identifiers/registry.js +20 -14
  82. package/dist/src/config/lexicons/identifiers/registry.js.map +1 -1
  83. package/dist/src/config/lexicons/identifiers/scopes.d.ts +52 -0
  84. package/dist/src/config/lexicons/identifiers/scopes.d.ts.map +1 -0
  85. package/dist/src/config/lexicons/identifiers/scopes.js +166 -0
  86. package/dist/src/config/lexicons/identifiers/scopes.js.map +1 -0
  87. package/dist/src/config/lexicons/identifiers/types.d.ts +15 -29
  88. package/dist/src/config/lexicons/identifiers/types.d.ts.map +1 -1
  89. package/dist/src/config/lexicons/identifiers/types.js +91 -101
  90. package/dist/src/config/lexicons/identifiers/types.js.map +1 -1
  91. package/dist/src/config/lexicons/lsp-ui-texts.d.ts +7 -0
  92. package/dist/src/config/lexicons/lsp-ui-texts.d.ts.map +1 -1
  93. package/dist/src/config/lexicons/lsp-ui-texts.js +12 -0
  94. package/dist/src/config/lexicons/lsp-ui-texts.js.map +1 -1
  95. package/dist/src/config/semantic.d.ts +5 -0
  96. package/dist/src/config/semantic.d.ts.map +1 -1
  97. package/dist/src/config/semantic.js +12 -0
  98. package/dist/src/config/semantic.js.map +1 -1
  99. package/dist/src/core/inferred_fields.d.ts +10 -0
  100. package/dist/src/core/inferred_fields.d.ts.map +1 -1
  101. package/dist/src/core/inferred_fields.js +9 -0
  102. package/dist/src/core/inferred_fields.js.map +1 -1
  103. package/dist/src/core/interpreter.d.ts.map +1 -1
  104. package/dist/src/core/interpreter.js +12 -10
  105. package/dist/src/core/interpreter.js.map +1 -1
  106. package/dist/src/core/resolution-mark.d.ts +28 -0
  107. package/dist/src/core/resolution-mark.d.ts.map +1 -0
  108. package/dist/src/core/resolution-mark.js +19 -0
  109. package/dist/src/core/resolution-mark.js.map +1 -0
  110. package/dist/src/core/resolve-typed-references.d.ts +36 -0
  111. package/dist/src/core/resolve-typed-references.d.ts.map +1 -0
  112. package/dist/src/core/resolve-typed-references.js +703 -0
  113. package/dist/src/core/resolve-typed-references.js.map +1 -0
  114. package/dist/src/diagnostics/error_codes.d.ts +11 -1
  115. package/dist/src/diagnostics/error_codes.d.ts.map +1 -1
  116. package/dist/src/diagnostics/error_codes.js +80 -0
  117. package/dist/src/diagnostics/error_codes.js.map +1 -1
  118. package/dist/src/frontend/canonicalizer.d.ts +8 -13
  119. package/dist/src/frontend/canonicalizer.d.ts.map +1 -1
  120. package/dist/src/frontend/canonicalizer.js +19 -48
  121. package/dist/src/frontend/canonicalizer.js.map +1 -1
  122. package/dist/src/frontend/resolution-choice.d.ts +34 -0
  123. package/dist/src/frontend/resolution-choice.d.ts.map +1 -0
  124. package/dist/src/frontend/resolution-choice.js +69 -0
  125. package/dist/src/frontend/resolution-choice.js.map +1 -0
  126. package/dist/src/frontend/resolution-context.d.ts +28 -0
  127. package/dist/src/frontend/resolution-context.d.ts.map +1 -0
  128. package/dist/src/frontend/resolution-context.js +7 -0
  129. package/dist/src/frontend/resolution-context.js.map +1 -0
  130. package/dist/src/frontend/resolve-declarations.d.ts +13 -0
  131. package/dist/src/frontend/resolve-declarations.d.ts.map +1 -0
  132. package/dist/src/frontend/resolve-declarations.js +611 -0
  133. package/dist/src/frontend/resolve-declarations.js.map +1 -0
  134. package/dist/src/frontend/resolve-policy-types.d.ts +54 -0
  135. package/dist/src/frontend/resolve-policy-types.d.ts.map +1 -0
  136. package/dist/src/frontend/resolve-policy-types.js +71 -0
  137. package/dist/src/frontend/resolve-policy-types.js.map +1 -0
  138. package/dist/src/index.d.ts +14 -7
  139. package/dist/src/index.d.ts.map +1 -1
  140. package/dist/src/index.js +14 -7
  141. package/dist/src/index.js.map +1 -1
  142. package/dist/src/lower_to_core.d.ts +2 -16
  143. package/dist/src/lower_to_core.d.ts.map +1 -1
  144. package/dist/src/lower_to_core.js +101 -44
  145. package/dist/src/lower_to_core.js.map +1 -1
  146. package/dist/src/lsp/canonicalize-options.d.ts +8 -11
  147. package/dist/src/lsp/canonicalize-options.d.ts.map +1 -1
  148. package/dist/src/lsp/canonicalize-options.js +8 -8
  149. package/dist/src/lsp/canonicalize-options.js.map +1 -1
  150. package/dist/src/lsp/completion.d.ts +32 -5
  151. package/dist/src/lsp/completion.d.ts.map +1 -1
  152. package/dist/src/lsp/completion.js +59 -0
  153. package/dist/src/lsp/completion.js.map +1 -1
  154. package/dist/src/lsp/diagnostics.d.ts +2 -0
  155. package/dist/src/lsp/diagnostics.d.ts.map +1 -1
  156. package/dist/src/lsp/diagnostics.js +77 -73
  157. package/dist/src/lsp/diagnostics.js.map +1 -1
  158. package/dist/src/lsp/navigation/hover.d.ts +12 -5
  159. package/dist/src/lsp/navigation/hover.d.ts.map +1 -1
  160. package/dist/src/lsp/navigation/hover.js +136 -90
  161. package/dist/src/lsp/navigation/hover.js.map +1 -1
  162. package/dist/src/lsp/parse-document.d.ts +3 -0
  163. package/dist/src/lsp/parse-document.d.ts.map +1 -1
  164. package/dist/src/lsp/parse-document.js +5 -17
  165. package/dist/src/lsp/parse-document.js.map +1 -1
  166. package/dist/src/lsp/resolution.d.ts +40 -0
  167. package/dist/src/lsp/resolution.d.ts.map +1 -0
  168. package/dist/src/lsp/resolution.js +179 -0
  169. package/dist/src/lsp/resolution.js.map +1 -0
  170. package/dist/src/lsp/server.js +3 -1
  171. package/dist/src/lsp/server.js.map +1 -1
  172. package/dist/src/lsp/source-positions.d.ts +2 -8
  173. package/dist/src/lsp/source-positions.d.ts.map +1 -1
  174. package/dist/src/lsp/source-positions.js +4 -16
  175. package/dist/src/lsp/source-positions.js.map +1 -1
  176. package/dist/src/mapping/pipeline.js +3 -2
  177. package/dist/src/mapping/pipeline.js.map +1 -1
  178. package/dist/src/mapping/review-queue.d.ts.map +1 -1
  179. package/dist/src/mapping/review-queue.js +3 -2
  180. package/dist/src/mapping/review-queue.js.map +1 -1
  181. package/dist/src/parser/context.d.ts +2 -0
  182. package/dist/src/parser/context.d.ts.map +1 -1
  183. package/dist/src/parser/context.js +1 -0
  184. package/dist/src/parser/context.js.map +1 -1
  185. package/dist/src/parser/decl-parser.d.ts.map +1 -1
  186. package/dist/src/parser/decl-parser.js +1 -0
  187. package/dist/src/parser/decl-parser.js.map +1 -1
  188. package/dist/src/parser/expr-stmt-parser.d.ts.map +1 -1
  189. package/dist/src/parser/expr-stmt-parser.js +2 -16
  190. package/dist/src/parser/expr-stmt-parser.js.map +1 -1
  191. package/dist/src/parser.d.ts.map +1 -1
  192. package/dist/src/parser.js +3 -1
  193. package/dist/src/parser.js.map +1 -1
  194. package/dist/src/typecheck/expression.d.ts.map +1 -1
  195. package/dist/src/typecheck/expression.js +13 -0
  196. package/dist/src/typecheck/expression.js.map +1 -1
  197. package/dist/src/typecheck/generics.d.ts +5 -0
  198. package/dist/src/typecheck/generics.d.ts.map +1 -1
  199. package/dist/src/typecheck/generics.js +15 -8
  200. package/dist/src/typecheck/generics.js.map +1 -1
  201. package/dist/src/types.d.ts +45 -13
  202. package/dist/src/types.d.ts.map +1 -1
  203. package/dist/src/types.js.map +1 -1
  204. package/dist/src/version.d.ts +17 -0
  205. package/dist/src/version.d.ts.map +1 -0
  206. package/dist/src/version.js +17 -0
  207. package/dist/src/version.js.map +1 -0
  208. package/dist/test/integration/builtin-enum-vocabulary.test.d.ts +2 -0
  209. package/dist/test/integration/builtin-enum-vocabulary.test.d.ts.map +1 -0
  210. package/dist/test/integration/builtin-enum-vocabulary.test.js +51 -0
  211. package/dist/test/integration/builtin-enum-vocabulary.test.js.map +1 -0
  212. package/dist/test/integration/lsp/lsp-rename-safety.test.js +0 -13
  213. package/dist/test/integration/lsp/lsp-rename-safety.test.js.map +1 -1
  214. package/dist/test/integration/name-resolution-entrypoints.test.d.ts +2 -0
  215. package/dist/test/integration/name-resolution-entrypoints.test.d.ts.map +1 -0
  216. package/dist/test/integration/name-resolution-entrypoints.test.js +109 -0
  217. package/dist/test/integration/name-resolution-entrypoints.test.js.map +1 -0
  218. package/dist/test/integration/vocabulary-resolution.test.d.ts +2 -0
  219. package/dist/test/integration/vocabulary-resolution.test.d.ts.map +1 -0
  220. package/dist/test/integration/vocabulary-resolution.test.js +291 -0
  221. package/dist/test/integration/vocabulary-resolution.test.js.map +1 -0
  222. package/dist/test/property/property.test.js +2 -1
  223. package/dist/test/property/property.test.js.map +1 -1
  224. package/dist/test/unit/canonicalizer/canonicalizer.test.js +7 -79
  225. package/dist/test/unit/canonicalizer/canonicalizer.test.js.map +1 -1
  226. package/dist/test/unit/config/lexicons/identifiers/identifier-mapping.test.js +134 -31
  227. package/dist/test/unit/config/lexicons/identifiers/identifier-mapping.test.js.map +1 -1
  228. package/dist/test/unit/config/lexicons/identifiers/literal-macro.test.js +16 -18
  229. package/dist/test/unit/config/lexicons/identifiers/literal-macro.test.js.map +1 -1
  230. package/dist/test/unit/core/resolve-typed-references.test.d.ts +2 -0
  231. package/dist/test/unit/core/resolve-typed-references.test.d.ts.map +1 -0
  232. package/dist/test/unit/core/resolve-typed-references.test.js +600 -0
  233. package/dist/test/unit/core/resolve-typed-references.test.js.map +1 -0
  234. package/dist/test/unit/diagnostics/resolution-codes.test.d.ts +6 -0
  235. package/dist/test/unit/diagnostics/resolution-codes.test.d.ts.map +1 -0
  236. package/dist/test/unit/diagnostics/resolution-codes.test.js +83 -0
  237. package/dist/test/unit/diagnostics/resolution-codes.test.js.map +1 -0
  238. package/dist/test/unit/formatter-corpus-roundtrip.test.js +9 -0
  239. package/dist/test/unit/formatter-corpus-roundtrip.test.js.map +1 -1
  240. package/dist/test/unit/frontend/resolve-declarations.test.d.ts +2 -0
  241. package/dist/test/unit/frontend/resolve-declarations.test.d.ts.map +1 -0
  242. package/dist/test/unit/frontend/resolve-declarations.test.js +400 -0
  243. package/dist/test/unit/frontend/resolve-declarations.test.js.map +1 -0
  244. package/dist/test/unit/identifiers/casefold.test.d.ts +2 -0
  245. package/dist/test/unit/identifiers/casefold.test.d.ts.map +1 -0
  246. package/dist/test/unit/identifiers/casefold.test.js +77 -0
  247. package/dist/test/unit/identifiers/casefold.test.js.map +1 -0
  248. package/dist/test/unit/identifiers/scopes.test.d.ts +2 -0
  249. package/dist/test/unit/identifiers/scopes.test.d.ts.map +1 -0
  250. package/dist/test/unit/identifiers/scopes.test.js +109 -0
  251. package/dist/test/unit/identifiers/scopes.test.js.map +1 -0
  252. package/dist/test/unit/lambda-capture-parity.test.js +12 -5
  253. package/dist/test/unit/lambda-capture-parity.test.js.map +1 -1
  254. package/dist/test/unit/lsp/lsp-locale-fixes.test.js +10 -11
  255. package/dist/test/unit/lsp/lsp-locale-fixes.test.js.map +1 -1
  256. package/dist/test/unit/lsp/resolution-completion.test.d.ts +2 -0
  257. package/dist/test/unit/lsp/resolution-completion.test.d.ts.map +1 -0
  258. package/dist/test/unit/lsp/resolution-completion.test.js +79 -0
  259. package/dist/test/unit/lsp/resolution-completion.test.js.map +1 -0
  260. package/dist/test/unit/lsp/resolution-diagnostics.test.d.ts +2 -0
  261. package/dist/test/unit/lsp/resolution-diagnostics.test.d.ts.map +1 -0
  262. package/dist/test/unit/lsp/resolution-diagnostics.test.js +88 -0
  263. package/dist/test/unit/lsp/resolution-diagnostics.test.js.map +1 -0
  264. package/dist/test/unit/lsp/resolution-fixture.d.ts +32 -0
  265. package/dist/test/unit/lsp/resolution-fixture.d.ts.map +1 -0
  266. package/dist/test/unit/lsp/resolution-fixture.js +69 -0
  267. package/dist/test/unit/lsp/resolution-fixture.js.map +1 -0
  268. package/dist/test/unit/lsp/resolution-hover.test.d.ts +2 -0
  269. package/dist/test/unit/lsp/resolution-hover.test.d.ts.map +1 -0
  270. package/dist/test/unit/lsp/resolution-hover.test.js +107 -0
  271. package/dist/test/unit/lsp/resolution-hover.test.js.map +1 -0
  272. package/dist/test/unit/lsp/tenant-vocabulary.test.js +21 -47
  273. package/dist/test/unit/lsp/tenant-vocabulary.test.js.map +1 -1
  274. package/dist/test/unit/parser/parser.test.js +22 -0
  275. package/dist/test/unit/parser/parser.test.js.map +1 -1
  276. package/dist/test/unit/public-api-checked-entries.test.d.ts +2 -0
  277. package/dist/test/unit/public-api-checked-entries.test.d.ts.map +1 -0
  278. package/dist/test/unit/public-api-checked-entries.test.js +28 -0
  279. package/dist/test/unit/public-api-checked-entries.test.js.map +1 -0
  280. package/dist/test/unit/typecheck/qualified-enum-member.test.d.ts +2 -0
  281. package/dist/test/unit/typecheck/qualified-enum-member.test.d.ts.map +1 -0
  282. package/dist/test/unit/typecheck/qualified-enum-member.test.js +73 -0
  283. package/dist/test/unit/typecheck/qualified-enum-member.test.js.map +1 -0
  284. package/dist/test/unit/version.test.d.ts +9 -0
  285. package/dist/test/unit/version.test.d.ts.map +1 -0
  286. package/dist/test/unit/version.test.js +34 -0
  287. package/dist/test/unit/version.test.js.map +1 -0
  288. package/package.json +1 -1
  289. package/dist/src/config/lexicons/identifiers/examples/canonicalizer-integration.d.ts +0 -47
  290. package/dist/src/config/lexicons/identifiers/examples/canonicalizer-integration.d.ts.map +0 -1
  291. package/dist/src/config/lexicons/identifiers/examples/canonicalizer-integration.js +0 -142
  292. package/dist/src/config/lexicons/identifiers/examples/canonicalizer-integration.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,33 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.1.0
4
+
5
+ ### Breaking
6
+
7
+ - The package entries (`@aster-cloud/aster-lang-ts` and `/browser`) no longer
8
+ export `lowerModule` or the unchecked `resolveAndLower`. Use `parseSource`
9
+ followed by `resolveAndLowerChecked(ast)`, which throws `NameResolutionError`
10
+ on any E8xx diagnostic, or the higher-level `compile` /
11
+ `compileAndTypecheck` / `resolvePolicyTypes`.
12
+ - The pre-parse global identifier substitution (`translateIdentifiers`,
13
+ `IdentifierIndex.toCanonical`) is removed. Domain vocabulary is resolved by
14
+ position after parsing (ADR 0051); there is no compatibility path.
15
+ - `Number`, `Boolean` and `String` are not type names; use `Float`, `Bool`,
16
+ `Text`.
17
+
18
+ ### Added
19
+
20
+ - **Position-aware vocabulary resolution (ADR 0051)** — R1 resolves
21
+ declarations and type positions on the AST, R2 resolves typed references
22
+ (dotted field paths, bare enum members under an expected enum type,
23
+ pattern constructors, equality-comparison operands) on Core using only
24
+ explicitly declared types. `CompileOptions.vocabulary`, `buildVocabularyScopes`,
25
+ `canonicalScopesJson`, `foldKey` (Unicode 15.1 C+S fold, NFC-closed) and
26
+ `resolvePolicyTypes` are exported. New diagnostics E800–E807 / W800–W801.
27
+ - Qualified enum members `E.M` type-check and evaluate.
28
+ - Toolchain constants `RESOLVER_VERSION`, `CASEFOLD_VERSION`, `CORE_IR_ABI`.
29
+ - LSP hover and field completion by resolved role.
30
+
3
31
  ## 1.0.3
4
32
 
5
33
  ### Added
package/README.md CHANGED
@@ -24,9 +24,9 @@ pnpm install @aster-cloud/aster-lang-ts
24
24
  ## Quick Start
25
25
 
26
26
  ```typescript
27
- import { canonicalize, lex, parse, lowerModule } from '@aster-cloud/aster-lang-ts';
27
+ import { parseSource, resolveAndLowerChecked } from '@aster-cloud/aster-lang-ts';
28
28
 
29
- // Compile pipeline
29
+ // Compile pipeline: canonicalize → lex → parse → name resolution (R1) → lower → name resolution (R2)
30
30
  const source = `
31
31
  Module greeting.
32
32
 
@@ -34,12 +34,16 @@ Rule greet given name, produce:
34
34
  Return Text.concat("Hello, ", name).
35
35
  `;
36
36
 
37
- const canonical = canonicalize(source);
38
- const tokens = lex(canonical);
39
- const ast = parse(tokens);
40
- const core = lowerModule(ast);
37
+ const { ast } = parseSource(source);
38
+ // Throws NameResolutionError (E8xx diagnostics) instead of returning Core with unresolved names
39
+ const { core, diagnostics } = resolveAndLowerChecked(ast);
41
40
  ```
42
41
 
42
+ Raw lowering (`lowerModule`) and the unchecked `resolveAndLower` are internal and not exported:
43
+ every public path to Core IR runs name resolution and refuses to emit IR on resolution errors.
44
+ Use `compile` / `compileAndTypecheck` from `@aster-cloud/aster-lang-ts/browser`,
45
+ `resolveAndLowerChecked`, or `resolvePolicyTypes`.
46
+
43
47
  ## Multi-Language Support
44
48
 
45
49
  Aster supports writing policies in multiple natural languages:
@@ -130,7 +134,9 @@ src/
130
134
  | `canonicalize(source, lexicon?)` | Normalize CNL source |
131
135
  | `lex(source, lexicon?)` | Tokenize source |
132
136
  | `parse(tokens)` | Parse to AST |
133
- | `lowerModule(ast)` | Convert AST to Core IR |
137
+ | `parseSource(source, lexicon?, scopes?)` | Canonicalize, tokenize and parse |
138
+ | `resolveAndLowerChecked(ast, scopes?)` | Name resolution + lowering to Core IR; throws `NameResolutionError` on E8xx |
139
+ | `resolvePolicyTypes(source, options)` | Resolved Data/Enum declarations with original spellings |
134
140
  | `typecheck(module)` | Type check module |
135
141
 
136
142
  ### Lexicon Exports
@@ -2,7 +2,8 @@
2
2
  import fs from 'node:fs';
3
3
  import * as cp from 'node:child_process';
4
4
  import * as path from 'node:path';
5
- import { canonicalize, lex, lowerModule } from '../src/index.js';
5
+ import { canonicalize, lex, parseSource } from '../src/index.js';
6
+ import { resolveAndLowerChecked } from '../src/compile-pipeline.js';
6
7
  import { parse as parseAst } from '../src/parser.js';
7
8
  import { emitJava } from '../src/jvm/emitter.js';
8
9
  import cac from 'cac';
@@ -27,14 +28,18 @@ async function cmdParse(file) {
27
28
  const { ast } = parseAst(toks);
28
29
  console.log(JSON.stringify(ast, null, 2));
29
30
  }
31
+ /** 源码 → Core:经名称解析 R1/R2(ADR 0051),任一 E8xx 抛出 NameResolutionError,不产出 IR。 */
32
+ function coreOf(input) {
33
+ return resolveAndLowerChecked(parseSource(input).ast).core;
34
+ }
30
35
  async function cmdCore(file) {
31
36
  const input = readFileStrict(file);
32
- const core = lowerModule(parseAst(lex(canonicalize(input))).ast);
37
+ const core = coreOf(input);
33
38
  console.log(JSON.stringify(core, null, 2));
34
39
  }
35
40
  async function cmdJvm(file, outDir = 'build/jvm-src', force = false) {
36
41
  const input = readFileStrict(file);
37
- const core = lowerModule(parseAst(lex(canonicalize(input))).ast);
42
+ const core = coreOf(input);
38
43
  const target = prepareOutDir(outDir, force);
39
44
  await emitJava(core, target);
40
45
  console.log('Wrote Java sources to', target);
@@ -59,7 +64,7 @@ async function ensureAsmEmitterBuilt() {
59
64
  async function cmdClass(file, outDir = 'build/jvm-classes') {
60
65
  await ensureAsmEmitterBuilt();
61
66
  const input = readFileStrict(file);
62
- const core = lowerModule(parseAst(lex(canonicalize(input))).ast);
67
+ const core = coreOf(input);
63
68
  const payload = JSON.stringify(core);
64
69
  fs.mkdirSync('build', { recursive: true });
65
70
  fs.writeFileSync('build/last-core.json', payload);
@@ -94,7 +99,7 @@ async function cmdTruffle(input, passthrough) {
94
99
  let corePath = input;
95
100
  if (input.endsWith('.aster')) {
96
101
  const src = readFileStrict(input);
97
- const core = lowerModule(parseAst(lex(canonicalize(src))).ast);
102
+ const core = coreOf(src);
98
103
  fs.mkdirSync('build', { recursive: true });
99
104
  corePath = path.join('build', `${path.basename(input, '.aster')}_core.json`);
100
105
  fs.writeFileSync(corePath, JSON.stringify(core));
@@ -1 +1 @@
1
- {"version":3,"file":"aster.js","sourceRoot":"","sources":["../../scripts/aster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aster.js","sourceRoot":"","sources":["../../scripts/aster.ts"],"names":[],"mappings":"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"}
@@ -43,9 +43,14 @@ if (diagnostics && diagnostics.length > 0) {
43
43
  process.exit(2);
44
44
  }
45
45
  }
46
- const { lowerModule } = await import('../src/lower_to_core.js');
47
- const core = lowerModule(ast);
48
- const pruned = prune(core);
46
+ // 名称解析 R1 → lower → R2(ADR 0051);任一 E8xx 不输出 IR
47
+ const { resolveAndLower } = await import('../src/compile-pipeline.js');
48
+ const resolved = resolveAndLower(ast);
49
+ for (const d of resolved.diagnostics)
50
+ console.error(`${d.severity}: ${d.code} ${d.message}`);
51
+ if (resolved.diagnostics.some(d => d.severity === 'error'))
52
+ process.exit(2);
53
+ const pruned = prune(resolved.core);
49
54
  console.log(JSON.stringify(pruned, null, 2));
50
55
  function prune(obj) {
51
56
  if (Array.isArray(obj))
@@ -1 +1 @@
1
- {"version":3,"file":"core-ir-json.js","sourceRoot":"","sources":["../../scripts/core-ir-json.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AAExD,gDAAgD;AAChD,yEAAyE;AACzE,8DAA8D;AAC9D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AACxD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;AACnE,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxF,IAAI,CAAC,SAAS,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAC/C,MAAM,OAAO,GAAG,YAAY;IAC1B,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,eAAe,EAAE,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE;IAC5E,CAAC,CAAC,SAAS,CAAC;AACd,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACvC,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC/B,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAErF,4CAA4C;AAC5C,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;IAC/D,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACxE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,OAAO,KAAK,GAAG,GAAG,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAChE,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;AAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;AAE3B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAE7C,SAAS,KAAK,CAAC,GAAY;IACzB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;YACpE,OAAO;YACP,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,cAAc;gBAAE,SAAS;YACzG,OAAO;YACP,IAAI,CAAC,KAAK,cAAc,IAAI,CAAC,KAAK,iBAAiB;gBAAE,SAAS;YAC9D,6BAA6B;YAC7B,IAAI,CAAC,KAAK,YAAY;gBAAE,SAAS;YACjC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,MAAM;gBAAE,SAAS;YAC1C,IAAI,CAAC,KAAK,aAAa;gBAAE,SAAS;YAClC,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,eAAe;gBAAE,SAAS;YACxD,IAAI,CAAC,KAAK,oBAAoB;gBAAE,SAAS;YACzC,mBAAmB;YACnB,IAAI,CAAC,KAAK,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACxE,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAY,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"core-ir-json.js","sourceRoot":"","sources":["../../scripts/core-ir-json.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import path from 'node:path';
5
5
  import { canonicalize } from '../src/frontend/canonicalizer.js';
6
6
  import { lex } from '../src/frontend/lexer.js';
7
7
  import { parse } from '../src/parser.js';
8
- import { lowerModule } from '../src/lower_to_core.js';
8
+ import { resolveAndLowerChecked } from '../src/compile-pipeline.js';
9
9
  import { emitJava } from '../src/jvm/emitter.js';
10
10
  import { prepareOutDir } from '../src/cli/utils/out-dir.js';
11
11
  import { gradleEnv } from '../src/cli/utils/gradle-env.js';
@@ -314,7 +314,8 @@ async function main() {
314
314
  const workflowModules = [];
315
315
  for (const input of inputs) {
316
316
  const src = fs.readFileSync(input, 'utf8');
317
- const core = lowerModule(parse(lex(canonicalize(src))).ast);
317
+ // 名称解析 R1 → lower → R2(ADR 0051);E8xx 时抛错,不生成 class
318
+ const core = resolveAndLowerChecked(parse(lex(canonicalize(src))).ast).core;
318
319
  const payload = JSON.stringify(core);
319
320
  fs.writeFileSync('build/last-core.json', payload);
320
321
  if (shouldUseFinanceDto(core.name)) {
@@ -1 +1 @@
1
- {"version":3,"file":"emit-classfiles.js","sourceRoot":"","sources":["../../scripts/emit-classfiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emit-classfiles.js","sourceRoot":"","sources":["../../scripts/emit-classfiles.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACpC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAC7D,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAClC,6BAA6B,EAC7B,GAAG,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,CAClC,CAAC;AACF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,oBAAoB;IACpB,0BAA0B;IAC1B,qBAAqB;IACrB,oBAAoB;IACpB,gCAAgC;IAChC,kCAAkC;IAClC,sBAAsB;IACtB,sBAAsB;IACtB,8BAA8B;IAC9B,yBAAyB;CAC1B,CAAC,CAAC;AACH,IAAI,qBAAqB,GAAG,KAAK,CAAC;AASlC,SAAS,mBAAmB,CAAC,UAAqC;IAChE,OAAO,CAAC,CAAC,UAAU,IAAI,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,qBAAqB;QAAE,OAAO;IAClC,EAAE,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,qBAAqB,GAAG,IAAI,CAAC;AAC/B,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAmB;IAC9C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO;IAC5C,mBAAmB,EAAE,CAAC;IACtB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;YAAE,SAAS;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC;QACjE,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAkB,EAAE,IAAiB;IAC7D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;IACpH,MAAM,WAAW,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,MAAM,GAAG,GAAG,8BAA8B,IAAI,CAAC,IAAI,OAAO,UAAU,SAAS,CAAC;IAC9E,OAAO,WAAW,mBAAmB,QAAQ,aAAa,GAAG,GAAG,mBAAmB,IAAI,CAAC,IAAI,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;AACrI,CAAC;AAED,SAAS,cAAc,CAAC,KAAmB,EAAE,MAAe,EAAE,OAAoB;IAChF,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC9C,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;IACD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IACjC,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC;IACxD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,eAAe,CAAC,CAAc;IACrC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC9B,OAAO,EAAE,IAAI,EAAE,QAAQ,KAAK,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QAC9F,CAAC;QACD,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC7B,OAAO,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QACtH,CAAC;QACD,KAAK,OAAO,CAAC;QACb,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QAClG,CAAC;QACD;YACE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IACrF,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,KAAK;YACR,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAC/E,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QACnF,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAChF,KAAK,QAAQ;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAClF,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAChG;YACE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IACjF,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;AAClD,MAAM,oBAAoB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,CAAC;AAC3E,6GAA6G;AAC7G,MAAM,mBAAmB,GAAG;IAC1B,2CAA2C,EAAE,2DAA2D;IACxG,4DAA4D,EAAQ,sBAAsB;IAC1F,mEAAmE,EAAE,mCAAmC;CACzG,CAAC;AACF,MAAM,sBAAsB,GAAG;IAC7B,IAAI,CAAC,OAAO,CAAC,0EAA0E,CAAC;IACxF,IAAI,CAAC,OAAO,CAAC,wEAAwE,CAAC;IACtF,IAAI,CAAC,OAAO,CAAC,0EAA0E,CAAC;IACxF,IAAI,CAAC,OAAO,CAAC,2EAA2E,CAAC;IACzF,IAAI,CAAC,OAAO,CAAC,oEAAoE,CAAC;IAClF,IAAI,CAAC,OAAO,CAAC,iFAAiF,CAAC;CAChG,CAAC;AAEF,SAAS,SAAS,CAChB,UAAmB,EACnB,MAAc,EACd,UAAkB,EAClB,KAAa;IAEb,MAAM,MAAM,GACV,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAChF,IAAI,MAAM;QAAE,OAAO;IACnB,MAAM,QAAQ,GAAG,UAAU;QACzB,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,CAAC;QAClD,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAClD,IAAI,CAAC;QACH,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YAC/C,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,SAAS,EAAE;SACjB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,mBAAmB,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACpE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,mBAAmB,EAAE,MAAM,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAmB;IAC3C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CACpB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5D,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAmB;IAC3C,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAsB;IAClD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,UAAU;YACb,OAAO,IAAI,CAAC;QACd,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACpD,KAAK,IAAI;YACP,OAAO,CACL,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC;gBAChC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAC5D,CAAC;QACJ,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAC5D,CAAC;QACJ;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAW,EAAE,aAAuB,EAAE;IAChE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAa,CAAC,GAAG,CAAC,CAAC;IAC9B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QAC7B,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,4CAA4C;YAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,MAAc;IAClD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC5G,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QAClE,OAAO;IACT,CAAC;IACD,MAAM,sBAAsB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,SAAS,GAAG;QAChB,WAAW;QACX,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,MAAM;QACN,GAAG,iBAAiB;QACpB,GAAG,sBAAsB;QACzB,GAAG,gBAAgB;KACpB,CAAC;IACF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CACtB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,CACnE,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAiB;IAChD,sCAAsC;IACtC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IACtE,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,4BAA4B;IAC5B,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;CAgBrB,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,cAAc,CAAC,EAAE,WAAW,CAAC,CAAC;IAE1E,8BAA8B;IAC9B,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;CAgBvB,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,gBAAgB,CAAC,EAAE,aAAa,CAAC,CAAC;IAE9E,sBAAsB;IACtB,MAAM,QAAQ,GAAG;;;;;;;;;;;;;CAalB,CAAC;IACA,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC;AACtE,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,OAA0D,EAC1D,MAAc;IAEd,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACjC,OAAO,CAAC,GAAG,CACT,yBAAyB,OAAO,CAAC,MAAM,2CAA2C,CACnF,CAAC;IACF,2DAA2D;IAC3D,uDAAuD;IACvD,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAElC,mCAAmC;IACnC,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAErC,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,OAAO,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,yCAAyC,KAAK,EAAE,CAAC,CAAC;QAC9D,MAAM,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,sBAAsB,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9C,sCAAsC;IACtC,SAAS,CAAC,UAAU,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,aAAa,CAAC,CAAC;IAEjG,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,gEAAgE;IAChE,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnD,oDAAoD;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC7F,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC7C,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEtC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,+CAA+C;IAC/C,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,eAAe,GAA6C,EAAE,CAAC;IAErE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC3C,oDAAoD;QACpD,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrC,EAAE,CAAC,aAAa,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAElD,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3B,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACtC,SAAS;QACX,CAAC;QAED,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CACnB,MAAM,EACN,CAAC,IAAI,EAAE,eAAe,EAAE,wBAAwB,EAAE,UAAU,MAAM,EAAE,CAAC,EACrE;gBACE,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;gBACrC,GAAG,EAAE,EAAE,GAAG,SAAS,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE;aACnD,CACF,CAAC;YACF,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACzB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CACtB,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,CACrE,CAAC;YACF,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,mBAAmB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;AAC5C,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;IACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;IAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from 'node:fs';
3
- import { canonicalize, lex, parse, lowerModule } from '../src/index.js';
3
+ import { parseSource, resolveAndLower } from '../src/compile-pipeline.js';
4
4
  import { DiagnosticError, formatDiagnostic } from '../src/diagnostics/diagnostics.js';
5
5
  function main() {
6
6
  const file = process.argv[2];
@@ -10,10 +10,13 @@ function main() {
10
10
  }
11
11
  const input = fs.readFileSync(file, 'utf8');
12
12
  try {
13
- const can = canonicalize(input);
14
- const toks = lex(can);
15
- const { ast } = parse(toks);
16
- const core = lowerModule(ast);
13
+ const { ast } = parseSource(input);
14
+ // 名称解析 R1 → lower → R2(ADR 0051);任一 E8xx 不输出 IR
15
+ const { core, diagnostics } = resolveAndLower(ast);
16
+ for (const d of diagnostics)
17
+ console.error(`${d.severity}: ${d.code} ${d.message}`);
18
+ if (diagnostics.some((d) => d.severity === 'error'))
19
+ process.exit(1);
17
20
  console.log(JSON.stringify(prune(core), null, 2));
18
21
  }
19
22
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"emit-core.js","sourceRoot":"","sources":["../../scripts/emit-core.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAEtF,SAAS,IAAI;IACX,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,IAAI,CAAC,YAAY,eAAe,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QACvD,CAAC;aAAM,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACxD,MAAM,GAAG,GAAG,CAA8D,CAAC;YAC3E,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,GAAG,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC;AAEP,SAAS,KAAK,CAAC,GAAY;IACzB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACvE,oDAAoD;YACpD,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,cAAc;gBAAE,SAAS;YACzG,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAY,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"emit-core.js","sourceRoot":"","sources":["../../scripts/emit-core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=generate-casefold.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-casefold.d.ts","sourceRoot":"","sources":["../../scripts/generate-casefold.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * 由 aster-lang-locales 的 Unicode 15.1 简单折叠数据(C+S)生成 TS 常量表。
3
+ *
4
+ * 用法:在仓库根目录执行 `pnpm run build && node dist/scripts/generate-casefold.js`。
5
+ * 仅在升级折叠数据时运行;生成物提交入库,构建与测试不依赖兄弟仓库。
6
+ */
7
+ import { readFileSync, writeFileSync } from 'node:fs';
8
+ import { join } from 'node:path';
9
+ const root = process.cwd();
10
+ const sourcePath = join(root, '..', 'aster-lang-locales', 'casefold', 'casefold-15.1.json');
11
+ const outputPath = join(root, 'src', 'config', 'lexicons', 'identifiers', 'casefold-table.generated.ts');
12
+ const source = JSON.parse(readFileSync(sourcePath, 'utf8'));
13
+ // 源文件的键按字典序排列,这里按码点数值排序保证输出稳定。
14
+ const entries = Object.entries(source.map)
15
+ .map(([from, to]) => [parseInt(from, 16), parseInt(to, 16)])
16
+ .sort((a, b) => a[0] - b[0]);
17
+ const hex = (cp) => '0x' + cp.toString(16).toUpperCase().padStart(4, '0');
18
+ const lines = entries.map(([from, to]) => ` [${hex(from)}, ${hex(to)}],`);
19
+ const content = `/**
20
+ * 本文件由 scripts/generate-casefold.ts 生成,请勿手工修改。
21
+ * 数据来源:aster-lang-locales/casefold/casefold-15.1.json(Unicode ${source.version} CaseFolding.txt 的 C+S 状态)。
22
+ */
23
+
24
+ /** 折叠表对应的 Unicode 版本,须与 toolchainId 的 casefold 分量一致。 */
25
+ export const CASEFOLD_VERSION = '${source.version}';
26
+
27
+ /** 码点 → 简单折叠后的码点;未出现的码点折叠为自身。 */
28
+ export const CASEFOLD_TABLE: ReadonlyMap<number, number> = new Map<number, number>([
29
+ ${lines.join('\n')}
30
+ ]);
31
+ `;
32
+ writeFileSync(outputPath, content);
33
+ console.log(`已生成 ${entries.length} 条折叠映射 -> ${outputPath}`);
34
+ //# sourceMappingURL=generate-casefold.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-casefold.js","sourceRoot":"","sources":["../../scripts/generate-casefold.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAOjC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC;AAC5F,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,6BAA6B,CAAC,CAAC;AAEzG,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAmB,CAAC;AAE9E,+BAA+B;AAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;KACvC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAU,CAAC;KACpE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/B,MAAM,GAAG,GAAG,CAAC,EAAU,EAAU,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1F,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AAE3E,MAAM,OAAO,GAAG;;iEAEiD,MAAM,CAAC,OAAO;;;;mCAI5C,MAAM,CAAC,OAAO;;;;EAI/C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;CAEjB,CAAC;AAEF,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AACnC,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,MAAM,aAAa,UAAU,EAAE,CAAC,CAAC"}
@@ -2,6 +2,7 @@
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
4
  import { canonicalize, lex, parse } from '../src/index.js';
5
+ import { resolveAndLower } from '../src/compile-pipeline.js';
5
6
  import { loadCorpus } from './corpus-loader.js';
6
7
  // ★ASTER_LANG_TEST_PATH 已设置时必须从该 checkout 读语料并验证确实生效;
7
8
  // 此前静态 import npm 包,corpus-regression 工作流设了变量却仍跑固定版本。
@@ -49,6 +50,11 @@ function resolveInputPath(legacyPath) {
49
50
  return corpusAbs;
50
51
  return legacyPath;
51
52
  }
53
+ /** 与编译入口相同的前端:parse → R1 → lower → R2(ADR 0051),不带词汇。 */
54
+ function coreOf(src) {
55
+ const { ast } = parse(lex(canonicalize(src)));
56
+ return resolveAndLower(ast);
57
+ }
52
58
  function runOneAst(inputPath, expectPath) {
53
59
  inputPath = resolveInputPath(inputPath);
54
60
  try {
@@ -80,11 +86,10 @@ async function runOneCore(inputPath, expectPath) {
80
86
  inputPath = resolveInputPath(inputPath);
81
87
  try {
82
88
  const src = fs.readFileSync(inputPath, 'utf8');
83
- const can = canonicalize(src);
84
- const toks = lex(can);
85
- const { ast } = parse(toks);
86
- const { lowerModule } = await import('../src/lower_to_core.js');
87
- const core = lowerModule(ast);
89
+ const { core, diagnostics } = coreOf(src);
90
+ if (diagnostics.some(d => d.severity === 'error')) {
91
+ throw new Error(`名称解析失败:${diagnostics.map(d => `${d.code} ${d.message}`).join('; ')}`);
92
+ }
88
93
  const actual = prune(core);
89
94
  const expected = prune(JSON.parse(fs.readFileSync(expectPath, 'utf8')));
90
95
  if (JSON.stringify(actual) !== JSON.stringify(expected)) {
@@ -128,13 +133,9 @@ async function runOneTypecheck(inputPath, expectPath) {
128
133
  inputPath = resolveInputPath(inputPath);
129
134
  try {
130
135
  const src = fs.readFileSync(inputPath, 'utf8');
131
- const can = canonicalize(src);
132
- const toks = lex(can);
133
- const { ast } = parse(toks);
134
- const { lowerModule } = await import('../src/lower_to_core.js');
135
- const core = lowerModule(ast);
136
+ const resolved = coreOf(src);
136
137
  const { typecheckModule } = await import('../src/typecheck.js');
137
- const diags = typecheckModule(core);
138
+ const diags = [...resolved.diagnostics, ...typecheckModule(resolved.core)];
138
139
  const expectedLines = Array.from(new Set(fs
139
140
  .readFileSync(expectPath, 'utf8')
140
141
  .split(/\r?\n/)
@@ -176,11 +177,10 @@ async function runOneTypecheckWithCaps(inputPath, expectPath, manifestPath) {
176
177
  inputPath = resolveInputPath(inputPath);
177
178
  try {
178
179
  const src = fs.readFileSync(inputPath, 'utf8');
179
- const can = canonicalize(src);
180
- const toks = lex(can);
181
- const { ast } = parse(toks);
182
- const { lowerModule } = await import('../src/lower_to_core.js');
183
- const core = lowerModule(ast);
180
+ const { core, diagnostics: resolution } = coreOf(src);
181
+ if (resolution.some(d => d.severity === 'error')) {
182
+ throw new Error(`名称解析失败:${resolution.map(d => `${d.code} ${d.message}`).join('; ')}`);
183
+ }
184
184
  const { typecheckModuleWithCapabilities } = await import('../src/typecheck.js');
185
185
  const manifest = JSON.parse(fs.readFileSync(manifestPath, 'utf8'));
186
186
  const diags = typecheckModuleWithCapabilities(core, manifest);
@@ -1 +1 @@
1
- {"version":3,"file":"golden.js","sourceRoot":"","sources":["../../scripts/golden.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"golden.js","sourceRoot":"","sources":["../../scripts/golden.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,sDAAsD;AACtD,wDAAwD;AACxD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;AAE3C,+EAA+E;AAC/E,6EAA6E;AAC7E,+EAA+E;AAC/E,qEAAqE;AACrE,+EAA+E;AAE/E,qFAAqF;AACrF,gFAAgF;AAChF,+DAA+D;AAC/D,EAAE;AACF,wEAAwE;AACxE,4EAA4E;AAC5E,6EAA6E;AAC7E,oBAAoB;AACpB,MAAM,gBAAgB,GAA4B;IAChD,CAAC,2CAA2C,EAAE,oBAAoB,CAAC;CACpE,CAAC;AAEF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,6BAA6B;AAC/E,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACtC,sFAAsF;IACtF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACnD,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,oFAAoF;IACpF,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IACjD,8EAA8E;IAC9E,oCAAoC;IACpC,KAAK,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,IAAI,gBAAgB,EAAE,CAAC;QACnD,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC7C,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QACtB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,yDAAyD;AACzD,SAAS,MAAM,CAAC,GAAW;IACzB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,SAAS,CAAC,SAAiB,EAAE,UAAkB;IACtD,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,KAAK,CAAC,aAAa,SAAS,EAAE,CAAC,CAAC;YACxC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACjD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,WAAW,SAAS,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAyB,CAAC;QACtC,OAAO,CAAC,KAAK,CAAC,cAAc,SAAS,KAAK,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,SAAiB,EAAE,UAAkB;IAC7D,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,UAAU,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,KAAK,CAAC,cAAc,SAAS,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACjD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,YAAY,SAAS,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAyB,CAAC;QACtC,OAAO,CAAC,KAAK,CAAC,eAAe,SAAS,KAAK,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB;IACzC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB;YACE,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY;IAC1C,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IAC5D,IAAI,qDAAqD,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3E,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,SAAiB,EAAE,UAAkB;IAClE,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAC9B,IAAI,GAAG,CACL,EAAE;aACC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC;aAChC,KAAK,CAAC,OAAO,CAAC;aACd,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;aACzB,GAAG,CAAC,sBAAsB,CAAC,CAC/B,CACF,CAAC;QACF,MAAM,WAAW,GACf,KAAK,CAAC,MAAM,KAAK,CAAC;YAChB,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;gBAC1B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,CAAC,cAAc,CAAC;YACpB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5F,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,mEAAmE;YACnE,IAAI,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,mBAAmB,SAAS,EAAE,CAAC,CAAC;gBAC9C,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAC/B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAyB,CAAC;QACtC,OAAO,CAAC,KAAK,CAAC,oBAAoB,SAAS,KAAK,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,SAAiB,EACjB,UAAkB,EAClB,YAAoB;IAEpB,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACtD,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,UAAU,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,MAAM,EAAE,+BAA+B,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;QACnE,MAAM,KAAK,GAAG,+BAA+B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QACtG,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAC5B,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAC5E,CAAC,IAAI,EAAE,CAAC;QACT,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAC9B,IAAI,GAAG,CACL,EAAE;aACC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC;aAChC,KAAK,CAAC,OAAO,CAAC;aACd,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;aACzB,GAAG,CAAC,sBAAsB,CAAC,CAC/B,CACF,CAAC,IAAI,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,8DAA8D;YAC9D,OAAO,CAAC,KAAK,CAAC,uCAAuC,SAAS,EAAE,CAAC,CAAC;YAClE,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAChC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7B,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAAyB,CAAC;QACtC,kCAAkC;QAClC,OAAO,CAAC,KAAK,CAAC,uCAAuC,SAAS,KAAK,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjG,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAW;IACtC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IACtB,MAAM,EAAE,GAAG,EAAE,GAAQ,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,EAAE,GAAQ,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,EAAE,kBAAkB;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,IAAI,GAAG,EAAE,CAAC,UAA2C,CAAC;IAC5D,OAAO,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,SAAS,CAAC,wCAAwC,EAAE,oDAAoD,CAAC,CAAC;IAC1G,SAAS,CAAC,wCAAwC,EAAE,oDAAoD,CAAC,CAAC;IAC1G,MAAM,UAAU,CAAC,wCAAwC,EAAE,qDAAqD,CAAC,CAAC;IAClH,MAAM,UAAU,CAAC,wCAAwC,EAAE,qDAAqD,CAAC,CAAC;IAClH,SAAS,CAAC,+CAA+C,EAAE,2DAA2D,CAAC,CAAC;IACxH,MAAM,UAAU,CACd,+CAA+C,EAC/C,4DAA4D,CAC7D,CAAC;IACF,SAAS,CACP,sDAAsD,EACtD,kEAAkE,CACnE,CAAC;IACF,MAAM,UAAU,CACd,sDAAsD,EACtD,mEAAmE,CACpE,CAAC;IACF,SAAS,CAAC,iDAAiD,EAAE,6DAA6D,CAAC,CAAC;IAC5H,MAAM,UAAU,CACd,iDAAiD,EACjD,8DAA8D,CAC/D,CAAC;IACF,eAAe;IACf,SAAS,CAAC,oDAAoD,EAAE,gEAAgE,CAAC,CAAC;IAClI,MAAM,UAAU,CAAC,oDAAoD,EAAE,iEAAiE,CAAC,CAAC;IAC1I,SAAS,CACP,2DAA2D,EAC3D,uEAAuE,CACxE,CAAC;IACF,MAAM,UAAU,CACd,2DAA2D,EAC3D,wEAAwE,CACzE,CAAC;IACF,SAAS,CACP,4DAA4D,EAC5D,wEAAwE,CACzE,CAAC;IACF,MAAM,UAAU,CACd,4DAA4D,EAC5D,yEAAyE,CAC1E,CAAC;IACF,SAAS,CAAC,kDAAkD,EAAE,8DAA8D,CAAC,CAAC;IAC9H,MAAM,UAAU,CAAC,kDAAkD,EAAE,+DAA+D,CAAC,CAAC;IACtI,gBAAgB;IAChB,SAAS,CAAC,8CAA8C,EAAE,0DAA0D,CAAC,CAAC;IACtH,MAAM,UAAU,CAAC,8CAA8C,EAAE,2DAA2D,CAAC,CAAC;IAC9H,SAAS,CAAC,8CAA8C,EAAE,0DAA0D,CAAC,CAAC;IACtH,MAAM,UAAU,CAAC,8CAA8C,EAAE,2DAA2D,CAAC,CAAC;IAC9H,SAAS,CAAC,+CAA+C,EAAE,2DAA2D,CAAC,CAAC;IACxH,MAAM,UAAU,CAAC,+CAA+C,EAAE,4DAA4D,CAAC,CAAC;IAChI,SAAS,CAAC,6CAA6C,EAAE,yDAAyD,CAAC,CAAC;IACpH,MAAM,UAAU,CAAC,6CAA6C,EAAE,0DAA0D,CAAC,CAAC;IAC5H,qCAAqC;IACrC,SAAS,CAAC,6CAA6C,EAAE,yDAAyD,CAAC,CAAC;IACpH,MAAM,UAAU,CAAC,6CAA6C,EAAE,0DAA0D,CAAC,CAAC;IAC5H,wBAAwB;IACxB,MAAM,eAAe,CACnB,8CAA8C,EAC9C,0DAA0D,CAC3D,CAAC;IACF,kEAAkE;IAClE,MAAM,eAAe,CACnB,oDAAoD,EACpD,gEAAgE,CACjE,CAAC;IACF,oCAAoC;IACpC,MAAM,eAAe,CACnB,sDAAsD,EACtD,kEAAkE,CACnE,CAAC;IACF,MAAM,eAAe,CACnB,uDAAuD,EACvD,mEAAmE,CACpE,CAAC;IACF,MAAM,eAAe,CACnB,sDAAsD,EACtD,kEAAkE,CACnE,CAAC;IACF,MAAM,eAAe,CACnB,iDAAiD,EACjD,6DAA6D,CAC9D,CAAC;IACF,MAAM,eAAe,CACnB,mDAAmD,EACnD,+DAA+D,CAChE,CAAC;IACF,MAAM,eAAe,CACnB,kDAAkD,EAClD,8DAA8D,CAC/D,CAAC;IACF,MAAM,eAAe,CACnB,oDAAoD,EACpD,gEAAgE,CACjE,CAAC;IACF,gBAAgB;IAChB,SAAS,CAAC,6CAA6C,EAAE,yDAAyD,CAAC,CAAC;IACpH,MAAM,UAAU,CAAC,6CAA6C,EAAE,0DAA0D,CAAC,CAAC;IAC5H,SAAS,CAAC,6CAA6C,EAAE,yDAAyD,CAAC,CAAC;IACpH,MAAM,UAAU,CAAC,6CAA6C,EAAE,0DAA0D,CAAC,CAAC;IAC5H,qBAAqB;IACrB,SAAS,CAAC,2CAA2C,EAAE,uDAAuD,CAAC,CAAC;IAChH,MAAM,UAAU,CAAC,2CAA2C,EAAE,wDAAwD,CAAC,CAAC;IACxH,gCAAgC;IAChC,SAAS,CAAC,iDAAiD,EAAE,6DAA6D,CAAC,CAAC;IAC5H,MAAM,UAAU,CACd,iDAAiD,EACjD,8DAA8D,CAC/D,CAAC;IACF,6CAA6C;IAC7C,SAAS,CACP,qDAAqD,EACrD,iEAAiE,CAClE,CAAC;IACF,MAAM,UAAU,CACd,qDAAqD,EACrD,kEAAkE,CACnE,CAAC;IACF,uCAAuC;IACvC,SAAS,CACP,kDAAkD,EAClD,8DAA8D,CAC/D,CAAC;IACF,MAAM,UAAU,CACd,kDAAkD,EAClD,+DAA+D,CAChE,CAAC;IACF,uDAAuD;IACvD,SAAS,CACP,sDAAsD,EACtD,kEAAkE,CACnE,CAAC;IACF,MAAM,UAAU,CACd,sDAAsD,EACtD,mEAAmE,CACpE,CAAC;IACF,+DAA+D;IAC/D,SAAS,CACP,sDAAsD,EACtD,kEAAkE,CACnE,CAAC;IACF,MAAM,UAAU,CACd,sDAAsD,EACtD,mEAAmE,CACpE,CAAC;IACF,8CAA8C;IAC9C,SAAS,CACP,wDAAwD,EACxD,oEAAoE,CACrE,CAAC;IACF,MAAM,UAAU,CACd,wDAAwD,EACxD,qEAAqE,CACtE,CAAC;IACF,wCAAwC;IACxC,SAAS,CACP,uDAAuD,EACvD,mEAAmE,CACpE,CAAC;IACF,MAAM,UAAU,CACd,uDAAuD,EACvD,oEAAoE,CACrE,CAAC;IACF,4BAA4B;IAC5B,SAAS,CAAC,gDAAgD,EAAE,4DAA4D,CAAC,CAAC;IAC1H,MAAM,UAAU,CACd,gDAAgD,EAChD,6DAA6D,CAC9D,CAAC;IACF,wBAAwB;IACxB,SAAS,CAAC,gDAAgD,EAAE,4DAA4D,CAAC,CAAC;IAC1H,MAAM,UAAU,CAAC,gDAAgD,EAAE,6DAA6D,CAAC,CAAC;IAClI,SAAS,CAAC,gDAAgD,EAAE,4DAA4D,CAAC,CAAC;IAC1H,MAAM,UAAU,CAAC,gDAAgD,EAAE,6DAA6D,CAAC,CAAC;IAClI,SAAS,CAAC,8CAA8C,EAAE,0DAA0D,CAAC,CAAC;IACtH,MAAM,UAAU,CAAC,8CAA8C,EAAE,2DAA2D,CAAC,CAAC;IAC9H,SAAS,CAAC,sDAAsD,EAAE,kEAAkE,CAAC,CAAC;IACtI,MAAM,UAAU,CAAC,sDAAsD,EAAE,mEAAmE,CAAC,CAAC;IAC9I,SAAS,CAAC,kDAAkD,EAAE,8DAA8D,CAAC,CAAC;IAC9H,MAAM,UAAU,CAAC,kDAAkD,EAAE,+DAA+D,CAAC,CAAC;IACtI,SAAS,CAAC,gDAAgD,EAAE,4DAA4D,CAAC,CAAC;IAC1H,MAAM,UAAU,CAAC,gDAAgD,EAAE,6DAA6D,CAAC,CAAC;IAClI,MAAM,eAAe,CACnB,oDAAoD,EACpD,gEAAgE,CACjE,CAAC;IACF,MAAM,eAAe,CACnB,+CAA+C,EAC/C,2DAA2D,CAC5D,CAAC;IACF,MAAM,eAAe,CACnB,iDAAiD,EACjD,6DAA6D,CAC9D,CAAC;IACF,MAAM,eAAe,CACnB,qDAAqD,EACrD,iEAAiE,CAClE,CAAC;IACF,MAAM,eAAe,CACnB,iDAAiD,EACjD,6DAA6D,CAC9D,CAAC;IACF,6CAA6C;IAC7C,MAAM,UAAU,CAAC,yDAAyD,EAAE,wDAAwD,CAAC,CAAC;IACtI,4DAA4D;IAC5D,MAAM,uBAAuB,CAC3B,iDAAiD,EACjD,0EAA0E,EAC1E,mEAAmE,CACpE,CAAC;IACF,MAAM,uBAAuB,CAC3B,iDAAiD,EACjD,wEAAwE,EACxE,oEAAoE,CACrE,CAAC;IACF,wDAAwD;IACxD,SAAS,CAAC,gDAAgD,EAAE,4DAA4D,CAAC,CAAC;IAC1H,MAAM,UAAU,CAAC,gDAAgD,EAAE,6DAA6D,CAAC,CAAC;IAClI,SAAS,CAAC,yDAAyD,EAAE,qEAAqE,CAAC,CAAC;IAC5I,MAAM,UAAU,CAAC,yDAAyD,EAAE,sEAAsE,CAAC,CAAC;IAEpJ,mDAAmD;IACnD,SAAS,CAAC,uDAAuD,EAAE,mEAAmE,CAAC,CAAC;IACxI,MAAM,UAAU,CAAC,uDAAuD,EAAE,oEAAoE,CAAC,CAAC;IAChJ,SAAS,CAAC,qDAAqD,EAAE,iEAAiE,CAAC,CAAC;IACpI,MAAM,UAAU,CAAC,qDAAqD,EAAE,kEAAkE,CAAC,CAAC;IAE5I,gEAAgE;IAChE,SAAS,CAAC,uEAAuE,EAAE,mFAAmF,CAAC,CAAC;IACxK,MAAM,UAAU,CAAC,uEAAuE,EAAE,oFAAoF,CAAC,CAAC;IAChL,SAAS,CAAC,8DAA8D,EAAE,0EAA0E,CAAC,CAAC;IACtJ,MAAM,UAAU,CAAC,8DAA8D,EAAE,2EAA2E,CAAC,CAAC;IAE9J,wEAAwE;IACxE,CAAC;QACC,MAAM,MAAM,GAAG;YACb,qBAAqB;YACrB,EAAE;YACF,qEAAqE;YACrE,gBAAgB;YAChB,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,UAAU,GAAG;YACjB,qBAAqB;YACrB,EAAE;YACF,4DAA4D;YAC5D,gBAAgB;YAChB,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACzC,MAAM,EAAE,GACN,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACtB,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YACpD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACpE,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;YAC5C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;IAC1D,IAAI,WAAW,KAAK,GAAG,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,GAAG,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC;QACH,MAAM,eAAe,CAAC,kDAAkD,EAAE,8DAA8D,CAAC,CAAC;QAC1I,MAAM,eAAe,CAAC,2DAA2D,EAAE,uEAAuE,CAAC,CAAC;QAE5J,iCAAiC;QACjC,MAAM,eAAe,CAAC,+DAA+D,EAAE,2EAA2E,CAAC,CAAC;QACpK,MAAM,eAAe,CAAC,mEAAmE,EAAE,+EAA+E,CAAC,CAAC;QAC5K,MAAM,eAAe,CAAC,gEAAgE,EAAE,4EAA4E,CAAC,CAAC;QACtK,MAAM,eAAe,CAAC,+DAA+D,EAAE,2EAA2E,CAAC,CAAC;QACpK,MAAM,eAAe,CAAC,kEAAkE,EAAE,8EAA8E,CAAC,CAAC;QAC1K,MAAM,eAAe,CAAC,8DAA8D,EAAE,0EAA0E,CAAC,CAAC;QAElK,yDAAyD;QACzD,MAAM,eAAe,CAAC,qDAAqD,EAAE,iEAAiE,CAAC,CAAC;QAChJ,MAAM,eAAe,CAAC,4DAA4D,EAAE,wEAAwE,CAAC,CAAC;QAC9J,MAAM,eAAe,CAAC,0DAA0D,EAAE,sEAAsE,CAAC,CAAC;QAC1J,MAAM,eAAe,CAAC,mEAAmE,EAAE,+EAA+E,CAAC,CAAC;QAC5K,MAAM,eAAe,CAAC,8DAA8D,EAAE,0EAA0E,CAAC,CAAC;QAClK,MAAM,eAAe,CAAC,4DAA4D,EAAE,wEAAwE,CAAC,CAAC;QAC9J,MAAM,eAAe,CAAC,2DAA2D,EAAE,uEAAuE,CAAC,CAAC;QAC5J,MAAM,eAAe,CAAC,4DAA4D,EAAE,wEAAwE,CAAC,CAAC;QAC9J,MAAM,eAAe,CAAC,0DAA0D,EAAE,sEAAsE,CAAC,CAAC;QAC1J,MAAM,eAAe,CAAC,+DAA+D,EAAE,2EAA2E,CAAC,CAAC;QACpK,MAAM,eAAe,CAAC,wDAAwD,EAAE,oEAAoE,CAAC,CAAC;QACtJ,MAAM,eAAe,CAAC,wDAAwD,EAAE,oEAAoE,CAAC,CAAC;QACtJ,MAAM,eAAe,CAAC,8DAA8D,EAAE,0EAA0E,CAAC,CAAC;QAClK,MAAM,eAAe,CAAC,gEAAgE,EAAE,4EAA4E,CAAC,CAAC;QACtK,MAAM,eAAe,CAAC,+DAA+D,EAAE,2EAA2E,CAAC,CAAC;QACpK,MAAM,eAAe,CAAC,0DAA0D,EAAE,sEAAsE,CAAC,CAAC;QAC1J,MAAM,eAAe,CAAC,0DAA0D,EAAE,sEAAsE,CAAC,CAAC;QAC1J,MAAM,eAAe,CAAC,kEAAkE,EAAE,8EAA8E,CAAC,CAAC;QAE1K,kFAAkF;QAClF,sFAAsF;QACtF,MAAM,eAAe,CAAC,oDAAoD,EAAE,gEAAgE,CAAC,CAAC;QAC9I,MAAM,eAAe,CAAC,uDAAuD,EAAE,mEAAmE,CAAC,CAAC;QACpJ,MAAM,eAAe,CAAC,oDAAoD,EAAE,gEAAgE,CAAC,CAAC;QAC9I,MAAM,eAAe,CAAC,kDAAkD,EAAE,8DAA8D,CAAC,CAAC;QAC1I,MAAM,eAAe,CAAC,qDAAqD,EAAE,iEAAiE,CAAC,CAAC;QAChJ,MAAM,eAAe,CAAC,2DAA2D,EAAE,uEAAuE,CAAC,CAAC;IAC9J,CAAC;YAAS,CAAC;QACT,mBAAmB;QACnB,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,WAAW,CAAC;QACtD,CAAC;IACH,CAAC;AAGH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;IACf,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,SAAS,KAAK,CAAC,GAAY;IACzB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAA8B,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACvE,mEAAmE;YACnE,IAAI,CAAC,KAAK,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACxE,oDAAoD;YACpD,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,cAAc;gBAAE,SAAS;YACzG,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAY,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -94,6 +94,7 @@ function measureCompilationProject(project, iterations) {
94
94
  stageStart = performance.now();
95
95
  const asts = tokenSets.map(tokens => parse(tokens).ast);
96
96
  parseSamples.push(performance.now() - stageStart);
97
+ // 只测 lower 阶段耗时、不产出 IR,故不经名称解析(R1/R2 不计入此阶段)
97
98
  stageStart = performance.now();
98
99
  for (const ast of asts) {
99
100
  lowerModule(ast);