@flighthq/tool-compiler 0.5.1-edge.1687.b63c819

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 (831) hide show
  1. package/LICENSE.md +9 -0
  2. package/README.md +74 -0
  3. package/dist/packages/compiler-ambient/src/compilerAmbientSurface.d.ts +3 -0
  4. package/dist/packages/compiler-ambient/src/compilerAmbientSurface.d.ts.map +1 -0
  5. package/dist/packages/compiler-ambient/src/compilerAmbientSurface.js +564 -0
  6. package/dist/packages/compiler-ambient/src/compilerAmbientSurface.js.map +1 -0
  7. package/dist/packages/compiler-ambient/src/index.d.ts +2 -0
  8. package/dist/packages/compiler-ambient/src/index.d.ts.map +1 -0
  9. package/dist/packages/compiler-ambient/src/index.js +2 -0
  10. package/dist/packages/compiler-ambient/src/index.js.map +1 -0
  11. package/dist/packages/compiler-backend-cpp/src/cppAmbientMemberBinding.d.ts +3 -0
  12. package/dist/packages/compiler-backend-cpp/src/cppAmbientMemberBinding.d.ts.map +1 -0
  13. package/dist/packages/compiler-backend-cpp/src/cppAmbientMemberBinding.js +146 -0
  14. package/dist/packages/compiler-backend-cpp/src/cppAmbientMemberBinding.js.map +1 -0
  15. package/dist/packages/compiler-backend-cpp/src/cppBindingTypeInference.d.ts +3 -0
  16. package/dist/packages/compiler-backend-cpp/src/cppBindingTypeInference.d.ts.map +1 -0
  17. package/dist/packages/compiler-backend-cpp/src/cppBindingTypeInference.js +197 -0
  18. package/dist/packages/compiler-backend-cpp/src/cppBindingTypeInference.js.map +1 -0
  19. package/dist/packages/compiler-backend-cpp/src/cppCallableSignatureAbi.d.ts +8 -0
  20. package/dist/packages/compiler-backend-cpp/src/cppCallableSignatureAbi.d.ts.map +1 -0
  21. package/dist/packages/compiler-backend-cpp/src/cppCallableSignatureAbi.js +9 -0
  22. package/dist/packages/compiler-backend-cpp/src/cppCallableSignatureAbi.js.map +1 -0
  23. package/dist/packages/compiler-backend-cpp/src/cppClosureCapturePlan.d.ts +3 -0
  24. package/dist/packages/compiler-backend-cpp/src/cppClosureCapturePlan.d.ts.map +1 -0
  25. package/dist/packages/compiler-backend-cpp/src/cppClosureCapturePlan.js +109 -0
  26. package/dist/packages/compiler-backend-cpp/src/cppClosureCapturePlan.js.map +1 -0
  27. package/dist/packages/compiler-backend-cpp/src/cppCompilerBackend.d.ts +4 -0
  28. package/dist/packages/compiler-backend-cpp/src/cppCompilerBackend.d.ts.map +1 -0
  29. package/dist/packages/compiler-backend-cpp/src/cppCompilerBackend.js +16568 -0
  30. package/dist/packages/compiler-backend-cpp/src/cppCompilerBackend.js.map +1 -0
  31. package/dist/packages/compiler-backend-cpp/src/cppCompilerIdentity.d.ts +7 -0
  32. package/dist/packages/compiler-backend-cpp/src/cppCompilerIdentity.d.ts.map +1 -0
  33. package/dist/packages/compiler-backend-cpp/src/cppCompilerIdentity.js +176 -0
  34. package/dist/packages/compiler-backend-cpp/src/cppCompilerIdentity.js.map +1 -0
  35. package/dist/packages/compiler-backend-cpp/src/cppReferenceRepresentationPlan.d.ts +7 -0
  36. package/dist/packages/compiler-backend-cpp/src/cppReferenceRepresentationPlan.d.ts.map +1 -0
  37. package/dist/packages/compiler-backend-cpp/src/cppReferenceRepresentationPlan.js +1514 -0
  38. package/dist/packages/compiler-backend-cpp/src/cppReferenceRepresentationPlan.js.map +1 -0
  39. package/dist/packages/compiler-backend-cpp/src/cppRuntimeExternalSymbolBinding.d.ts +44 -0
  40. package/dist/packages/compiler-backend-cpp/src/cppRuntimeExternalSymbolBinding.d.ts.map +1 -0
  41. package/dist/packages/compiler-backend-cpp/src/cppRuntimeExternalSymbolBinding.js +1060 -0
  42. package/dist/packages/compiler-backend-cpp/src/cppRuntimeExternalSymbolBinding.js.map +1 -0
  43. package/dist/packages/compiler-backend-cpp/src/cppTupleRepresentation.d.ts +3 -0
  44. package/dist/packages/compiler-backend-cpp/src/cppTupleRepresentation.d.ts.map +1 -0
  45. package/dist/packages/compiler-backend-cpp/src/cppTupleRepresentation.js +13 -0
  46. package/dist/packages/compiler-backend-cpp/src/cppTupleRepresentation.js.map +1 -0
  47. package/dist/packages/compiler-backend-cpp/src/cppUnionRepresentationPlan.d.ts +66 -0
  48. package/dist/packages/compiler-backend-cpp/src/cppUnionRepresentationPlan.d.ts.map +1 -0
  49. package/dist/packages/compiler-backend-cpp/src/cppUnionRepresentationPlan.js +196 -0
  50. package/dist/packages/compiler-backend-cpp/src/cppUnionRepresentationPlan.js.map +1 -0
  51. package/dist/packages/compiler-backend-cpp/src/index.d.ts +6 -0
  52. package/dist/packages/compiler-backend-cpp/src/index.d.ts.map +1 -0
  53. package/dist/packages/compiler-backend-cpp/src/index.js +6 -0
  54. package/dist/packages/compiler-backend-cpp/src/index.js.map +1 -0
  55. package/dist/packages/compiler-backend-hx/src/haxeAmbientMemberBinding.d.ts +4 -0
  56. package/dist/packages/compiler-backend-hx/src/haxeAmbientMemberBinding.d.ts.map +1 -0
  57. package/dist/packages/compiler-backend-hx/src/haxeAmbientMemberBinding.js +160 -0
  58. package/dist/packages/compiler-backend-hx/src/haxeAmbientMemberBinding.js.map +1 -0
  59. package/dist/packages/compiler-backend-hx/src/haxeAsyncIterationLowering.d.ts +3 -0
  60. package/dist/packages/compiler-backend-hx/src/haxeAsyncIterationLowering.d.ts.map +1 -0
  61. package/dist/packages/compiler-backend-hx/src/haxeAsyncIterationLowering.js +129 -0
  62. package/dist/packages/compiler-backend-hx/src/haxeAsyncIterationLowering.js.map +1 -0
  63. package/dist/packages/compiler-backend-hx/src/haxeCompilerBackend.d.ts +5 -0
  64. package/dist/packages/compiler-backend-hx/src/haxeCompilerBackend.d.ts.map +1 -0
  65. package/dist/packages/compiler-backend-hx/src/haxeCompilerBackend.js +5172 -0
  66. package/dist/packages/compiler-backend-hx/src/haxeCompilerBackend.js.map +1 -0
  67. package/dist/packages/compiler-backend-hx/src/haxeCompilerEmittedSourceSyntax.d.ts +3 -0
  68. package/dist/packages/compiler-backend-hx/src/haxeCompilerEmittedSourceSyntax.d.ts.map +1 -0
  69. package/dist/packages/compiler-backend-hx/src/haxeCompilerEmittedSourceSyntax.js +8 -0
  70. package/dist/packages/compiler-backend-hx/src/haxeCompilerEmittedSourceSyntax.js.map +1 -0
  71. package/dist/packages/compiler-backend-hx/src/haxeCompilerIdentity.d.ts +3 -0
  72. package/dist/packages/compiler-backend-hx/src/haxeCompilerIdentity.d.ts.map +1 -0
  73. package/dist/packages/compiler-backend-hx/src/haxeCompilerIdentity.js +51 -0
  74. package/dist/packages/compiler-backend-hx/src/haxeCompilerIdentity.js.map +1 -0
  75. package/dist/packages/compiler-backend-hx/src/haxeCompilerTargetCompilationSmoke.d.ts +3 -0
  76. package/dist/packages/compiler-backend-hx/src/haxeCompilerTargetCompilationSmoke.d.ts.map +1 -0
  77. package/dist/packages/compiler-backend-hx/src/haxeCompilerTargetCompilationSmoke.js +8 -0
  78. package/dist/packages/compiler-backend-hx/src/haxeCompilerTargetCompilationSmoke.js.map +1 -0
  79. package/dist/packages/compiler-backend-hx/src/haxeExternEmission.d.ts +40 -0
  80. package/dist/packages/compiler-backend-hx/src/haxeExternEmission.d.ts.map +1 -0
  81. package/dist/packages/compiler-backend-hx/src/haxeExternEmission.js +968 -0
  82. package/dist/packages/compiler-backend-hx/src/haxeExternEmission.js.map +1 -0
  83. package/dist/packages/compiler-backend-hx/src/haxeRuntimeAbiManifest.d.ts +3 -0
  84. package/dist/packages/compiler-backend-hx/src/haxeRuntimeAbiManifest.d.ts.map +1 -0
  85. package/dist/packages/compiler-backend-hx/src/haxeRuntimeAbiManifest.js +53 -0
  86. package/dist/packages/compiler-backend-hx/src/haxeRuntimeAbiManifest.js.map +1 -0
  87. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalConstructorAbi.d.ts +3 -0
  88. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalConstructorAbi.d.ts.map +1 -0
  89. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalConstructorAbi.js +64 -0
  90. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalConstructorAbi.js.map +1 -0
  91. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalSymbolBinding.d.ts +8 -0
  92. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalSymbolBinding.d.ts.map +1 -0
  93. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalSymbolBinding.js +803 -0
  94. package/dist/packages/compiler-backend-hx/src/haxeRuntimeExternalSymbolBinding.js.map +1 -0
  95. package/dist/packages/compiler-backend-hx/src/haxeRuntimeTaskCapability.d.ts +3 -0
  96. package/dist/packages/compiler-backend-hx/src/haxeRuntimeTaskCapability.d.ts.map +1 -0
  97. package/dist/packages/compiler-backend-hx/src/haxeRuntimeTaskCapability.js +66 -0
  98. package/dist/packages/compiler-backend-hx/src/haxeRuntimeTaskCapability.js.map +1 -0
  99. package/dist/packages/compiler-backend-hx/src/haxeTaskEmission.d.ts +3 -0
  100. package/dist/packages/compiler-backend-hx/src/haxeTaskEmission.d.ts.map +1 -0
  101. package/dist/packages/compiler-backend-hx/src/haxeTaskEmission.js +361 -0
  102. package/dist/packages/compiler-backend-hx/src/haxeTaskEmission.js.map +1 -0
  103. package/dist/packages/compiler-backend-hx/src/haxeTaskLowering.d.ts +4 -0
  104. package/dist/packages/compiler-backend-hx/src/haxeTaskLowering.d.ts.map +1 -0
  105. package/dist/packages/compiler-backend-hx/src/haxeTaskLowering.js +265 -0
  106. package/dist/packages/compiler-backend-hx/src/haxeTaskLowering.js.map +1 -0
  107. package/dist/packages/compiler-backend-hx/src/haxeTypeEmission.d.ts +16 -0
  108. package/dist/packages/compiler-backend-hx/src/haxeTypeEmission.d.ts.map +1 -0
  109. package/dist/packages/compiler-backend-hx/src/haxeTypeEmission.js +134 -0
  110. package/dist/packages/compiler-backend-hx/src/haxeTypeEmission.js.map +1 -0
  111. package/dist/packages/compiler-backend-hx/src/index.d.ts +13 -0
  112. package/dist/packages/compiler-backend-hx/src/index.d.ts.map +1 -0
  113. package/dist/packages/compiler-backend-hx/src/index.js +13 -0
  114. package/dist/packages/compiler-backend-hx/src/index.js.map +1 -0
  115. package/dist/packages/compiler-backend-rs/src/index.d.ts +8 -0
  116. package/dist/packages/compiler-backend-rs/src/index.d.ts.map +1 -0
  117. package/dist/packages/compiler-backend-rs/src/index.js +8 -0
  118. package/dist/packages/compiler-backend-rs/src/index.js.map +1 -0
  119. package/dist/packages/compiler-backend-rs/src/rustAmbientMemberBinding.d.ts +3 -0
  120. package/dist/packages/compiler-backend-rs/src/rustAmbientMemberBinding.d.ts.map +1 -0
  121. package/dist/packages/compiler-backend-rs/src/rustAmbientMemberBinding.js +99 -0
  122. package/dist/packages/compiler-backend-rs/src/rustAmbientMemberBinding.js.map +1 -0
  123. package/dist/packages/compiler-backend-rs/src/rustCompilerBackend.d.ts +5 -0
  124. package/dist/packages/compiler-backend-rs/src/rustCompilerBackend.d.ts.map +1 -0
  125. package/dist/packages/compiler-backend-rs/src/rustCompilerBackend.js +4555 -0
  126. package/dist/packages/compiler-backend-rs/src/rustCompilerBackend.js.map +1 -0
  127. package/dist/packages/compiler-backend-rs/src/rustCompilerEmittedSourceSyntax.d.ts +3 -0
  128. package/dist/packages/compiler-backend-rs/src/rustCompilerEmittedSourceSyntax.d.ts.map +1 -0
  129. package/dist/packages/compiler-backend-rs/src/rustCompilerEmittedSourceSyntax.js +8 -0
  130. package/dist/packages/compiler-backend-rs/src/rustCompilerEmittedSourceSyntax.js.map +1 -0
  131. package/dist/packages/compiler-backend-rs/src/rustCompilerIdentity.d.ts +4 -0
  132. package/dist/packages/compiler-backend-rs/src/rustCompilerIdentity.d.ts.map +1 -0
  133. package/dist/packages/compiler-backend-rs/src/rustCompilerIdentity.js +113 -0
  134. package/dist/packages/compiler-backend-rs/src/rustCompilerIdentity.js.map +1 -0
  135. package/dist/packages/compiler-backend-rs/src/rustCompilerTargetCompilationSmoke.d.ts +3 -0
  136. package/dist/packages/compiler-backend-rs/src/rustCompilerTargetCompilationSmoke.d.ts.map +1 -0
  137. package/dist/packages/compiler-backend-rs/src/rustCompilerTargetCompilationSmoke.js +8 -0
  138. package/dist/packages/compiler-backend-rs/src/rustCompilerTargetCompilationSmoke.js.map +1 -0
  139. package/dist/packages/compiler-backend-rs/src/rustOwnershipEvidence.d.ts +5 -0
  140. package/dist/packages/compiler-backend-rs/src/rustOwnershipEvidence.d.ts.map +1 -0
  141. package/dist/packages/compiler-backend-rs/src/rustOwnershipEvidence.js +345 -0
  142. package/dist/packages/compiler-backend-rs/src/rustOwnershipEvidence.js.map +1 -0
  143. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalConstructorAbi.d.ts +3 -0
  144. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalConstructorAbi.d.ts.map +1 -0
  145. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalConstructorAbi.js +38 -0
  146. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalConstructorAbi.js.map +1 -0
  147. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalSymbolBinding.d.ts +6 -0
  148. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalSymbolBinding.d.ts.map +1 -0
  149. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalSymbolBinding.js +301 -0
  150. package/dist/packages/compiler-backend-rs/src/rustRuntimeExternalSymbolBinding.js.map +1 -0
  151. package/dist/packages/compiler-canonical-form/src/compilerPortablePath.d.ts +2 -0
  152. package/dist/packages/compiler-canonical-form/src/compilerPortablePath.d.ts.map +1 -0
  153. package/dist/packages/compiler-canonical-form/src/compilerPortablePath.js +4 -0
  154. package/dist/packages/compiler-canonical-form/src/compilerPortablePath.js.map +1 -0
  155. package/dist/packages/compiler-canonical-form/src/compilerStructuralValue.d.ts +2 -0
  156. package/dist/packages/compiler-canonical-form/src/compilerStructuralValue.d.ts.map +1 -0
  157. package/dist/packages/compiler-canonical-form/src/compilerStructuralValue.js +63 -0
  158. package/dist/packages/compiler-canonical-form/src/compilerStructuralValue.js.map +1 -0
  159. package/dist/packages/compiler-canonical-form/src/compilerTextOrder.d.ts +2 -0
  160. package/dist/packages/compiler-canonical-form/src/compilerTextOrder.d.ts.map +1 -0
  161. package/dist/packages/compiler-canonical-form/src/compilerTextOrder.js +4 -0
  162. package/dist/packages/compiler-canonical-form/src/compilerTextOrder.js.map +1 -0
  163. package/dist/packages/compiler-canonical-form/src/index.d.ts +4 -0
  164. package/dist/packages/compiler-canonical-form/src/index.d.ts.map +1 -0
  165. package/dist/packages/compiler-canonical-form/src/index.js +4 -0
  166. package/dist/packages/compiler-canonical-form/src/index.js.map +1 -0
  167. package/dist/packages/compiler-check/src/compilerPackageCheck.d.ts +9 -0
  168. package/dist/packages/compiler-check/src/compilerPackageCheck.d.ts.map +1 -0
  169. package/dist/packages/compiler-check/src/compilerPackageCheck.js +417 -0
  170. package/dist/packages/compiler-check/src/compilerPackageCheck.js.map +1 -0
  171. package/dist/packages/compiler-check/src/index.d.ts +2 -0
  172. package/dist/packages/compiler-check/src/index.d.ts.map +1 -0
  173. package/dist/packages/compiler-check/src/index.js +2 -0
  174. package/dist/packages/compiler-check/src/index.js.map +1 -0
  175. package/dist/packages/compiler-closure/src/compilerClosureEvidence.d.ts +3 -0
  176. package/dist/packages/compiler-closure/src/compilerClosureEvidence.d.ts.map +1 -0
  177. package/dist/packages/compiler-closure/src/compilerClosureEvidence.js +469 -0
  178. package/dist/packages/compiler-closure/src/compilerClosureEvidence.js.map +1 -0
  179. package/dist/packages/compiler-closure/src/index.d.ts +2 -0
  180. package/dist/packages/compiler-closure/src/index.d.ts.map +1 -0
  181. package/dist/packages/compiler-closure/src/index.js +2 -0
  182. package/dist/packages/compiler-closure/src/index.js.map +1 -0
  183. package/dist/packages/compiler-command-line/src/compilerCommandLine.d.ts +12 -0
  184. package/dist/packages/compiler-command-line/src/compilerCommandLine.d.ts.map +1 -0
  185. package/dist/packages/compiler-command-line/src/compilerCommandLine.js +549 -0
  186. package/dist/packages/compiler-command-line/src/compilerCommandLine.js.map +1 -0
  187. package/dist/packages/compiler-command-line/src/compilerCommandLineEntryPoint.d.ts +5 -0
  188. package/dist/packages/compiler-command-line/src/compilerCommandLineEntryPoint.d.ts.map +1 -0
  189. package/dist/packages/compiler-command-line/src/compilerCommandLineEntryPoint.js +134 -0
  190. package/dist/packages/compiler-command-line/src/compilerCommandLineEntryPoint.js.map +1 -0
  191. package/dist/packages/compiler-command-line/src/index.d.ts +3 -0
  192. package/dist/packages/compiler-command-line/src/index.d.ts.map +1 -0
  193. package/dist/packages/compiler-command-line/src/index.js +3 -0
  194. package/dist/packages/compiler-command-line/src/index.js.map +1 -0
  195. package/dist/packages/compiler-completion/src/compilerAsyncTaskCompletion.d.ts +6 -0
  196. package/dist/packages/compiler-completion/src/compilerAsyncTaskCompletion.d.ts.map +1 -0
  197. package/dist/packages/compiler-completion/src/compilerAsyncTaskCompletion.js +89 -0
  198. package/dist/packages/compiler-completion/src/compilerAsyncTaskCompletion.js.map +1 -0
  199. package/dist/packages/compiler-completion/src/compilerCatchCompletion.d.ts +6 -0
  200. package/dist/packages/compiler-completion/src/compilerCatchCompletion.d.ts.map +1 -0
  201. package/dist/packages/compiler-completion/src/compilerCatchCompletion.js +77 -0
  202. package/dist/packages/compiler-completion/src/compilerCatchCompletion.js.map +1 -0
  203. package/dist/packages/compiler-completion/src/compilerCompletionSet.d.ts +6 -0
  204. package/dist/packages/compiler-completion/src/compilerCompletionSet.d.ts.map +1 -0
  205. package/dist/packages/compiler-completion/src/compilerCompletionSet.js +110 -0
  206. package/dist/packages/compiler-completion/src/compilerCompletionSet.js.map +1 -0
  207. package/dist/packages/compiler-completion/src/compilerFinallyCompletion.d.ts +3 -0
  208. package/dist/packages/compiler-completion/src/compilerFinallyCompletion.d.ts.map +1 -0
  209. package/dist/packages/compiler-completion/src/compilerFinallyCompletion.js +13 -0
  210. package/dist/packages/compiler-completion/src/compilerFinallyCompletion.js.map +1 -0
  211. package/dist/packages/compiler-completion/src/compilerStatementCompletion.d.ts +4 -0
  212. package/dist/packages/compiler-completion/src/compilerStatementCompletion.d.ts.map +1 -0
  213. package/dist/packages/compiler-completion/src/compilerStatementCompletion.js +181 -0
  214. package/dist/packages/compiler-completion/src/compilerStatementCompletion.js.map +1 -0
  215. package/dist/packages/compiler-completion/src/compilerStatementValueCompletion.d.ts +5 -0
  216. package/dist/packages/compiler-completion/src/compilerStatementValueCompletion.d.ts.map +1 -0
  217. package/dist/packages/compiler-completion/src/compilerStatementValueCompletion.js +41 -0
  218. package/dist/packages/compiler-completion/src/compilerStatementValueCompletion.js.map +1 -0
  219. package/dist/packages/compiler-completion/src/compilerValueCompletion.d.ts +8 -0
  220. package/dist/packages/compiler-completion/src/compilerValueCompletion.d.ts.map +1 -0
  221. package/dist/packages/compiler-completion/src/compilerValueCompletion.js +208 -0
  222. package/dist/packages/compiler-completion/src/compilerValueCompletion.js.map +1 -0
  223. package/dist/packages/compiler-completion/src/index.d.ts +8 -0
  224. package/dist/packages/compiler-completion/src/index.d.ts.map +1 -0
  225. package/dist/packages/compiler-completion/src/index.js +8 -0
  226. package/dist/packages/compiler-completion/src/index.js.map +1 -0
  227. package/dist/packages/compiler-emission/src/compilerEmittedSourceSyntax.d.ts +4 -0
  228. package/dist/packages/compiler-emission/src/compilerEmittedSourceSyntax.d.ts.map +1 -0
  229. package/dist/packages/compiler-emission/src/compilerEmittedSourceSyntax.js +122 -0
  230. package/dist/packages/compiler-emission/src/compilerEmittedSourceSyntax.js.map +1 -0
  231. package/dist/packages/compiler-emission/src/compilerGeneratedFileProvenance.d.ts +3 -0
  232. package/dist/packages/compiler-emission/src/compilerGeneratedFileProvenance.d.ts.map +1 -0
  233. package/dist/packages/compiler-emission/src/compilerGeneratedFileProvenance.js +17 -0
  234. package/dist/packages/compiler-emission/src/compilerGeneratedFileProvenance.js.map +1 -0
  235. package/dist/packages/compiler-emission/src/compilerLiteralUnion.d.ts +3 -0
  236. package/dist/packages/compiler-emission/src/compilerLiteralUnion.d.ts.map +1 -0
  237. package/dist/packages/compiler-emission/src/compilerLiteralUnion.js +20 -0
  238. package/dist/packages/compiler-emission/src/compilerLiteralUnion.js.map +1 -0
  239. package/dist/packages/compiler-emission/src/compilerNullableFlowGuard.d.ts +4 -0
  240. package/dist/packages/compiler-emission/src/compilerNullableFlowGuard.d.ts.map +1 -0
  241. package/dist/packages/compiler-emission/src/compilerNullableFlowGuard.js +32 -0
  242. package/dist/packages/compiler-emission/src/compilerNullableFlowGuard.js.map +1 -0
  243. package/dist/packages/compiler-emission/src/compilerSourceEmission.d.ts +16 -0
  244. package/dist/packages/compiler-emission/src/compilerSourceEmission.d.ts.map +1 -0
  245. package/dist/packages/compiler-emission/src/compilerSourceEmission.js +176 -0
  246. package/dist/packages/compiler-emission/src/compilerSourceEmission.js.map +1 -0
  247. package/dist/packages/compiler-emission/src/compilerTargetCompilationSmoke.d.ts +4 -0
  248. package/dist/packages/compiler-emission/src/compilerTargetCompilationSmoke.d.ts.map +1 -0
  249. package/dist/packages/compiler-emission/src/compilerTargetCompilationSmoke.js +114 -0
  250. package/dist/packages/compiler-emission/src/compilerTargetCompilationSmoke.js.map +1 -0
  251. package/dist/packages/compiler-emission/src/compilerTargetNameAllocation.d.ts +5 -0
  252. package/dist/packages/compiler-emission/src/compilerTargetNameAllocation.d.ts.map +1 -0
  253. package/dist/packages/compiler-emission/src/compilerTargetNameAllocation.js +449 -0
  254. package/dist/packages/compiler-emission/src/compilerTargetNameAllocation.js.map +1 -0
  255. package/dist/packages/compiler-emission/src/index.d.ts +8 -0
  256. package/dist/packages/compiler-emission/src/index.d.ts.map +1 -0
  257. package/dist/packages/compiler-emission/src/index.js +8 -0
  258. package/dist/packages/compiler-emission/src/index.js.map +1 -0
  259. package/dist/packages/compiler-inventory/src/compilerInventoryFailure.d.ts +4 -0
  260. package/dist/packages/compiler-inventory/src/compilerInventoryFailure.d.ts.map +1 -0
  261. package/dist/packages/compiler-inventory/src/compilerInventoryFailure.js +42 -0
  262. package/dist/packages/compiler-inventory/src/compilerInventoryFailure.js.map +1 -0
  263. package/dist/packages/compiler-inventory/src/compilerModuleResolution.d.ts +4 -0
  264. package/dist/packages/compiler-inventory/src/compilerModuleResolution.d.ts.map +1 -0
  265. package/dist/packages/compiler-inventory/src/compilerModuleResolution.js +74 -0
  266. package/dist/packages/compiler-inventory/src/compilerModuleResolution.js.map +1 -0
  267. package/dist/packages/compiler-inventory/src/fileSystemWorkspaceSource.d.ts +3 -0
  268. package/dist/packages/compiler-inventory/src/fileSystemWorkspaceSource.d.ts.map +1 -0
  269. package/dist/packages/compiler-inventory/src/fileSystemWorkspaceSource.js +20 -0
  270. package/dist/packages/compiler-inventory/src/fileSystemWorkspaceSource.js.map +1 -0
  271. package/dist/packages/compiler-inventory/src/flightPackageEligibility.d.ts +5 -0
  272. package/dist/packages/compiler-inventory/src/flightPackageEligibility.d.ts.map +1 -0
  273. package/dist/packages/compiler-inventory/src/flightPackageEligibility.js +174 -0
  274. package/dist/packages/compiler-inventory/src/flightPackageEligibility.js.map +1 -0
  275. package/dist/packages/compiler-inventory/src/flightPackageExclusion.d.ts +3 -0
  276. package/dist/packages/compiler-inventory/src/flightPackageExclusion.d.ts.map +1 -0
  277. package/dist/packages/compiler-inventory/src/flightPackageExclusion.js +79 -0
  278. package/dist/packages/compiler-inventory/src/flightPackageExclusion.js.map +1 -0
  279. package/dist/packages/compiler-inventory/src/flightPackageExportLane.d.ts +4 -0
  280. package/dist/packages/compiler-inventory/src/flightPackageExportLane.d.ts.map +1 -0
  281. package/dist/packages/compiler-inventory/src/flightPackageExportLane.js +30 -0
  282. package/dist/packages/compiler-inventory/src/flightPackageExportLane.js.map +1 -0
  283. package/dist/packages/compiler-inventory/src/flightPackageExportManifest.d.ts +3 -0
  284. package/dist/packages/compiler-inventory/src/flightPackageExportManifest.d.ts.map +1 -0
  285. package/dist/packages/compiler-inventory/src/flightPackageExportManifest.js +90 -0
  286. package/dist/packages/compiler-inventory/src/flightPackageExportManifest.js.map +1 -0
  287. package/dist/packages/compiler-inventory/src/flightPackageHostFacts.d.ts +3 -0
  288. package/dist/packages/compiler-inventory/src/flightPackageHostFacts.d.ts.map +1 -0
  289. package/dist/packages/compiler-inventory/src/flightPackageHostFacts.js +33 -0
  290. package/dist/packages/compiler-inventory/src/flightPackageHostFacts.js.map +1 -0
  291. package/dist/packages/compiler-inventory/src/flightPackageImport.d.ts +3 -0
  292. package/dist/packages/compiler-inventory/src/flightPackageImport.d.ts.map +1 -0
  293. package/dist/packages/compiler-inventory/src/flightPackageImport.js +82 -0
  294. package/dist/packages/compiler-inventory/src/flightPackageImport.js.map +1 -0
  295. package/dist/packages/compiler-inventory/src/flightPackageManifest.d.ts +3 -0
  296. package/dist/packages/compiler-inventory/src/flightPackageManifest.d.ts.map +1 -0
  297. package/dist/packages/compiler-inventory/src/flightPackageManifest.js +116 -0
  298. package/dist/packages/compiler-inventory/src/flightPackageManifest.js.map +1 -0
  299. package/dist/packages/compiler-inventory/src/flightWorkspaceCompilationInput.d.ts +4 -0
  300. package/dist/packages/compiler-inventory/src/flightWorkspaceCompilationInput.d.ts.map +1 -0
  301. package/dist/packages/compiler-inventory/src/flightWorkspaceCompilationInput.js +315 -0
  302. package/dist/packages/compiler-inventory/src/flightWorkspaceCompilationInput.js.map +1 -0
  303. package/dist/packages/compiler-inventory/src/flightWorkspaceInventory.d.ts +3 -0
  304. package/dist/packages/compiler-inventory/src/flightWorkspaceInventory.d.ts.map +1 -0
  305. package/dist/packages/compiler-inventory/src/flightWorkspaceInventory.js +591 -0
  306. package/dist/packages/compiler-inventory/src/flightWorkspaceInventory.js.map +1 -0
  307. package/dist/packages/compiler-inventory/src/gitCheckoutRevision.d.ts +2 -0
  308. package/dist/packages/compiler-inventory/src/gitCheckoutRevision.d.ts.map +1 -0
  309. package/dist/packages/compiler-inventory/src/gitCheckoutRevision.js +20 -0
  310. package/dist/packages/compiler-inventory/src/gitCheckoutRevision.js.map +1 -0
  311. package/dist/packages/compiler-inventory/src/index.d.ts +17 -0
  312. package/dist/packages/compiler-inventory/src/index.d.ts.map +1 -0
  313. package/dist/packages/compiler-inventory/src/index.js +17 -0
  314. package/dist/packages/compiler-inventory/src/index.js.map +1 -0
  315. package/dist/packages/compiler-inventory/src/memoryWorkspaceSource.d.ts +3 -0
  316. package/dist/packages/compiler-inventory/src/memoryWorkspaceSource.d.ts.map +1 -0
  317. package/dist/packages/compiler-inventory/src/memoryWorkspaceSource.js +61 -0
  318. package/dist/packages/compiler-inventory/src/memoryWorkspaceSource.js.map +1 -0
  319. package/dist/packages/compiler-inventory/src/typeScriptHostEndpointInventory.d.ts +3 -0
  320. package/dist/packages/compiler-inventory/src/typeScriptHostEndpointInventory.d.ts.map +1 -0
  321. package/dist/packages/compiler-inventory/src/typeScriptHostEndpointInventory.js +138 -0
  322. package/dist/packages/compiler-inventory/src/typeScriptHostEndpointInventory.js.map +1 -0
  323. package/dist/packages/compiler-inventory/src/typeScriptProject.d.ts +3 -0
  324. package/dist/packages/compiler-inventory/src/typeScriptProject.d.ts.map +1 -0
  325. package/dist/packages/compiler-inventory/src/typeScriptProject.js +28 -0
  326. package/dist/packages/compiler-inventory/src/typeScriptProject.js.map +1 -0
  327. package/dist/packages/compiler-inventory/src/typeScriptRuntimeBinding.d.ts +7 -0
  328. package/dist/packages/compiler-inventory/src/typeScriptRuntimeBinding.d.ts.map +1 -0
  329. package/dist/packages/compiler-inventory/src/typeScriptRuntimeBinding.js +67 -0
  330. package/dist/packages/compiler-inventory/src/typeScriptRuntimeBinding.js.map +1 -0
  331. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversal.d.ts +5 -0
  332. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversal.d.ts.map +1 -0
  333. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversal.js +469 -0
  334. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversal.js.map +1 -0
  335. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversalPath.d.ts +3 -0
  336. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversalPath.d.ts.map +1 -0
  337. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversalPath.js +14 -0
  338. package/dist/packages/compiler-ir-traversal/src/compilerIntermediateRepresentationTraversalPath.js.map +1 -0
  339. package/dist/packages/compiler-ir-traversal/src/index.d.ts +3 -0
  340. package/dist/packages/compiler-ir-traversal/src/index.d.ts.map +1 -0
  341. package/dist/packages/compiler-ir-traversal/src/index.js +3 -0
  342. package/dist/packages/compiler-ir-traversal/src/index.js.map +1 -0
  343. package/dist/packages/compiler-ir-validation/src/compilerIrModuleStructure.d.ts +3 -0
  344. package/dist/packages/compiler-ir-validation/src/compilerIrModuleStructure.d.ts.map +1 -0
  345. package/dist/packages/compiler-ir-validation/src/compilerIrModuleStructure.js +1258 -0
  346. package/dist/packages/compiler-ir-validation/src/compilerIrModuleStructure.js.map +1 -0
  347. package/dist/packages/compiler-ir-validation/src/index.d.ts +2 -0
  348. package/dist/packages/compiler-ir-validation/src/index.d.ts.map +1 -0
  349. package/dist/packages/compiler-ir-validation/src/index.js +2 -0
  350. package/dist/packages/compiler-ir-validation/src/index.js.map +1 -0
  351. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternLowering.d.ts +3 -0
  352. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternLowering.d.ts.map +1 -0
  353. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternLowering.js +717 -0
  354. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternLowering.js.map +1 -0
  355. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternPresence.d.ts +3 -0
  356. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternPresence.d.ts.map +1 -0
  357. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternPresence.js +162 -0
  358. package/dist/packages/compiler-lowering/src/compilerArrayBindingPatternPresence.js.map +1 -0
  359. package/dist/packages/compiler-lowering/src/compilerAwaitConditionHoistingLowering.d.ts +3 -0
  360. package/dist/packages/compiler-lowering/src/compilerAwaitConditionHoistingLowering.d.ts.map +1 -0
  361. package/dist/packages/compiler-lowering/src/compilerAwaitConditionHoistingLowering.js +721 -0
  362. package/dist/packages/compiler-lowering/src/compilerAwaitConditionHoistingLowering.js.map +1 -0
  363. package/dist/packages/compiler-lowering/src/compilerBindingPatternLowering.d.ts +4 -0
  364. package/dist/packages/compiler-lowering/src/compilerBindingPatternLowering.d.ts.map +1 -0
  365. package/dist/packages/compiler-lowering/src/compilerBindingPatternLowering.js +43 -0
  366. package/dist/packages/compiler-lowering/src/compilerBindingPatternLowering.js.map +1 -0
  367. package/dist/packages/compiler-lowering/src/compilerCStyleForLowering.d.ts +3 -0
  368. package/dist/packages/compiler-lowering/src/compilerCStyleForLowering.d.ts.map +1 -0
  369. package/dist/packages/compiler-lowering/src/compilerCStyleForLowering.js +591 -0
  370. package/dist/packages/compiler-lowering/src/compilerCStyleForLowering.js.map +1 -0
  371. package/dist/packages/compiler-lowering/src/compilerCatchAwaitHoistingLowering.d.ts +3 -0
  372. package/dist/packages/compiler-lowering/src/compilerCatchAwaitHoistingLowering.d.ts.map +1 -0
  373. package/dist/packages/compiler-lowering/src/compilerCatchAwaitHoistingLowering.js +244 -0
  374. package/dist/packages/compiler-lowering/src/compilerCatchAwaitHoistingLowering.js.map +1 -0
  375. package/dist/packages/compiler-lowering/src/compilerClassInitialization.d.ts +4 -0
  376. package/dist/packages/compiler-lowering/src/compilerClassInitialization.d.ts.map +1 -0
  377. package/dist/packages/compiler-lowering/src/compilerClassInitialization.js +102 -0
  378. package/dist/packages/compiler-lowering/src/compilerClassInitialization.js.map +1 -0
  379. package/dist/packages/compiler-lowering/src/compilerExtraArgumentErasureLowering.d.ts +3 -0
  380. package/dist/packages/compiler-lowering/src/compilerExtraArgumentErasureLowering.d.ts.map +1 -0
  381. package/dist/packages/compiler-lowering/src/compilerExtraArgumentErasureLowering.js +156 -0
  382. package/dist/packages/compiler-lowering/src/compilerExtraArgumentErasureLowering.js.map +1 -0
  383. package/dist/packages/compiler-lowering/src/compilerFinallyAwaitHoistingLowering.d.ts +3 -0
  384. package/dist/packages/compiler-lowering/src/compilerFinallyAwaitHoistingLowering.d.ts.map +1 -0
  385. package/dist/packages/compiler-lowering/src/compilerFinallyAwaitHoistingLowering.js +255 -0
  386. package/dist/packages/compiler-lowering/src/compilerFinallyAwaitHoistingLowering.js.map +1 -0
  387. package/dist/packages/compiler-lowering/src/compilerInterfaceInheritanceLowering.d.ts +3 -0
  388. package/dist/packages/compiler-lowering/src/compilerInterfaceInheritanceLowering.d.ts.map +1 -0
  389. package/dist/packages/compiler-lowering/src/compilerInterfaceInheritanceLowering.js +1062 -0
  390. package/dist/packages/compiler-lowering/src/compilerInterfaceInheritanceLowering.js.map +1 -0
  391. package/dist/packages/compiler-lowering/src/compilerLoweringPass.d.ts +5 -0
  392. package/dist/packages/compiler-lowering/src/compilerLoweringPass.d.ts.map +1 -0
  393. package/dist/packages/compiler-lowering/src/compilerLoweringPass.js +133 -0
  394. package/dist/packages/compiler-lowering/src/compilerLoweringPass.js.map +1 -0
  395. package/dist/packages/compiler-lowering/src/compilerObjectBindingPatternLowering.d.ts +3 -0
  396. package/dist/packages/compiler-lowering/src/compilerObjectBindingPatternLowering.d.ts.map +1 -0
  397. package/dist/packages/compiler-lowering/src/compilerObjectBindingPatternLowering.js +589 -0
  398. package/dist/packages/compiler-lowering/src/compilerObjectBindingPatternLowering.js.map +1 -0
  399. package/dist/packages/compiler-lowering/src/compilerSwitchClauseCompletion.d.ts +3 -0
  400. package/dist/packages/compiler-lowering/src/compilerSwitchClauseCompletion.d.ts.map +1 -0
  401. package/dist/packages/compiler-lowering/src/compilerSwitchClauseCompletion.js +71 -0
  402. package/dist/packages/compiler-lowering/src/compilerSwitchClauseCompletion.js.map +1 -0
  403. package/dist/packages/compiler-lowering/src/compilerSwitchFallthroughLowering.d.ts +3 -0
  404. package/dist/packages/compiler-lowering/src/compilerSwitchFallthroughLowering.d.ts.map +1 -0
  405. package/dist/packages/compiler-lowering/src/compilerSwitchFallthroughLowering.js +810 -0
  406. package/dist/packages/compiler-lowering/src/compilerSwitchFallthroughLowering.js.map +1 -0
  407. package/dist/packages/compiler-lowering/src/compilerSwitchSuspensionLowering.d.ts +3 -0
  408. package/dist/packages/compiler-lowering/src/compilerSwitchSuspensionLowering.d.ts.map +1 -0
  409. package/dist/packages/compiler-lowering/src/compilerSwitchSuspensionLowering.js +226 -0
  410. package/dist/packages/compiler-lowering/src/compilerSwitchSuspensionLowering.js.map +1 -0
  411. package/dist/packages/compiler-lowering/src/compilerVariableHoistingInitialization.d.ts +3 -0
  412. package/dist/packages/compiler-lowering/src/compilerVariableHoistingInitialization.d.ts.map +1 -0
  413. package/dist/packages/compiler-lowering/src/compilerVariableHoistingInitialization.js +724 -0
  414. package/dist/packages/compiler-lowering/src/compilerVariableHoistingInitialization.js.map +1 -0
  415. package/dist/packages/compiler-lowering/src/compilerVariableHoistingLowering.d.ts +3 -0
  416. package/dist/packages/compiler-lowering/src/compilerVariableHoistingLowering.d.ts.map +1 -0
  417. package/dist/packages/compiler-lowering/src/compilerVariableHoistingLowering.js +797 -0
  418. package/dist/packages/compiler-lowering/src/compilerVariableHoistingLowering.js.map +1 -0
  419. package/dist/packages/compiler-lowering/src/compilerVariableInitializationCompletion.d.ts +9 -0
  420. package/dist/packages/compiler-lowering/src/compilerVariableInitializationCompletion.d.ts.map +1 -0
  421. package/dist/packages/compiler-lowering/src/compilerVariableInitializationCompletion.js +42 -0
  422. package/dist/packages/compiler-lowering/src/compilerVariableInitializationCompletion.js.map +1 -0
  423. package/dist/packages/compiler-lowering/src/index.d.ts +17 -0
  424. package/dist/packages/compiler-lowering/src/index.d.ts.map +1 -0
  425. package/dist/packages/compiler-lowering/src/index.js +17 -0
  426. package/dist/packages/compiler-lowering/src/index.js.map +1 -0
  427. package/dist/packages/compiler-module/src/compilerModuleEvaluation.d.ts +4 -0
  428. package/dist/packages/compiler-module/src/compilerModuleEvaluation.d.ts.map +1 -0
  429. package/dist/packages/compiler-module/src/compilerModuleEvaluation.js +506 -0
  430. package/dist/packages/compiler-module/src/compilerModuleEvaluation.js.map +1 -0
  431. package/dist/packages/compiler-module/src/compilerModuleFacadeIdentity.d.ts +4 -0
  432. package/dist/packages/compiler-module/src/compilerModuleFacadeIdentity.d.ts.map +1 -0
  433. package/dist/packages/compiler-module/src/compilerModuleFacadeIdentity.js +182 -0
  434. package/dist/packages/compiler-module/src/compilerModuleFacadeIdentity.js.map +1 -0
  435. package/dist/packages/compiler-module/src/compilerModuleFacadeLowering.d.ts +4 -0
  436. package/dist/packages/compiler-module/src/compilerModuleFacadeLowering.d.ts.map +1 -0
  437. package/dist/packages/compiler-module/src/compilerModuleFacadeLowering.js +466 -0
  438. package/dist/packages/compiler-module/src/compilerModuleFacadeLowering.js.map +1 -0
  439. package/dist/packages/compiler-module/src/compilerModuleFacadeRequirement.d.ts +3 -0
  440. package/dist/packages/compiler-module/src/compilerModuleFacadeRequirement.d.ts.map +1 -0
  441. package/dist/packages/compiler-module/src/compilerModuleFacadeRequirement.js +28 -0
  442. package/dist/packages/compiler-module/src/compilerModuleFacadeRequirement.js.map +1 -0
  443. package/dist/packages/compiler-module/src/index.d.ts +5 -0
  444. package/dist/packages/compiler-module/src/index.d.ts.map +1 -0
  445. package/dist/packages/compiler-module/src/index.js +5 -0
  446. package/dist/packages/compiler-module/src/index.js.map +1 -0
  447. package/dist/packages/compiler-orchestration/src/compilerOrchestration.d.ts +8 -0
  448. package/dist/packages/compiler-orchestration/src/compilerOrchestration.d.ts.map +1 -0
  449. package/dist/packages/compiler-orchestration/src/compilerOrchestration.js +161 -0
  450. package/dist/packages/compiler-orchestration/src/compilerOrchestration.js.map +1 -0
  451. package/dist/packages/compiler-orchestration/src/compilerPackageCompilation.d.ts +4 -0
  452. package/dist/packages/compiler-orchestration/src/compilerPackageCompilation.d.ts.map +1 -0
  453. package/dist/packages/compiler-orchestration/src/compilerPackageCompilation.js +745 -0
  454. package/dist/packages/compiler-orchestration/src/compilerPackageCompilation.js.map +1 -0
  455. package/dist/packages/compiler-orchestration/src/flightWorkspaceCompilation.d.ts +3 -0
  456. package/dist/packages/compiler-orchestration/src/flightWorkspaceCompilation.d.ts.map +1 -0
  457. package/dist/packages/compiler-orchestration/src/flightWorkspaceCompilation.js +14 -0
  458. package/dist/packages/compiler-orchestration/src/flightWorkspaceCompilation.js.map +1 -0
  459. package/dist/packages/compiler-orchestration/src/index.d.ts +4 -0
  460. package/dist/packages/compiler-orchestration/src/index.d.ts.map +1 -0
  461. package/dist/packages/compiler-orchestration/src/index.js +4 -0
  462. package/dist/packages/compiler-orchestration/src/index.js.map +1 -0
  463. package/dist/packages/compiler-patch/src/compilerSemanticPatch.d.ts +6 -0
  464. package/dist/packages/compiler-patch/src/compilerSemanticPatch.d.ts.map +1 -0
  465. package/dist/packages/compiler-patch/src/compilerSemanticPatch.js +316 -0
  466. package/dist/packages/compiler-patch/src/compilerSemanticPatch.js.map +1 -0
  467. package/dist/packages/compiler-patch/src/index.d.ts +2 -0
  468. package/dist/packages/compiler-patch/src/index.d.ts.map +1 -0
  469. package/dist/packages/compiler-patch/src/index.js +2 -0
  470. package/dist/packages/compiler-patch/src/index.js.map +1 -0
  471. package/dist/packages/compiler-provenance/src/index.d.ts +2 -0
  472. package/dist/packages/compiler-provenance/src/index.d.ts.map +1 -0
  473. package/dist/packages/compiler-provenance/src/index.js +2 -0
  474. package/dist/packages/compiler-provenance/src/index.js.map +1 -0
  475. package/dist/packages/compiler-provenance/src/sourceFingerprint.d.ts +7 -0
  476. package/dist/packages/compiler-provenance/src/sourceFingerprint.d.ts.map +1 -0
  477. package/dist/packages/compiler-provenance/src/sourceFingerprint.js +58 -0
  478. package/dist/packages/compiler-provenance/src/sourceFingerprint.js.map +1 -0
  479. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorAbiCompleteness.d.ts +4 -0
  480. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorAbiCompleteness.d.ts.map +1 -0
  481. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorAbiCompleteness.js +110 -0
  482. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorAbiCompleteness.js.map +1 -0
  483. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorReachability.d.ts +3 -0
  484. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorReachability.d.ts.map +1 -0
  485. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorReachability.js +42 -0
  486. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalConstructorReachability.js.map +1 -0
  487. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolCompleteness.d.ts +4 -0
  488. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolCompleteness.d.ts.map +1 -0
  489. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolCompleteness.js +64 -0
  490. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolCompleteness.js.map +1 -0
  491. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolReachability.d.ts +3 -0
  492. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolReachability.d.ts.map +1 -0
  493. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolReachability.js +89 -0
  494. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeExternalSymbolReachability.js.map +1 -0
  495. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeTaskCapability.d.ts +6 -0
  496. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeTaskCapability.d.ts.map +1 -0
  497. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeTaskCapability.js +247 -0
  498. package/dist/packages/compiler-runtime-contract/src/compilerRuntimeTaskCapability.js.map +1 -0
  499. package/dist/packages/compiler-runtime-contract/src/index.d.ts +6 -0
  500. package/dist/packages/compiler-runtime-contract/src/index.d.ts.map +1 -0
  501. package/dist/packages/compiler-runtime-contract/src/index.js +6 -0
  502. package/dist/packages/compiler-runtime-contract/src/index.js.map +1 -0
  503. package/dist/packages/compiler-semantic/src/compilerIrStaticFacts.d.ts +4 -0
  504. package/dist/packages/compiler-semantic/src/compilerIrStaticFacts.d.ts.map +1 -0
  505. package/dist/packages/compiler-semantic/src/compilerIrStaticFacts.js +396 -0
  506. package/dist/packages/compiler-semantic/src/compilerIrStaticFacts.js.map +1 -0
  507. package/dist/packages/compiler-semantic/src/compilerIrTypeMemberEvidence.d.ts +4 -0
  508. package/dist/packages/compiler-semantic/src/compilerIrTypeMemberEvidence.d.ts.map +1 -0
  509. package/dist/packages/compiler-semantic/src/compilerIrTypeMemberEvidence.js +63 -0
  510. package/dist/packages/compiler-semantic/src/compilerIrTypeMemberEvidence.js.map +1 -0
  511. package/dist/packages/compiler-semantic/src/compilerOperatorDomainEvidence.d.ts +4 -0
  512. package/dist/packages/compiler-semantic/src/compilerOperatorDomainEvidence.d.ts.map +1 -0
  513. package/dist/packages/compiler-semantic/src/compilerOperatorDomainEvidence.js +76 -0
  514. package/dist/packages/compiler-semantic/src/compilerOperatorDomainEvidence.js.map +1 -0
  515. package/dist/packages/compiler-semantic/src/compilerStaticNumericArithmetic.d.ts +7 -0
  516. package/dist/packages/compiler-semantic/src/compilerStaticNumericArithmetic.d.ts.map +1 -0
  517. package/dist/packages/compiler-semantic/src/compilerStaticNumericArithmetic.js +107 -0
  518. package/dist/packages/compiler-semantic/src/compilerStaticNumericArithmetic.js.map +1 -0
  519. package/dist/packages/compiler-semantic/src/compilerTypeScriptForInKeyEvidence.d.ts +4 -0
  520. package/dist/packages/compiler-semantic/src/compilerTypeScriptForInKeyEvidence.d.ts.map +1 -0
  521. package/dist/packages/compiler-semantic/src/compilerTypeScriptForInKeyEvidence.js +159 -0
  522. package/dist/packages/compiler-semantic/src/compilerTypeScriptForInKeyEvidence.js.map +1 -0
  523. package/dist/packages/compiler-semantic/src/compilerTypeScriptInvocationSemantics.d.ts +4 -0
  524. package/dist/packages/compiler-semantic/src/compilerTypeScriptInvocationSemantics.d.ts.map +1 -0
  525. package/dist/packages/compiler-semantic/src/compilerTypeScriptInvocationSemantics.js +31 -0
  526. package/dist/packages/compiler-semantic/src/compilerTypeScriptInvocationSemantics.js.map +1 -0
  527. package/dist/packages/compiler-semantic/src/compilerTypeScriptSyntacticTypeEvidence.d.ts +8 -0
  528. package/dist/packages/compiler-semantic/src/compilerTypeScriptSyntacticTypeEvidence.d.ts.map +1 -0
  529. package/dist/packages/compiler-semantic/src/compilerTypeScriptSyntacticTypeEvidence.js +83 -0
  530. package/dist/packages/compiler-semantic/src/compilerTypeScriptSyntacticTypeEvidence.js.map +1 -0
  531. package/dist/packages/compiler-semantic/src/index.d.ts +4 -0
  532. package/dist/packages/compiler-semantic/src/index.d.ts.map +1 -0
  533. package/dist/packages/compiler-semantic/src/index.js +4 -0
  534. package/dist/packages/compiler-semantic/src/index.js.map +1 -0
  535. package/dist/packages/compiler-semantic/src/typeScriptSemanticLowering.d.ts +6 -0
  536. package/dist/packages/compiler-semantic/src/typeScriptSemanticLowering.d.ts.map +1 -0
  537. package/dist/packages/compiler-semantic/src/typeScriptSemanticLowering.js +8158 -0
  538. package/dist/packages/compiler-semantic/src/typeScriptSemanticLowering.js.map +1 -0
  539. package/dist/packages/compiler-structural/src/compilerStructuralObjectCompatibility.d.ts +5 -0
  540. package/dist/packages/compiler-structural/src/compilerStructuralObjectCompatibility.d.ts.map +1 -0
  541. package/dist/packages/compiler-structural/src/compilerStructuralObjectCompatibility.js +500 -0
  542. package/dist/packages/compiler-structural/src/compilerStructuralObjectCompatibility.js.map +1 -0
  543. package/dist/packages/compiler-structural/src/compilerStructuralObjectCopySemantics.d.ts +3 -0
  544. package/dist/packages/compiler-structural/src/compilerStructuralObjectCopySemantics.d.ts.map +1 -0
  545. package/dist/packages/compiler-structural/src/compilerStructuralObjectCopySemantics.js +11 -0
  546. package/dist/packages/compiler-structural/src/compilerStructuralObjectCopySemantics.js.map +1 -0
  547. package/dist/packages/compiler-structural/src/compilerStructuralTypeAssignability.d.ts +4 -0
  548. package/dist/packages/compiler-structural/src/compilerStructuralTypeAssignability.d.ts.map +1 -0
  549. package/dist/packages/compiler-structural/src/compilerStructuralTypeAssignability.js +261 -0
  550. package/dist/packages/compiler-structural/src/compilerStructuralTypeAssignability.js.map +1 -0
  551. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeIdentity.d.ts +4 -0
  552. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeIdentity.d.ts.map +1 -0
  553. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeIdentity.js +168 -0
  554. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeIdentity.js.map +1 -0
  555. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeInventory.d.ts +3 -0
  556. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeInventory.d.ts.map +1 -0
  557. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeInventory.js +50 -0
  558. package/dist/packages/compiler-structural/src/compilerStructuralTypeShapeInventory.js.map +1 -0
  559. package/dist/packages/compiler-structural/src/compilerStructuralTypeSubstitution.d.ts +5 -0
  560. package/dist/packages/compiler-structural/src/compilerStructuralTypeSubstitution.d.ts.map +1 -0
  561. package/dist/packages/compiler-structural/src/compilerStructuralTypeSubstitution.js +224 -0
  562. package/dist/packages/compiler-structural/src/compilerStructuralTypeSubstitution.js.map +1 -0
  563. package/dist/packages/compiler-structural/src/compilerTypeValueIdentityAnalysis.d.ts +4 -0
  564. package/dist/packages/compiler-structural/src/compilerTypeValueIdentityAnalysis.d.ts.map +1 -0
  565. package/dist/packages/compiler-structural/src/compilerTypeValueIdentityAnalysis.js +592 -0
  566. package/dist/packages/compiler-structural/src/compilerTypeValueIdentityAnalysis.js.map +1 -0
  567. package/dist/packages/compiler-structural/src/index.d.ts +8 -0
  568. package/dist/packages/compiler-structural/src/index.d.ts.map +1 -0
  569. package/dist/packages/compiler-structural/src/index.js +8 -0
  570. package/dist/packages/compiler-structural/src/index.js.map +1 -0
  571. package/dist/packages/compiler-task/src/compilerAsyncStateMachine.d.ts +3 -0
  572. package/dist/packages/compiler-task/src/compilerAsyncStateMachine.d.ts.map +1 -0
  573. package/dist/packages/compiler-task/src/compilerAsyncStateMachine.js +785 -0
  574. package/dist/packages/compiler-task/src/compilerAsyncStateMachine.js.map +1 -0
  575. package/dist/packages/compiler-task/src/compilerAsyncTaskInventory.d.ts +3 -0
  576. package/dist/packages/compiler-task/src/compilerAsyncTaskInventory.d.ts.map +1 -0
  577. package/dist/packages/compiler-task/src/compilerAsyncTaskInventory.js +182 -0
  578. package/dist/packages/compiler-task/src/compilerAsyncTaskInventory.js.map +1 -0
  579. package/dist/packages/compiler-task/src/compilerTaskOperationSemantics.d.ts +4 -0
  580. package/dist/packages/compiler-task/src/compilerTaskOperationSemantics.d.ts.map +1 -0
  581. package/dist/packages/compiler-task/src/compilerTaskOperationSemantics.js +101 -0
  582. package/dist/packages/compiler-task/src/compilerTaskOperationSemantics.js.map +1 -0
  583. package/dist/packages/compiler-task/src/index.d.ts +4 -0
  584. package/dist/packages/compiler-task/src/index.d.ts.map +1 -0
  585. package/dist/packages/compiler-task/src/index.js +4 -0
  586. package/dist/packages/compiler-task/src/index.js.map +1 -0
  587. package/dist/packages/compiler-types/src/compilerAccessSemanticIntermediateRepresentation.d.ts +79 -0
  588. package/dist/packages/compiler-types/src/compilerAccessSemanticIntermediateRepresentation.d.ts.map +1 -0
  589. package/dist/packages/compiler-types/src/compilerAccessSemanticIntermediateRepresentation.js +2 -0
  590. package/dist/packages/compiler-types/src/compilerAccessSemanticIntermediateRepresentation.js.map +1 -0
  591. package/dist/packages/compiler-types/src/compilerAmbientMemberBindingContract.d.ts +87 -0
  592. package/dist/packages/compiler-types/src/compilerAmbientMemberBindingContract.d.ts.map +1 -0
  593. package/dist/packages/compiler-types/src/compilerAmbientMemberBindingContract.js +2 -0
  594. package/dist/packages/compiler-types/src/compilerAmbientMemberBindingContract.js.map +1 -0
  595. package/dist/packages/compiler-types/src/compilerAsyncStateMachineContract.d.ts +126 -0
  596. package/dist/packages/compiler-types/src/compilerAsyncStateMachineContract.d.ts.map +1 -0
  597. package/dist/packages/compiler-types/src/compilerAsyncStateMachineContract.js +2 -0
  598. package/dist/packages/compiler-types/src/compilerAsyncStateMachineContract.js.map +1 -0
  599. package/dist/packages/compiler-types/src/compilerAsyncTaskCompletionContract.d.ts +32 -0
  600. package/dist/packages/compiler-types/src/compilerAsyncTaskCompletionContract.d.ts.map +1 -0
  601. package/dist/packages/compiler-types/src/compilerAsyncTaskCompletionContract.js +2 -0
  602. package/dist/packages/compiler-types/src/compilerAsyncTaskCompletionContract.js.map +1 -0
  603. package/dist/packages/compiler-types/src/compilerAsyncTaskInventoryContract.d.ts +63 -0
  604. package/dist/packages/compiler-types/src/compilerAsyncTaskInventoryContract.d.ts.map +1 -0
  605. package/dist/packages/compiler-types/src/compilerAsyncTaskInventoryContract.js +2 -0
  606. package/dist/packages/compiler-types/src/compilerAsyncTaskInventoryContract.js.map +1 -0
  607. package/dist/packages/compiler-types/src/compilerBackendContract.d.ts +183 -0
  608. package/dist/packages/compiler-types/src/compilerBackendContract.d.ts.map +1 -0
  609. package/dist/packages/compiler-types/src/compilerBackendContract.js +2 -0
  610. package/dist/packages/compiler-types/src/compilerBackendContract.js.map +1 -0
  611. package/dist/packages/compiler-types/src/compilerBindingIntermediateRepresentation.d.ts +46 -0
  612. package/dist/packages/compiler-types/src/compilerBindingIntermediateRepresentation.d.ts.map +1 -0
  613. package/dist/packages/compiler-types/src/compilerBindingIntermediateRepresentation.js +2 -0
  614. package/dist/packages/compiler-types/src/compilerBindingIntermediateRepresentation.js.map +1 -0
  615. package/dist/packages/compiler-types/src/compilerBindingPatternIntermediateRepresentation.d.ts +43 -0
  616. package/dist/packages/compiler-types/src/compilerBindingPatternIntermediateRepresentation.d.ts.map +1 -0
  617. package/dist/packages/compiler-types/src/compilerBindingPatternIntermediateRepresentation.js +2 -0
  618. package/dist/packages/compiler-types/src/compilerBindingPatternIntermediateRepresentation.js.map +1 -0
  619. package/dist/packages/compiler-types/src/compilerCatchCompletionContract.d.ts +23 -0
  620. package/dist/packages/compiler-types/src/compilerCatchCompletionContract.d.ts.map +1 -0
  621. package/dist/packages/compiler-types/src/compilerCatchCompletionContract.js +2 -0
  622. package/dist/packages/compiler-types/src/compilerCatchCompletionContract.js.map +1 -0
  623. package/dist/packages/compiler-types/src/compilerClassInitializationContract.d.ts +30 -0
  624. package/dist/packages/compiler-types/src/compilerClassInitializationContract.d.ts.map +1 -0
  625. package/dist/packages/compiler-types/src/compilerClassInitializationContract.js +2 -0
  626. package/dist/packages/compiler-types/src/compilerClassInitializationContract.js.map +1 -0
  627. package/dist/packages/compiler-types/src/compilerClosureEvidenceContract.d.ts +60 -0
  628. package/dist/packages/compiler-types/src/compilerClosureEvidenceContract.d.ts.map +1 -0
  629. package/dist/packages/compiler-types/src/compilerClosureEvidenceContract.js +2 -0
  630. package/dist/packages/compiler-types/src/compilerClosureEvidenceContract.js.map +1 -0
  631. package/dist/packages/compiler-types/src/compilerCommandLineContract.d.ts +79 -0
  632. package/dist/packages/compiler-types/src/compilerCommandLineContract.d.ts.map +1 -0
  633. package/dist/packages/compiler-types/src/compilerCommandLineContract.js +2 -0
  634. package/dist/packages/compiler-types/src/compilerCommandLineContract.js.map +1 -0
  635. package/dist/packages/compiler-types/src/compilerCompletionContract.d.ts +25 -0
  636. package/dist/packages/compiler-types/src/compilerCompletionContract.d.ts.map +1 -0
  637. package/dist/packages/compiler-types/src/compilerCompletionContract.js +2 -0
  638. package/dist/packages/compiler-types/src/compilerCompletionContract.js.map +1 -0
  639. package/dist/packages/compiler-types/src/compilerCppClosureCaptureContract.d.ts +21 -0
  640. package/dist/packages/compiler-types/src/compilerCppClosureCaptureContract.d.ts.map +1 -0
  641. package/dist/packages/compiler-types/src/compilerCppClosureCaptureContract.js +2 -0
  642. package/dist/packages/compiler-types/src/compilerCppClosureCaptureContract.js.map +1 -0
  643. package/dist/packages/compiler-types/src/compilerCppReferenceRepresentationContract.d.ts +74 -0
  644. package/dist/packages/compiler-types/src/compilerCppReferenceRepresentationContract.d.ts.map +1 -0
  645. package/dist/packages/compiler-types/src/compilerCppReferenceRepresentationContract.js +2 -0
  646. package/dist/packages/compiler-types/src/compilerCppReferenceRepresentationContract.js.map +1 -0
  647. package/dist/packages/compiler-types/src/compilerDeclarationIntermediateRepresentation.d.ts +113 -0
  648. package/dist/packages/compiler-types/src/compilerDeclarationIntermediateRepresentation.d.ts.map +1 -0
  649. package/dist/packages/compiler-types/src/compilerDeclarationIntermediateRepresentation.js +2 -0
  650. package/dist/packages/compiler-types/src/compilerDeclarationIntermediateRepresentation.js.map +1 -0
  651. package/dist/packages/compiler-types/src/compilerDependentCallablePackContract.d.ts +11 -0
  652. package/dist/packages/compiler-types/src/compilerDependentCallablePackContract.d.ts.map +1 -0
  653. package/dist/packages/compiler-types/src/compilerDependentCallablePackContract.js +2 -0
  654. package/dist/packages/compiler-types/src/compilerDependentCallablePackContract.js.map +1 -0
  655. package/dist/packages/compiler-types/src/compilerDiagnosticContract.d.ts +11 -0
  656. package/dist/packages/compiler-types/src/compilerDiagnosticContract.d.ts.map +1 -0
  657. package/dist/packages/compiler-types/src/compilerDiagnosticContract.js +2 -0
  658. package/dist/packages/compiler-types/src/compilerDiagnosticContract.js.map +1 -0
  659. package/dist/packages/compiler-types/src/compilerEmittedSourceSyntaxContract.d.ts +28 -0
  660. package/dist/packages/compiler-types/src/compilerEmittedSourceSyntaxContract.d.ts.map +1 -0
  661. package/dist/packages/compiler-types/src/compilerEmittedSourceSyntaxContract.js +2 -0
  662. package/dist/packages/compiler-types/src/compilerEmittedSourceSyntaxContract.js.map +1 -0
  663. package/dist/packages/compiler-types/src/compilerExecutableIntermediateRepresentation.d.ts +343 -0
  664. package/dist/packages/compiler-types/src/compilerExecutableIntermediateRepresentation.d.ts.map +1 -0
  665. package/dist/packages/compiler-types/src/compilerExecutableIntermediateRepresentation.js +2 -0
  666. package/dist/packages/compiler-types/src/compilerExecutableIntermediateRepresentation.js.map +1 -0
  667. package/dist/packages/compiler-types/src/compilerFlightWorkspaceContract.d.ts +26 -0
  668. package/dist/packages/compiler-types/src/compilerFlightWorkspaceContract.d.ts.map +1 -0
  669. package/dist/packages/compiler-types/src/compilerFlightWorkspaceContract.js +2 -0
  670. package/dist/packages/compiler-types/src/compilerFlightWorkspaceContract.js.map +1 -0
  671. package/dist/packages/compiler-types/src/compilerHaxeTaskEmissionContract.d.ts +12 -0
  672. package/dist/packages/compiler-types/src/compilerHaxeTaskEmissionContract.d.ts.map +1 -0
  673. package/dist/packages/compiler-types/src/compilerHaxeTaskEmissionContract.js +2 -0
  674. package/dist/packages/compiler-types/src/compilerHaxeTaskEmissionContract.js.map +1 -0
  675. package/dist/packages/compiler-types/src/compilerHaxeTaskLoweringContract.d.ts +119 -0
  676. package/dist/packages/compiler-types/src/compilerHaxeTaskLoweringContract.d.ts.map +1 -0
  677. package/dist/packages/compiler-types/src/compilerHaxeTaskLoweringContract.js +2 -0
  678. package/dist/packages/compiler-types/src/compilerHaxeTaskLoweringContract.js.map +1 -0
  679. package/dist/packages/compiler-types/src/compilerHostEndpointContract.d.ts +27 -0
  680. package/dist/packages/compiler-types/src/compilerHostEndpointContract.d.ts.map +1 -0
  681. package/dist/packages/compiler-types/src/compilerHostEndpointContract.js +2 -0
  682. package/dist/packages/compiler-types/src/compilerHostEndpointContract.js.map +1 -0
  683. package/dist/packages/compiler-types/src/compilerInvariantContract.d.ts +7 -0
  684. package/dist/packages/compiler-types/src/compilerInvariantContract.d.ts.map +1 -0
  685. package/dist/packages/compiler-types/src/compilerInvariantContract.js +2 -0
  686. package/dist/packages/compiler-types/src/compilerInvariantContract.js.map +1 -0
  687. package/dist/packages/compiler-types/src/compilerInventoryContract.d.ts +186 -0
  688. package/dist/packages/compiler-types/src/compilerInventoryContract.d.ts.map +1 -0
  689. package/dist/packages/compiler-types/src/compilerInventoryContract.js +2 -0
  690. package/dist/packages/compiler-types/src/compilerInventoryContract.js.map +1 -0
  691. package/dist/packages/compiler-types/src/compilerIrValidationContract.d.ts +13 -0
  692. package/dist/packages/compiler-types/src/compilerIrValidationContract.d.ts.map +1 -0
  693. package/dist/packages/compiler-types/src/compilerIrValidationContract.js +2 -0
  694. package/dist/packages/compiler-types/src/compilerIrValidationContract.js.map +1 -0
  695. package/dist/packages/compiler-types/src/compilerLoweringContract.d.ts +32 -0
  696. package/dist/packages/compiler-types/src/compilerLoweringContract.d.ts.map +1 -0
  697. package/dist/packages/compiler-types/src/compilerLoweringContract.js +2 -0
  698. package/dist/packages/compiler-types/src/compilerLoweringContract.js.map +1 -0
  699. package/dist/packages/compiler-types/src/compilerModuleEvaluationContract.d.ts +84 -0
  700. package/dist/packages/compiler-types/src/compilerModuleEvaluationContract.d.ts.map +1 -0
  701. package/dist/packages/compiler-types/src/compilerModuleEvaluationContract.js +2 -0
  702. package/dist/packages/compiler-types/src/compilerModuleEvaluationContract.js.map +1 -0
  703. package/dist/packages/compiler-types/src/compilerModuleFacadeContract.d.ts +78 -0
  704. package/dist/packages/compiler-types/src/compilerModuleFacadeContract.d.ts.map +1 -0
  705. package/dist/packages/compiler-types/src/compilerModuleFacadeContract.js +2 -0
  706. package/dist/packages/compiler-types/src/compilerModuleFacadeContract.js.map +1 -0
  707. package/dist/packages/compiler-types/src/compilerModuleIntermediateRepresentation.d.ts +53 -0
  708. package/dist/packages/compiler-types/src/compilerModuleIntermediateRepresentation.d.ts.map +1 -0
  709. package/dist/packages/compiler-types/src/compilerModuleIntermediateRepresentation.js +2 -0
  710. package/dist/packages/compiler-types/src/compilerModuleIntermediateRepresentation.js.map +1 -0
  711. package/dist/packages/compiler-types/src/compilerModuleResolutionContract.d.ts +20 -0
  712. package/dist/packages/compiler-types/src/compilerModuleResolutionContract.d.ts.map +1 -0
  713. package/dist/packages/compiler-types/src/compilerModuleResolutionContract.js +2 -0
  714. package/dist/packages/compiler-types/src/compilerModuleResolutionContract.js.map +1 -0
  715. package/dist/packages/compiler-types/src/compilerOperatorIntermediateRepresentation.d.ts +5 -0
  716. package/dist/packages/compiler-types/src/compilerOperatorIntermediateRepresentation.d.ts.map +1 -0
  717. package/dist/packages/compiler-types/src/compilerOperatorIntermediateRepresentation.js +2 -0
  718. package/dist/packages/compiler-types/src/compilerOperatorIntermediateRepresentation.js.map +1 -0
  719. package/dist/packages/compiler-types/src/compilerOperatorSemanticIntermediateRepresentation.d.ts +34 -0
  720. package/dist/packages/compiler-types/src/compilerOperatorSemanticIntermediateRepresentation.d.ts.map +1 -0
  721. package/dist/packages/compiler-types/src/compilerOperatorSemanticIntermediateRepresentation.js +2 -0
  722. package/dist/packages/compiler-types/src/compilerOperatorSemanticIntermediateRepresentation.js.map +1 -0
  723. package/dist/packages/compiler-types/src/compilerOrchestrationContract.d.ts +43 -0
  724. package/dist/packages/compiler-types/src/compilerOrchestrationContract.d.ts.map +1 -0
  725. package/dist/packages/compiler-types/src/compilerOrchestrationContract.js +2 -0
  726. package/dist/packages/compiler-types/src/compilerOrchestrationContract.js.map +1 -0
  727. package/dist/packages/compiler-types/src/compilerPackageCheckContract.d.ts +96 -0
  728. package/dist/packages/compiler-types/src/compilerPackageCheckContract.d.ts.map +1 -0
  729. package/dist/packages/compiler-types/src/compilerPackageCheckContract.js +2 -0
  730. package/dist/packages/compiler-types/src/compilerPackageCheckContract.js.map +1 -0
  731. package/dist/packages/compiler-types/src/compilerPackageCompilationContract.d.ts +108 -0
  732. package/dist/packages/compiler-types/src/compilerPackageCompilationContract.d.ts.map +1 -0
  733. package/dist/packages/compiler-types/src/compilerPackageCompilationContract.js +2 -0
  734. package/dist/packages/compiler-types/src/compilerPackageCompilationContract.js.map +1 -0
  735. package/dist/packages/compiler-types/src/compilerRefusalClassificationContract.d.ts +3 -0
  736. package/dist/packages/compiler-types/src/compilerRefusalClassificationContract.d.ts.map +1 -0
  737. package/dist/packages/compiler-types/src/compilerRefusalClassificationContract.js +2 -0
  738. package/dist/packages/compiler-types/src/compilerRefusalClassificationContract.js.map +1 -0
  739. package/dist/packages/compiler-types/src/compilerRuntimeContract.d.ts +122 -0
  740. package/dist/packages/compiler-types/src/compilerRuntimeContract.d.ts.map +1 -0
  741. package/dist/packages/compiler-types/src/compilerRuntimeContract.js +2 -0
  742. package/dist/packages/compiler-types/src/compilerRuntimeContract.js.map +1 -0
  743. package/dist/packages/compiler-types/src/compilerRuntimeTaskCapabilityContract.d.ts +96 -0
  744. package/dist/packages/compiler-types/src/compilerRuntimeTaskCapabilityContract.d.ts.map +1 -0
  745. package/dist/packages/compiler-types/src/compilerRuntimeTaskCapabilityContract.js +2 -0
  746. package/dist/packages/compiler-types/src/compilerRuntimeTaskCapabilityContract.js.map +1 -0
  747. package/dist/packages/compiler-types/src/compilerRustOwnershipContract.d.ts +25 -0
  748. package/dist/packages/compiler-types/src/compilerRustOwnershipContract.d.ts.map +1 -0
  749. package/dist/packages/compiler-types/src/compilerRustOwnershipContract.js +2 -0
  750. package/dist/packages/compiler-types/src/compilerRustOwnershipContract.js.map +1 -0
  751. package/dist/packages/compiler-types/src/compilerSemanticPatchContract.d.ts +80 -0
  752. package/dist/packages/compiler-types/src/compilerSemanticPatchContract.d.ts.map +1 -0
  753. package/dist/packages/compiler-types/src/compilerSemanticPatchContract.js +2 -0
  754. package/dist/packages/compiler-types/src/compilerSemanticPatchContract.js.map +1 -0
  755. package/dist/packages/compiler-types/src/compilerSourceFingerprint.d.ts +2 -0
  756. package/dist/packages/compiler-types/src/compilerSourceFingerprint.d.ts.map +1 -0
  757. package/dist/packages/compiler-types/src/compilerSourceFingerprint.js +2 -0
  758. package/dist/packages/compiler-types/src/compilerSourceFingerprint.js.map +1 -0
  759. package/dist/packages/compiler-types/src/compilerSourceIdentity.d.ts +21 -0
  760. package/dist/packages/compiler-types/src/compilerSourceIdentity.d.ts.map +1 -0
  761. package/dist/packages/compiler-types/src/compilerSourceIdentity.js +2 -0
  762. package/dist/packages/compiler-types/src/compilerSourceIdentity.js.map +1 -0
  763. package/dist/packages/compiler-types/src/compilerStatementCompletionContract.d.ts +7 -0
  764. package/dist/packages/compiler-types/src/compilerStatementCompletionContract.d.ts.map +1 -0
  765. package/dist/packages/compiler-types/src/compilerStatementCompletionContract.js +2 -0
  766. package/dist/packages/compiler-types/src/compilerStatementCompletionContract.js.map +1 -0
  767. package/dist/packages/compiler-types/src/compilerStaticFactContract.d.ts +71 -0
  768. package/dist/packages/compiler-types/src/compilerStaticFactContract.d.ts.map +1 -0
  769. package/dist/packages/compiler-types/src/compilerStaticFactContract.js +2 -0
  770. package/dist/packages/compiler-types/src/compilerStaticFactContract.js.map +1 -0
  771. package/dist/packages/compiler-types/src/compilerStructuralObjectCompatibilityContract.d.ts +18 -0
  772. package/dist/packages/compiler-types/src/compilerStructuralObjectCompatibilityContract.d.ts.map +1 -0
  773. package/dist/packages/compiler-types/src/compilerStructuralObjectCompatibilityContract.js +2 -0
  774. package/dist/packages/compiler-types/src/compilerStructuralObjectCompatibilityContract.js.map +1 -0
  775. package/dist/packages/compiler-types/src/compilerStructuralTypeAssignabilityContract.d.ts +20 -0
  776. package/dist/packages/compiler-types/src/compilerStructuralTypeAssignabilityContract.d.ts.map +1 -0
  777. package/dist/packages/compiler-types/src/compilerStructuralTypeAssignabilityContract.js +2 -0
  778. package/dist/packages/compiler-types/src/compilerStructuralTypeAssignabilityContract.js.map +1 -0
  779. package/dist/packages/compiler-types/src/compilerStructuralTypeShapeContract.d.ts +22 -0
  780. package/dist/packages/compiler-types/src/compilerStructuralTypeShapeContract.d.ts.map +1 -0
  781. package/dist/packages/compiler-types/src/compilerStructuralTypeShapeContract.js +2 -0
  782. package/dist/packages/compiler-types/src/compilerStructuralTypeShapeContract.js.map +1 -0
  783. package/dist/packages/compiler-types/src/compilerStructuralTypeSubstitutionContract.d.ts +17 -0
  784. package/dist/packages/compiler-types/src/compilerStructuralTypeSubstitutionContract.d.ts.map +1 -0
  785. package/dist/packages/compiler-types/src/compilerStructuralTypeSubstitutionContract.js +2 -0
  786. package/dist/packages/compiler-types/src/compilerStructuralTypeSubstitutionContract.js.map +1 -0
  787. package/dist/packages/compiler-types/src/compilerTargetCompilationSmokeContract.d.ts +26 -0
  788. package/dist/packages/compiler-types/src/compilerTargetCompilationSmokeContract.d.ts.map +1 -0
  789. package/dist/packages/compiler-types/src/compilerTargetCompilationSmokeContract.js +2 -0
  790. package/dist/packages/compiler-types/src/compilerTargetCompilationSmokeContract.js.map +1 -0
  791. package/dist/packages/compiler-types/src/compilerTargetNamingContract.d.ts +27 -0
  792. package/dist/packages/compiler-types/src/compilerTargetNamingContract.d.ts.map +1 -0
  793. package/dist/packages/compiler-types/src/compilerTargetNamingContract.js +2 -0
  794. package/dist/packages/compiler-types/src/compilerTargetNamingContract.js.map +1 -0
  795. package/dist/packages/compiler-types/src/compilerTaskOperationSemanticsContract.d.ts +65 -0
  796. package/dist/packages/compiler-types/src/compilerTaskOperationSemanticsContract.d.ts.map +1 -0
  797. package/dist/packages/compiler-types/src/compilerTaskOperationSemanticsContract.js +2 -0
  798. package/dist/packages/compiler-types/src/compilerTaskOperationSemanticsContract.js.map +1 -0
  799. package/dist/packages/compiler-types/src/compilerTraversalObserverContract.d.ts +29 -0
  800. package/dist/packages/compiler-types/src/compilerTraversalObserverContract.d.ts.map +1 -0
  801. package/dist/packages/compiler-types/src/compilerTraversalObserverContract.js +2 -0
  802. package/dist/packages/compiler-types/src/compilerTraversalObserverContract.js.map +1 -0
  803. package/dist/packages/compiler-types/src/compilerTypeIntermediateRepresentation.d.ts +99 -0
  804. package/dist/packages/compiler-types/src/compilerTypeIntermediateRepresentation.d.ts.map +1 -0
  805. package/dist/packages/compiler-types/src/compilerTypeIntermediateRepresentation.js +2 -0
  806. package/dist/packages/compiler-types/src/compilerTypeIntermediateRepresentation.js.map +1 -0
  807. package/dist/packages/compiler-types/src/compilerTypeScriptContract.d.ts +39 -0
  808. package/dist/packages/compiler-types/src/compilerTypeScriptContract.d.ts.map +1 -0
  809. package/dist/packages/compiler-types/src/compilerTypeScriptContract.js +2 -0
  810. package/dist/packages/compiler-types/src/compilerTypeScriptContract.js.map +1 -0
  811. package/dist/packages/compiler-types/src/compilerTypeValueIdentityContract.d.ts +14 -0
  812. package/dist/packages/compiler-types/src/compilerTypeValueIdentityContract.d.ts.map +1 -0
  813. package/dist/packages/compiler-types/src/compilerTypeValueIdentityContract.js +2 -0
  814. package/dist/packages/compiler-types/src/compilerTypeValueIdentityContract.js.map +1 -0
  815. package/dist/packages/compiler-types/src/compilerValueCompletionContract.d.ts +46 -0
  816. package/dist/packages/compiler-types/src/compilerValueCompletionContract.d.ts.map +1 -0
  817. package/dist/packages/compiler-types/src/compilerValueCompletionContract.js +2 -0
  818. package/dist/packages/compiler-types/src/compilerValueCompletionContract.js.map +1 -0
  819. package/dist/packages/compiler-types/src/compilerWorkspaceSourceContract.d.ts +11 -0
  820. package/dist/packages/compiler-types/src/compilerWorkspaceSourceContract.d.ts.map +1 -0
  821. package/dist/packages/compiler-types/src/compilerWorkspaceSourceContract.js +12 -0
  822. package/dist/packages/compiler-types/src/compilerWorkspaceSourceContract.js.map +1 -0
  823. package/dist/packages/compiler-types/src/index.d.ts +60 -0
  824. package/dist/packages/compiler-types/src/index.d.ts.map +1 -0
  825. package/dist/packages/compiler-types/src/index.js +2 -0
  826. package/dist/packages/compiler-types/src/index.js.map +1 -0
  827. package/dist/packages/tool-compiler/src/index.d.ts +24 -0
  828. package/dist/packages/tool-compiler/src/index.d.ts.map +1 -0
  829. package/dist/packages/tool-compiler/src/index.js +23 -0
  830. package/dist/packages/tool-compiler/src/index.js.map +1 -0
  831. package/package.json +45 -0
