@tsonic/emitter 0.0.73 → 0.0.74

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 (200) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/adapter-generator.d.ts.map +1 -1
  3. package/dist/adapter-generator.js +2 -1
  4. package/dist/adapter-generator.js.map +1 -1
  5. package/dist/constants.d.ts +3 -2
  6. package/dist/constants.d.ts.map +1 -1
  7. package/dist/constants.js +15 -6
  8. package/dist/constants.js.map +1 -1
  9. package/dist/core/format/attributes.d.ts.map +1 -1
  10. package/dist/core/format/attributes.js +5 -56
  11. package/dist/core/format/attributes.js.map +1 -1
  12. package/dist/core/format/attributes.test.js +1 -1
  13. package/dist/core/format/attributes.test.js.map +1 -1
  14. package/dist/core/format/backend-ast/builders.d.ts +13 -0
  15. package/dist/core/format/backend-ast/builders.d.ts.map +1 -0
  16. package/dist/core/format/backend-ast/builders.js +169 -0
  17. package/dist/core/format/backend-ast/builders.js.map +1 -0
  18. package/dist/core/format/backend-ast/builders.test.d.ts +2 -0
  19. package/dist/core/format/backend-ast/builders.test.d.ts.map +1 -0
  20. package/dist/core/format/backend-ast/builders.test.js +258 -0
  21. package/dist/core/format/backend-ast/builders.test.js.map +1 -0
  22. package/dist/core/format/backend-ast/index.d.ts +3 -2
  23. package/dist/core/format/backend-ast/index.d.ts.map +1 -1
  24. package/dist/core/format/backend-ast/index.js +2 -1
  25. package/dist/core/format/backend-ast/index.js.map +1 -1
  26. package/dist/core/format/backend-ast/invariants.test.d.ts +2 -0
  27. package/dist/core/format/backend-ast/invariants.test.d.ts.map +1 -0
  28. package/dist/core/format/backend-ast/invariants.test.js +72 -0
  29. package/dist/core/format/backend-ast/invariants.test.js.map +1 -0
  30. package/dist/core/format/backend-ast/printer.d.ts +1 -1
  31. package/dist/core/format/backend-ast/printer.d.ts.map +1 -1
  32. package/dist/core/format/backend-ast/printer.js +362 -119
  33. package/dist/core/format/backend-ast/printer.js.map +1 -1
  34. package/dist/core/format/backend-ast/printer.test.d.ts +2 -0
  35. package/dist/core/format/backend-ast/printer.test.d.ts.map +1 -0
  36. package/dist/core/format/backend-ast/printer.test.js +796 -0
  37. package/dist/core/format/backend-ast/printer.test.js.map +1 -0
  38. package/dist/core/format/backend-ast/types.d.ts +66 -14
  39. package/dist/core/format/backend-ast/types.d.ts.map +1 -1
  40. package/dist/core/format/backend-ast/utils.d.ts +12 -8
  41. package/dist/core/format/backend-ast/utils.d.ts.map +1 -1
  42. package/dist/core/format/backend-ast/utils.js +222 -19
  43. package/dist/core/format/backend-ast/utils.js.map +1 -1
  44. package/dist/core/format/backend-ast/utils.test.d.ts +2 -0
  45. package/dist/core/format/backend-ast/utils.test.d.ts.map +1 -0
  46. package/dist/core/format/backend-ast/utils.test.js +142 -0
  47. package/dist/core/format/backend-ast/utils.test.js.map +1 -0
  48. package/dist/core/format/module-emitter/assembly.d.ts +2 -2
  49. package/dist/core/format/module-emitter/assembly.d.ts.map +1 -1
  50. package/dist/core/format/module-emitter/assembly.js +7 -3
  51. package/dist/core/format/module-emitter/assembly.js.map +1 -1
  52. package/dist/core/format/module-emitter/header.d.ts +2 -1
  53. package/dist/core/format/module-emitter/header.d.ts.map +1 -1
  54. package/dist/core/format/module-emitter/header.js +2 -2
  55. package/dist/core/format/module-emitter/header.js.map +1 -1
  56. package/dist/core/format/module-emitter/orchestrator.js +1 -1
  57. package/dist/core/format/module-emitter/orchestrator.js.map +1 -1
  58. package/dist/core/format/module-emitter/static-container.d.ts.map +1 -1
  59. package/dist/core/format/module-emitter/static-container.js +3 -5
  60. package/dist/core/format/module-emitter/static-container.js.map +1 -1
  61. package/dist/core/module-emitter.test.js +1 -0
  62. package/dist/core/module-emitter.test.js.map +1 -1
  63. package/dist/core/semantic/boolean-context.d.ts.map +1 -1
  64. package/dist/core/semantic/boolean-context.js +45 -49
  65. package/dist/core/semantic/boolean-context.js.map +1 -1
  66. package/dist/core/semantic/imports.d.ts.map +1 -1
  67. package/dist/core/semantic/imports.js +16 -15
  68. package/dist/core/semantic/imports.js.map +1 -1
  69. package/dist/core/semantic/imports.test.js.map +1 -1
  70. package/dist/core/semantic/type-resolution.js +1 -2
  71. package/dist/core/semantic/type-resolution.js.map +1 -1
  72. package/dist/emitter-types/core.d.ts +19 -10
  73. package/dist/emitter-types/core.d.ts.map +1 -1
  74. package/dist/emitter.d.ts.map +1 -1
  75. package/dist/emitter.js +124 -44
  76. package/dist/emitter.js.map +1 -1
  77. package/dist/expression-emitter.d.ts.map +1 -1
  78. package/dist/expression-emitter.js +24 -43
  79. package/dist/expression-emitter.js.map +1 -1
  80. package/dist/expressions/access.d.ts.map +1 -1
  81. package/dist/expressions/access.js +11 -28
  82. package/dist/expressions/access.js.map +1 -1
  83. package/dist/expressions/calls/call-analysis.d.ts +0 -10
  84. package/dist/expressions/calls/call-analysis.d.ts.map +1 -1
  85. package/dist/expressions/calls/call-analysis.js +3 -62
  86. package/dist/expressions/calls/call-analysis.js.map +1 -1
  87. package/dist/expressions/calls/call-emitter.d.ts.map +1 -1
  88. package/dist/expressions/calls/call-emitter.js +89 -151
  89. package/dist/expressions/calls/call-emitter.js.map +1 -1
  90. package/dist/expressions/calls/new-emitter.d.ts.map +1 -1
  91. package/dist/expressions/calls/new-emitter.js +36 -69
  92. package/dist/expressions/calls/new-emitter.js.map +1 -1
  93. package/dist/expressions/collections.d.ts +3 -0
  94. package/dist/expressions/collections.d.ts.map +1 -1
  95. package/dist/expressions/collections.js +43 -70
  96. package/dist/expressions/collections.js.map +1 -1
  97. package/dist/expressions/functions.d.ts.map +1 -1
  98. package/dist/expressions/functions.js +1 -7
  99. package/dist/expressions/functions.js.map +1 -1
  100. package/dist/expressions/identifiers.d.ts.map +1 -1
  101. package/dist/expressions/identifiers.js +23 -44
  102. package/dist/expressions/identifiers.js.map +1 -1
  103. package/dist/expressions/index.test.js +128 -0
  104. package/dist/expressions/index.test.js.map +1 -1
  105. package/dist/expressions/literals.d.ts.map +1 -1
  106. package/dist/expressions/literals.js +9 -41
  107. package/dist/expressions/literals.js.map +1 -1
  108. package/dist/expressions/operators/assignment-emitter.d.ts.map +1 -1
  109. package/dist/expressions/operators/assignment-emitter.js +2 -6
  110. package/dist/expressions/operators/assignment-emitter.js.map +1 -1
  111. package/dist/expressions/operators/binary-emitter.d.ts.map +1 -1
  112. package/dist/expressions/operators/binary-emitter.js +16 -32
  113. package/dist/expressions/operators/binary-emitter.js.map +1 -1
  114. package/dist/expressions/operators/logical-emitter.d.ts.map +1 -1
  115. package/dist/expressions/operators/logical-emitter.js +1 -3
  116. package/dist/expressions/operators/logical-emitter.js.map +1 -1
  117. package/dist/expressions/operators/unary-emitter.d.ts.map +1 -1
  118. package/dist/expressions/operators/unary-emitter.js +9 -20
  119. package/dist/expressions/operators/unary-emitter.js.map +1 -1
  120. package/dist/expressions/other.d.ts.map +1 -1
  121. package/dist/expressions/other.js +6 -11
  122. package/dist/expressions/other.js.map +1 -1
  123. package/dist/generator-exchange.d.ts.map +1 -1
  124. package/dist/generator-exchange.js +3 -2
  125. package/dist/generator-exchange.js.map +1 -1
  126. package/dist/generator-wrapper.d.ts.map +1 -1
  127. package/dist/generator-wrapper.js +27 -56
  128. package/dist/generator-wrapper.js.map +1 -1
  129. package/dist/integration.test.js +1 -1
  130. package/dist/integration.test.js.map +1 -1
  131. package/dist/json-aot-generic.test.js +3 -0
  132. package/dist/json-aot-generic.test.js.map +1 -1
  133. package/dist/patterns.d.ts.map +1 -1
  134. package/dist/patterns.js +19 -40
  135. package/dist/patterns.js.map +1 -1
  136. package/dist/statements/classes/members/methods.d.ts.map +1 -1
  137. package/dist/statements/classes/members/methods.js +3 -9
  138. package/dist/statements/classes/members/methods.js.map +1 -1
  139. package/dist/statements/classes/parameters.d.ts.map +1 -1
  140. package/dist/statements/classes/parameters.js +2 -1
  141. package/dist/statements/classes/parameters.js.map +1 -1
  142. package/dist/statements/classes/properties.d.ts.map +1 -1
  143. package/dist/statements/classes/properties.js +5 -16
  144. package/dist/statements/classes/properties.js.map +1 -1
  145. package/dist/statements/control/conditionals/guard-analysis.d.ts +2 -1
  146. package/dist/statements/control/conditionals/guard-analysis.d.ts.map +1 -1
  147. package/dist/statements/control/conditionals/guard-analysis.js +19 -6
  148. package/dist/statements/control/conditionals/guard-analysis.js.map +1 -1
  149. package/dist/statements/control/conditionals/if-emitter.d.ts.map +1 -1
  150. package/dist/statements/control/conditionals/if-emitter.js +14 -9
  151. package/dist/statements/control/conditionals/if-emitter.js.map +1 -1
  152. package/dist/statements/control/exceptions.d.ts.map +1 -1
  153. package/dist/statements/control/exceptions.js +2 -4
  154. package/dist/statements/control/exceptions.js.map +1 -1
  155. package/dist/statements/control/loops.d.ts.map +1 -1
  156. package/dist/statements/control/loops.js +3 -5
  157. package/dist/statements/control/loops.js.map +1 -1
  158. package/dist/statements/declarations/classes.d.ts.map +1 -1
  159. package/dist/statements/declarations/classes.js +2 -4
  160. package/dist/statements/declarations/classes.js.map +1 -1
  161. package/dist/statements/declarations/functions.d.ts.map +1 -1
  162. package/dist/statements/declarations/functions.js +36 -66
  163. package/dist/statements/declarations/functions.js.map +1 -1
  164. package/dist/statements/declarations/interfaces-mutable-storage.test.js +10 -2
  165. package/dist/statements/declarations/interfaces-mutable-storage.test.js.map +1 -1
  166. package/dist/statements/declarations/interfaces.d.ts.map +1 -1
  167. package/dist/statements/declarations/interfaces.js +4 -12
  168. package/dist/statements/declarations/interfaces.js.map +1 -1
  169. package/dist/statements/declarations/type-aliases.d.ts.map +1 -1
  170. package/dist/statements/declarations/type-aliases.js +3 -8
  171. package/dist/statements/declarations/type-aliases.js.map +1 -1
  172. package/dist/statements/declarations/variables.d.ts.map +1 -1
  173. package/dist/statements/declarations/variables.js +39 -37
  174. package/dist/statements/declarations/variables.js.map +1 -1
  175. package/dist/statements/index.test.js +94 -8
  176. package/dist/statements/index.test.js.map +1 -1
  177. package/dist/types/dictionaries.d.ts.map +1 -1
  178. package/dist/types/dictionaries.js +5 -5
  179. package/dist/types/dictionaries.js.map +1 -1
  180. package/dist/types/functions.d.ts.map +1 -1
  181. package/dist/types/functions.js +5 -25
  182. package/dist/types/functions.js.map +1 -1
  183. package/dist/types/primitives.d.ts.map +1 -1
  184. package/dist/types/primitives.js.map +1 -1
  185. package/dist/types/references.d.ts.map +1 -1
  186. package/dist/types/references.js +65 -132
  187. package/dist/types/references.js.map +1 -1
  188. package/dist/types/references.test.js +63 -51
  189. package/dist/types/references.test.js.map +1 -1
  190. package/dist/types/tuples.d.ts.map +1 -1
  191. package/dist/types/tuples.js +7 -17
  192. package/dist/types/tuples.js.map +1 -1
  193. package/dist/types/unions.d.ts.map +1 -1
  194. package/dist/types/unions.js +2 -5
  195. package/dist/types/unions.js.map +1 -1
  196. package/package.json +2 -2
  197. package/dist/expressions/parentheses.d.ts +0 -4
  198. package/dist/expressions/parentheses.d.ts.map +0 -1
  199. package/dist/expressions/parentheses.js +0 -91
  200. package/dist/expressions/parentheses.js.map +0 -1
