@tsonic/emitter 0.0.13 → 0.0.15

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 (184) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/array.test.d.ts +1 -1
  3. package/dist/array.test.js +17 -16
  4. package/dist/array.test.js.map +1 -1
  5. package/dist/core/attributes.test.js +2 -2
  6. package/dist/core/attributes.test.js.map +1 -1
  7. package/dist/core/imports.d.ts.map +1 -1
  8. package/dist/core/imports.js +1 -9
  9. package/dist/core/imports.js.map +1 -1
  10. package/dist/core/module-emitter/static-container.d.ts.map +1 -1
  11. package/dist/core/module-emitter/static-container.js +3 -1
  12. package/dist/core/module-emitter/static-container.js.map +1 -1
  13. package/dist/core/unsafe.d.ts +11 -0
  14. package/dist/core/unsafe.d.ts.map +1 -0
  15. package/dist/core/unsafe.js +264 -0
  16. package/dist/core/unsafe.js.map +1 -0
  17. package/dist/emitter-types/context.d.ts +1 -1
  18. package/dist/emitter-types/context.d.ts.map +1 -1
  19. package/dist/emitter-types/context.js +4 -3
  20. package/dist/emitter-types/context.js.map +1 -1
  21. package/dist/emitter-types/core.d.ts +4 -2
  22. package/dist/emitter-types/core.d.ts.map +1 -1
  23. package/dist/emitter-types/fqn.d.ts +0 -7
  24. package/dist/emitter-types/fqn.d.ts.map +1 -1
  25. package/dist/emitter-types/fqn.js +0 -8
  26. package/dist/emitter-types/fqn.js.map +1 -1
  27. package/dist/expression-emitter.d.ts.map +1 -1
  28. package/dist/expression-emitter.js +268 -63
  29. package/dist/expression-emitter.js.map +1 -1
  30. package/dist/expressions/access.d.ts.map +1 -1
  31. package/dist/expressions/access.js +36 -40
  32. package/dist/expressions/access.js.map +1 -1
  33. package/dist/expressions/calls.d.ts.map +1 -1
  34. package/dist/expressions/calls.js +233 -70
  35. package/dist/expressions/calls.js.map +1 -1
  36. package/dist/expressions/collections.d.ts.map +1 -1
  37. package/dist/expressions/collections.js +37 -41
  38. package/dist/expressions/collections.js.map +1 -1
  39. package/dist/expressions/functions.d.ts.map +1 -1
  40. package/dist/expressions/functions.js +30 -10
  41. package/dist/expressions/functions.js.map +1 -1
  42. package/dist/expressions/identifiers.d.ts.map +1 -1
  43. package/dist/expressions/identifiers.js +5 -30
  44. package/dist/expressions/identifiers.js.map +1 -1
  45. package/dist/expressions/index.test.js +87 -198
  46. package/dist/expressions/index.test.js.map +1 -1
  47. package/dist/expressions/literals.d.ts +4 -5
  48. package/dist/expressions/literals.d.ts.map +1 -1
  49. package/dist/expressions/literals.js +62 -15
  50. package/dist/expressions/literals.js.map +1 -1
  51. package/dist/expressions/operators.d.ts +0 -4
  52. package/dist/expressions/operators.d.ts.map +1 -1
  53. package/dist/expressions/operators.js +49 -19
  54. package/dist/expressions/operators.js.map +1 -1
  55. package/dist/expressions/other.d.ts.map +1 -1
  56. package/dist/expressions/other.js +21 -3
  57. package/dist/expressions/other.js.map +1 -1
  58. package/dist/extension-methods.test.d.ts +5 -0
  59. package/dist/extension-methods.test.d.ts.map +1 -0
  60. package/dist/extension-methods.test.js +110 -0
  61. package/dist/extension-methods.test.js.map +1 -0
  62. package/dist/generator-exchange.d.ts.map +1 -1
  63. package/dist/generator-exchange.js +2 -1
  64. package/dist/generator-exchange.js.map +1 -1
  65. package/dist/generator.test.js +9 -9
  66. package/dist/generator.test.js.map +1 -1
  67. package/dist/golden-tests/discovery.d.ts +6 -11
  68. package/dist/golden-tests/discovery.d.ts.map +1 -1
  69. package/dist/golden-tests/discovery.js +14 -79
  70. package/dist/golden-tests/discovery.js.map +1 -1
  71. package/dist/golden-tests/index.d.ts +1 -1
  72. package/dist/golden-tests/index.d.ts.map +1 -1
  73. package/dist/golden-tests/index.js.map +1 -1
  74. package/dist/golden-tests/runner.d.ts.map +1 -1
  75. package/dist/golden-tests/runner.js +6 -7
  76. package/dist/golden-tests/runner.js.map +1 -1
  77. package/dist/golden-tests/types.d.ts +0 -7
  78. package/dist/golden-tests/types.d.ts.map +1 -1
  79. package/dist/golden.test.d.ts +3 -10
  80. package/dist/golden.test.d.ts.map +1 -1
  81. package/dist/golden.test.js +8 -24
  82. package/dist/golden.test.js.map +1 -1
  83. package/dist/hierarchical-bindings.test.js +17 -11
  84. package/dist/hierarchical-bindings.test.js.map +1 -1
  85. package/dist/integration.test.js +61 -20
  86. package/dist/integration.test.js.map +1 -1
  87. package/dist/invariants/emitter-globals-subset.test.d.ts +1 -1
  88. package/dist/invariants/emitter-globals-subset.test.js +34 -74
  89. package/dist/invariants/emitter-globals-subset.test.js.map +1 -1
  90. package/dist/invariants/numeric-proof-contract.test.js +3 -3
  91. package/dist/invariants/numeric-proof-contract.test.js.map +1 -1
  92. package/dist/patterns.d.ts +98 -0
  93. package/dist/patterns.d.ts.map +1 -0
  94. package/dist/patterns.js +366 -0
  95. package/dist/patterns.js.map +1 -0
  96. package/dist/patterns.test.d.ts +15 -0
  97. package/dist/patterns.test.d.ts.map +1 -0
  98. package/dist/patterns.test.js +1262 -0
  99. package/dist/patterns.test.js.map +1 -0
  100. package/dist/specialization/generation.d.ts.map +1 -1
  101. package/dist/specialization/generation.js +2 -2
  102. package/dist/specialization/generation.js.map +1 -1
  103. package/dist/specialization/substitution.d.ts.map +1 -1
  104. package/dist/specialization/substitution.js +4 -0
  105. package/dist/specialization/substitution.js.map +1 -1
  106. package/dist/specialization/type-aliases.test.js +1 -1
  107. package/dist/specialization/type-aliases.test.js.map +1 -1
  108. package/dist/statement-emitter.d.ts.map +1 -1
  109. package/dist/statement-emitter.js +1 -1
  110. package/dist/statement-emitter.js.map +1 -1
  111. package/dist/statements/blocks.d.ts.map +1 -1
  112. package/dist/statements/blocks.js +14 -45
  113. package/dist/statements/blocks.js.map +1 -1
  114. package/dist/statements/classes/index.d.ts +1 -1
  115. package/dist/statements/classes/index.d.ts.map +1 -1
  116. package/dist/statements/classes/index.js +1 -1
  117. package/dist/statements/classes/index.js.map +1 -1
  118. package/dist/statements/classes/inline-types.d.ts.map +1 -1
  119. package/dist/statements/classes/inline-types.js +11 -1
  120. package/dist/statements/classes/inline-types.js.map +1 -1
  121. package/dist/statements/classes/members/constructors.d.ts.map +1 -1
  122. package/dist/statements/classes/members/constructors.js +30 -12
  123. package/dist/statements/classes/members/constructors.js.map +1 -1
  124. package/dist/statements/classes/members/methods.d.ts.map +1 -1
  125. package/dist/statements/classes/members/methods.js +51 -23
  126. package/dist/statements/classes/members/methods.js.map +1 -1
  127. package/dist/statements/classes/members/orchestrator.d.ts.map +1 -1
  128. package/dist/statements/classes/members/orchestrator.js +1 -3
  129. package/dist/statements/classes/members/orchestrator.js.map +1 -1
  130. package/dist/statements/classes/members/properties.d.ts.map +1 -1
  131. package/dist/statements/classes/members/properties.js +56 -9
  132. package/dist/statements/classes/members/properties.js.map +1 -1
  133. package/dist/statements/classes/parameters.d.ts +43 -1
  134. package/dist/statements/classes/parameters.d.ts.map +1 -1
  135. package/dist/statements/classes/parameters.js +73 -13
  136. package/dist/statements/classes/parameters.js.map +1 -1
  137. package/dist/statements/classes/properties.d.ts.map +1 -1
  138. package/dist/statements/classes/properties.js +1 -1
  139. package/dist/statements/classes/properties.js.map +1 -1
  140. package/dist/statements/classes.d.ts +1 -1
  141. package/dist/statements/classes.d.ts.map +1 -1
  142. package/dist/statements/classes.js +1 -1
  143. package/dist/statements/classes.js.map +1 -1
  144. package/dist/statements/control/conditionals.d.ts.map +1 -1
  145. package/dist/statements/control/conditionals.js +78 -23
  146. package/dist/statements/control/conditionals.js.map +1 -1
  147. package/dist/statements/control/loops.d.ts.map +1 -1
  148. package/dist/statements/control/loops.js +25 -5
  149. package/dist/statements/control/loops.js.map +1 -1
  150. package/dist/statements/declarations/classes.d.ts.map +1 -1
  151. package/dist/statements/declarations/classes.js +128 -10
  152. package/dist/statements/declarations/classes.js.map +1 -1
  153. package/dist/statements/declarations/functions.d.ts.map +1 -1
  154. package/dist/statements/declarations/functions.js +28 -12
  155. package/dist/statements/declarations/functions.js.map +1 -1
  156. package/dist/statements/declarations/interfaces.d.ts.map +1 -1
  157. package/dist/statements/declarations/interfaces.js +50 -7
  158. package/dist/statements/declarations/interfaces.js.map +1 -1
  159. package/dist/statements/declarations/type-aliases.d.ts.map +1 -1
  160. package/dist/statements/declarations/type-aliases.js +6 -1
  161. package/dist/statements/declarations/type-aliases.js.map +1 -1
  162. package/dist/statements/declarations/variables.d.ts.map +1 -1
  163. package/dist/statements/declarations/variables.js +196 -38
  164. package/dist/statements/declarations/variables.js.map +1 -1
  165. package/dist/statements/index.test.js +7 -5
  166. package/dist/statements/index.test.js.map +1 -1
  167. package/dist/types/arrays.d.ts +3 -9
  168. package/dist/types/arrays.d.ts.map +1 -1
  169. package/dist/types/arrays.js +5 -19
  170. package/dist/types/arrays.js.map +1 -1
  171. package/dist/types/parameters.d.ts.map +1 -1
  172. package/dist/types/parameters.js +36 -1
  173. package/dist/types/parameters.js.map +1 -1
  174. package/dist/types/parameters.test.js +1 -1
  175. package/dist/types/parameters.test.js.map +1 -1
  176. package/dist/types/references.d.ts.map +1 -1
  177. package/dist/types/references.js +86 -51
  178. package/dist/types/references.js.map +1 -1
  179. package/dist/types/references.test.js +35 -95
  180. package/dist/types/references.test.js.map +1 -1
  181. package/dist/types/unions.d.ts.map +1 -1
  182. package/dist/types/unions.js +20 -0
  183. package/dist/types/unions.js.map +1 -1
  184. package/package.json +3 -3