@@ -0,0 +1,968 @@
1
+ import { compareTextCodeUnits, normalizePathPortable } from '../../compiler-canonical-form/src/index.js';
2
+ import { createBackendEmissionFailure, createCompilerGeneratedFileHeader } from '../../compiler-emission/src/index.js';
3
+ import { createCompilerLoweringPassInterfaceInheritance, lowerIrModuleWithCompilerPasses, } from '../../compiler-lowering/src/index.js';
4
+ import { createIrTypeParameterSubstitutionPlan, resolveIrTypeStructuralSubstitution, } from '../../compiler-structural/src/index.js';
5
+ import { convertPackageNameToHaxePackageName } from './haxeCompilerIdentity.js';
6
+ import { getCompilerAmbientUtilityHeritageTargetHaxe, getCompilerRuntimeExternalSymbolTargetHaxe, isCompilerAmbientUtilityHeritageErasableHaxe, } from './haxeRuntimeExternalSymbolBinding.js';
7
+ import { emitIrTypeHaxe } from './haxeTypeEmission.js';
8
+ export function createHaxeExternEmissionIndex(modules, moduleResolution) {
9
+ const normalizedPaths = new Map();
10
+ const normalize = (source) => {
11
+ const cached = normalizedPaths.get(source);
12
+ if (cached !== undefined)
13
+ return cached;
14
+ const normalized = normalizePathPortable(source);
15
+ normalizedPaths.set(source, normalized);
16
+ return normalized;
17
+ };
18
+ const moduleKey = (module) => `${module.packageName}\0${normalize(module.source)}\0${module.name}`;
19
+ const packageSourceKey = (packageName, source) => `${packageName}\0${normalize(source)}`;
20
+ const append = (map, key, value) => {
21
+ const values = map.get(key);
22
+ if (values)
23
+ values.push(value);
24
+ else
25
+ map.set(key, [value]);
26
+ };
27
+ const declarationLocations = new Map();
28
+ const importRoutes = new Map();
29
+ const modulesByPackage = new Map();
30
+ const modulesByPackageSource = new Map();
31
+ const moduleOrdinals = new Map();
32
+ modules.forEach((module, ordinal) => {
33
+ moduleOrdinals.set(moduleKey(module), ordinal);
34
+ append(modulesByPackage, module.packageName, module);
35
+ append(modulesByPackageSource, packageSourceKey(module.packageName, module.source), module);
36
+ for (const declaration of module.declarations) {
37
+ if ('binding' in declaration)
38
+ append(declarationLocations, declaration.binding.id, { declaration, module });
39
+ }
40
+ for (const imported of module.imports) {
41
+ for (const candidate of imported.bindings) {
42
+ append(importRoutes, candidate.binding.id, {
43
+ from: module,
44
+ imported: candidate.imported,
45
+ specifier: imported.specifier,
46
+ });
47
+ }
48
+ }
49
+ });
50
+ const resolutionExact = new Map();
51
+ const resolutionFallback = new Map();
52
+ for (const edge of moduleResolution?.edges ?? []) {
53
+ const target = packageSourceKey(edge.target.packageName, edge.target.source);
54
+ append(edge.importer ? resolutionExact : resolutionFallback, edge.importer ? `${moduleKey(edge.importer)}\0${edge.specifier}` : edge.specifier, target);
55
+ }
56
+ const packageOwners = new Map();
57
+ for (const [packageName, packageModules] of modulesByPackage) {
58
+ const owner = [...packageModules].sort(compareModulesHaxeExtern)[0];
59
+ if (owner)
60
+ packageOwners.set(packageName, owner);
61
+ }
62
+ return {
63
+ activeDependencyClasses: new Set(),
64
+ declarationLocations,
65
+ dependencyClassFiles: new Map(),
66
+ emittedDependencyClassFiles: new Set(),
67
+ exportedTypeAliases: new Map(),
68
+ importRoutes,
69
+ localExportNames: new Map(),
70
+ moduleOrdinals,
71
+ modules,
72
+ modulesByPackage,
73
+ modulesByPackageSource,
74
+ normalizedPaths,
75
+ packageOwners,
76
+ resolutionExact,
77
+ resolutionFallback,
78
+ specifierModules: new Map(),
79
+ typeAliasLocations: new Map(),
80
+ };
81
+ }
82
+ export function emitIrModuleHaxeExtern(module, options = {}) {
83
+ return emitIrModuleHaxeExternWithContext(module, [module], undefined, options);
84
+ }
85
+ export function emitIrModuleHaxeExternWithContext(sourceModule, sourceModules, moduleResolution, options, interfaceInheritancePass, packageContract, getModuleFacade, emissionIndex) {
86
+ const ambientUtilityHeritageTargets = createAmbientUtilityHeritageTargetsHaxeExtern(sourceModule);
87
+ const inheritancePass = interfaceInheritancePass ??
88
+ createCompilerLoweringPassInterfaceInheritance(sourceModules, moduleResolution, {
89
+ eraseAmbientHeritage: (reference, declaration) => !declaration.exported &&
90
+ reference.reference.kind === 'ambient' &&
91
+ getCompilerRuntimeExternalSymbolTargetHaxe(reference.reference.name, 'type') !== undefined,
92
+ eraseAmbientUtilityHeritage: (reference, declaration) => ambientUtilityHeritageTargets.has(declaration.binding.id) ||
93
+ isCompilerAmbientUtilityHeritageErasableHaxe(reference),
94
+ });
95
+ const module = lowerIrModuleWithCompilerPasses(sourceModule, [inheritancePass]);
96
+ const index = emissionIndex ?? createHaxeExternEmissionIndex(sourceModules, moduleResolution);
97
+ const contract = packageContract
98
+ ? isSameModuleHaxeExtern(module, packageContract, index)
99
+ ? module
100
+ : packageContract
101
+ : undefined;
102
+ const context = {
103
+ ambientUtilityHeritageTargets,
104
+ index,
105
+ interfaceInheritancePass: inheritancePass,
106
+ module,
107
+ options,
108
+ packageFacade: contract && getModuleFacade ? getModuleFacade(contract) : undefined,
109
+ rootPackage: getRootPackageHaxeExtern(module.packageName, options),
110
+ };
111
+ assertModuleShapeHaxeExtern(context);
112
+ const files = module.declarations.flatMap((declaration) => {
113
+ if (declaration.kind === 'class')
114
+ return emitClassFilesHaxeExtern(declaration, context);
115
+ if (declaration.kind === 'interface')
116
+ return emitInterfaceFilesHaxeExtern(declaration, context);
117
+ if (declaration.kind === 'enum')
118
+ return emitEnumFilesHaxeExtern(declaration, context);
119
+ if (declaration.kind === 'typeAlias')
120
+ return emitTypeAliasFilesHaxeExtern(declaration, context);
121
+ return [];
122
+ });
123
+ if (isPackageHolderOwnerHaxeExtern(module, index)) {
124
+ const holder = emitPackageHolderHaxeExtern(module.packageName, context);
125
+ if (holder)
126
+ files.push(holder);
127
+ }
128
+ for (const [path, dependency] of index.dependencyClassFiles) {
129
+ if (index.emittedDependencyClassFiles.has(path))
130
+ continue;
131
+ index.emittedDependencyClassFiles.add(path);
132
+ files.push(dependency);
133
+ }
134
+ return files;
135
+ }
136
+ function assertModuleShapeHaxeExtern(context) {
137
+ if (context.packageFacade) {
138
+ if (!isPackageHolderOwnerHaxeExtern(context.module, context.index))
139
+ return;
140
+ for (const slot of getPackageFacadeSlotsHaxeExtern(context)) {
141
+ if (slot.route.kind === 'expression') {
142
+ emissionErrorHaxeExtern(context, 'default expression exports have no flight-hx extern representation');
143
+ }
144
+ if (slot.route.kind === 'namespace') {
145
+ emissionErrorHaxeExtern(context, 'namespace exports have no flight-hx extern representation');
146
+ }
147
+ }
148
+ return;
149
+ }
150
+ for (const exported of context.module.exports) {
151
+ if (exported.kind === 'default') {
152
+ emissionErrorHaxeExtern(context, 'default expression exports have no flight-hx extern representation');
153
+ }
154
+ }
155
+ for (const declaration of context.module.declarations) {
156
+ const exportNames = getLocalExportNamesHaxeExtern(declaration, context.module, context.index);
157
+ if (exportNames.length === 0)
158
+ continue;
159
+ if (declaration.kind === 'variable' && !('binding' in declaration)) {
160
+ emissionErrorHaxeExtern(context, 'exported binding patterns require declaration splitting before extern emission');
161
+ }
162
+ }
163
+ }
164
+ function emitClassFilesHaxeExtern(declaration, context) {
165
+ assertClassShapeHaxeExtern(declaration, context);
166
+ return getDeclarationExportNamesHaxeExtern(declaration, context, 'type').map((exportName) => emitClassFileHaxeExtern(declaration, safeHaxeExternTypeName(exportName), context, exportName));
167
+ }
168
+ function assertClassShapeHaxeExtern(declaration, context) {
169
+ if (declaration.classConstructor && declaration.classConstructor.overloads.length > 0) {
170
+ emissionErrorHaxeExtern(context, `class ${declaration.binding.name} constructor overloads require Haxe metadata`);
171
+ }
172
+ const unsupportedMethod = declaration.methods.find((method) => method.visibility === 'public' && method.overloads.length > 0);
173
+ if (unsupportedMethod) {
174
+ emissionErrorHaxeExtern(context, `class ${declaration.binding.name} method ${unsupportedMethod.name} overloads require Haxe metadata`);
175
+ }
176
+ }
177
+ function emitClassFileHaxeExtern(declaration, targetName, context, publicExportName) {
178
+ const packageName = `${context.rootPackage}._js`;
179
+ const heritage = [
180
+ ...(declaration.extends ? [`extends ${emitTypeHaxeExtern(declaration.extends, context)}`] : []),
181
+ ...declaration.implements.map((type) => `implements ${emitTypeHaxeExtern(type, context)}`),
182
+ ].join(' ');
183
+ const lines = [
184
+ createCompilerGeneratedFileHeader(context.module, '//', context.options.upstreamCommit),
185
+ '#if js',
186
+ `package ${packageName};`,
187
+ '',
188
+ ...(publicExportName
189
+ ? [`@:jsImport(${JSON.stringify(`${context.module.packageName}/contract`)}, ${JSON.stringify(publicExportName)})`]
190
+ : []),
191
+ `extern class ${targetName}${emitTypeParametersHaxeExtern(declaration.typeParameters, context)}${heritage ? ` ${heritage}` : ''} {`,
192
+ ];
193
+ for (const field of declaration.fields.filter((candidate) => candidate.visibility === 'public')) {
194
+ const name = safeHaxeExternName(field.name);
195
+ if (name !== field.name)
196
+ lines.push(` @:native(${JSON.stringify(field.name)})`);
197
+ const optional = field.optional ? '@:optional ' : '';
198
+ const target = field.readonly ? `${name}(default, null)` : name;
199
+ lines.push(` ${optional}public ${field.static ? 'static ' : ''}var ${target}:${emitStructureFieldTypeHaxeExtern(field.type, context)};`);
200
+ }
201
+ const accessors = new Map();
202
+ for (const method of declaration.methods.filter((candidate) => candidate.visibility === 'public' && candidate.accessor !== undefined)) {
203
+ const type = method.accessor === 'get' ? method.returns : method.parameters[0]?.type;
204
+ if (!type) {
205
+ emissionErrorHaxeExtern(context, `class ${declaration.binding.name} setter ${method.name} requires a value`);
206
+ }
207
+ const existing = accessors.get(method.name);
208
+ if (existing && existing.static !== method.static) {
209
+ emissionErrorHaxeExtern(context, `class ${declaration.binding.name} accessor ${method.name} has mixed static state`);
210
+ }
211
+ accessors.set(method.name, {
212
+ get: existing?.get === true || method.accessor === 'get',
213
+ set: existing?.set === true || method.accessor === 'set',
214
+ static: method.static,
215
+ type: existing?.type ?? type,
216
+ });
217
+ }
218
+ for (const [sourceName, accessor] of accessors) {
219
+ const name = safeHaxeExternName(sourceName);
220
+ if (name !== sourceName)
221
+ lines.push(` @:native(${JSON.stringify(sourceName)})`);
222
+ const target = accessor.get && accessor.set
223
+ ? name
224
+ : `${name}(${accessor.get ? 'default' : 'never'}, ${accessor.set ? 'default' : 'null'})`;
225
+ lines.push(` public ${accessor.static ? 'static ' : ''}var ${target}:${emitStructureFieldTypeHaxeExtern(accessor.type, context)};`);
226
+ }
227
+ const constructorParameters = declaration.classConstructor?.parameters ?? [];
228
+ lines.push(` public function new(${emitParametersHaxeExtern(constructorParameters, context)});`);
229
+ for (const method of declaration.methods.filter((candidate) => candidate.visibility === 'public' && candidate.accessor === undefined)) {
230
+ const name = safeHaxeExternName(method.name);
231
+ if (name !== method.name)
232
+ lines.push(` @:native(${JSON.stringify(method.name)})`);
233
+ lines.push(` public ${method.static ? 'static ' : ''}${emitFunctionSignatureHaxeExtern(name, method, context)}`);
234
+ }
235
+ lines.push('}', '#end');
236
+ return {
237
+ contents: lines.join('\n'),
238
+ path: `${packageName.replaceAll('.', '/')}/${targetName}.hx`,
239
+ };
240
+ }
241
+ function emitEnumFilesHaxeExtern(declaration, context) {
242
+ const kinds = new Set(declaration.members.map((member) => typeof member.value));
243
+ if (kinds.size > 1) {
244
+ emissionErrorHaxeExtern(context, `enum ${declaration.binding.name} mixes string and numeric values`);
245
+ }
246
+ if (declaration.members.some((member) => typeof member.value === 'number' && !Number.isFinite(member.value))) {
247
+ emissionErrorHaxeExtern(context, `enum ${declaration.binding.name} has a non-finite numeric value`);
248
+ }
249
+ const underlying = kinds.has('string')
250
+ ? 'String'
251
+ : declaration.members.some((member) => !Number.isInteger(member.value))
252
+ ? 'Float'
253
+ : 'Int';
254
+ return getDeclarationExportNamesHaxeExtern(declaration, context, 'type').map((exportName) => {
255
+ const targetName = safeHaxeExternTypeName(exportName);
256
+ const packageName = `${context.rootPackage}._js`;
257
+ const namespaceFunctions = getIrEnumNamespaceFunctionsHaxeExtern(declaration, context);
258
+ const lines = [
259
+ createCompilerGeneratedFileHeader(context.module, '//', context.options.upstreamCommit),
260
+ '#if js',
261
+ `package ${packageName};`,
262
+ '',
263
+ `@:jsImport(${JSON.stringify(`${context.module.packageName}/contract`)}, ${JSON.stringify(exportName)})`,
264
+ `enum abstract ${targetName}(${underlying}) from ${underlying} to ${underlying} {`,
265
+ ...declaration.members.map((member) => ` var ${safeHaxeExternName(member.name)} = ${typeof member.value === 'string' ? JSON.stringify(member.value) : String(member.value)};`),
266
+ ...namespaceFunctions.flatMap((declaration) => [
267
+ '',
268
+ ` public static extern ${emitFunctionSignatureHaxeExtern(safeHaxeExternName(declaration.binding.name), declaration, context)}`,
269
+ ]),
270
+ '}',
271
+ '#end',
272
+ ];
273
+ return {
274
+ contents: lines.join('\n'),
275
+ path: `${packageName.replaceAll('.', '/')}/${targetName}.hx`,
276
+ };
277
+ });
278
+ }
279
+ function getIrEnumNamespaceFunctionsHaxeExtern(declaration, context) {
280
+ return context.module.declarations.filter((candidate) => candidate.kind === 'function' &&
281
+ candidate.namespaceMember?.kind === 'binding' &&
282
+ candidate.namespaceMember.binding.id === declaration.binding.id &&
283
+ candidate.namespaceMember.path.length === 1);
284
+ }
285
+ function emitInterfaceFilesHaxeExtern(declaration, context) {
286
+ return getDeclarationExportNamesHaxeExtern(declaration, context, 'type').map((exportName) => {
287
+ const targetName = safeHaxeExternTypeName(exportName);
288
+ const packageName = `${context.rootPackage}._js`;
289
+ const ambientTarget = context.ambientUtilityHeritageTargets.get(declaration.binding.id);
290
+ const lines = [
291
+ createCompilerGeneratedFileHeader(context.module, '//', context.options.upstreamCommit),
292
+ `package ${packageName};`,
293
+ '',
294
+ ...(ambientTarget
295
+ ? [
296
+ `typedef ${targetName}${emitTypeParametersHaxeExtern(declaration.typeParameters, context)} = ${ambientTarget};`,
297
+ ]
298
+ : [
299
+ `typedef ${targetName}${emitTypeParametersHaxeExtern(declaration.typeParameters, context)} = {`,
300
+ ...declaration.properties.map((property) => ` ${emitInterfacePropertyHaxeExtern(property, context)}`),
301
+ '};',
302
+ ]),
303
+ ];
304
+ return {
305
+ contents: lines.join('\n'),
306
+ path: `${packageName.replaceAll('.', '/')}/${targetName}.hx`,
307
+ };
308
+ });
309
+ }
310
+ function createAmbientUtilityHeritageTargetsHaxeExtern(module) {
311
+ return new Map(module.declarations.flatMap((declaration) => {
312
+ if (declaration.kind !== 'interface')
313
+ return [];
314
+ const target = getCompilerAmbientUtilityHeritageTargetHaxe(declaration, module);
315
+ return target ? [[declaration.binding.id, target]] : [];
316
+ }));
317
+ }
318
+ function emitInterfacePropertyHaxeExtern(property, context) {
319
+ const optional = property.optional ? '@:optional ' : '';
320
+ const name = safeHaxeExternName(property.name);
321
+ const native = name === property.name ? '' : `@:native(${JSON.stringify(property.name)}) `;
322
+ if (property.type.kind !== 'function') {
323
+ return `${optional}${native}var ${name}:${emitStructureFieldTypeHaxeExtern(property.type, context)};`;
324
+ }
325
+ const parameters = property.type.parameters
326
+ .map((parameter, index) => {
327
+ const name = safeHaxeExternName(parameter.name ?? `argument${String(index)}`);
328
+ const type = parameter.rest && parameter.type.kind === 'array' ? parameter.type.element : parameter.type;
329
+ return `${parameter.rest ? '...' : parameter.optional ? '?' : ''}${name}:${emitTypeHaxeExtern(type, context)}`;
330
+ })
331
+ .join(', ');
332
+ return `${optional}${native}function ${name}(${parameters}):${emitTypeHaxeExtern(property.type.returns, context)};`;
333
+ }
334
+ function emitPackageHolderHaxeExtern(packageName, context) {
335
+ const values = collectPackageValuesHaxeExtern(packageName, context);
336
+ if (values.length === 0)
337
+ return undefined;
338
+ assertPackageValueNamesHaxeExtern(values, context);
339
+ const holderName = getPackageHolderNameHaxeExtern(packageName, context.options);
340
+ const targetPackage = `${context.rootPackage}._js._fn`;
341
+ const lines = [
342
+ createCompilerGeneratedFileHeader(context.module, '//', context.options.upstreamCommit),
343
+ '#if js',
344
+ `package ${targetPackage};`,
345
+ '',
346
+ `@:jsImport(${JSON.stringify(`${packageName}/contract`)})`,
347
+ `extern class ${holderName} {`,
348
+ ];
349
+ for (const value of values) {
350
+ const valueContext = replaceHaxeExternEmissionModule(context, value.module);
351
+ const targetName = safeHaxeExternName(value.exportName);
352
+ if (targetName !== value.exportName)
353
+ lines.push(` @:native(${JSON.stringify(value.exportName)})`);
354
+ if (value.declaration.kind === 'function') {
355
+ lines.push(` static ${emitFunctionSignatureHaxeExtern(targetName, value.declaration, valueContext)}`);
356
+ }
357
+ else {
358
+ if (!('binding' in value.declaration)) {
359
+ emissionErrorHaxeExtern(valueContext, 'exported binding patterns require declaration splitting before extern emission');
360
+ }
361
+ const type = value.declaration.type ? emitTypeHaxeExtern(value.declaration.type, valueContext) : 'Dynamic';
362
+ lines.push(` static var ${targetName}:${type};`);
363
+ }
364
+ }
365
+ lines.push('}', '#end');
366
+ return {
367
+ contents: lines.join('\n'),
368
+ path: `${targetPackage.replaceAll('.', '/')}/${holderName}.hx`,
369
+ };
370
+ }
371
+ function collectPackageValuesHaxeExtern(packageName, context) {
372
+ const slots = context.packageFacade ? getPackageFacadeSlotsHaxeExtern(context) : undefined;
373
+ const values = slots
374
+ ? slots.flatMap((slot) => {
375
+ if (slot.lane !== 'value' || slot.route.kind !== 'binding')
376
+ return [];
377
+ const location = getFacadeDeclarationLocationHaxeExtern(slot.route, context);
378
+ if (!location || (location.declaration.kind !== 'function' && location.declaration.kind !== 'variable')) {
379
+ return [];
380
+ }
381
+ return [{ declaration: location.declaration, exportName: slot.exportName, module: location.module }];
382
+ })
383
+ : (context.index.modulesByPackage.get(packageName) ?? []).flatMap((module) => module.declarations.flatMap((declaration) => {
384
+ if (declaration.kind !== 'function' && declaration.kind !== 'variable')
385
+ return [];
386
+ return getLocalExportNamesHaxeExtern(declaration, module, context.index).map((exportName) => ({
387
+ declaration,
388
+ exportName,
389
+ module,
390
+ }));
391
+ }));
392
+ return values.sort((left, right) => compareTextCodeUnits(left.exportName, right.exportName) ||
393
+ compareTextCodeUnits(left.module.source, right.module.source) ||
394
+ compareTextCodeUnits(getDeclarationIdentityHaxeExtern(left.declaration), getDeclarationIdentityHaxeExtern(right.declaration)));
395
+ }
396
+ function getDeclarationExportNamesHaxeExtern(declaration, context, lane) {
397
+ if (!context.packageFacade || !('binding' in declaration)) {
398
+ return getLocalExportNamesHaxeExtern(declaration, context.module, context.index);
399
+ }
400
+ return getPackageFacadeSlotsHaxeExtern(context)
401
+ .filter((slot) => slot.lane === lane &&
402
+ slot.route.kind === 'binding' &&
403
+ slot.route.binding.id === declaration.binding.id &&
404
+ isSameModuleHaxeExtern(slot.route.module, context.module, context.index))
405
+ .map((slot) => slot.exportName)
406
+ .sort(compareTextCodeUnits);
407
+ }
408
+ function getPackageFacadeSlotsHaxeExtern(context) {
409
+ return context.packageFacade?.modules[0]?.slots ?? [];
410
+ }
411
+ function getFacadeDeclarationLocationHaxeExtern(route, context) {
412
+ return context.index.declarationLocations
413
+ .get(route.binding.id)
414
+ ?.find((location) => isSameModuleHaxeExtern(location.module, route.module, context.index));
415
+ }
416
+ function assertPackageValueNamesHaxeExtern(values, context) {
417
+ const occupied = new Map();
418
+ for (const value of values) {
419
+ const targetName = safeHaxeExternName(value.exportName);
420
+ const prior = occupied.get(targetName);
421
+ if (prior !== undefined) {
422
+ emissionErrorHaxeExtern(context, `package exports ${prior} and ${value.exportName} share Haxe holder member ${targetName}`);
423
+ }
424
+ occupied.set(targetName, value.exportName);
425
+ }
426
+ }
427
+ function emitFunctionSignatureHaxeExtern(name, signature, context) {
428
+ const typeParameters = emitTypeParametersHaxeExtern(signature.typeParameters, context, false);
429
+ const parameters = emitParametersHaxeExtern(signature.parameters, context);
430
+ const returns = emitTypeHaxeExtern(signature.returns, context);
431
+ return `function ${name}${typeParameters}(${parameters}):${returns};`;
432
+ }
433
+ function emitParametersHaxeExtern(parameters, context) {
434
+ const occupied = new Set();
435
+ return parameters
436
+ .map((parameter) => {
437
+ const name = safeHaxeExternName(parameter.binding.name);
438
+ if (occupied.has(name)) {
439
+ emissionErrorHaxeExtern(context, `function parameters share Haxe name ${name}`);
440
+ }
441
+ occupied.add(name);
442
+ const type = parameter.rest && parameter.type.kind === 'array' ? parameter.type.element : parameter.type;
443
+ const prefix = parameter.rest ? '...' : parameter.optional || parameter.initializer ? '?' : '';
444
+ return `${prefix}${name}:${emitTypeHaxeExtern(type, context)}`;
445
+ })
446
+ .join(', ');
447
+ }
448
+ function emitTypeParametersHaxeExtern(parameters, context, includeDefaults = true) {
449
+ if (parameters.length === 0)
450
+ return '';
451
+ return `<${parameters
452
+ .map((parameter) => {
453
+ const constraint = parameter.constraint &&
454
+ parameter.constraint.kind !== 'function' &&
455
+ !isEntityConstraintHaxeExtern(parameter.constraint, context)
456
+ ? `:${emitTypeHaxeExtern(parameter.constraint, context)}`
457
+ : '';
458
+ const default_ = includeDefaults && parameter.default ? ` = ${emitTypeHaxeExtern(parameter.default, context)}` : '';
459
+ return `${safeHaxeExternTypeName(parameter.binding.name)}${constraint}${default_}`;
460
+ })
461
+ .join(', ')}>`;
462
+ }
463
+ function isEntityConstraintHaxeExtern(type, context) {
464
+ if (type.kind !== 'named' || type.reference.kind !== 'binding' || type.reference.path.length > 0)
465
+ return false;
466
+ if (type.reference.binding.name === 'Entity')
467
+ return true;
468
+ if (type.reference.binding.kind !== 'import')
469
+ return false;
470
+ return (context.index.importRoutes.get(type.reference.binding.id) ?? []).some((route) => route.imported === 'Entity');
471
+ }
472
+ function emitStructureFieldTypeHaxeExtern(type, context) {
473
+ return type.kind === 'primitive' && type.name === 'void' ? 'Dynamic' : emitTypeHaxeExtern(type, context);
474
+ }
475
+ function emitTypeHaxeExtern(type, context, activeAliases = new Set()) {
476
+ return emitIrTypeHaxe(type, {
477
+ fail: (message) => emissionErrorHaxeExtern(context, message),
478
+ getBindingName: (binding) => getTypeBindingTargetHaxeExtern(binding, context),
479
+ getExternalTypeName: (name) => getCompilerRuntimeExternalSymbolTargetHaxe(name, 'type', context.options.runtimeModule),
480
+ getMemberName: safeHaxeExternName,
481
+ getTypeName: safeHaxeExternTypeName,
482
+ resolveNamedType: (reference) => {
483
+ const inlined = emitTypeAliasReferenceHaxeExtern(reference, context, activeAliases);
484
+ if (inlined !== undefined)
485
+ return { name: inlined, typeArgumentsApplied: true };
486
+ return emitPrivateClassReferenceHaxeExtern(reference, context);
487
+ },
488
+ });
489
+ }
490
+ function emitTypeAliasReferenceHaxeExtern(reference, context, activeAliases) {
491
+ const location = getTypeAliasLocationHaxeExtern(reference, context);
492
+ if (!location)
493
+ return emitPrivateInterfaceReferenceHaxeExtern(reference, context, activeAliases);
494
+ if (reference.reference.kind !== 'binding' || reference.reference.path.length > 0) {
495
+ emissionErrorHaxeExtern(context, 'qualified type alias references cannot be inlined into Haxe externs');
496
+ }
497
+ const identity = [
498
+ location.module.packageName,
499
+ normalizePathPortable(location.module.source),
500
+ location.declaration.binding.id,
501
+ ].join('\0');
502
+ if (activeAliases.has(identity)) {
503
+ emissionErrorHaxeExtern(context, `type alias ${location.declaration.binding.name} is cyclic`);
504
+ }
505
+ if (isTypeAliasPublicHaxeExtern(location, context)) {
506
+ createTypeAliasSubstitutionPlanHaxeExtern(location, reference, context);
507
+ return undefined;
508
+ }
509
+ const plan = createTypeAliasSubstitutionPlanHaxeExtern(location, reference, context);
510
+ const substituted = resolveIrTypeStructuralSubstitution(location.declaration.type, plan);
511
+ return emitTypeHaxeExtern(substituted, replaceHaxeExternEmissionModule(context, location.module), new Set(activeAliases).add(identity));
512
+ }
513
+ function emitTypeAliasFilesHaxeExtern(declaration, context) {
514
+ return getDeclarationExportNamesHaxeExtern(declaration, context, 'type').map((exportName) => {
515
+ const targetName = safeHaxeExternTypeName(exportName);
516
+ const packageName = `${context.rootPackage}._js`;
517
+ const identity = [
518
+ context.module.packageName,
519
+ normalizePathPortable(context.module.source),
520
+ declaration.binding.id,
521
+ ].join('\0');
522
+ const lines = [
523
+ createCompilerGeneratedFileHeader(context.module, '//', context.options.upstreamCommit),
524
+ `package ${packageName};`,
525
+ '',
526
+ `typedef ${targetName}${emitTypeParametersHaxeExtern(declaration.typeParameters, context)} = ${emitTypeHaxeExtern(declaration.type, context, new Set([identity]))};`,
527
+ ];
528
+ return {
529
+ contents: lines.join('\n'),
530
+ path: `${packageName.replaceAll('.', '/')}/${targetName}.hx`,
531
+ };
532
+ });
533
+ }
534
+ function emitPrivateInterfaceReferenceHaxeExtern(reference, context, activeDeclarations) {
535
+ const location = getInterfaceLocationHaxeExtern(reference, context);
536
+ if (!location || isInterfacePublicHaxeExtern(location, context))
537
+ return undefined;
538
+ if (reference.reference.kind !== 'binding' || reference.reference.path.length > 0) {
539
+ emissionErrorHaxeExtern(context, 'qualified private interface references cannot be inlined into Haxe externs');
540
+ }
541
+ const identity = [
542
+ location.module.packageName,
543
+ normalizePathPortable(location.module.source),
544
+ location.declaration.binding.id,
545
+ ].join('\0');
546
+ if (activeDeclarations.has(identity)) {
547
+ emissionErrorHaxeExtern(context, `private interface ${location.declaration.binding.name} is cyclic`);
548
+ }
549
+ const loweredModule = lowerIrModuleWithCompilerPasses(location.module, [context.interfaceInheritancePass]);
550
+ const declaration = loweredModule.declarations.find((candidate) => candidate.kind === 'interface' && candidate.binding.id === location.declaration.binding.id);
551
+ if (!declaration) {
552
+ emissionErrorHaxeExtern(context, `private interface ${location.declaration.binding.name} disappeared during lowering`);
553
+ }
554
+ let plan;
555
+ try {
556
+ plan = createIrTypeParameterSubstitutionPlan(declaration.typeParameters, reference.typeArguments);
557
+ }
558
+ catch (error) {
559
+ emissionErrorHaxeExtern(context, `private interface ${declaration.binding.name} cannot be inlined: ${error instanceof Error ? error.message : String(error)}`);
560
+ }
561
+ return emitTypeHaxeExtern({
562
+ kind: 'object',
563
+ properties: declaration.properties.map((property) => ({
564
+ ...property,
565
+ type: resolveIrTypeStructuralSubstitution(property.type, plan),
566
+ })),
567
+ }, replaceHaxeExternEmissionModule(context, loweredModule), new Set(activeDeclarations).add(identity));
568
+ }
569
+ function emitPrivateClassReferenceHaxeExtern(reference, context) {
570
+ const location = getClassLocationHaxeExtern(reference, context);
571
+ if (!location || isClassPublicHaxeExtern(location, context))
572
+ return undefined;
573
+ if (!location.declaration.exported) {
574
+ emissionErrorHaxeExtern(context, `private source class ${location.declaration.binding.name} has no public Haxe extern`);
575
+ }
576
+ const targetName = safeHaxeExternTypeName(location.declaration.binding.name);
577
+ const packageName = `${getRootPackageHaxeExtern(location.module.packageName, context.options)}._js`;
578
+ const path = `${packageName.replaceAll('.', '/')}/${targetName}.hx`;
579
+ const identity = [
580
+ location.module.packageName,
581
+ normalizePathPortable(location.module.source),
582
+ location.declaration.binding.id,
583
+ ].join('\0');
584
+ if (!context.index.dependencyClassFiles.has(path) && !context.index.activeDependencyClasses.has(identity)) {
585
+ context.index.activeDependencyClasses.add(identity);
586
+ const loweredModule = lowerIrModuleWithCompilerPasses(location.module, [context.interfaceInheritancePass]);
587
+ const declaration = loweredModule.declarations.find((candidate) => candidate.kind === 'class' && candidate.binding.id === location.declaration.binding.id);
588
+ if (!declaration) {
589
+ emissionErrorHaxeExtern(context, `dependency class ${location.declaration.binding.name} disappeared during lowering`);
590
+ }
591
+ const dependencyContext = {
592
+ ...context,
593
+ ambientUtilityHeritageTargets: createAmbientUtilityHeritageTargetsHaxeExtern(loweredModule),
594
+ module: loweredModule,
595
+ rootPackage: getRootPackageHaxeExtern(loweredModule.packageName, context.options),
596
+ };
597
+ assertClassShapeHaxeExtern(declaration, dependencyContext);
598
+ context.index.dependencyClassFiles.set(path, emitClassFileHaxeExtern(declaration, targetName, dependencyContext));
599
+ context.index.activeDependencyClasses.delete(identity);
600
+ }
601
+ return `${packageName}.${targetName}`;
602
+ }
603
+ function getClassLocationHaxeExtern(reference, context) {
604
+ if (reference.reference.kind !== 'binding' || reference.reference.path.length > 0)
605
+ return undefined;
606
+ const binding = reference.reference.binding;
607
+ if (binding.kind === 'class') {
608
+ return context.index.declarationLocations
609
+ .get(binding.id)
610
+ ?.find((location) => location.declaration.kind === 'class');
611
+ }
612
+ if (binding.kind !== 'import')
613
+ return undefined;
614
+ const locations = (context.index.importRoutes.get(binding.id) ?? []).flatMap((route) => getSpecifierModulesHaxeExtern(route.from, route.specifier, context).flatMap((module) => module.declarations.flatMap((declaration) => declaration.kind === 'class' &&
615
+ getLocalExportNamesHaxeExtern(declaration, module, context.index).includes(route.imported)
616
+ ? [{ declaration, module }]
617
+ : [])));
618
+ const unique = [
619
+ ...new Map(locations.map((location) => [
620
+ `${location.module.packageName}\0${normalizePathPortable(location.module.source)}\0${location.declaration.binding.id}`,
621
+ location,
622
+ ])).values(),
623
+ ];
624
+ if (unique.length > 1) {
625
+ emissionErrorHaxeExtern(context, `imported class ${binding.name} resolves ambiguously`);
626
+ }
627
+ return unique[0];
628
+ }
629
+ function isClassPublicHaxeExtern(location, context) {
630
+ if (location.declaration.kind !== 'class')
631
+ return false;
632
+ const facadePackageName = context.packageFacade?.modules[0]?.module.packageName;
633
+ if (!context.packageFacade || location.module.packageName !== facadePackageName) {
634
+ return getLocalExportNamesHaxeExtern(location.declaration, location.module, context.index).length > 0;
635
+ }
636
+ return getPackageFacadeSlotsHaxeExtern(context).some((slot) => slot.lane === 'type' &&
637
+ slot.route.kind === 'binding' &&
638
+ slot.route.binding.id === location.declaration.binding.id &&
639
+ isSameModuleHaxeExtern(slot.route.module, location.module, context.index));
640
+ }
641
+ function getInterfaceLocationHaxeExtern(reference, context) {
642
+ if (reference.reference.kind !== 'binding' || reference.reference.binding.kind === 'import')
643
+ return undefined;
644
+ const binding = reference.reference.binding;
645
+ return context.index.declarationLocations
646
+ .get(binding.id)
647
+ ?.find((location) => location.declaration.kind === 'interface');
648
+ }
649
+ function isInterfacePublicHaxeExtern(location, context) {
650
+ const facadePackageName = context.packageFacade?.modules[0]?.module.packageName;
651
+ if (!context.packageFacade || location.module.packageName !== facadePackageName) {
652
+ return getLocalExportNamesHaxeExtern(location.declaration, location.module, context.index).length > 0;
653
+ }
654
+ return getPackageFacadeSlotsHaxeExtern(context).some((slot) => slot.lane === 'type' &&
655
+ slot.route.kind === 'binding' &&
656
+ slot.route.binding.id === location.declaration.binding.id &&
657
+ isSameModuleHaxeExtern(slot.route.module, location.module, context.index));
658
+ }
659
+ function isTypeAliasPublicHaxeExtern(location, context) {
660
+ const facadePackageName = context.packageFacade?.modules[0]?.module.packageName;
661
+ if (!context.packageFacade || location.module.packageName !== facadePackageName) {
662
+ return getLocalExportNamesHaxeExtern(location.declaration, location.module, context.index).length > 0;
663
+ }
664
+ return getPackageFacadeSlotsHaxeExtern(context).some((slot) => slot.lane === 'type' &&
665
+ slot.route.kind === 'binding' &&
666
+ slot.route.binding.id === location.declaration.binding.id &&
667
+ isSameModuleHaxeExtern(slot.route.module, location.module, context.index));
668
+ }
669
+ function createTypeAliasSubstitutionPlanHaxeExtern(location, reference, context) {
670
+ try {
671
+ return createIrTypeParameterSubstitutionPlan(location.declaration.typeParameters, reference.typeArguments);
672
+ }
673
+ catch (error) {
674
+ emissionErrorHaxeExtern(context, `type alias ${location.declaration.binding.name} cannot be inlined: ${error instanceof Error ? error.message : String(error)}`);
675
+ }
676
+ }
677
+ function getTypeAliasLocationHaxeExtern(reference, context) {
678
+ if (reference.reference.kind !== 'binding')
679
+ return undefined;
680
+ const nameReference = reference.reference;
681
+ const binding = nameReference.binding;
682
+ const cacheKey = `${binding.id}\0${nameReference.path.join('\0')}`;
683
+ const cached = context.index.typeAliasLocations.get(cacheKey);
684
+ if (cached)
685
+ return assertUniqueTypeAliasLocationHaxeExtern(binding.name, cached, context);
686
+ if (binding.kind === 'typeAlias') {
687
+ const locations = context.index.declarationLocations
688
+ .get(binding.id)
689
+ ?.filter((location) => location.declaration.kind === 'typeAlias') ??
690
+ [];
691
+ context.index.typeAliasLocations.set(cacheKey, locations);
692
+ return assertUniqueTypeAliasLocationHaxeExtern(binding.name, locations, context);
693
+ }
694
+ if (binding.kind !== 'import')
695
+ return undefined;
696
+ const imported = (context.index.importRoutes.get(binding.id) ?? []).flatMap((route) => {
697
+ const exportName = route.imported === '*' ? nameReference.path[0] : route.imported;
698
+ return exportName ? [{ exportName, from: route.from, specifier: route.specifier }] : [];
699
+ });
700
+ const locations = imported.flatMap(({ exportName, from, specifier }) => getSpecifierModulesHaxeExtern(from, specifier, context).flatMap((module) => getExportedTypeAliasesHaxeExtern(module, exportName, context, new Set())));
701
+ const unique = [
702
+ ...new Map(locations.map((location) => [
703
+ [
704
+ location.module.packageName,
705
+ normalizePathPortable(location.module.source),
706
+ location.declaration.binding.id,
707
+ ].join('\0'),
708
+ location,
709
+ ])).values(),
710
+ ];
711
+ context.index.typeAliasLocations.set(cacheKey, unique);
712
+ return assertUniqueTypeAliasLocationHaxeExtern(binding.name, unique, context);
713
+ }
714
+ function assertUniqueTypeAliasLocationHaxeExtern(bindingName, locations, context) {
715
+ if (locations.length > 1) {
716
+ emissionErrorHaxeExtern(context, `imported type alias ${bindingName} resolves ambiguously`);
717
+ }
718
+ return locations[0];
719
+ }
720
+ function getExportedTypeAliasesHaxeExtern(module, exportName, context, seen) {
721
+ const query = `${getModuleIdentityHaxeExtern(module, context.index)}\0${exportName}`;
722
+ const cached = seen.size === 0 ? context.index.exportedTypeAliases.get(query) : undefined;
723
+ if (cached)
724
+ return [...cached];
725
+ if (seen.has(query))
726
+ return [];
727
+ const nextSeen = new Set(seen).add(query);
728
+ const locations = module.declarations.flatMap((declaration) => declaration.kind === 'typeAlias' && declaration.exported && declaration.binding.name === exportName
729
+ ? [{ declaration, module }]
730
+ : []);
731
+ for (const exported of module.exports) {
732
+ if (exported.kind === 'local' && exported.exported === exportName) {
733
+ const declaration = module.declarations.find((candidate) => candidate.kind === 'typeAlias' && candidate.binding.id === exported.binding.id);
734
+ if (declaration)
735
+ locations.push({ declaration, module });
736
+ }
737
+ else if (exported.kind === 'reexport' && exported.exported === exportName) {
738
+ for (const target of getSpecifierModulesHaxeExtern(module, exported.specifier, context)) {
739
+ locations.push(...getExportedTypeAliasesHaxeExtern(target, exported.imported, context, nextSeen));
740
+ }
741
+ }
742
+ else if (exported.kind === 'all' && exportName !== 'default') {
743
+ for (const target of getSpecifierModulesHaxeExtern(module, exported.specifier, context)) {
744
+ locations.push(...getExportedTypeAliasesHaxeExtern(target, exportName, context, nextSeen));
745
+ }
746
+ }
747
+ }
748
+ if (seen.size === 0)
749
+ context.index.exportedTypeAliases.set(query, locations);
750
+ return locations;
751
+ }
752
+ function getTypeBindingTargetHaxeExtern(binding, context) {
753
+ if (binding.kind === 'typeParameter')
754
+ return safeHaxeExternTypeName(binding.name);
755
+ const declarationLocation = context.index.declarationLocations.get(binding.id)?.[0];
756
+ const declaration = declarationLocation?.declaration;
757
+ const localExport = declarationLocation
758
+ ? context.packageFacade &&
759
+ declarationLocation.module.packageName === context.packageFacade.modules[0]?.module.packageName
760
+ ? getPackageFacadeSlotsHaxeExtern(context).find((slot) => slot.lane === 'type' &&
761
+ slot.route.kind === 'binding' &&
762
+ slot.route.binding.id === declarationLocation.declaration.binding.id &&
763
+ isSameModuleHaxeExtern(slot.route.module, declarationLocation.module, context.index))?.exportName
764
+ : getLocalExportNamesHaxeExtern(declarationLocation.declaration, declarationLocation.module, context.index)[0]
765
+ : undefined;
766
+ const importedName = getImportedTypeNameHaxeExtern(binding, context.index);
767
+ if (declaration && localExport === undefined && declaration.kind === 'interface') {
768
+ emissionErrorHaxeExtern(context, `private interface ${declaration.binding.name} was not structurally inlined`);
769
+ }
770
+ if (declaration && localExport === undefined && declaration.kind === 'class') {
771
+ emissionErrorHaxeExtern(context, `private source class ${declaration.binding.name} has no public Haxe extern`);
772
+ }
773
+ return `${context.rootPackage}.${safeHaxeExternTypeName(localExport ?? importedName ?? binding.name)}`;
774
+ }
775
+ function getImportedTypeNameHaxeExtern(binding, index) {
776
+ if (binding.kind !== 'import')
777
+ return undefined;
778
+ return index.importRoutes.get(binding.id)?.find((route) => route.imported !== '*')?.imported;
779
+ }
780
+ function getLocalExportNamesHaxeExtern(declaration, module, index) {
781
+ if (!('binding' in declaration))
782
+ return declaration.exported ? ['default'] : [];
783
+ const cacheKey = `${getModuleIdentityHaxeExtern(module, index)}\0${declaration.binding.id}`;
784
+ const cached = index.localExportNames.get(cacheKey);
785
+ if (cached)
786
+ return cached;
787
+ const names = module.exports.flatMap((exported) => exported.kind === 'local' && exported.binding.id === declaration.binding.id ? [exported.exported] : []);
788
+ if (names.length === 0 && declaration.exported)
789
+ names.push(declaration.binding.name);
790
+ const result = [...new Set(names)].sort(compareTextCodeUnits);
791
+ index.localExportNames.set(cacheKey, result);
792
+ return result;
793
+ }
794
+ function getSpecifierModulesHaxeExtern(from, specifier, context) {
795
+ const cacheKey = `${getModuleIdentityHaxeExtern(from, context.index)}\0${specifier}`;
796
+ const cached = context.index.specifierModules.get(cacheKey);
797
+ if (cached)
798
+ return cached;
799
+ const candidates = getSpecifierSourceCandidatesHaxeExtern(from.source, specifier);
800
+ const exact = context.index.resolutionExact.get(cacheKey) ?? [];
801
+ const targets = exact.length > 0 ? exact : (context.index.resolutionFallback.get(specifier) ?? []);
802
+ const resolved = new Map();
803
+ for (const candidate of candidates) {
804
+ for (const module of context.index.modulesByPackageSource.get(getPackageSourceIdentityHaxeExtern(from.packageName, candidate, context.index)) ?? []) {
805
+ resolved.set(getModuleIdentityHaxeExtern(module, context.index), module);
806
+ }
807
+ }
808
+ for (const target of targets) {
809
+ for (const module of context.index.modulesByPackageSource.get(target) ?? []) {
810
+ resolved.set(getModuleIdentityHaxeExtern(module, context.index), module);
811
+ }
812
+ }
813
+ const result = [...resolved]
814
+ .sort((left, right) => (context.index.moduleOrdinals.get(left[0]) ?? 0) - (context.index.moduleOrdinals.get(right[0]) ?? 0))
815
+ .map(([, module]) => module);
816
+ context.index.specifierModules.set(cacheKey, result);
817
+ return result;
818
+ }
819
+ function getSpecifierSourceCandidatesHaxeExtern(source, specifier) {
820
+ const normalized = normalizePathPortable(specifier);
821
+ if (normalized !== '.' && normalized !== '..' && !normalized.startsWith('./') && !normalized.startsWith('../')) {
822
+ return new Set();
823
+ }
824
+ const parts = normalizePathPortable(source).split('/');
825
+ parts.pop();
826
+ for (const part of normalized.split('/')) {
827
+ if (part === '' || part === '.')
828
+ continue;
829
+ if (part === '..') {
830
+ if (parts.length === 0)
831
+ return new Set();
832
+ parts.pop();
833
+ }
834
+ else {
835
+ parts.push(part);
836
+ }
837
+ }
838
+ const resolved = parts.join('/');
839
+ const candidates = new Set([resolved]);
840
+ for (const [emitted, sourceExtension] of [
841
+ ['.cjs', '.cts'],
842
+ ['.js', '.ts'],
843
+ ['.jsx', '.tsx'],
844
+ ['.mjs', '.mts'],
845
+ ]) {
846
+ if (resolved.endsWith(emitted))
847
+ candidates.add(`${resolved.slice(0, -emitted.length)}${sourceExtension}`);
848
+ }
849
+ if (!/\.[^/]+$/u.test(resolved)) {
850
+ candidates.add(`${resolved}.ts`);
851
+ candidates.add(`${resolved}/index.ts`);
852
+ }
853
+ return candidates;
854
+ }
855
+ function getRootPackageHaxeExtern(packageName, options) {
856
+ const converted = convertPackageNameToHaxePackageName(packageName, options.rootPackage);
857
+ return converted.slice(0, converted.lastIndexOf('.'));
858
+ }
859
+ function getPackageHolderNameHaxeExtern(packageName, options) {
860
+ const packageSegment = convertPackageNameToHaxePackageName(packageName, options.rootPackage).split('.').at(-1);
861
+ return safeHaxeExternTypeName(packageSegment);
862
+ }
863
+ function isPackageHolderOwnerHaxeExtern(module, index) {
864
+ const owner = index.packageOwners.get(module.packageName);
865
+ return owner !== undefined && isSameModuleHaxeExtern(owner, module, index);
866
+ }
867
+ function replaceHaxeExternEmissionModule(context, module) {
868
+ return { ...context, module };
869
+ }
870
+ function compareModulesHaxeExtern(left, right) {
871
+ return (compareTextCodeUnits(left.packageName, right.packageName) ||
872
+ compareTextCodeUnits(normalizePathPortable(left.source), normalizePathPortable(right.source)) ||
873
+ compareTextCodeUnits(left.name, right.name));
874
+ }
875
+ function isSameModuleHaxeExtern(left, right, index) {
876
+ return getModuleIdentityHaxeExtern(left, index) === getModuleIdentityHaxeExtern(right, index);
877
+ }
878
+ function getModuleIdentityHaxeExtern(module, index) {
879
+ return `${getPackageSourceIdentityHaxeExtern(module.packageName, module.source, index)}\0${module.name}`;
880
+ }
881
+ function getPackageSourceIdentityHaxeExtern(packageName, source, index) {
882
+ let normalized = index.normalizedPaths.get(source);
883
+ if (normalized === undefined) {
884
+ normalized = normalizePathPortable(source);
885
+ index.normalizedPaths.set(source, normalized);
886
+ }
887
+ return `${packageName}\0${normalized}`;
888
+ }
889
+ function getDeclarationIdentityHaxeExtern(declaration) {
890
+ return 'binding' in declaration ? declaration.binding.id : declaration.origin.fingerprint;
891
+ }
892
+ function emissionErrorHaxeExtern(context, message) {
893
+ throw createBackendEmissionFailure('haxe', context.module, message);
894
+ }
895
+ function pascalCaseHaxeExtern(value) {
896
+ const match = /^(?<prefix>_*)(?<name>.*)$/u.exec(value);
897
+ const prefix = match?.groups?.prefix ?? '';
898
+ const name = match?.groups?.name ?? value;
899
+ return `${prefix}${name
900
+ .replace(/([a-z0-9])([A-Z])/gu, '$1 $2')
901
+ .split(/[^A-Za-z0-9]+/u)
902
+ .filter(Boolean)
903
+ .map((part) => `${part.slice(0, 1).toUpperCase()}${part.slice(1)}`)
904
+ .join('')}`;
905
+ }
906
+ function safeHaxeExternName(name) {
907
+ const stripped = name.startsWith('#') ? name.slice(1) : name;
908
+ const escaped = [...stripped]
909
+ .map((character, index) => (index === 0 ? /[A-Za-z_]/u : /[A-Za-z0-9_]/u).test(character)
910
+ ? character
911
+ : `_u${character.codePointAt(0).toString(16).padStart(4, '0')}_`)
912
+ .join('');
913
+ const identifier = escaped || '_';
914
+ return haxeExternKeywords.has(identifier) ? `${identifier}_` : identifier;
915
+ }
916
+ function safeHaxeExternTypeName(name) {
917
+ return safeHaxeExternName(pascalCaseHaxeExtern(name));
918
+ }
919
+ const haxeExternKeywords = new Set([
920
+ 'abstract',
921
+ 'break',
922
+ 'case',
923
+ 'cast',
924
+ 'catch',
925
+ 'class',
926
+ 'continue',
927
+ 'default',
928
+ 'do',
929
+ 'dynamic',
930
+ 'else',
931
+ 'enum',
932
+ 'extends',
933
+ 'extern',
934
+ 'false',
935
+ 'final',
936
+ 'for',
937
+ 'function',
938
+ 'if',
939
+ 'implements',
940
+ 'import',
941
+ 'in',
942
+ 'inline',
943
+ 'interface',
944
+ 'macro',
945
+ 'new',
946
+ 'null',
947
+ 'operator',
948
+ 'overload',
949
+ 'override',
950
+ 'package',
951
+ 'private',
952
+ 'public',
953
+ 'return',
954
+ 'static',
955
+ 'super',
956
+ 'switch',
957
+ 'this',
958
+ 'throw',
959
+ 'trace',
960
+ 'true',
961
+ 'try',
962
+ 'typedef',
963
+ 'untyped',
964
+ 'using',
965
+ 'var',
966
+ 'while',
967
+ ]);
968
+ //# sourceMappingURL=haxeExternEmission.js.map