@@ -6,38 +6,8 @@
6
6
  import { escapeCSharpIdentifier } from "../emitter-types/index.js";
7
7
  import { emitTypeAst } from "./emitter.js";
8
8
  import { resolveLocalTypeInfo, substituteTypeArgs, } from "../core/semantic/type-resolution.js";
9
- /**
10
- * C# primitive type names that can be emitted directly without qualification.
11
- * These correspond to the types defined in @tsonic/core package.
12
- */
13
- const CSHARP_PRIMITIVES = new Set([
14
- // Signed integers (from @tsonic/core)
15
- "sbyte",
16
- "short",
17
- "int",
18
- "long",
19
- "nint",
20
- "int128",
21
- // Unsigned integers (from @tsonic/core)
22
- "byte",
23
- "ushort",
24
- "uint",
25
- "ulong",
26
- "nuint",
27
- "uint128",
28
- // Floating-point (from @tsonic/core)
29
- "half",
30
- "float",
31
- "double",
32
- "decimal",
33
- // Other primitives (from @tsonic/core)
34
- "bool",
35
- "char",
36
- // Additional C# keywords that are valid type names
37
- "string",
38
- "object",
39
- "void",
40
- ]);
9
+ import { identifierType, withTypeArguments, } from "../core/format/backend-ast/builders.js";
10
+ import { clrTypeNameToTypeAst, isCSharpPredefinedTypeKeyword, } from "../core/format/backend-ast/utils.js";
41
11
  /**
42
12
  * Normalize a CLR type name to global:: format
43
13
  */