@@ -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":"unions.d.ts","sourceRoot":"","sources":["../../src/types/unions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C;;GAEG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,OAAO,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC,EAC5C,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CA+CzB,CAAC"}
1
+ {"version":3,"file":"unions.d.ts","sourceRoot":"","sources":["../../src/types/unions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAqB7C;;GAEG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,OAAO,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC,EAC5C,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CA2DzB,CAAC"}
@@ -2,6 +2,17 @@
2
2
  * Union type emission
3
3
  */
4
4
  import { emitType } from "./emitter.js";
5
+ const getBareTypeParameterName = (type, context) => {
6
+ if (type.kind === "typeParameterType")
7
+ return type.name;
8
+ // Legacy representation: type parameters sometimes arrive as referenceType nodes.
9
+ if (type.kind === "referenceType" &&
10
+ (context.typeParameters?.has(type.name) ?? false) &&
11
+ (!type.typeArguments || type.typeArguments.length === 0)) {
12
+ return type.name;
13
+ }
14
+ return undefined;
15
+ };
5
16
  /**
6
17
  * Emit union types as nullable (T?), Union<T1, T2>, or object
7
18
  */
@@ -20,6 +31,15 @@ export const emitUnionType = (type, context) => {
20
31
  if (!firstType) {
21
32
  return ["object?", context];
22
33
  }
34
+ // `T | null` where `T` is an unconstrained type parameter cannot be represented as `T?`
35
+ // in C# (it forbids assigning null). Fall back to `object?` and rely on casts at use sites.
36
+ const typeParamName = getBareTypeParameterName(firstType, context);
37
+ if (typeParamName) {
38
+ const constraintKind = context.typeParamConstraints?.get(typeParamName) ?? "unconstrained";
39
+ if (constraintKind === "unconstrained") {
40
+ return ["object?", context];
41
+ }
42
+ }
23
43
  const [baseType, newContext] = emitType(firstType, context);
24
44
  // Add ? suffix for nullable types (both value types and reference types)
25
45
  // This includes string?, int?, double?, etc. per spec/04-type-mappings.md
@@ -1 +1 @@
1
- {"version":3,"file":"unions.js","sourceRoot":"","sources":["../../src/types/unions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAA4C,EAC5C,OAAuB,EACG,EAAE;IAC5B,qCAAqC;IACrC,YAAY;IACZ,gDAAgD;IAChD,qCAAqC;IACrC,2CAA2C;IAE3C,uDAAuD;IACvD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACpC,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CACC,CAAC,CAAC,IAAI,KAAK,eAAe;QAC1B,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAC9C,CACJ,CAAC;IAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,iDAAiD;QACjD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5D,yEAAyE;QACzE,0EAA0E;QAC1E,OAAO,CAAC,GAAG,QAAQ,GAAG,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,qDAAqD;IACrD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,cAAc,GAAG,OAAO,CAAC;QAE7B,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAC1D,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1B,cAAc,GAAG,UAAU,CAAC;QAC9B,CAAC;QAED,OAAO;YACL,gCAAgC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YACzD,cAAc;SACf,CAAC;IACJ,CAAC;IAED,yDAAyD;IACzD,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC7B,CAAC,CAAC"}
1
+ {"version":3,"file":"unions.js","sourceRoot":"","sources":["../../src/types/unions.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,MAAM,wBAAwB,GAAG,CAC/B,IAAY,EACZ,OAAuB,EACH,EAAE;IACtB,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IAExD,kFAAkF;IAClF,IACE,IAAI,CAAC,IAAI,KAAK,eAAe;QAC7B,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;QACjD,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,EACxD,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAA4C,EAC5C,OAAuB,EACG,EAAE;IAC5B,qCAAqC;IACrC,YAAY;IACZ,gDAAgD;IAChD,qCAAqC;IACrC,2CAA2C;IAE3C,uDAAuD;IACvD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CACpC,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CACC,CAAC,CAAC,IAAI,KAAK,eAAe;QAC1B,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAC9C,CACJ,CAAC;IAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,iDAAiD;QACjD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC9B,CAAC;QAED,wFAAwF;QACxF,4FAA4F;QAC5F,MAAM,aAAa,GAAG,wBAAwB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnE,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,cAAc,GAClB,OAAO,CAAC,oBAAoB,EAAE,GAAG,CAAC,aAAa,CAAC,IAAI,eAAe,CAAC;YACtE,IAAI,cAAc,KAAK,eAAe,EAAE,CAAC;gBACvC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5D,yEAAyE;QACzE,0EAA0E;QAC1E,OAAO,CAAC,GAAG,QAAQ,GAAG,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,qDAAqD;IACrD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,cAAc,GAAG,OAAO,CAAC;QAE7B,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAC1D,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1B,cAAc,GAAG,UAAU,CAAC;QAC9B,CAAC;QAED,OAAO;YACL,gCAAgC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YACzD,cAAc;SACf,CAAC;IACJ,CAAC;IAED,yDAAyD;IACzD,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC7B,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tsonic/emitter",
3
- "version": "0.0.13",
3
+ "version": "0.0.15",
4
4
  "description": "C# code generator for Tsonic compiler",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -18,14 +18,14 @@
18
18
  "build": "tsc -b",
19
19
  "clean": "rm -rf dist *.tsbuildinfo",
20
20
  "pretest": "npm run clean && npm run build",
21
- "test": "mocha 'dist/**/*.test.js'",
21
+ "test": "mocha --parallel --timeout 10000 'dist/**/*.test.js'",
22
22
  "test:watch": "mocha 'dist/**/*.test.js' --watch",
23
23
  "update-golden": "npx tsx scripts/update-golden-tests.ts",
24
24
  "update-golden:dotnet": "npx tsx scripts/update-golden-tests.ts dotnet",
25
25
  "update-golden:js": "npx tsx scripts/update-golden-tests.ts js"
26
26
  },
27
27
  "dependencies": {
28
- "@tsonic/frontend": "*"
28
+ "@tsonic/frontend": "0.0.15"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/chai": "5.2.2",