@tsonic/emitter 0.0.76 → 0.0.77

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 (625) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/array.test.js +3 -3
  3. package/dist/array.test.js.map +1 -1
  4. package/dist/core/format/backend-ast/invariants.test.js +5 -0
  5. package/dist/core/format/backend-ast/invariants.test.js.map +1 -1
  6. package/dist/core/format/backend-ast/printer-colon-detection.d.ts.map +1 -1
  7. package/dist/core/format/backend-ast/printer-colon-detection.js +2 -0
  8. package/dist/core/format/backend-ast/printer-colon-detection.js.map +1 -1
  9. package/dist/core/format/backend-ast/printer-expressions.d.ts.map +1 -1
  10. package/dist/core/format/backend-ast/printer-expressions.js +4 -0
  11. package/dist/core/format/backend-ast/printer-expressions.js.map +1 -1
  12. package/dist/core/format/backend-ast/printer-precedence.d.ts.map +1 -1
  13. package/dist/core/format/backend-ast/printer-precedence.js +1 -0
  14. package/dist/core/format/backend-ast/printer-precedence.js.map +1 -1
  15. package/dist/core/format/backend-ast/types/expression-ast.d.ts +5 -1
  16. package/dist/core/format/backend-ast/types/expression-ast.d.ts.map +1 -1
  17. package/dist/core/format/backend-ast/utils.d.ts +3 -0
  18. package/dist/core/format/backend-ast/utils.d.ts.map +1 -1
  19. package/dist/core/format/backend-ast/utils.js +39 -0
  20. package/dist/core/format/backend-ast/utils.js.map +1 -1
  21. package/dist/core/format/backend-ast/utils.test.js +13 -1
  22. package/dist/core/format/backend-ast/utils.test.js.map +1 -1
  23. package/dist/core/format/local-names.d.ts.map +1 -1
  24. package/dist/core/format/local-names.js +3 -2
  25. package/dist/core/format/local-names.js.map +1 -1
  26. package/dist/core/format/local-names.test.js +7 -6
  27. package/dist/core/format/local-names.test.js.map +1 -1
  28. package/dist/core/format/module-emitter/orchestrator.d.ts.map +1 -1
  29. package/dist/core/format/module-emitter/orchestrator.js +3 -1
  30. package/dist/core/format/module-emitter/orchestrator.js.map +1 -1
  31. package/dist/core/format/module-emitter/static-container.d.ts.map +1 -1
  32. package/dist/core/format/module-emitter/static-container.js +2 -4
  33. package/dist/core/format/module-emitter/static-container.js.map +1 -1
  34. package/dist/core/module-emitter-cases/class-and-recursion.test.js +4 -1
  35. package/dist/core/module-emitter-cases/class-and-recursion.test.js.map +1 -1
  36. package/dist/core/module-emitter-cases/static-containers.test.js +111 -1
  37. package/dist/core/module-emitter-cases/static-containers.test.js.map +1 -1
  38. package/dist/core/semantic/adapt-result.d.ts +20 -0
  39. package/dist/core/semantic/adapt-result.d.ts.map +1 -0
  40. package/dist/core/semantic/adapt-result.js +30 -0
  41. package/dist/core/semantic/adapt-result.js.map +1 -0
  42. package/dist/core/semantic/array-expected-types.d.ts.map +1 -1
  43. package/dist/core/semantic/array-expected-types.js.map +1 -1
  44. package/dist/core/semantic/assignment-flow.d.ts.map +1 -1
  45. package/dist/core/semantic/assignment-flow.js +26 -3
  46. package/dist/core/semantic/assignment-flow.js.map +1 -1
  47. package/dist/core/semantic/async-wrapper-types.d.ts +1 -0
  48. package/dist/core/semantic/async-wrapper-types.d.ts.map +1 -1
  49. package/dist/core/semantic/async-wrapper-types.js +19 -1
  50. package/dist/core/semantic/async-wrapper-types.js.map +1 -1
  51. package/dist/core/semantic/boolean-condition-main.d.ts.map +1 -1
  52. package/dist/core/semantic/boolean-condition-main.js +6 -2
  53. package/dist/core/semantic/boolean-condition-main.js.map +1 -1
  54. package/dist/core/semantic/boolean-context.test.js +2 -1
  55. package/dist/core/semantic/boolean-context.test.js.map +1 -1
  56. package/dist/core/semantic/broad-array-storage.d.ts.map +1 -1
  57. package/dist/core/semantic/broad-array-storage.js +2 -5
  58. package/dist/core/semantic/broad-array-storage.js.map +1 -1
  59. package/dist/core/semantic/broad-object-types.d.ts +1 -0
  60. package/dist/core/semantic/broad-object-types.d.ts.map +1 -1
  61. package/dist/core/semantic/broad-object-types.js +39 -0
  62. package/dist/core/semantic/broad-object-types.js.map +1 -1
  63. package/dist/core/semantic/clr-type-identity.d.ts +1 -2
  64. package/dist/core/semantic/clr-type-identity.d.ts.map +1 -1
  65. package/dist/core/semantic/clr-type-identity.js +3 -65
  66. package/dist/core/semantic/clr-type-identity.js.map +1 -1
  67. package/dist/core/semantic/comparable-types.d.ts.map +1 -1
  68. package/dist/core/semantic/comparable-types.js +61 -27
  69. package/dist/core/semantic/comparable-types.js.map +1 -1
  70. package/dist/core/semantic/comparable-types.test.js.map +1 -1
  71. package/dist/core/semantic/deterministic-type-keys.d.ts.map +1 -1
  72. package/dist/core/semantic/deterministic-type-keys.js +90 -37
  73. package/dist/core/semantic/deterministic-type-keys.js.map +1 -1
  74. package/dist/core/semantic/deterministic-type-keys.test.d.ts +2 -0
  75. package/dist/core/semantic/deterministic-type-keys.test.d.ts.map +1 -0
  76. package/dist/core/semantic/deterministic-type-keys.test.js +38 -0
  77. package/dist/core/semantic/deterministic-type-keys.test.js.map +1 -0
  78. package/dist/core/semantic/direct-storage-ir-types.d.ts +1 -1
  79. package/dist/core/semantic/direct-storage-ir-types.d.ts.map +1 -1
  80. package/dist/core/semantic/direct-storage-ir-types.js +12 -3
  81. package/dist/core/semantic/direct-storage-ir-types.js.map +1 -1
  82. package/dist/core/semantic/direct-value-surfaces.d.ts.map +1 -1
  83. package/dist/core/semantic/direct-value-surfaces.js +165 -6
  84. package/dist/core/semantic/direct-value-surfaces.js.map +1 -1
  85. package/dist/core/semantic/direct-value-surfaces.test.js +69 -6
  86. package/dist/core/semantic/direct-value-surfaces.test.js.map +1 -1
  87. package/dist/core/semantic/expected-type-matching.d.ts.map +1 -1
  88. package/dist/core/semantic/expected-type-matching.js +4 -5
  89. package/dist/core/semantic/expected-type-matching.js.map +1 -1
  90. package/dist/core/semantic/implicit-interfaces.d.ts.map +1 -1
  91. package/dist/core/semantic/implicit-interfaces.js.map +1 -1
  92. package/dist/core/semantic/imports-cases/basic-and-local.test.js +8 -8
  93. package/dist/core/semantic/imports-cases/basic-and-local.test.js.map +1 -1
  94. package/dist/core/semantic/imports.js +3 -2
  95. package/dist/core/semantic/imports.js.map +1 -1
  96. package/dist/core/semantic/index.d.ts +1 -1
  97. package/dist/core/semantic/index.d.ts.map +1 -1
  98. package/dist/core/semantic/index.js +1 -1
  99. package/dist/core/semantic/index.js.map +1 -1
  100. package/dist/core/semantic/instanceof-predicate-refinements.d.ts.map +1 -1
  101. package/dist/core/semantic/instanceof-predicate-refinements.js +1 -9
  102. package/dist/core/semantic/instanceof-predicate-refinements.js.map +1 -1
  103. package/dist/core/semantic/js-array-surface-members.d.ts +4 -0
  104. package/dist/core/semantic/js-array-surface-members.d.ts.map +1 -0
  105. package/dist/core/semantic/js-array-surface-members.js +32 -0
  106. package/dist/core/semantic/js-array-surface-members.js.map +1 -0
  107. package/dist/core/semantic/materialized-narrowing.d.ts +1 -0
  108. package/dist/core/semantic/materialized-narrowing.d.ts.map +1 -1
  109. package/dist/core/semantic/materialized-narrowing.js +170 -34
  110. package/dist/core/semantic/materialized-narrowing.js.map +1 -1
  111. package/dist/core/semantic/materialized-narrowing.test.js +24 -6
  112. package/dist/core/semantic/materialized-narrowing.test.js.map +1 -1
  113. package/dist/core/semantic/module-map.d.ts.map +1 -1
  114. package/dist/core/semantic/module-map.js +4 -6
  115. package/dist/core/semantic/module-map.js.map +1 -1
  116. package/dist/core/semantic/module-type-collisions.d.ts +7 -0
  117. package/dist/core/semantic/module-type-collisions.d.ts.map +1 -0
  118. package/dist/core/semantic/module-type-collisions.js +24 -0
  119. package/dist/core/semantic/module-type-collisions.js.map +1 -0
  120. package/dist/core/semantic/mutable-storage-helpers.d.ts +1 -1
  121. package/dist/core/semantic/mutable-storage-helpers.d.ts.map +1 -1
  122. package/dist/core/semantic/mutable-storage-helpers.js +4 -12
  123. package/dist/core/semantic/mutable-storage-helpers.js.map +1 -1
  124. package/dist/core/semantic/naming-collisions.d.ts.map +1 -1
  125. package/dist/core/semantic/naming-collisions.js +13 -3
  126. package/dist/core/semantic/naming-collisions.js.map +1 -1
  127. package/dist/core/semantic/narrowed-expression-types.d.ts +3 -1
  128. package/dist/core/semantic/narrowed-expression-types.d.ts.map +1 -1
  129. package/dist/core/semantic/narrowed-expression-types.js +138 -16
  130. package/dist/core/semantic/narrowed-expression-types.js.map +1 -1
  131. package/dist/core/semantic/narrowed-union-resolution.d.ts.map +1 -1
  132. package/dist/core/semantic/narrowed-union-resolution.js +13 -2
  133. package/dist/core/semantic/narrowed-union-resolution.js.map +1 -1
  134. package/dist/core/semantic/narrowing-builder-core.d.ts +3 -2
  135. package/dist/core/semantic/narrowing-builder-core.d.ts.map +1 -1
  136. package/dist/core/semantic/narrowing-builder-core.js +85 -126
  137. package/dist/core/semantic/narrowing-builder-core.js.map +1 -1
  138. package/dist/core/semantic/narrowing-builder-core.test.js +3 -2
  139. package/dist/core/semantic/narrowing-builder-core.test.js.map +1 -1
  140. package/dist/core/semantic/narrowing-builder-unions.d.ts.map +1 -1
  141. package/dist/core/semantic/narrowing-builder-unions.js +43 -7
  142. package/dist/core/semantic/narrowing-builder-unions.js.map +1 -1
  143. package/dist/core/semantic/narrowing-builders.d.ts +1 -1
  144. package/dist/core/semantic/narrowing-builders.d.ts.map +1 -1
  145. package/dist/core/semantic/narrowing-builders.js +1 -1
  146. package/dist/core/semantic/narrowing-builders.js.map +1 -1
  147. package/dist/core/semantic/narrowing-refinements.d.ts +1 -1
  148. package/dist/core/semantic/narrowing-refinements.d.ts.map +1 -1
  149. package/dist/core/semantic/narrowing-refinements.js +1 -1
  150. package/dist/core/semantic/narrowing-refinements.js.map +1 -1
  151. package/dist/core/semantic/nullable-typeof-refinements.d.ts +1 -5
  152. package/dist/core/semantic/nullable-typeof-refinements.d.ts.map +1 -1
  153. package/dist/core/semantic/nullable-typeof-refinements.js +128 -57
  154. package/dist/core/semantic/nullable-typeof-refinements.js.map +1 -1
  155. package/dist/core/semantic/nullish-value-helpers.d.ts +1 -1
  156. package/dist/core/semantic/nullish-value-helpers.d.ts.map +1 -1
  157. package/dist/core/semantic/nullish-value-helpers.js +18 -9
  158. package/dist/core/semantic/nullish-value-helpers.js.map +1 -1
  159. package/dist/core/semantic/runtime-materialization-targets.js +1 -1
  160. package/dist/core/semantic/runtime-materialization-targets.js.map +1 -1
  161. package/dist/core/semantic/runtime-reification.d.ts +1 -0
  162. package/dist/core/semantic/runtime-reification.d.ts.map +1 -1
  163. package/dist/core/semantic/runtime-reification.js +141 -35
  164. package/dist/core/semantic/runtime-reification.js.map +1 -1
  165. package/dist/core/semantic/runtime-union-family-preservation.js +1 -1
  166. package/dist/core/semantic/runtime-union-family-preservation.js.map +1 -1
  167. package/dist/core/semantic/runtime-union-matching.d.ts.map +1 -1
  168. package/dist/core/semantic/runtime-union-matching.js +13 -0
  169. package/dist/core/semantic/runtime-union-matching.js.map +1 -1
  170. package/dist/core/semantic/runtime-union-member-mapping.test.js +1 -1
  171. package/dist/core/semantic/runtime-union-member-mapping.test.js.map +1 -1
  172. package/dist/core/semantic/runtime-union-ordering.d.ts.map +1 -1
  173. package/dist/core/semantic/runtime-union-ordering.js +10 -22
  174. package/dist/core/semantic/runtime-union-ordering.js.map +1 -1
  175. package/dist/core/semantic/runtime-union-projection.d.ts.map +1 -1
  176. package/dist/core/semantic/runtime-union-projection.js +23 -7
  177. package/dist/core/semantic/runtime-union-projection.js.map +1 -1
  178. package/dist/core/semantic/runtime-union-projection.test.js +19 -1
  179. package/dist/core/semantic/runtime-union-projection.test.js.map +1 -1
  180. package/dist/core/semantic/runtime-union-registry.js +13 -13
  181. package/dist/core/semantic/runtime-union-registry.js.map +1 -1
  182. package/dist/core/semantic/runtime-unions.d.ts.map +1 -1
  183. package/dist/core/semantic/runtime-unions.js +47 -21
  184. package/dist/core/semantic/runtime-unions.js.map +1 -1
  185. package/dist/core/semantic/runtime-unions.test.js +12 -7
  186. package/dist/core/semantic/runtime-unions.test.js.map +1 -1
  187. package/dist/core/semantic/semantic-union-members.d.ts.map +1 -1
  188. package/dist/core/semantic/semantic-union-members.js.map +1 -1
  189. package/dist/core/semantic/storage-erased-adaptation.d.ts.map +1 -1
  190. package/dist/core/semantic/storage-erased-adaptation.js +8 -11
  191. package/dist/core/semantic/storage-erased-adaptation.js.map +1 -1
  192. package/dist/core/semantic/storage-erased-adaptation.test.js +4 -1
  193. package/dist/core/semantic/storage-erased-adaptation.test.js.map +1 -1
  194. package/dist/core/semantic/storage-types.d.ts.map +1 -1
  195. package/dist/core/semantic/storage-types.js +4 -2
  196. package/dist/core/semantic/storage-types.js.map +1 -1
  197. package/dist/core/semantic/structural-shape-matching.d.ts +5 -1
  198. package/dist/core/semantic/structural-shape-matching.d.ts.map +1 -1
  199. package/dist/core/semantic/structural-shape-matching.js +29 -4
  200. package/dist/core/semantic/structural-shape-matching.js.map +1 -1
  201. package/dist/core/semantic/symbol-types.d.ts +2 -9
  202. package/dist/core/semantic/symbol-types.d.ts.map +1 -1
  203. package/dist/core/semantic/symbol-types.js +7 -11
  204. package/dist/core/semantic/symbol-types.js.map +1 -1
  205. package/dist/core/semantic/truthiness-evaluation.d.ts.map +1 -1
  206. package/dist/core/semantic/truthiness-evaluation.js +3 -3
  207. package/dist/core/semantic/truthiness-evaluation.js.map +1 -1
  208. package/dist/core/semantic/type-compatibility.d.ts +4 -2
  209. package/dist/core/semantic/type-compatibility.d.ts.map +1 -1
  210. package/dist/core/semantic/type-compatibility.js +62 -2
  211. package/dist/core/semantic/type-compatibility.js.map +1 -1
  212. package/dist/core/semantic/type-domains.d.ts +17 -0
  213. package/dist/core/semantic/type-domains.d.ts.map +1 -0
  214. package/dist/core/semantic/type-domains.js +7 -0
  215. package/dist/core/semantic/type-domains.js.map +1 -0
  216. package/dist/core/semantic/type-equivalence.d.ts.map +1 -1
  217. package/dist/core/semantic/type-equivalence.js +12 -7
  218. package/dist/core/semantic/type-equivalence.js.map +1 -1
  219. package/dist/core/semantic/type-equivalence.test.js +34 -0
  220. package/dist/core/semantic/type-equivalence.test.js.map +1 -1
  221. package/dist/core/semantic/type-resolution-cases/array-like-element.test.js +13 -4
  222. package/dist/core/semantic/type-resolution-cases/array-like-element.test.js.map +1 -1
  223. package/dist/core/semantic/type-resolution-cases/helpers.d.ts +2 -2
  224. package/dist/core/semantic/type-resolution-cases/helpers.d.ts.map +1 -1
  225. package/dist/core/semantic/type-resolution-cases/helpers.js +2 -2
  226. package/dist/core/semantic/type-resolution-cases/helpers.js.map +1 -1
  227. package/dist/core/semantic/type-resolution-cases/typeof-narrowing.test.d.ts +2 -0
  228. package/dist/core/semantic/type-resolution-cases/typeof-narrowing.test.d.ts.map +1 -0
  229. package/dist/core/semantic/type-resolution-cases/typeof-narrowing.test.js +36 -0
  230. package/dist/core/semantic/type-resolution-cases/typeof-narrowing.test.js.map +1 -0
  231. package/dist/core/semantic/type-resolution.test.d.ts +1 -1
  232. package/dist/core/semantic/type-resolution.test.d.ts.map +1 -1
  233. package/dist/core/semantic/type-resolution.test.js +1 -1
  234. package/dist/core/semantic/type-resolution.test.js.map +1 -1
  235. package/dist/core/semantic/type-substitution.d.ts.map +1 -1
  236. package/dist/core/semantic/type-substitution.js +2 -1
  237. package/dist/core/semantic/type-substitution.js.map +1 -1
  238. package/dist/core/semantic/union-predicate-matching.d.ts.map +1 -1
  239. package/dist/core/semantic/union-predicate-matching.js +1 -1
  240. package/dist/core/semantic/union-predicate-matching.js.map +1 -1
  241. package/dist/core/semantic/union-typeof-matching.d.ts.map +1 -1
  242. package/dist/core/semantic/union-typeof-matching.js +72 -22
  243. package/dist/core/semantic/union-typeof-matching.js.map +1 -1
  244. package/dist/core/semantic/variable-type-resolution.d.ts +1 -0
  245. package/dist/core/semantic/variable-type-resolution.d.ts.map +1 -1
  246. package/dist/core/semantic/variable-type-resolution.js +62 -6
  247. package/dist/core/semantic/variable-type-resolution.js.map +1 -1
  248. package/dist/duplicate-type-suppression.d.ts.map +1 -1
  249. package/dist/duplicate-type-suppression.js.map +1 -1
  250. package/dist/emitter-types/context.d.ts +1 -0
  251. package/dist/emitter-types/context.d.ts.map +1 -1
  252. package/dist/emitter-types/context.js +12 -1
  253. package/dist/emitter-types/context.js.map +1 -1
  254. package/dist/emitter-types/core.d.ts +10 -9
  255. package/dist/emitter-types/core.d.ts.map +1 -1
  256. package/dist/emitter-types/fqn.d.ts +0 -1
  257. package/dist/emitter-types/fqn.d.ts.map +1 -1
  258. package/dist/emitter-types/fqn.js +0 -1
  259. package/dist/emitter-types/fqn.js.map +1 -1
  260. package/dist/emitter-types/index.d.ts +1 -1
  261. package/dist/emitter-types/index.d.ts.map +1 -1
  262. package/dist/emitter-types/index.js +1 -1
  263. package/dist/emitter-types/index.js.map +1 -1
  264. package/dist/emitter.d.ts +3 -3
  265. package/dist/emitter.d.ts.map +1 -1
  266. package/dist/emitter.js +1 -7
  267. package/dist/emitter.js.map +1 -1
  268. package/dist/expression-emitter.d.ts.map +1 -1
  269. package/dist/expression-emitter.js +7 -2
  270. package/dist/expression-emitter.js.map +1 -1
  271. package/dist/expressions/access-binding.d.ts.map +1 -1
  272. package/dist/expressions/access-binding.js +32 -46
  273. package/dist/expressions/access-binding.js.map +1 -1
  274. package/dist/expressions/access-computed.d.ts.map +1 -1
  275. package/dist/expressions/access-computed.js +7 -8
  276. package/dist/expressions/access-computed.js.map +1 -1
  277. package/dist/expressions/access-length.d.ts +5 -9
  278. package/dist/expressions/access-length.d.ts.map +1 -1
  279. package/dist/expressions/access-length.js +17 -225
  280. package/dist/expressions/access-length.js.map +1 -1
  281. package/dist/expressions/access-property.d.ts +1 -2
  282. package/dist/expressions/access-property.d.ts.map +1 -1
  283. package/dist/expressions/access-property.js +20 -94
  284. package/dist/expressions/access-property.js.map +1 -1
  285. package/dist/expressions/access-resolution-receivers.d.ts.map +1 -1
  286. package/dist/expressions/access-resolution-receivers.js +14 -5
  287. package/dist/expressions/access-resolution-receivers.js.map +1 -1
  288. package/dist/expressions/access-resolution-types.d.ts.map +1 -1
  289. package/dist/expressions/access-resolution-types.js +7 -0
  290. package/dist/expressions/access-resolution-types.js.map +1 -1
  291. package/dist/expressions/access.d.ts +2 -2
  292. package/dist/expressions/access.d.ts.map +1 -1
  293. package/dist/expressions/access.js +6 -5
  294. package/dist/expressions/access.js.map +1 -1
  295. package/dist/expressions/architecture-invariants.test.js +18 -0
  296. package/dist/expressions/architecture-invariants.test.js.map +1 -1
  297. package/dist/expressions/await-normalization.d.ts.map +1 -1
  298. package/dist/expressions/await-normalization.js +53 -13
  299. package/dist/expressions/await-normalization.js.map +1 -1
  300. package/dist/expressions/calls/call-analysis.d.ts +0 -1
  301. package/dist/expressions/calls/call-analysis.d.ts.map +1 -1
  302. package/dist/expressions/calls/call-analysis.js +0 -7
  303. package/dist/expressions/calls/call-analysis.js.map +1 -1
  304. package/dist/expressions/calls/call-arguments-emit.d.ts.map +1 -1
  305. package/dist/expressions/calls/call-arguments-emit.js +219 -36
  306. package/dist/expressions/calls/call-arguments-emit.js.map +1 -1
  307. package/dist/expressions/calls/call-arguments-helpers.d.ts.map +1 -1
  308. package/dist/expressions/calls/call-arguments-helpers.js.map +1 -1
  309. package/dist/expressions/calls/call-array-mutation.d.ts.map +1 -1
  310. package/dist/expressions/calls/call-array-mutation.js +8 -33
  311. package/dist/expressions/calls/call-array-mutation.js.map +1 -1
  312. package/dist/expressions/calls/call-array-wrapper.d.ts.map +1 -1
  313. package/dist/expressions/calls/call-array-wrapper.js +6 -4
  314. package/dist/expressions/calls/call-array-wrapper.js.map +1 -1
  315. package/dist/expressions/calls/call-emitter.d.ts +1 -1
  316. package/dist/expressions/calls/call-emitter.d.ts.map +1 -1
  317. package/dist/expressions/calls/call-emitter.js +85 -7
  318. package/dist/expressions/calls/call-emitter.js.map +1 -1
  319. package/dist/expressions/calls/call-json.d.ts +1 -1
  320. package/dist/expressions/calls/call-json.d.ts.map +1 -1
  321. package/dist/expressions/calls/call-json.js +50 -84
  322. package/dist/expressions/calls/call-json.js.map +1 -1
  323. package/dist/expressions/calls/call-promise-ir-types.d.ts.map +1 -1
  324. package/dist/expressions/calls/call-promise-ir-types.js.map +1 -1
  325. package/dist/expressions/calls/call-runtime-union-guards.d.ts.map +1 -1
  326. package/dist/expressions/calls/call-runtime-union-guards.js +10 -1
  327. package/dist/expressions/calls/call-runtime-union-guards.js.map +1 -1
  328. package/dist/expressions/calls/new-emitter-collections.d.ts +7 -4
  329. package/dist/expressions/calls/new-emitter-collections.d.ts.map +1 -1
  330. package/dist/expressions/calls/new-emitter-collections.js +64 -25
  331. package/dist/expressions/calls/new-emitter-collections.js.map +1 -1
  332. package/dist/expressions/calls/new-emitter.d.ts.map +1 -1
  333. package/dist/expressions/calls/new-emitter.js +4 -5
  334. package/dist/expressions/calls/new-emitter.js.map +1 -1
  335. package/dist/expressions/direct-storage-types.d.ts.map +1 -1
  336. package/dist/expressions/direct-storage-types.js +76 -15
  337. package/dist/expressions/direct-storage-types.js.map +1 -1
  338. package/dist/expressions/exact-comparison.d.ts.map +1 -1
  339. package/dist/expressions/exact-comparison.js +3 -1
  340. package/dist/expressions/exact-comparison.js.map +1 -1
  341. package/dist/expressions/expected-type-adaptation.d.ts +1 -1
  342. package/dist/expressions/expected-type-adaptation.d.ts.map +1 -1
  343. package/dist/expressions/expected-type-adaptation.js +149 -29
  344. package/dist/expressions/expected-type-adaptation.js.map +1 -1
  345. package/dist/expressions/expected-type-adaptation.test.js +81 -26
  346. package/dist/expressions/expected-type-adaptation.test.js.map +1 -1
  347. package/dist/expressions/identifier-storage.d.ts +5 -0
  348. package/dist/expressions/identifier-storage.d.ts.map +1 -1
  349. package/dist/expressions/identifier-storage.js +200 -25
  350. package/dist/expressions/identifier-storage.js.map +1 -1
  351. package/dist/expressions/identifiers.d.ts.map +1 -1
  352. package/dist/expressions/identifiers.js +7 -16
  353. package/dist/expressions/identifiers.js.map +1 -1
  354. package/dist/expressions/index-cases/array-wrapper-recursion-b.test.js +3 -3
  355. package/dist/expressions/index-cases/array-wrapper-recursion-b.test.js.map +1 -1
  356. package/dist/expressions/index-cases/basic-literals-and-calls.test.js +3 -3
  357. package/dist/expressions/index-cases/basic-literals-and-calls.test.js.map +1 -1
  358. package/dist/expressions/index-cases/defaults-and-char-context.test.js +8 -2
  359. package/dist/expressions/index-cases/defaults-and-char-context.test.js.map +1 -1
  360. package/dist/expressions/index-cases/dictionary-and-object-initializers-a.test.js +17 -20
  361. package/dist/expressions/index-cases/dictionary-and-object-initializers-a.test.js.map +1 -1
  362. package/dist/expressions/index-cases/dictionary-and-object-initializers-b.test.js +7 -8
  363. package/dist/expressions/index-cases/dictionary-and-object-initializers-b.test.js.map +1 -1
  364. package/dist/expressions/index-cases/helpers.d.ts +5 -4
  365. package/dist/expressions/index-cases/helpers.d.ts.map +1 -1
  366. package/dist/expressions/index-cases/helpers.js +3 -2
  367. package/dist/expressions/index-cases/helpers.js.map +1 -1
  368. package/dist/expressions/index-cases/nullable-and-comparisons.test.js +9 -9
  369. package/dist/expressions/index-cases/nullable-and-comparisons.test.js.map +1 -1
  370. package/dist/expressions/index-cases/runtime-subset-and-assertions.test.js +3 -3
  371. package/dist/expressions/index-cases/runtime-subset-and-assertions.test.js.map +1 -1
  372. package/dist/expressions/index-cases/runtime-union-reification-b.test.js +19 -13
  373. package/dist/expressions/index-cases/runtime-union-reification-b.test.js.map +1 -1
  374. package/dist/expressions/index-cases/string-and-array-fallbacks-a.test.js +4 -4
  375. package/dist/expressions/index-cases/string-and-array-fallbacks-a.test.js.map +1 -1
  376. package/dist/expressions/lambda-parameters.d.ts.map +1 -1
  377. package/dist/expressions/lambda-parameters.js +97 -12
  378. package/dist/expressions/lambda-parameters.js.map +1 -1
  379. package/dist/expressions/object-literal.d.ts.map +1 -1
  380. package/dist/expressions/object-literal.js +48 -18
  381. package/dist/expressions/object-literal.js.map +1 -1
  382. package/dist/expressions/operators/binary-dispatch.d.ts +1 -1
  383. package/dist/expressions/operators/binary-dispatch.d.ts.map +1 -1
  384. package/dist/expressions/operators/binary-dispatch.js +52 -12
  385. package/dist/expressions/operators/binary-dispatch.js.map +1 -1
  386. package/dist/expressions/operators/binary-helpers.d.ts.map +1 -1
  387. package/dist/expressions/operators/binary-helpers.js +11 -1
  388. package/dist/expressions/operators/binary-helpers.js.map +1 -1
  389. package/dist/expressions/operators/binary-special-ops.d.ts +1 -11
  390. package/dist/expressions/operators/binary-special-ops.d.ts.map +1 -1
  391. package/dist/expressions/operators/binary-special-ops.js +217 -195
  392. package/dist/expressions/operators/binary-special-ops.js.map +1 -1
  393. package/dist/expressions/operators/conditional-emitter.d.ts.map +1 -1
  394. package/dist/expressions/operators/conditional-emitter.js +89 -19
  395. package/dist/expressions/operators/conditional-emitter.js.map +1 -1
  396. package/dist/expressions/operators/logical-emitter.js +1 -1
  397. package/dist/expressions/operators/logical-emitter.js.map +1 -1
  398. package/dist/expressions/operators/unary-emitter.d.ts.map +1 -1
  399. package/dist/expressions/operators/unary-emitter.js +7 -50
  400. package/dist/expressions/operators/unary-emitter.js.map +1 -1
  401. package/dist/expressions/other.d.ts +2 -6
  402. package/dist/expressions/other.d.ts.map +1 -1
  403. package/dist/expressions/other.js +6 -13
  404. package/dist/expressions/other.js.map +1 -1
  405. package/dist/expressions/post-emission-adaptation.d.ts +1 -1
  406. package/dist/expressions/post-emission-adaptation.d.ts.map +1 -1
  407. package/dist/expressions/post-emission-adaptation.js +55 -150
  408. package/dist/expressions/post-emission-adaptation.js.map +1 -1
  409. package/dist/expressions/precedence.test.js +5 -46
  410. package/dist/expressions/precedence.test.js.map +1 -1
  411. package/dist/expressions/runtime-union-adaptation-projection.d.ts.map +1 -1
  412. package/dist/expressions/runtime-union-adaptation-projection.js +25 -4
  413. package/dist/expressions/runtime-union-adaptation-projection.js.map +1 -1
  414. package/dist/expressions/runtime-union-adaptation-upcast.d.ts.map +1 -1
  415. package/dist/expressions/runtime-union-adaptation-upcast.js +268 -31
  416. package/dist/expressions/runtime-union-adaptation-upcast.js.map +1 -1
  417. package/dist/expressions/structural-anonymous-targets.d.ts.map +1 -1
  418. package/dist/expressions/structural-anonymous-targets.js +5 -0
  419. package/dist/expressions/structural-anonymous-targets.js.map +1 -1
  420. package/dist/expressions/structural-collection-adaptation.d.ts.map +1 -1
  421. package/dist/expressions/structural-collection-adaptation.js +4 -2
  422. package/dist/expressions/structural-collection-adaptation.js.map +1 -1
  423. package/dist/expressions/structural-object-adaptation.d.ts.map +1 -1
  424. package/dist/expressions/structural-object-adaptation.js +58 -3
  425. package/dist/expressions/structural-object-adaptation.js.map +1 -1
  426. package/dist/expressions/structural-property-model.d.ts.map +1 -1
  427. package/dist/expressions/structural-property-model.js +7 -3
  428. package/dist/expressions/structural-property-model.js.map +1 -1
  429. package/dist/expressions/structural-type-shapes.d.ts.map +1 -1
  430. package/dist/expressions/structural-type-shapes.js +1 -1
  431. package/dist/expressions/structural-type-shapes.js.map +1 -1
  432. package/dist/expressions/structural-type-shapes.test.js +2 -1
  433. package/dist/expressions/structural-type-shapes.test.js.map +1 -1
  434. package/dist/expressions/type-assertion-emitters.d.ts.map +1 -1
  435. package/dist/expressions/type-assertion-emitters.js +231 -15
  436. package/dist/expressions/type-assertion-emitters.js.map +1 -1
  437. package/dist/fixture-regression-mirrors.test.js +43 -112
  438. package/dist/fixture-regression-mirrors.test.js.map +1 -1
  439. package/dist/generated-files.d.ts +0 -1
  440. package/dist/generated-files.d.ts.map +1 -1
  441. package/dist/generated-files.js +0 -229
  442. package/dist/generated-files.js.map +1 -1
  443. package/dist/generated-files.test.js +53 -1
  444. package/dist/generated-files.test.js.map +1 -1
  445. package/dist/golden-tests/runner.d.ts.map +1 -1
  446. package/dist/golden-tests/runner.js +1 -0
  447. package/dist/golden-tests/runner.js.map +1 -1
  448. package/dist/integration-cases/arrow-and-generics-a.test.js +52 -32
  449. package/dist/integration-cases/arrow-and-generics-a.test.js.map +1 -1
  450. package/dist/integration-cases/arrow-and-generics-b.test.js +17 -23
  451. package/dist/integration-cases/arrow-and-generics-b.test.js.map +1 -1
  452. package/dist/integration-cases/await-and-intrinsics.test.js +12 -10
  453. package/dist/integration-cases/await-and-intrinsics.test.js.map +1 -1
  454. package/dist/integration-cases/clr-iterable-overloads.test.js +58 -27
  455. package/dist/integration-cases/clr-iterable-overloads.test.js.map +1 -1
  456. package/dist/integration-cases/full-module-and-promises.test.js +21 -19
  457. package/dist/integration-cases/full-module-and-promises.test.js.map +1 -1
  458. package/dist/integration-cases/helpers.d.ts.map +1 -1
  459. package/dist/integration-cases/helpers.js +12 -33
  460. package/dist/integration-cases/helpers.js.map +1 -1
  461. package/dist/integration-cases/may14-downstream-contracts.test.d.ts +2 -0
  462. package/dist/integration-cases/may14-downstream-contracts.test.d.ts.map +1 -0
  463. package/dist/integration-cases/may14-downstream-contracts.test.js +522 -0
  464. package/dist/integration-cases/may14-downstream-contracts.test.js.map +1 -0
  465. package/dist/integration-cases/object-literals-and-channels.test.js +10 -4
  466. package/dist/integration-cases/object-literals-and-channels.test.js.map +1 -1
  467. package/dist/integration-cases/regression-coverage-a.test.js +36 -30
  468. package/dist/integration-cases/regression-coverage-a.test.js.map +1 -1
  469. package/dist/integration-cases/regression-coverage-b.test.js +95 -111
  470. package/dist/integration-cases/regression-coverage-b.test.js.map +1 -1
  471. package/dist/integration-cases/regression-coverage-c.test.js +499 -197
  472. package/dist/integration-cases/regression-coverage-c.test.js.map +1 -1
  473. package/dist/integration.test.d.ts +1 -0
  474. package/dist/integration.test.d.ts.map +1 -1
  475. package/dist/integration.test.js +1 -0
  476. package/dist/integration.test.js.map +1 -1
  477. package/dist/json-aot-generic.test.js +48 -200
  478. package/dist/json-aot-generic.test.js.map +1 -1
  479. package/dist/statements/block-emitters/block-and-return.d.ts +1 -1
  480. package/dist/statements/block-emitters/block-and-return.d.ts.map +1 -1
  481. package/dist/statements/block-emitters/block-and-return.js +9 -3
  482. package/dist/statements/block-emitters/block-and-return.js.map +1 -1
  483. package/dist/statements/classes/properties.d.ts.map +1 -1
  484. package/dist/statements/classes/properties.js.map +1 -1
  485. package/dist/statements/control/conditionals/architecture-invariants.test.d.ts +2 -0
  486. package/dist/statements/control/conditionals/architecture-invariants.test.d.ts.map +1 -0
  487. package/dist/statements/control/conditionals/architecture-invariants.test.js +19 -0
  488. package/dist/statements/control/conditionals/architecture-invariants.test.js.map +1 -0
  489. package/dist/statements/control/conditionals/branch-context.d.ts +4 -6
  490. package/dist/statements/control/conditionals/branch-context.d.ts.map +1 -1
  491. package/dist/statements/control/conditionals/branch-context.js +104 -31
  492. package/dist/statements/control/conditionals/branch-context.js.map +1 -1
  493. package/dist/statements/control/conditionals/guard-analysis.d.ts +2 -2
  494. package/dist/statements/control/conditionals/guard-analysis.d.ts.map +1 -1
  495. package/dist/statements/control/conditionals/guard-analysis.js +1 -1
  496. package/dist/statements/control/conditionals/guard-analysis.js.map +1 -1
  497. package/dist/statements/control/conditionals/guard-detectors-discriminant.d.ts +2 -1
  498. package/dist/statements/control/conditionals/guard-detectors-discriminant.d.ts.map +1 -1
  499. package/dist/statements/control/conditionals/guard-detectors-discriminant.js +83 -1
  500. package/dist/statements/control/conditionals/guard-detectors-discriminant.js.map +1 -1
  501. package/dist/statements/control/conditionals/guard-detectors-structural.d.ts +2 -7
  502. package/dist/statements/control/conditionals/guard-detectors-structural.d.ts.map +1 -1
  503. package/dist/statements/control/conditionals/guard-detectors-structural.js +47 -82
  504. package/dist/statements/control/conditionals/guard-detectors-structural.js.map +1 -1
  505. package/dist/statements/control/conditionals/guard-detectors.d.ts +2 -2
  506. package/dist/statements/control/conditionals/guard-detectors.d.ts.map +1 -1
  507. package/dist/statements/control/conditionals/guard-detectors.js +2 -2
  508. package/dist/statements/control/conditionals/guard-detectors.js.map +1 -1
  509. package/dist/statements/control/conditionals/guard-extraction.d.ts +5 -7
  510. package/dist/statements/control/conditionals/guard-extraction.d.ts.map +1 -1
  511. package/dist/statements/control/conditionals/guard-extraction.js +3 -158
  512. package/dist/statements/control/conditionals/guard-extraction.js.map +1 -1
  513. package/dist/statements/control/conditionals/guard-types.d.ts +16 -26
  514. package/dist/statements/control/conditionals/guard-types.d.ts.map +1 -1
  515. package/dist/statements/control/conditionals/guard-types.js +23 -1
  516. package/dist/statements/control/conditionals/guard-types.js.map +1 -1
  517. package/dist/statements/control/conditionals/if-emit-instanceof-guards.d.ts.map +1 -1
  518. package/dist/statements/control/conditionals/if-emit-instanceof-guards.js +5 -8
  519. package/dist/statements/control/conditionals/if-emit-instanceof-guards.js.map +1 -1
  520. package/dist/statements/control/conditionals/if-emit-predicate-guards.d.ts +2 -8
  521. package/dist/statements/control/conditionals/if-emit-predicate-guards.d.ts.map +1 -1
  522. package/dist/statements/control/conditionals/if-emit-predicate-guards.js +4 -84
  523. package/dist/statements/control/conditionals/if-emit-predicate-guards.js.map +1 -1
  524. package/dist/statements/control/conditionals/if-emit-property-discriminant-guards.d.ts +2 -0
  525. package/dist/statements/control/conditionals/if-emit-property-discriminant-guards.d.ts.map +1 -1
  526. package/dist/statements/control/conditionals/if-emit-property-discriminant-guards.js +87 -3
  527. package/dist/statements/control/conditionals/if-emit-property-discriminant-guards.js.map +1 -1
  528. package/dist/statements/control/conditionals/if-emit-typeof-array-guards.d.ts.map +1 -1
  529. package/dist/statements/control/conditionals/if-emit-typeof-array-guards.js +254 -20
  530. package/dist/statements/control/conditionals/if-emit-typeof-array-guards.js.map +1 -1
  531. package/dist/statements/control/conditionals/if-emit-union-guards.d.ts +2 -2
  532. package/dist/statements/control/conditionals/if-emit-union-guards.d.ts.map +1 -1
  533. package/dist/statements/control/conditionals/if-emit-union-guards.js +2 -2
  534. package/dist/statements/control/conditionals/if-emit-union-guards.js.map +1 -1
  535. package/dist/statements/control/conditionals/if-emitter.d.ts.map +1 -1
  536. package/dist/statements/control/conditionals/if-emitter.js +36 -43
  537. package/dist/statements/control/conditionals/if-emitter.js.map +1 -1
  538. package/dist/statements/control/conditionals/ir-branch-narrowings.d.ts +5 -0
  539. package/dist/statements/control/conditionals/ir-branch-narrowings.d.ts.map +1 -0
  540. package/dist/statements/control/conditionals/ir-branch-narrowings.js +16 -0
  541. package/dist/statements/control/conditionals/ir-branch-narrowings.js.map +1 -0
  542. package/dist/statements/control/loops.d.ts +2 -9
  543. package/dist/statements/control/loops.d.ts.map +1 -1
  544. package/dist/statements/control/loops.js +56 -48
  545. package/dist/statements/control/loops.js.map +1 -1
  546. package/dist/statements/declarations/classes.d.ts.map +1 -1
  547. package/dist/statements/declarations/classes.js.map +1 -1
  548. package/dist/statements/declarations/interfaces.d.ts.map +1 -1
  549. package/dist/statements/declarations/interfaces.js.map +1 -1
  550. package/dist/statements/declarations/structs.test.js +5 -4
  551. package/dist/statements/declarations/structs.test.js.map +1 -1
  552. package/dist/statements/declarations/type-aliases.js.map +1 -1
  553. package/dist/statements/declarations/variables.d.ts.map +1 -1
  554. package/dist/statements/declarations/variables.js +7 -4
  555. package/dist/statements/declarations/variables.js.map +1 -1
  556. package/dist/statements/statement-cases/flow-and-void.test.js +3 -3
  557. package/dist/statements/statement-cases/flow-and-void.test.js.map +1 -1
  558. package/dist/statements/statement-cases/helpers.d.ts +3 -2
  559. package/dist/statements/statement-cases/helpers.d.ts.map +1 -1
  560. package/dist/statements/statement-cases/helpers.js +1 -1
  561. package/dist/statements/statement-cases/helpers.js.map +1 -1
  562. package/dist/statements/statement-cases/if-and-instanceof-guards.test.js +21 -21
  563. package/dist/statements/statement-cases/if-and-instanceof-guards.test.js.map +1 -1
  564. package/dist/statements/statement-cases/union-guards-basic.test.js +3 -80
  565. package/dist/statements/statement-cases/union-guards-basic.test.js.map +1 -1
  566. package/dist/statements/statement-cases/union-guards-nullish-and-object.test.js +0 -196
  567. package/dist/statements/statement-cases/union-guards-nullish-and-object.test.js.map +1 -1
  568. package/dist/statements/statement-cases/union-guards-predicate-and-truthy.test.js +15 -15
  569. package/dist/statements/statement-cases/union-guards-predicate-and-truthy.test.js.map +1 -1
  570. package/dist/statements/statement-cases/union-guards-remapped-a.test.js +7 -189
  571. package/dist/statements/statement-cases/union-guards-remapped-a.test.js.map +1 -1
  572. package/dist/statements/statement-cases/union-guards-remapped-b.test.js +7 -193
  573. package/dist/statements/statement-cases/union-guards-remapped-b.test.js.map +1 -1
  574. package/dist/test-ir-strict.d.ts +7 -0
  575. package/dist/test-ir-strict.d.ts.map +1 -0
  576. package/dist/test-ir-strict.js +9 -0
  577. package/dist/test-ir-strict.js.map +1 -0
  578. package/dist/type-assertion.test.js +5 -4
  579. package/dist/type-assertion.test.js.map +1 -1
  580. package/dist/types/emitter.d.ts.map +1 -1
  581. package/dist/types/emitter.js +7 -1
  582. package/dist/types/emitter.js.map +1 -1
  583. package/dist/types/intersections.d.ts +2 -2
  584. package/dist/types/intersections.d.ts.map +1 -1
  585. package/dist/types/intersections.js +26 -6
  586. package/dist/types/intersections.js.map +1 -1
  587. package/dist/types/parameters.d.ts.map +1 -1
  588. package/dist/types/parameters.js +30 -5
  589. package/dist/types/parameters.js.map +1 -1
  590. package/dist/types/reference-structural-signatures.d.ts.map +1 -1
  591. package/dist/types/reference-structural-signatures.js +3 -6
  592. package/dist/types/reference-structural-signatures.js.map +1 -1
  593. package/dist/types/references-cases/array-and-cross-module.test.js +2 -4
  594. package/dist/types/references-cases/array-and-cross-module.test.js.map +1 -1
  595. package/dist/types/references-cases/bindings-and-local.test.js +2 -4
  596. package/dist/types/references-cases/bindings-and-local.test.js.map +1 -1
  597. package/dist/types/references-cases/helpers.d.ts +3 -2
  598. package/dist/types/references-cases/helpers.d.ts.map +1 -1
  599. package/dist/types/references-cases/helpers.js +2 -1
  600. package/dist/types/references-cases/helpers.js.map +1 -1
  601. package/dist/types/references.d.ts.map +1 -1
  602. package/dist/types/references.js +21 -2
  603. package/dist/types/references.js.map +1 -1
  604. package/dist/types/unions-cases/basic-and-ordering.test.js +51 -0
  605. package/dist/types/unions-cases/basic-and-ordering.test.js.map +1 -1
  606. package/dist/types/unions.d.ts.map +1 -1
  607. package/dist/types/unions.js +17 -1
  608. package/dist/types/unions.js.map +1 -1
  609. package/dist/types.d.ts +3 -1
  610. package/dist/types.d.ts.map +1 -1
  611. package/dist/types.js +2 -1
  612. package/dist/types.js.map +1 -1
  613. package/package.json +2 -2
  614. package/dist/core/semantic/js-value-types.d.ts +0 -5
  615. package/dist/core/semantic/js-value-types.d.ts.map +0 -1
  616. package/dist/core/semantic/js-value-types.js +0 -42
  617. package/dist/core/semantic/js-value-types.js.map +0 -1
  618. package/dist/core/semantic/type-resolution-cases/narrow-typeof.test.d.ts +0 -2
  619. package/dist/core/semantic/type-resolution-cases/narrow-typeof.test.d.ts.map +0 -1
  620. package/dist/core/semantic/type-resolution-cases/narrow-typeof.test.js +0 -98
  621. package/dist/core/semantic/type-resolution-cases/narrow-typeof.test.js.map +0 -1
  622. package/dist/expressions/calls/call-dynamic-import.d.ts +0 -11
  623. package/dist/expressions/calls/call-dynamic-import.d.ts.map +0 -1
  624. package/dist/expressions/calls/call-dynamic-import.js +0 -148
  625. package/dist/expressions/calls/call-dynamic-import.js.map +0 -1