@@ -45,34 +15,13 @@ const toGlobalClr = (clr) => {
45
15
  const trimmed = clr.trim();
46
16
  return trimmed.startsWith("global::") ? trimmed : `global::${trimmed}`;
47
17
  };
48
- /**
49
- * Convert CLR metadata type names into C#-emittable type names.
50
- *
51
- * tsbindgen bindings use CLR "full names" that include:
52
- * - Generic arity markers: `Dictionary`2`, `Func`3`, etc.
53
- * - Nested type separators: `Outer+Inner`
54
- *
55
- * C# source code must not include arity markers, and nested types use `.`
56
- * in source (e.g. `Outer.Inner`).
57
- */
58
- const clrTypeNameToCSharp = (clr) => {
59
- const prefix = "global::";
60
- const hasGlobal = clr.startsWith(prefix);
61
- const body = hasGlobal ? clr.slice(prefix.length) : clr;
62
- const sanitized = body
63
- // Strip generic arity markers (e.g. Dictionary`2 -> Dictionary)
64
- .replace(/`\d+/g, "")
65
- // CLR nested types use '+'; C# source uses '.'
66
- .replace(/\+/g, ".");
67
- return hasGlobal ? `${prefix}${sanitized}` : sanitized;
68
- };
69
- const resolveImportedTypeClrName = (typeName, context) => {
18
+ const resolveImportedTypeAst = (typeName, context) => {
70
19
  const candidates = getReferenceLookupCandidates(typeName);
71
20
  for (const candidate of candidates) {
72
21
  const binding = context.importBindings?.get(candidate);
73
22
  if (!binding || binding.kind !== "type")
74
23
  continue;
75
- return clrTypeNameToCSharp(binding.clrName);
24
+ return binding.typeAst;
76
25
  }
77
26
  return undefined;
78
27
  };
@@ -101,7 +50,7 @@ const emitQualifiedLocalType = (namespace, csharpName, typeArguments, context) =
101
50
  const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
102
51
  return [identifierTypeWithArgs(qualified, typeArgAsts), newContext];
103
52
  }
104
- return [{ kind: "identifierType", name: qualified }, context];
53
+ return [identifierType(qualified), context];
105
54
  };
106
55
  /**
107
56
  * Normalize a generic type argument AST: void → object.
@@ -146,9 +95,21 @@ const emitTypeArgAsts = (typeArguments, context) => {
146
95
  /**
147
96
  * Build an identifierType with optional type arguments.
148
97
  */
149
- const identifierTypeWithArgs = (name, typeArgAsts) => typeArgAsts && typeArgAsts.length > 0
150
- ? { kind: "identifierType", name, typeArguments: typeArgAsts }
151
- : { kind: "identifierType", name };
98
+ const identifierTypeWithArgs = (name, typeArgAsts) => identifierType(name, typeArgAsts);
99
+ const attachTypeArgumentsIfSupported = (typeAst, typeArguments) => {
100
+ switch (typeAst.kind) {
101
+ case "identifierType":
102
+ case "qualifiedIdentifierType":
103
+ return withTypeArguments(typeAst, typeArguments);
104
+ default:
105
+ return typeAst;
106
+ }
107
+ };
108
+ const EXACT_BCL_VALUE_TYPE_MAP = new Map([
109
+ ["half", "global::System.Half"],
110
+ ["int128", "global::System.Int128"],
111
+ ["uint128", "global::System.UInt128"],
112
+ ]);
152
113
  /**
153
114
  * Emit reference types as CSharpTypeAst
154
115
  */
@@ -183,35 +144,31 @@ export const emitReferenceType = (type, context) => {
183
144
  }
184
145
  // If the type has a pre-resolved CLR type (from IR), use it
185
146
  if (resolvedClrType) {
186
- const normalizedClr = clrTypeNameToCSharp(resolvedClrType);
187
- const qualifiedClr = CSHARP_PRIMITIVES.has(normalizedClr)
188
- ? normalizedClr
189
- : toGlobalClr(normalizedClr);
147
+ const typeAst = clrTypeNameToTypeAst(toGlobalClr(resolvedClrType));
190
148
  if (typeArguments && typeArguments.length > 0) {
191
149
  const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
192
- return [identifierTypeWithArgs(qualifiedClr, typeArgAsts), newContext];
150
+ if (typeAst.kind === "identifierType" ||
151
+ typeAst.kind === "qualifiedIdentifierType") {
152
+ return [withTypeArguments(typeAst, typeArgAsts), newContext];
153
+ }
154
+ return [typeAst, newContext];
193
155
  }
194
- // For primitives, emit as predefinedType; for others, identifierType
195
- return [
196
- CSHARP_PRIMITIVES.has(normalizedClr)
197
- ? { kind: "predefinedType", keyword: normalizedClr }
198
- : { kind: "identifierType", name: qualifiedClr },
199
- context,
200
- ];
156
+ return [typeAst, context];
201
157
  }
202
- // Check if this type is imported - use pre-computed CLR name directly.
158
+ // Check if this type is imported - use pre-computed type AST directly.
203
159
  // This includes canonicalization for tsbindgen instance aliases (Foo$instance)
204
160
  // so imported type identity remains stable even when global aliases collide.
205
- const qualifiedName = resolveImportedTypeClrName(name, context);
206
- if (qualifiedName) {
207
- if (CSHARP_PRIMITIVES.has(qualifiedName)) {
208
- return [{ kind: "predefinedType", keyword: qualifiedName }, context];
209
- }
161
+ const importedTypeAst = resolveImportedTypeAst(name, context);
162
+ if (importedTypeAst) {
210
163
  if (typeArguments && typeArguments.length > 0) {
211
164
  const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
212
- return [identifierTypeWithArgs(toGlobalClr(qualifiedName), typeArgAsts), newContext];
165
+ if (importedTypeAst.kind === "identifierType" ||
166
+ importedTypeAst.kind === "qualifiedIdentifierType") {
167
+ return [withTypeArguments(importedTypeAst, typeArgAsts), newContext];
168
+ }
169
+ return [importedTypeAst, newContext];
213
170
  }
214
- return [{ kind: "identifierType", name: toGlobalClr(qualifiedName) }, context];
171
+ return [importedTypeAst, context];
215
172
  }
216
173
  // Check for unsupported support types
217
174
  const unsupportedError = checkUnsupportedSupportType(name);
@@ -242,43 +199,24 @@ export const emitReferenceType = (type, context) => {
242
199
  if (name === "Promise" && typeArguments && typeArguments.length > 0) {
243
200
  const firstArg = typeArguments[0];
244
201
  if (!firstArg) {
245
- return [
246
- {
247
- kind: "identifierType",
248
- name: "global::System.Threading.Tasks.Task",
249
- },
250
- context,
251
- ];
202
+ return [identifierType("global::System.Threading.Tasks.Task"), context];
252
203
  }
253
204
  const [elementTypeAst, newContext] = emitTypeAst(firstArg, context);
254
205
  // Promise<void> should map to Task (not Task<void>)
255
206
  if (elementTypeAst.kind === "predefinedType" &&
256
207
  elementTypeAst.keyword === "void") {
257
208
  return [
258
- {
259
- kind: "identifierType",
260
- name: "global::System.Threading.Tasks.Task",
261
- },
209
+ identifierType("global::System.Threading.Tasks.Task"),
262
210
  newContext,
263
211
  ];
264
212
  }
265
213
  return [
266
- {
267
- kind: "identifierType",
268
- name: "global::System.Threading.Tasks.Task",
269
- typeArguments: [elementTypeAst],
270
- },
214
+ identifierType("global::System.Threading.Tasks.Task", [elementTypeAst]),
271
215
  newContext,
272
216
  ];
273
217
  }
274
218
  if (name === "Promise") {
275
- return [
276
- {
277
- kind: "identifierType",
278
- name: "global::System.Threading.Tasks.Task",
279
- },
280
- context,
281
- ];
219
+ return [identifierType("global::System.Threading.Tasks.Task"), context];
282
220
  }
283
221
  // Map core Span<T> to System.Span<T>.
284
222
  // This is used by stackalloc<T>(n) and other span-based APIs.
@@ -291,14 +229,7 @@ export const emitReferenceType = (type, context) => {
291
229
  throw new Error("ICE: Span<T> missing type argument");
292
230
  }
293
231
  const [innerTypeAst, newContext] = emitTypeAst(inner, context);
294
- return [
295
- {
296
- kind: "identifierType",
297
- name: "global::System.Span",
298
- typeArguments: [innerTypeAst],
299
- },
300
- newContext,
301
- ];
232
+ return [identifierType("global::System.Span", [innerTypeAst]), newContext];
302
233
  }
303
234
  // Map core ptr<T> to C# unsafe pointer type: T*
304
235
  if (name === "ptr") {
@@ -316,22 +247,27 @@ export const emitReferenceType = (type, context) => {
316
247
  // Map PromiseLike to Task
317
248
  if (name === "PromiseLike") {
318
249
  // PromiseLike is in both globals packages - safe to map unconditionally
319
- return [
320
- {
321
- kind: "identifierType",
322
- name: "global::System.Threading.Tasks.Task",
323
- },
324
- context,
325
- ];
250
+ return [identifierType("global::System.Threading.Tasks.Task"), context];
326
251
  }
327
252
  // C# primitive types can be emitted directly
328
- if (CSHARP_PRIMITIVES.has(name)) {
253
+ if (isCSharpPredefinedTypeKeyword(name)) {
329
254
  return [{ kind: "predefinedType", keyword: name }, context];
330
255
  }
256
+ const exactBclValueType = EXACT_BCL_VALUE_TYPE_MAP.get(name);
257
+ if (exactBclValueType) {
258
+ if (typeArguments && typeArguments.length > 0) {
259
+ const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
260
+ return [
261
+ identifierTypeWithArgs(exactBclValueType, typeArgAsts),
262
+ newContext,
263
+ ];
264
+ }
265
+ return [identifierType(exactBclValueType), context];
266
+ }
331
267
  // Type parameters in scope can be emitted directly
332
268
  if (context.typeParameters?.has(name)) {
333
269
  const mappedName = context.typeParameterNameMap?.get(name) ?? name;
334
- return [{ kind: "identifierType", name: mappedName }, context];
270
+ return [identifierType(mappedName), context];
335
271
  }
336
272
  const canonicalLocalTarget = resolveCanonicalLocalTypeTarget(name, context);
337
273
  if (canonicalLocalTarget) {
@@ -340,7 +276,7 @@ export const emitReferenceType = (type, context) => {
340
276
  const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
341
277
  return [identifierTypeWithArgs(qualified, typeArgAsts), newContext];
342
278
  }
343
- return [{ kind: "identifierType", name: qualified }, context];
279
+ return [identifierType(qualified), context];
344
280
  }
345
281
  // IMPORTANT: Check local types BEFORE binding registry.
346
282
  // Local types take precedence over .NET types with the same name.
@@ -375,7 +311,7 @@ export const emitReferenceType = (type, context) => {
375
311
  ];
376
312
  }
377
313
  if (!context.qualifyLocalTypes) {
378
- return [{ kind: "identifierType", name: csharpName }, context];
314
+ return [identifierType(csharpName), context];
379
315
  }
380
316
  const moduleNamespace = context.moduleNamespace ?? context.options.rootNamespace;
381
317
  const container = context.moduleStaticClassName;
@@ -385,10 +321,7 @@ export const emitReferenceType = (type, context) => {
385
321
  ? `${moduleNamespace}.${container}`
386
322
  : moduleNamespace;
387
323
  return [
388
- {
389
- kind: "identifierType",
390
- name: `global::${qualifiedPrefix}.${csharpName}`,
391
- },
324
+ identifierType(`global::${qualifiedPrefix}.${csharpName}`),
392
325
  context,
393
326
  ];
394
327
  }
@@ -413,12 +346,12 @@ export const emitReferenceType = (type, context) => {
413
346
  // When present, this is the authoritative source for CLR emission and
414
347
  // avoids relying on emitter-side registry plumbing for basic type names.
415
348
  if (typeId) {
416
- const qualified = toGlobalClr(clrTypeNameToCSharp(typeId.clrName));
349
+ const typeAst = clrTypeNameToTypeAst(toGlobalClr(typeId.clrName));
417
350
  if (typeArguments && typeArguments.length > 0) {
418
351
  const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
419
- return [identifierTypeWithArgs(qualified, typeArgAsts), newContext];
352
+ return [attachTypeArgumentsIfSupported(typeAst, typeArgAsts), newContext];
420
353
  }
421
- return [{ kind: "identifierType", name: qualified }, context];
354
+ return [typeAst, context];
422
355
  }
423
356
  // Resolve external types via binding registry (must be fully qualified)
424
357
  // This handles types from contextual inference (e.g., Action from Parallel.invoke)
@@ -427,12 +360,12 @@ export const emitReferenceType = (type, context) => {
427
360
  const regBinding = context.bindingsRegistry?.get(candidate);
428
361
  if (!regBinding)
429
362
  continue;
430
- const qualified = toGlobalClr(clrTypeNameToCSharp(regBinding.name));
363
+ const typeAst = clrTypeNameToTypeAst(toGlobalClr(regBinding.name));
431
364
  if (typeArguments && typeArguments.length > 0) {
432
365
  const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
433
- return [identifierTypeWithArgs(qualified, typeArgAsts), newContext];
366
+ return [attachTypeArgumentsIfSupported(typeAst, typeArgAsts), newContext];
434
367
  }
435
- return [{ kind: "identifierType", name: qualified }, context];
368
+ return [typeAst, context];
436
369
  }
437
370
  // Synthetic cross-module types (e.g. compiler-generated anonymous types) are
438
371
  // declared in separate `__tsonic/*` modules. These do not appear in a given
@@ -445,7 +378,7 @@ export const emitReferenceType = (type, context) => {
445
378
  const [typeArgAsts, newContext] = emitTypeArgAsts(typeArguments, context);
446
379
  return [identifierTypeWithArgs(qualified, typeArgAsts), newContext];
447
380
  }
448
- return [{ kind: "identifierType", name: qualified }, context];
381
+ return [identifierType(qualified), context];
449
382
  }
450
383
  // Hard failure: unresolved external reference type
451
384
  // This should never happen if the IR soundness gate is working correctly
@@ -1 +1 @@
1
- {"version":3,"file":"references.js","sourceRoot":"","sources":["../../src/types/references.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"references.js","sourceRoot":"","sources":["../../src/types/references.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,8 @@ import { describe, it } from "mocha";
11
11
  import { expect } from "chai";
12
12
  import { emitCSharpFiles, emitModule } from "../emitter.js";
13
13
  import { emitReferenceType } from "./references.js";
14
- import { renderTypeAst } from "../core/format/backend-ast/utils.js";
14
+ import { clrTypeNameToTypeAst } from "../core/format/backend-ast/utils.js";
15
+ import { printType } from "../core/format/backend-ast/printer.js";
15
16
  /**
16
17
  * Helper to create a minimal module with a variable declaration of a given type
17
18
  */
@@ -48,53 +49,48 @@ describe("Reference Type Emission", () => {
48
49
  usings: new Set(),
49
50
  };
50
51
  describe("C# Primitive Types", () => {
51
- it("should emit int without qualification", () => {
52
- const module = createModuleWithType({
53
- kind: "referenceType",
54
- name: "int",
55
- });
56
- const result = emitModule(module);
57
- expect(result).to.include("int x");
58
- });
59
- it("should emit long without qualification", () => {
60
- const module = createModuleWithType({
61
- kind: "referenceType",
62
- name: "long",
63
- });
64
- const result = emitModule(module);
65
- expect(result).to.include("long x");
66
- });
67
- it("should emit double without qualification", () => {
68
- const module = createModuleWithType({
69
- kind: "referenceType",
70
- name: "double",
71
- });
72
- const result = emitModule(module);
73
- expect(result).to.include("double x");
74
- });
75
- it("should emit decimal without qualification", () => {
76
- const module = createModuleWithType({
77
- kind: "referenceType",
78
- name: "decimal",
79
- });
80
- const result = emitModule(module);
81
- expect(result).to.include("decimal x");
52
+ it("should emit every real C# predefined reference keyword without qualification", () => {
53
+ const keywords = [
54
+ "bool",
55
+ "byte",
56
+ "sbyte",
57
+ "short",
58
+ "ushort",
59
+ "int",
60
+ "uint",
61
+ "long",
62
+ "ulong",
63
+ "nint",
64
+ "nuint",
65
+ "char",
66
+ "float",
67
+ "double",
68
+ "decimal",
69
+ "string",
70
+ "object",
71
+ ];
72
+ for (const keyword of keywords) {
73
+ const module = createModuleWithType({
74
+ kind: "referenceType",
75
+ name: keyword,
76
+ });
77
+ const result = emitModule(module);
78
+ expect(result).to.include(`${keyword} x`);
79
+ }
82
80
  });
83
- it("should emit bool without qualification", () => {
84
- const module = createModuleWithType({
85
- kind: "referenceType",
86
- name: "bool",
87
- });
88
- const result = emitModule(module);
89
- expect(result).to.include("bool x");
90
- });
91
- it("should emit nint (native int) without qualification", () => {
92
- const module = createModuleWithType({
93
- kind: "referenceType",
94
- name: "nint",
95
- });
96
- const result = emitModule(module);
97
- expect(result).to.include("nint x");
81
+ it("should emit exact BCL numeric aliases as System value types", () => {
82
+ const cases = [
83
+ ["half", "global::System.Half"],
84
+ ["int128", "global::System.Int128"],
85
+ ["uint128", "global::System.UInt128"],
86
+ ];
87
+ for (const [typeName, expected] of cases) {
88
+ const [typeAst] = emitReferenceType({
89
+ kind: "referenceType",
90
+ name: typeName,
91
+ }, baseContext);
92
+ expect(printType(typeAst)).to.equal(expected);
93
+ }
98
94
  });
99
95
  });
100
96
  describe("Known Builtin Types", () => {
@@ -279,12 +275,12 @@ describe("Reference Type Emission", () => {
279
275
  "MetricName",
280
276
  {
281
277
  kind: "type",
282
- clrName: "string",
278
+ typeAst: clrTypeNameToTypeAst("string"),
283
279
  },
284
280
  ],
285
281
  ]),
286
282
  });
287
- expect(renderTypeAst(typeAst)).to.equal("string");
283
+ expect(printType(typeAst)).to.equal("string");
288
284
  });
289
285
  it("should emit arrays of imported primitive aliases without global qualification", () => {
290
286
  const [typeAst] = emitReferenceType({
@@ -303,12 +299,12 @@ describe("Reference Type Emission", () => {
303
299
  "MetricName",
304
300
  {
305
301
  kind: "type",
306
- clrName: "string",
302
+ typeAst: clrTypeNameToTypeAst("string"),
307
303
  },
308
304
  ],
309
305
  ]),
310
306
  });
311
- expect(renderTypeAst(typeAst)).to.equal("string[]");
307
+ expect(printType(typeAst)).to.equal("string[]");
312
308
  });
313
309
  it("should use module-bound imported type FQNs instead of module container members", () => {
314
310
  const module = {
@@ -383,6 +379,22 @@ describe("Reference Type Emission", () => {
383
379
  expect(result).to.include("global::System.Collections.Generic.Dictionary<int, string>");
384
380
  expect(result).to.not.include("Dictionary`2");
385
381
  });
382
+ it("should preserve generic arguments for qualified canonical type identities", () => {
383
+ const module = createModuleWithType({
384
+ kind: "referenceType",
385
+ name: "List",
386
+ typeArguments: [{ kind: "primitiveType", name: "int" }],
387
+ typeId: {
388
+ stableId: "System.Private.CoreLib:System.Collections.Generic.List`1",
389
+ clrName: "System.Collections.Generic.List`1",
390
+ assemblyName: "System.Private.CoreLib",
391
+ tsName: "List",
392
+ },
393
+ });
394
+ const result = emitModule(module);
395
+ expect(result).to.include("global::System.Collections.Generic.List<int>");
396
+ expect(result).to.not.include("List`1");
397
+ });
386
398
  it("should resolve tsbindgen instance aliases through registry base names", () => {
387
399
  const module = createModuleWithType({
388
400
  kind: "referenceType",
@@ -1 +1 @@
1
- {"version":3,"file":"references.test.js","sourceRoot":"","sources":["../../src/types/references.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"references.test.js","sourceRoot":"","sources":["../../src/types/references.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tuples.d.ts","sourceRoot":"","sources":["../../src/types/tuples.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAmBzE;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,OAAO,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC,EAC5C,SAAS,cAAc,KACtB,CAAC,aAAa,EAAE,cAAc,CA4ChC,CAAC"}
1
+ {"version":3,"file":"tuples.d.ts","sourceRoot":"","sources":["../../src/types/tuples.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAoBzE;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,OAAO,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC,EAC5C,SAAS,cAAc,KACtB,CAAC,aAAa,EAAE,cAAc,CAiChC,CAAC"}