@@ -3,6 +3,7 @@ import { buildRuntimeUnionTypeAst, } from "./runtime-unions.js";
3
3
  import { stripNullableTypeAst } from "../format/backend-ast/utils.js";
4
4
  import { buildRuntimeUnionMemberIndexByAstKey, findMappedRuntimeUnionMemberIndex, } from "./runtime-union-member-mapping.js";
5
5
  import { describeIrTypeForDiagnostics } from "./deterministic-type-keys.js";
6
+ import { UNKNOWN_TYPE } from "./runtime-union-shared.js";
6
7
  const isRuntimeUnionMemberProjectionAst = (valueAst) => {
7
8
  let target = valueAst;
8
9
  while (target.kind === "parenthesizedExpression") {
@@ -67,14 +68,17 @@ export const tryBuildRuntimeUnionProjectionToLayoutAst = (opts) => {
67
68
  const targetMemberIndexByAstKey = buildRuntimeUnionMemberIndexByAstKey(opts.targetLayout.memberTypeAsts);
68
69
  const lambdaArgs = [];
69
70
  let currentContext = opts.context;
71
+ const sourceMemberIndexBySlot = new Map();
70
72
  for (let index = 0; index < opts.sourceLayout.members.length; index += 1) {
71
- const actualMember = opts.sourceLayout.members[index];
72
- const actualMemberTypeAst = opts.sourceLayout.memberTypeAsts[index];
73
- if (!actualMember || !actualMemberTypeAst) {
74
- continue;
75
- }
76
- const sourceMemberN = opts.candidateMemberNs?.[index] ?? index + 1;
77
- const parameterName = `__tsonic_union_member_${index + 1}`;
73
+ sourceMemberIndexBySlot.set(opts.candidateMemberNs?.[index] ?? index + 1, index);
74
+ }
75
+ const sourceArity = Math.max(opts.sourceLayout.runtimeUnionArity, opts.sourceLayout.members.length, ...(opts.candidateMemberNs ?? []));
76
+ for (let slotIndex = 0; slotIndex < sourceArity; slotIndex += 1) {
77
+ const sourceMemberN = slotIndex + 1;
78
+ const index = sourceMemberIndexBySlot.get(sourceMemberN);
79
+ const actualMember = index !== undefined ? opts.sourceLayout.members[index] : undefined;
80
+ const actualMemberTypeAst = index !== undefined ? opts.sourceLayout.memberTypeAsts[index] : undefined;
81
+ const parameterName = `__tsonic_union_member_${sourceMemberN}`;
78
82
  const parameterExpr = identifierExpression(parameterName);
79
83
  const pushLambda = (body) => {
80
84
  lambdaArgs.push({
@@ -84,6 +88,18 @@ export const tryBuildRuntimeUnionProjectionToLayoutAst = (opts) => {
84
88
  body,
85
89
  });
86
90
  };
91
+ if (!actualMember || !actualMemberTypeAst) {
92
+ const excludedBody = opts.buildExcludedMemberBody?.({
93
+ actualMember: UNKNOWN_TYPE,
94
+ sourceMemberN,
95
+ context: currentContext,
96
+ });
97
+ if (!excludedBody) {
98
+ return undefined;
99
+ }
100
+ pushLambda(excludedBody);
101
+ continue;
102
+ }
87
103
  if (opts.selectedSourceMemberNs &&
88
104
  !opts.selectedSourceMemberNs.has(sourceMemberN)) {
89
105
  const excludedBody = opts.buildExcludedMemberBody?.({
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-union-projection.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-union-projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-union-projection.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-union-projection.ts"],"names":[],"mappings":"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"}
@@ -188,6 +188,24 @@ describe("runtime-union-projection", () => {
188
188
  kind: "lambdaExpression",
189
189
  isAsync: false,
190
190
  parameters: [{ name: "__tsonic_union_member_2" }],
191
+ body: identifierExpression("excluded"),
192
+ },
193
+ {
194
+ kind: "lambdaExpression",
195
+ isAsync: false,
196
+ parameters: [{ name: "__tsonic_union_member_3" }],
197
+ body: identifierExpression("excluded"),
198
+ },
199
+ {
200
+ kind: "lambdaExpression",
201
+ isAsync: false,
202
+ parameters: [{ name: "__tsonic_union_member_4" }],
203
+ body: identifierExpression("excluded"),
204
+ },
205
+ {
206
+ kind: "lambdaExpression",
207
+ isAsync: false,
208
+ parameters: [{ name: "__tsonic_union_member_5" }],
191
209
  body: {
192
210
  kind: "invocationExpression",
193
211
  expression: {
@@ -201,7 +219,7 @@ describe("runtime-union-projection", () => {
201
219
  },
202
220
  memberName: "From2",
203
221
  },
204
- arguments: [identifierExpression("__tsonic_union_member_2")],
222
+ arguments: [identifierExpression("__tsonic_union_member_5")],
205
223
  },
206
224
  },
207
225
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-union-projection.test.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-union-projection.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-union-projection.test.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-union-projection.test.ts"],"names":[],"mappings":"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"}
@@ -138,20 +138,20 @@ const normalizeCarrierDefinitionMemberKey = (type, carrierNamespaceName) => {
138
138
  const carrierDefinitionMembersMatch = (left, right, carrierNamespaceName) => left.length === right.length &&
139
139
  left.every((memberTypeAst, index) => normalizeCarrierDefinitionMemberKey(memberTypeAst, carrierNamespaceName) ===
140
140
  normalizeCarrierDefinitionMemberKey(right[index] ?? memberTypeAst, carrierNamespaceName));
141
- const isRecursiveCarrierSelfArrayKey = (key, carrierName) => {
141
+ const isStorageErasedObjectArrayKey = (key) => key === "array:1:predefined:object" ||
142
+ key === "array:1:nullable:predefined:object";
143
+ const isStorageErasedObjectKey = (key) => key === "predefined:object" || isStorageErasedObjectArrayKey(key);
144
+ const isRecursiveCarrierSelfKey = (key, carrierName) => {
142
145
  if (!carrierName) {
143
146
  return false;
144
147
  }
145
148
  const escapedCarrierName = escapeCSharpIdentifier(carrierName);
146
- const selfPrefix = `array:1:identifier:${escapedCarrierName}`;
147
- const nullableSelfPrefix = `array:1:nullable:identifier:${escapedCarrierName}`;
148
- return (key === selfPrefix ||
149
- key.startsWith(`${selfPrefix}<`) ||
150
- key === nullableSelfPrefix ||
151
- key.startsWith(`${nullableSelfPrefix}<`));
149
+ return (key === `identifier:${escapedCarrierName}` ||
150
+ key.startsWith(`identifier:${escapedCarrierName}<`) ||
151
+ key.includes(`:identifier:${escapedCarrierName}`) ||
152
+ key.includes(`<identifier:${escapedCarrierName}`) ||
153
+ key.includes(`,identifier:${escapedCarrierName}`));
152
154
  };
153
- const isStorageErasedObjectArrayKey = (key) => key === "array:1:predefined:object" ||
154
- key === "array:1:nullable:predefined:object";
155
155
  const reconcileCarrierDefinitionMembers = (existingMembers, nextMembers, carrierNamespaceName, carrierName) => {
156
156
  if (existingMembers.length !== nextMembers.length) {
157
157
  return undefined;
@@ -169,13 +169,13 @@ const reconcileCarrierDefinitionMembers = (existingMembers, nextMembers, carrier
169
169
  reconciled.push(existingMember);
170
170
  continue;
171
171
  }
172
- if (isStorageErasedObjectArrayKey(existingKey) &&
173
- isRecursiveCarrierSelfArrayKey(nextKey, carrierName)) {
172
+ if (isStorageErasedObjectKey(existingKey) &&
173
+ isRecursiveCarrierSelfKey(nextKey, carrierName)) {
174
174
  reconciled.push(nextMember);
175
175
  continue;
176
176
  }
177
- if (isRecursiveCarrierSelfArrayKey(existingKey, carrierName) &&
178
- isStorageErasedObjectArrayKey(nextKey)) {
177
+ if (isRecursiveCarrierSelfKey(existingKey, carrierName) &&
178
+ isStorageErasedObjectKey(nextKey)) {
179
179
  reconciled.push(existingMember);
180
180
  continue;
181
181
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-union-registry.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-union-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-union-registry.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-union-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-unions.d.ts","sourceRoot":"","sources":["../../../src/core/semantic/runtime-unions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAGpE,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AAenC,OAAO,EACL,kCAAkC,EAClC,uCAAuC,EACvC,uCAAuC,EACvC,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,kCAAkC,EAClC,uCAAuC,EACvC,uCAAuC,EACvC,2BAA2B,EAC3B,6BAA6B,GAC9B,CAAC;AACF,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,uBAAuB,GAClC,MAAM,MAAM,EACZ,SAAS,cAAc,EACvB,aAAa,eAAe,KAC3B,CAAC,kBAAkB,GAAG,SAAS,EAAE,cAAc,CAyGjD,CAAC;AAmJF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,kBAAkB,KACzB,aAOF,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,MAAM,MAAM,EACZ,SAAS,cAAc,EACvB,aAAa,eAAe,KAC3B,CAAC,aAAa,EAAE,kBAAkB,GAAG,SAAS,EAAE,cAAc,CAYhE,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,MAAM,MAAM,EACZ,SAAS,cAAc,KACtB,iBAAiB,GAAG,SAsBtB,CAAC;AAuBF,eAAO,MAAM,+BAA+B,GAC1C,MAAM,MAAM,EACZ,SAAS,cAAc,KACtB,SAAS,MAAM,EAAE,GAAG,SAwItB,CAAC"}
1
+ {"version":3,"file":"runtime-unions.d.ts","sourceRoot":"","sources":["../../../src/core/semantic/runtime-unions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAGpE,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,2BAA2B,CAAC;AAenC,OAAO,EACL,kCAAkC,EAClC,uCAAuC,EACvC,uCAAuC,EACvC,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,6BAA6B,CAAC;AAMrC,OAAO,EACL,kCAAkC,EAClC,uCAAuC,EACvC,uCAAuC,EACvC,2BAA2B,EAC3B,6BAA6B,GAC9B,CAAC;AACF,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,+BAA+B,EAC/B,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,uBAAuB,GAClC,MAAM,MAAM,EACZ,SAAS,cAAc,EACvB,aAAa,eAAe,KAC3B,CAAC,kBAAkB,GAAG,SAAS,EAAE,cAAc,CAsIjD,CAAC;AAsJF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,kBAAkB,KACzB,aAOF,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,MAAM,MAAM,EACZ,SAAS,cAAc,EACvB,aAAa,eAAe,KAC3B,CAAC,aAAa,EAAE,kBAAkB,GAAG,SAAS,EAAE,cAAc,CAYhE,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,MAAM,MAAM,EACZ,SAAS,cAAc,KACtB,iBAAiB,GAAG,SAsBtB,CAAC;AAuBF,eAAO,MAAM,+BAA+B,GAC1C,MAAM,MAAM,EACZ,SAAS,cAAc,KACtB,SAAS,MAAM,EAAE,GAAG,SA2ItB,CAAC"}
@@ -10,23 +10,43 @@ import { matchesSemanticExpectedType } from "./expected-type-matching.js";
10
10
  import { isBroadObjectSlotType } from "./broad-object-types.js";
11
11
  import { findExactRuntimeUnionMemberIndices, findRuntimeUnionAssignableMemberIndices, findRuntimeUnionInstanceofMemberIndices, findRuntimeUnionMemberIndex, findRuntimeUnionMemberIndices, } from "./runtime-union-matching.js";
12
12
  import { getOrRegisterRuntimeUnionCarrier } from "./runtime-union-registry.js";
13
- import { tryContextualTypeIdentityKey } from "./deterministic-type-keys.js";
13
+ import { getContextualTypeVisitKey, tryContextualTypeIdentityKey, } from "./deterministic-type-keys.js";
14
14
  export { findExactRuntimeUnionMemberIndices, findRuntimeUnionAssignableMemberIndices, findRuntimeUnionInstanceofMemberIndices, findRuntimeUnionMemberIndex, findRuntimeUnionMemberIndices, };
15
15
  export { getRuntimeUnionReferenceMembers, isRuntimeUnionTypeName, } from "./runtime-union-shared.js";
16
16
  export const buildRuntimeUnionLayout = (type, context, emitTypeAst) => {
17
17
  const layoutSourceType = type.kind === "referenceType" ? resolveTypeAlias(type, context) : type;
18
- const frame = buildRuntimeUnionFrame(layoutSourceType, context);
18
+ const layoutKey = layoutSourceType.kind === "unionType" &&
19
+ layoutSourceType.runtimeCarrierFamilyKey
20
+ ? `carrier:${layoutSourceType.runtimeCarrierFamilyKey}`
21
+ : `type:${getContextualTypeVisitKey(layoutSourceType, context)}`;
22
+ if (context.activeRuntimeUnionLayoutKeys?.has(layoutKey)) {
23
+ return [undefined, context];
24
+ }
25
+ const activeRuntimeUnionLayoutKeys = new Set(context.activeRuntimeUnionLayoutKeys ?? []);
26
+ activeRuntimeUnionLayoutKeys.add(layoutKey);
27
+ const guardedContext = {
28
+ ...context,
29
+ activeRuntimeUnionLayoutKeys,
30
+ };
31
+ const restoreLayoutContext = (nextContext) => nextContext.activeRuntimeUnionLayoutKeys ===
32
+ context.activeRuntimeUnionLayoutKeys
33
+ ? nextContext
34
+ : {
35
+ ...nextContext,
36
+ activeRuntimeUnionLayoutKeys: context.activeRuntimeUnionLayoutKeys,
37
+ };
38
+ const frame = buildRuntimeUnionFrame(layoutSourceType, guardedContext);
19
39
  if (!frame) {
20
40
  return [undefined, context];
21
41
  }
22
42
  const semanticMembers = frame.members;
23
- const preserveRuntimeLayout = layoutSourceType.kind === "unionType" &&
24
- layoutSourceType.preserveRuntimeLayout === true;
43
+ const hasCarrierSlotLayout = layoutSourceType.kind === "unionType" &&
44
+ layoutSourceType.runtimeUnionLayout === "carrierSlotOrder";
25
45
  const orderedMembers = [];
26
- const byAstKey = preserveRuntimeLayout
46
+ const byAstKey = hasCarrierSlotLayout
27
47
  ? undefined
28
48
  : new Map();
29
- let currentContext = context;
49
+ let currentContext = guardedContext;
30
50
  for (const member of semanticMembers) {
31
51
  const carrierMember = resolveStructuralReferenceType(member, currentContext) ?? member;
32
52
  const emissionContext = currentContext.preferResolvedLocalClrIdentity
@@ -40,7 +60,7 @@ export const buildRuntimeUnionLayout = (type, context, emitTypeAst) => {
40
60
  ...nextContext,
41
61
  preferResolvedLocalClrIdentity: currentContext.preferResolvedLocalClrIdentity,
42
62
  };
43
- if (preserveRuntimeLayout) {
63
+ if (hasCarrierSlotLayout) {
44
64
  orderedMembers.push({ member, typeAst });
45
65
  continue;
46
66
  }
@@ -49,11 +69,11 @@ export const buildRuntimeUnionLayout = (type, context, emitTypeAst) => {
49
69
  byAstKey.set(key, { member, typeAst });
50
70
  }
51
71
  }
52
- const ordered = preserveRuntimeLayout
72
+ const ordered = hasCarrierSlotLayout
53
73
  ? orderedMembers
54
74
  : Array.from(byAstKey?.values() ?? []);
55
75
  if (ordered.length < 2) {
56
- return [undefined, currentContext];
76
+ return [undefined, restoreLayoutContext(currentContext)];
57
77
  }
58
78
  const carrierMetadata = layoutSourceType.kind === "unionType" &&
59
79
  layoutSourceType.runtimeCarrierFamilyKey
@@ -67,7 +87,8 @@ export const buildRuntimeUnionLayout = (type, context, emitTypeAst) => {
67
87
  const [sourceAliasMetadata, sourceAliasContext] = carrierMetadata
68
88
  ? buildSourceAliasCarrierMetadata(type, layoutSourceType, currentContext, emitTypeAst)
69
89
  : [undefined, currentContext];
70
- const carrier = getOrRegisterRuntimeUnionCarrier(ordered.map((entry) => entry.typeAst), sourceAliasContext.options.runtimeUnionRegistry, carrierMetadata
90
+ const layoutEntries = ordered;
91
+ const carrier = getOrRegisterRuntimeUnionCarrier(layoutEntries.map((entry) => entry.typeAst), sourceAliasContext.options.runtimeUnionRegistry, carrierMetadata
71
92
  ? {
72
93
  ...carrierMetadata,
73
94
  ...(sourceAliasMetadata?.typeParameters !== undefined
@@ -85,15 +106,17 @@ export const buildRuntimeUnionLayout = (type, context, emitTypeAst) => {
85
106
  : undefined);
86
107
  return [
87
108
  {
88
- members: ordered.map((entry) => entry.member),
89
- memberTypeAsts: ordered.map((entry) => entry.typeAst),
90
- carrierTypeArgumentAsts: sourceAliasMetadata?.typeArgumentAsts ??
91
- ordered.map((entry) => entry.typeAst),
92
- runtimeUnionArity: ordered.length,
109
+ members: layoutEntries.map((entry) => entry.member),
110
+ memberTypeAsts: layoutEntries.map((entry) => entry.typeAst),
111
+ carrierTypeArgumentAsts: carrier.typeParameters.length === 0
112
+ ? []
113
+ : (sourceAliasMetadata?.typeArgumentAsts ??
114
+ layoutEntries.map((entry) => entry.typeAst)),
115
+ runtimeUnionArity: layoutEntries.length,
93
116
  carrierName: carrier.name,
94
117
  carrierFullName: carrier.fullName,
95
118
  },
96
- sourceAliasContext,
119
+ restoreLayoutContext(sourceAliasContext),
97
120
  ];
98
121
  };
99
122
  const buildSourceAliasCarrierMetadata = (requestedType, layoutSourceType, context, emitTypeAst) => {
@@ -129,7 +152,9 @@ const buildSourceAliasCarrierMetadata = (requestedType, layoutSourceType, contex
129
152
  targetModulePublicLocalTypes?.has(aliasInfo.name)
130
153
  ? "public"
131
154
  : "internal";
132
- const aliasOwnerModule = [...(context.options.moduleMap?.values() ?? [])].find((moduleInfo) => moduleInfo.namespace === aliasInfo.namespace &&
155
+ const aliasOwnerModule = [
156
+ ...(context.options.moduleMap?.values() ?? []),
157
+ ].find((moduleInfo) => moduleInfo.namespace === aliasInfo.namespace &&
133
158
  moduleInfo.localTypes?.has(aliasInfo.name));
134
159
  const typeParameters = layoutSourceType.runtimeCarrierTypeParameters ??
135
160
  aliasInfo.info.typeParameters;
@@ -177,6 +202,7 @@ const buildSourceAliasCarrierMetadata = (requestedType, layoutSourceType, contex
177
202
  {
178
203
  typeParameters,
179
204
  typeArgumentAsts,
205
+ definitionMembers: definitionFrame.members,
180
206
  definitionMemberTypeAsts,
181
207
  accessModifier,
182
208
  },
@@ -235,19 +261,19 @@ const shouldEraseRuntimeUnionToBroadObjectStorage = (sourceType, runtimeMembers,
235
261
  };
236
262
  export const getCanonicalRuntimeUnionMembers = (type, context) => {
237
263
  const canonicalSourceType = type.kind === "referenceType" ? resolveTypeAlias(type, context) : type;
238
- const preserveRuntimeLayout = canonicalSourceType.kind === "unionType" &&
239
- canonicalSourceType.preserveRuntimeLayout === true;
264
+ const hasCarrierSlotLayout = canonicalSourceType.kind === "unionType" &&
265
+ canonicalSourceType.runtimeUnionLayout === "carrierSlotOrder";
240
266
  const activeAliases = canonicalSourceType.kind === "unionType" &&
241
267
  canonicalSourceType.runtimeCarrierFamilyKey
242
268
  ? new Set([canonicalSourceType.runtimeCarrierFamilyKey])
243
269
  : new Set();
244
- const semanticMembers = preserveRuntimeLayout
270
+ const semanticMembers = hasCarrierSlotLayout
245
271
  ? collectRuntimeUnionRawMembers(canonicalSourceType, context, activeAliases)
246
272
  : expandRuntimeUnionMembers(canonicalSourceType, context, activeAliases);
247
273
  if (semanticMembers.length < 2) {
248
274
  return undefined;
249
275
  }
250
- if (preserveRuntimeLayout) {
276
+ if (hasCarrierSlotLayout) {
251
277
  return semanticMembers;
252
278
  }
253
279
  const mergeEquivalentRuntimeUnionMembers = (existing, candidate) => {
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-unions.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-unions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-unions.js","sourceRoot":"","sources":["../../../src/core/semantic/runtime-unions.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { emitTypeAst } from "../../types/emitter.js";
7
7
  import { createContext } from "../../emitter-types/context.js";
8
8
  import { identifierExpression } from "../format/backend-ast/builders.js";
9
9
  import { printType } from "../format/backend-ast/printer-precedence.js";
10
+ import { semanticTypeMap, storageCarrierMap, } from "../../types.js";
10
11
  import { substituteTypeArgs } from "./type-resolution.js";
11
12
  import { createRuntimeUnionRegistry } from "./runtime-union-registry.js";
12
13
  const property = (name, type) => ({
@@ -59,7 +60,9 @@ describe("runtime-unions", () => {
59
60
  clrName: "Fixture.Channels.repo.Item",
60
61
  assemblyName: "@fixture/channels",
61
62
  },
62
- structuralMembers: [property("id", { kind: "primitiveType", name: "int" })],
63
+ structuralMembers: [
64
+ property("id", { kind: "primitiveType", name: "int" }),
65
+ ],
63
66
  };
64
67
  const domainItem = {
65
68
  kind: "referenceType",
@@ -71,7 +74,9 @@ describe("runtime-unions", () => {
71
74
  clrName: "Fixture.Channels.domain.Item",
72
75
  assemblyName: "@fixture/channels",
73
76
  },
74
- structuralMembers: [property("id", { kind: "primitiveType", name: "int" })],
77
+ structuralMembers: [
78
+ property("id", { kind: "primitiveType", name: "int" }),
79
+ ],
75
80
  };
76
81
  const indices = findExactRuntimeUnionMemberIndices([repoItem], domainItem, createContext({ rootNamespace: "Fixture" }));
77
82
  expect(indices).to.deep.equal([]);
@@ -305,7 +310,7 @@ describe("runtime-unions", () => {
305
310
  it("preserves explicit duplicate runtime carrier slots when requested", () => {
306
311
  const duplicatedCarrier = {
307
312
  kind: "unionType",
308
- preserveRuntimeLayout: true,
313
+ runtimeUnionLayout: "carrierSlotOrder",
309
314
  types: [
310
315
  {
311
316
  kind: "arrayType",
@@ -438,8 +443,8 @@ describe("runtime-unions", () => {
438
443
  };
439
444
  const context = {
440
445
  ...createContext({ rootNamespace: "Test" }),
441
- localSemanticTypes: new Map([["value", effectiveType]]),
442
- localValueTypes: new Map([["value", sourceCarrier]]),
446
+ localSemanticTypes: semanticTypeMap([["value", effectiveType]]),
447
+ localValueTypes: storageCarrierMap([["value", sourceCarrier]]),
443
448
  };
444
449
  const narrowedMembers = resolveNarrowedUnionMembers("value", effectiveType, context);
445
450
  expect(narrowedMembers?.members.map((member) => {
@@ -510,8 +515,8 @@ describe("runtime-unions", () => {
510
515
  },
511
516
  ],
512
517
  ]),
513
- localSemanticTypes: new Map([["value", effectiveType]]),
514
- localValueTypes: new Map([["value", carrierReference]]),
518
+ localSemanticTypes: semanticTypeMap([["value", effectiveType]]),
519
+ localValueTypes: storageCarrierMap([["value", carrierReference]]),
515
520
  };
516
521
  const narrowedMembers = resolveNarrowedUnionMembers("value", effectiveType, context);
517
522
  expect(narrowedMembers?.members.map((member) => {