@tsonic/emitter 0.0.32 → 0.0.34

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 (65) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/core/attributes.d.ts.map +1 -1
  3. package/dist/core/attributes.js +10 -0
  4. package/dist/core/attributes.js.map +1 -1
  5. package/dist/core/attributes.test.js +24 -0
  6. package/dist/core/attributes.test.js.map +1 -1
  7. package/dist/core/boolean-context.d.ts.map +1 -1
  8. package/dist/core/boolean-context.js +68 -5
  9. package/dist/core/boolean-context.js.map +1 -1
  10. package/dist/core/module-emitter/assembly.d.ts +6 -3
  11. package/dist/core/module-emitter/assembly.d.ts.map +1 -1
  12. package/dist/core/module-emitter/assembly.js +14 -3
  13. package/dist/core/module-emitter/assembly.js.map +1 -1
  14. package/dist/core/module-emitter/static-container.d.ts.map +1 -1
  15. package/dist/core/module-emitter/static-container.js +3 -1
  16. package/dist/core/module-emitter/static-container.js.map +1 -1
  17. package/dist/core/module-emitter.test.js +1 -1
  18. package/dist/core/module-emitter.test.js.map +1 -1
  19. package/dist/core/type-resolution.test.js +1 -0
  20. package/dist/core/type-resolution.test.js.map +1 -1
  21. package/dist/emitter-types/context.d.ts.map +1 -1
  22. package/dist/emitter-types/context.js +1 -0
  23. package/dist/emitter-types/context.js.map +1 -1
  24. package/dist/emitter-types/core.d.ts +9 -0
  25. package/dist/emitter-types/core.d.ts.map +1 -1
  26. package/dist/expressions/calls.d.ts.map +1 -1
  27. package/dist/expressions/calls.js +97 -2
  28. package/dist/expressions/calls.js.map +1 -1
  29. package/dist/expressions/identifiers.d.ts.map +1 -1
  30. package/dist/expressions/identifiers.js +5 -0
  31. package/dist/expressions/identifiers.js.map +1 -1
  32. package/dist/expressions/index.test.js +86 -0
  33. package/dist/expressions/index.test.js.map +1 -1
  34. package/dist/expressions/literals.test.js +1 -0
  35. package/dist/expressions/literals.test.js.map +1 -1
  36. package/dist/expressions/operators.d.ts.map +1 -1
  37. package/dist/expressions/operators.js +35 -12
  38. package/dist/expressions/operators.js.map +1 -1
  39. package/dist/expressions/precedence.test.d.ts +2 -0
  40. package/dist/expressions/precedence.test.d.ts.map +1 -0
  41. package/dist/expressions/precedence.test.js +278 -0
  42. package/dist/expressions/precedence.test.js.map +1 -0
  43. package/dist/patterns.d.ts.map +1 -1
  44. package/dist/patterns.js +25 -3
  45. package/dist/patterns.js.map +1 -1
  46. package/dist/statements/classes/members/methods.d.ts.map +1 -1
  47. package/dist/statements/classes/members/methods.js +5 -0
  48. package/dist/statements/classes/members/methods.js.map +1 -1
  49. package/dist/statements/classes/members/properties.d.ts.map +1 -1
  50. package/dist/statements/classes/members/properties.js +23 -20
  51. package/dist/statements/classes/members/properties.js.map +1 -1
  52. package/dist/statements/classes/members/shadowing.test.d.ts +5 -0
  53. package/dist/statements/classes/members/shadowing.test.d.ts.map +1 -0
  54. package/dist/statements/classes/members/shadowing.test.js +52 -0
  55. package/dist/statements/classes/members/shadowing.test.js.map +1 -0
  56. package/dist/statements/classes/members/static-readonly-properties.test.d.ts +5 -0
  57. package/dist/statements/classes/members/static-readonly-properties.test.d.ts.map +1 -0
  58. package/dist/statements/classes/members/static-readonly-properties.test.js +36 -0
  59. package/dist/statements/classes/members/static-readonly-properties.test.js.map +1 -0
  60. package/dist/statements/declarations/classes.d.ts.map +1 -1
  61. package/dist/statements/declarations/classes.js +10 -8
  62. package/dist/statements/declarations/classes.js.map +1 -1
  63. package/dist/types/parameters.test.js +1 -0
  64. package/dist/types/parameters.test.js.map +1 -1
  65. package/package.json +2 -2
@@ -96,6 +96,12 @@ const isInstanceMemberAccess = (expr, context) => {
96
96
  if (importBinding?.kind === "type") {
97
97
  return false;
98
98
  }
99
+ // If this isn't an import and we don't have a receiver type, default to instance.
100
+ // This matches emitMemberAccess's behavior and prevents local variables from being
101
+ // misclassified as static type receivers (which breaks extension method lowering).
102
+ if (!expr.object.inferredType) {
103
+ return true;
104
+ }
99
105
  }
100
106
  const objectType = expr.object.inferredType;
101
107
  return (objectType?.kind === "referenceType" ||
@@ -103,7 +109,37 @@ const isInstanceMemberAccess = (expr, context) => {
103
109
  objectType?.kind === "intersectionType" ||
104
110
  objectType?.kind === "unionType" ||
105
111
  objectType?.kind === "primitiveType" ||
106
- objectType?.kind === "literalType");
112
+ objectType?.kind === "literalType" ||
113
+ objectType?.kind === "typeParameterType" ||
114
+ objectType?.kind === "unknownType");
115
+ };
116
+ /**
117
+ * Whether to emit an extension method call using fluent instance syntax (receiver.Method(...))
118
+ * instead of explicit static invocation (Type.Method(receiver, ...)).
119
+ *
120
+ * Default: prefer static invocation to avoid relying on `using` directives and to avoid
121
+ * accidental binding to an instance member when a type has both an instance method and
122
+ * an extension method with the same name.
123
+ *
124
+ * Exception: certain toolchains (notably EF query precompilation) require the *syntax*
125
+ * of extension-method invocation so the analyzer can locate queries in user code.
126
+ */
127
+ const shouldEmitFluentExtensionCall = (bindingType) => {
128
+ // EF Core query precompilation requires fluent/extension syntax specifically for Queryable.
129
+ // Keep Enumerable as explicit static invocation by default to avoid accidental binding to
130
+ // instance methods on custom enumerable types.
131
+ if (bindingType.startsWith("System.Linq.Queryable"))
132
+ return true;
133
+ // EF Core query operators (Include/ThenInclude/AsNoTracking/etc.)
134
+ if (bindingType.startsWith("Microsoft.EntityFrameworkCore."))
135
+ return true;
136
+ return false;
137
+ };
138
+ const getTypeNamespace = (typeName) => {
139
+ const lastDot = typeName.lastIndexOf(".");
140
+ if (lastDot <= 0)
141
+ return undefined;
142
+ return typeName.slice(0, lastDot);
107
143
  };
108
144
  /**
109
145
  * Whether a C# type string is a builtin/keyword type (optionally nullable).
@@ -284,6 +320,60 @@ export const emitCall = (expr, context) => {
284
320
  const receiverExpr = expr.callee.object;
285
321
  const [receiverFrag, receiverContext] = emitExpression(receiverExpr, currentContext);
286
322
  currentContext = receiverContext;
323
+ // Some ecosystems (notably EF Core query precompilation) require fluent syntax
324
+ // so the tooling can locate queries in syntax trees. For those namespaces,
325
+ // emit `receiver.Method(...)` and add a `using` directive for the namespace.
326
+ if (shouldEmitFluentExtensionCall(binding.type)) {
327
+ const ns = getTypeNamespace(binding.type);
328
+ if (ns) {
329
+ currentContext.usings.add(ns);
330
+ }
331
+ // Handle generic type arguments
332
+ let typeArgsStr = "";
333
+ if (expr.typeArguments && expr.typeArguments.length > 0) {
334
+ const [typeArgs, typeContext] = emitTypeArguments(expr.typeArguments, currentContext);
335
+ typeArgsStr = typeArgs;
336
+ currentContext = typeContext;
337
+ }
338
+ // Get parameter types from IR (extracted from resolved signature in frontend)
339
+ const parameterTypes = expr.parameterTypes ?? [];
340
+ const args = [];
341
+ for (let i = 0; i < expr.arguments.length; i++) {
342
+ const arg = expr.arguments[i];
343
+ if (!arg)
344
+ continue;
345
+ const expectedType = parameterTypes[i];
346
+ if (arg.kind === "spread") {
347
+ const [spreadFrag, ctx] = emitExpression(arg.expression, currentContext);
348
+ args.push(`params ${spreadFrag.text}`);
349
+ currentContext = ctx;
350
+ }
351
+ else {
352
+ const castModifier = getPassingModifierFromCast(arg);
353
+ if (castModifier && isLValue(arg)) {
354
+ const [argFrag, ctx] = emitExpression(arg, currentContext);
355
+ args.push(`${castModifier} ${argFrag.text}`);
356
+ currentContext = ctx;
357
+ }
358
+ else {
359
+ const [argFrag, ctx] = emitExpression(arg, currentContext, expectedType);
360
+ const passingMode = expr.argumentPassing?.[i];
361
+ const prefix = passingMode && passingMode !== "value" && isLValue(arg)
362
+ ? `${passingMode} `
363
+ : "";
364
+ args.push(`${prefix}${argFrag.text}`);
365
+ currentContext = ctx;
366
+ }
367
+ }
368
+ }
369
+ const receiverText = formatPostfixExpressionText(receiverExpr, receiverFrag.text);
370
+ const op = expr.isOptional ? "?." : ".";
371
+ const baseCallText = `${receiverText}${op}${binding.member}${typeArgsStr}(${args.join(", ")})`;
372
+ const text = needsIntCast(expr, binding.member)
373
+ ? `(int)${baseCallText}`
374
+ : baseCallText;
375
+ return [{ text }, currentContext];
376
+ }
287
377
  let finalCalleeName = `global::${binding.type}.${binding.member}`;
288
378
  // Handle generic type arguments
289
379
  let typeArgsStr = "";
@@ -403,7 +493,12 @@ export const emitCall = (expr, context) => {
403
493
  }
404
494
  }
405
495
  }
406
- const calleeText = formatPostfixExpressionText(expr.callee, `${finalCalleeName}${typeArgsStr}`);
496
+ // For member-access calls, the receiver parenthesization is already handled inside
497
+ // `emitMemberAccess`. Wrapping the full `obj.Member` in parentheses can change meaning
498
+ // in C# (e.g., `(obj.Member)()` attempts to invoke a delegate rather than calling a method).
499
+ const calleeText = expr.callee.kind === "memberAccess"
500
+ ? `${finalCalleeName}${typeArgsStr}`
501
+ : formatPostfixExpressionText(expr.callee, `${finalCalleeName}${typeArgsStr}`);
407
502
  const callOp = expr.isOptional ? "?." : "";
408
503
  const callText = `${calleeText}${callOp}(${args.join(", ")})`;
409
504
  // Add cast if needed (e.g., Math.floor returning double but asserted as int)
@@ -1 +1 @@
1
- {"version":3,"file":"calls.js","sourceRoot":"","sources":["../../src/expressions/calls.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"calls.js","sourceRoot":"","sources":["../../src/expressions/calls.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,QAAQ,GAAG,CAAC,IAAkB,EAAW,EAAE;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC;AACpE,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,0BAA0B,GAAG,CACjC,IAAkB,EACgB,EAAE;IACpC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACvC,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC;IACnC,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC,CAAC,gCAAgC;IAEvE,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,oBAAoB,GAAG,CAC3B,MAAoB,EAC4B,EAAE;IAClD,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,IAAI,CAAC;IAChD,IAAI,CAAC,MAAM,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAEvC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC;IAE9C,mDAAmD;IACnD,IAAI,IAAI,KAAK,iCAAiC;QAAE,OAAO,IAAI,CAAC;IAE5D,kDAAkD;IAClD,IAAI,MAAM,KAAK,WAAW;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC3D,IAAI,MAAM,KAAK,aAAa;QAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IAE/D,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,gBAAgB,GAAG,CACvB,MAAoB,EAC4B,EAAE;IAClD,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,IAAI,CAAC;IAEhD,gDAAgD;IAChD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1B,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAElE,sBAAsB;IACtB,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC7B,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE1C,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IACzD,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IAEvD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,sBAAsB,GAAG,CAC7B,IAAqD,EACrD,OAAuB,EACd,EAAE;IACX,kFAAkF;IAClF,mDAAmD;IACnD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACtC,MAAM,aAAa,GAAG,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,aAAa,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YACnC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,kFAAkF;QAClF,mFAAmF;QACnF,mFAAmF;QACnF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;IAC5C,OAAO,CACL,UAAU,EAAE,IAAI,KAAK,eAAe;QACpC,UAAU,EAAE,IAAI,KAAK,WAAW;QAChC,UAAU,EAAE,IAAI,KAAK,kBAAkB;QACvC,UAAU,EAAE,IAAI,KAAK,WAAW;QAChC,UAAU,EAAE,IAAI,KAAK,eAAe;QACpC,UAAU,EAAE,IAAI,KAAK,aAAa;QAClC,UAAU,EAAE,IAAI,KAAK,mBAAmB;QACxC,UAAU,EAAE,IAAI,KAAK,aAAa,CACnC,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,6BAA6B,GAAG,CAAC,WAAmB,EAAW,EAAE;IACrE,4FAA4F;IAC5F,0FAA0F;IAC1F,+CAA+C;IAC/C,IAAI,WAAW,CAAC,UAAU,CAAC,uBAAuB,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjE,kEAAkE;IAClE,IAAI,WAAW,CAAC,UAAU,CAAC,gCAAgC,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1E,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAsB,EAAE;IAChE,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACnC,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAW,EAAE;IACvD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACpE,OAAO,CACL,IAAI,KAAK,QAAQ;QACjB,IAAI,KAAK,KAAK;QACd,IAAI,KAAK,MAAM;QACf,IAAI,KAAK,OAAO;QAChB,IAAI,KAAK,MAAM;QACf,IAAI,KAAK,OAAO;QAChB,IAAI,KAAK,MAAM;QACf,IAAI,KAAK,OAAO;QAChB,IAAI,KAAK,QAAQ;QACjB,IAAI,KAAK,OAAO;QAChB,IAAI,KAAK,QAAQ;QACjB,IAAI,KAAK,SAAS;QAClB,IAAI,KAAK,MAAM;QACf,IAAI,KAAK,MAAM;QACf,IAAI,KAAK,QAAQ;QACjB,IAAI,KAAK,MAAM,CAChB,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAAU,EAAE;IACrD,8BAA8B;IAC9B,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,uFAAuF;IACvF,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC;IACzC,CAAC;IAED,wFAAwF;IACxF,yBAAyB;IACzB,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC;QAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/C,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC;IACjD,CAAC;IAED,iFAAiF;IACjF,IAAI,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,+DAA+D;IAC/D,6CAA6C;IAC7C,wDAAwD;IACxD,OAAO,WAAW,OAAO,EAAE,CAAC;AAC9B,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAC1B,IAAwB,EACxB,OAAuB,EACjB,EAAE;IACR,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe;QAAE,OAAO;IAE7C,0DAA0D;IAC1D,gFAAgF;IAChF,oFAAoF;IACpF,qEAAqE;IACrE,IAAI,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC;QACrE,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC;QACpD,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;IACjD,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IAEhF,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;AAC/B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,YAAY,GAAG,CACnB,IAA6C,EAC7C,UAAkB,EACT,EAAE;IACX,yEAAyE;IACzE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACvC,IACE,CAAC,YAAY;QACb,YAAY,CAAC,IAAI,KAAK,eAAe;QACrC,YAAY,CAAC,IAAI,KAAK,KAAK,EAC3B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qDAAqD;IACrD,MAAM,0BAA0B,GAAG;QACjC,YAAY;QACZ,WAAW;QACX,YAAY;QACZ,UAAU;QACV,UAAU;QACV,WAAW;QACX,UAAU;QACV,UAAU;KACX,CAAC;IAEF,OAAO,0BAA0B,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,KAAK,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACzE,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG,CAC7B,IAA6C,EAC7C,OAAuB,EACvB,MAAmC,EACD,EAAE;IACpC,IAAI,cAAc,GAAG,OAAO,CAAC;IAE7B,+CAA+C;IAC/C,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3B,6DAA6D;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3C,mBAAmB,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,gDAAgD;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,OAAO,EAAE,CAAC;YACZ,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,yCAAyC;IACzC,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,iBAAiB,CAC/C,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;QACF,WAAW,GAAG,QAAQ,CAAC;QACvB,cAAc,GAAG,WAAW,CAAC;IAC/B,CAAC;IAED,iBAAiB;IACjB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACjC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YACzE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC3B,cAAc,GAAG,GAAG,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACxB,cAAc,GAAG,GAAG,CAAC;QACvB,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAEhC,MAAM,IAAI,GAAG,2CAA2C,MAAM,GAAG,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACnG,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,IAA6C,EAC7C,OAAuB,EACW,EAAE;IACpC,qDAAqD;IACrD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;IAED,8CAA8C;IAC9C,wDAAwD;IACxD,MAAM,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,yFAAyF;IACzF,+EAA+E;IAC/E,IACE,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc;QACnC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,iBAAiB;QAC5C,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5C,CAAC;QACD,IAAI,cAAc,GAAG,OAAO,CAAC;QAE7B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAExC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,cAAc,CACpD,YAAY,EACZ,cAAc,CACf,CAAC;QACF,cAAc,GAAG,eAAe,CAAC;QAEjC,+EAA+E;QAC/E,2EAA2E;QAC3E,6EAA6E;QAC7E,IAAI,6BAA6B,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,MAAM,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1C,IAAI,EAAE,EAAE,CAAC;gBACP,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC;YAED,gCAAgC;YAChC,IAAI,WAAW,GAAG,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,iBAAiB,CAC/C,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;gBACF,WAAW,GAAG,QAAQ,CAAC;gBACvB,cAAc,GAAG,WAAW,CAAC;YAC/B,CAAC;YAED,8EAA8E;YAC9E,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;YAEjD,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,CAAC,GAAG;oBAAE,SAAS;gBAEnB,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBAEvC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC1B,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;oBACzE,IAAI,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;oBACvC,cAAc,GAAG,GAAG,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,MAAM,YAAY,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;oBACrD,IAAI,YAAY,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;wBAClC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;wBAC3D,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;wBAC7C,cAAc,GAAG,GAAG,CAAC;oBACvB,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;wBACzE,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC9C,MAAM,MAAM,GACV,WAAW,IAAI,WAAW,KAAK,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC;4BACrD,CAAC,CAAC,GAAG,WAAW,GAAG;4BACnB,CAAC,CAAC,EAAE,CAAC;wBACT,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;wBACtC,cAAc,GAAG,GAAG,CAAC;oBACvB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,YAAY,GAAG,2BAA2B,CAC9C,YAAY,EACZ,YAAY,CAAC,IAAI,CAClB,CAAC;YACF,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;YACxC,MAAM,YAAY,GAAG,GAAG,YAAY,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;YAE/F,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC;gBAC7C,CAAC,CAAC,QAAQ,YAAY,EAAE;gBACxB,CAAC,CAAC,YAAY,CAAC;YACjB,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,eAAe,GAAG,WAAW,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAElE,gCAAgC;QAChC,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAChC,MAAM,CAAC,eAAe,EAAE,WAAW,CAAC,GAAG,uBAAuB,CAC5D,eAAe,EACf,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;gBACF,eAAe,GAAG,eAAe,CAAC;gBAClC,cAAc,GAAG,WAAW,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,iBAAiB,CAC/C,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;gBACF,WAAW,GAAG,QAAQ,CAAC;gBACvB,cAAc,GAAG,WAAW,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;QACjD,MAAM,IAAI,GAAa,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC,GAAG;gBAAE,SAAS;YAEnB,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YAEvC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1B,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;gBACzE,IAAI,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;gBACvC,cAAc,GAAG,GAAG,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;gBACrD,IAAI,YAAY,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAClC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;oBAC3D,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC7C,cAAc,GAAG,GAAG,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CACnC,GAAG,EACH,cAAc,EACd,YAAY,CACb,CAAC;oBACF,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;oBAC9C,MAAM,MAAM,GACV,WAAW,IAAI,WAAW,KAAK,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC;wBACrD,CAAC,CAAC,GAAG,WAAW,GAAG;wBACnB,CAAC,CAAC,EAAE,CAAC;oBACT,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBACtC,cAAc,GAAG,GAAG,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,GAAG,eAAe,GAAG,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAE5E,+EAA+E;QAC/E,6EAA6E;QAC7E,kDAAkD;QAClD,MAAM,QAAQ,GACZ,IAAI,CAAC,YAAY,EAAE,IAAI,KAAK,WAAW;YACrC,CAAC,CAAC,0CAA0C,YAAY,GAAG;YAC3D,CAAC,CAAC,YAAY,CAAC;QAEnB,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,eAAe,CAAC;YAC9C,CAAC,CAAC,QAAQ,QAAQ,EAAE;YACpB,CAAC,CAAC,QAAQ,CAAC;QACb,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;IACpC,CAAC;IAED,wBAAwB;IACxB,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,GAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc;QACjC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;QAChD,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,cAAc,GAAG,UAAU,CAAC;IAEhC,gCAAgC;IAChC,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,eAAe,GAAG,UAAU,CAAC,IAAI,CAAC;IAEtC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,qDAAqD;YACrD,0CAA0C;YAC1C,MAAM,CAAC,eAAe,EAAE,WAAW,CAAC,GAAG,uBAAuB,CAC5D,UAAU,CAAC,IAAI,EACf,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;YACF,eAAe,GAAG,eAAe,CAAC;YAClC,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,gDAAgD;YAChD,gCAAgC;YAChC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,iBAAiB,CAC/C,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;YACF,WAAW,GAAG,QAAQ,CAAC;YACvB,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;IAEjD,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG;YAAE,SAAS,CAAC,gDAAgD;QAEpE,2DAA2D;QAC3D,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QAEvC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,0BAA0B;YAC1B,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YACzE,IAAI,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,cAAc,GAAG,GAAG,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,wFAAwF;YACxF,MAAM,YAAY,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;YAErD,IAAI,YAAY,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,yEAAyE;gBACzE,4CAA4C;gBAC5C,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;gBAC3D,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,cAAc,GAAG,GAAG,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CACnC,GAAG,EACH,cAAc,EACd,YAAY,CACb,CAAC;gBACF,yEAAyE;gBACzE,yEAAyE;gBACzE,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC9C,MAAM,MAAM,GACV,WAAW,IAAI,WAAW,KAAK,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC;oBACrD,CAAC,CAAC,GAAG,WAAW,GAAG;oBACnB,CAAC,CAAC,EAAE,CAAC;gBACT,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBACtC,cAAc,GAAG,GAAG,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,mFAAmF;IACnF,uFAAuF;IACvF,6FAA6F;IAC7F,MAAM,UAAU,GACd,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc;QACjC,CAAC,CAAC,GAAG,eAAe,GAAG,WAAW,EAAE;QACpC,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,eAAe,GAAG,WAAW,EAAE,CAAC,CAAC;IAEnF,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C,MAAM,QAAQ,GAAG,GAAG,UAAU,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAE9D,6EAA6E;IAC7E,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,eAAe,CAAC;QAC9C,CAAC,CAAC,QAAQ,QAAQ,EAAE;QACpB,CAAC,CAAC,QAAQ,CAAC;IAEb,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,iCAAiC,GAAG,CACxC,IAA4C,EACnC,EAAE;IACX,8DAA8D;IAC9D,qFAAqF;IACrF,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACvC,IAAI,YAAY,EAAE,IAAI,KAAK,eAAe,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IACnC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,iCAAiC,CAAC,EAAE,CAAC;QAC7E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,sCAAsC;IACtC,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uCAAuC;IACvC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACrE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0DAA0D;IAC1D,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4EAA4E;IAC5E,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QACnC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,6BAA6B,GAAG,CACpC,IAA4C,EAC5C,OAAuB,EACW,EAAE;IACpC,IAAI,cAAc,GAAG,OAAO,CAAC;IAE7B,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAChF,cAAc,GAAG,aAAa,CAAC;IAE/B,4DAA4D;IAC5D,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;IACrC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,MAAM,CAAC,eAAe,EAAE,WAAW,CAAC,GAAG,uBAAuB,CAC5D,UAAU,CAAC,IAAI,EACf,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;YACF,cAAc,GAAG,eAAe,CAAC;YACjC,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,iBAAiB,CAC/C,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;YACF,WAAW,GAAG,QAAQ,CAAC;YACvB,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAGpC,CAAC;IAEF,oBAAoB;IACpB,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,OAAO,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC5C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,SAAS,CAAC,uCAAuC;QACnD,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,+DAA+D;YAC/D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YACtE,OAAO,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAChE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC7B,cAAc,GAAG,GAAG,CAAC;QACvB,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,MAAM,IAAI,GACR,QAAQ,CAAC,MAAM,KAAK,CAAC;QACnB,CAAC,CAAC,OAAO,cAAc,GAAG,WAAW,IAAI;QACzC,CAAC,CAAC,OAAO,cAAc,GAAG,WAAW,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IAEvE,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,sBAAsB,GAAG,CAC7B,IAA4C,EACnC,EAAE;IACX,wCAAwC;IACxC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,sCAAsC;IACtC,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,oBAAoB,GAAG,CAC3B,IAA4C,EAC5C,OAAuB,EACW,EAAE;IACpC,IAAI,cAAc,GAAG,OAAO,CAAC;IAE7B,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC;IACpC,MAAM,WAAW,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,cAAc,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,CAAC,cAAc,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC5E,cAAc,GAAG,WAAW,CAAC;IAE7B,iCAAiC;IACjC,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC,6CAA6C;IAChE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YACxE,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;YACxB,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,cAAc,IAAI,OAAO,GAAG,CAAC;IACjD,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,IAA4C,EAC5C,OAAuB,EACW,EAAE;IACpC,iDAAiD;IACjD,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,yDAAyD;IACzD,IAAI,iCAAiC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,OAAO,6BAA6B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtE,IAAI,cAAc,GAAG,UAAU,CAAC;IAEhC,gCAAgC;IAChC,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;IAErC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,oDAAoD;YACpD,8CAA8C;YAC9C,MAAM,CAAC,eAAe,EAAE,WAAW,CAAC,GAAG,uBAAuB,CAC5D,UAAU,CAAC,IAAI,EACf,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;YACF,cAAc,GAAG,eAAe,CAAC;YACjC,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,+BAA+B;YAC/B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,iBAAiB,CAC/C,IAAI,CAAC,aAAa,EAClB,cAAc,CACf,CAAC;YACF,WAAW,GAAG,QAAQ,CAAC;YACvB,cAAc,GAAG,WAAW,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;IACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YACzE,IAAI,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;YACvC,cAAc,GAAG,GAAG,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;YACzE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACxB,cAAc,GAAG,GAAG,CAAC;QACvB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,cAAc,GAAG,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACvE,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;AACpC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"identifiers.d.ts","sourceRoot":"","sources":["../../src/expressions/identifiers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI7D;;GAEG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,EACnD,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CA0EjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAU,SAAS,MAAM,EAAE,EAC3B,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CAezB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAClC,UAAU,MAAM,EAChB,UAAU,SAAS,MAAM,EAAE,EAC3B,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CAczB,CAAC"}
1
+ {"version":3,"file":"identifiers.d.ts","sourceRoot":"","sources":["../../src/expressions/identifiers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI7D;;GAEG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,EACnD,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CAgFjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAU,SAAS,MAAM,EAAE,EAC3B,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CAezB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAClC,UAAU,MAAM,EAChB,UAAU,SAAS,MAAM,EAAE,EAC3B,SAAS,cAAc,KACtB,CAAC,MAAM,EAAE,cAAc,CAczB,CAAC"}
@@ -11,6 +11,11 @@ export const emitIdentifier = (expr, context) => {
11
11
  if (expr.name === "undefined") {
12
12
  return [{ text: "default" }, context];
13
13
  }
14
+ // TypeScript `super` maps to C# `base` for member access/calls.
15
+ // (`super()` constructor calls are handled separately in constructor emission.)
16
+ if (expr.name === "super") {
17
+ return [{ text: "base" }, context];
18
+ }
14
19
  // Narrowing remap for union type guards
15
20
  // - "rename": account -> account__1_3 (if-statements with temp var)
16
21
  // - "expr": account -> (account.As1()) (ternary expressions, inline)
@@ -1 +1 @@
1
- {"version":3,"file":"identifiers.js","sourceRoot":"","sources":["../../src/expressions/identifiers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"identifiers.js","sourceRoot":"","sources":["../../src/expressions/identifiers.ts"],"names":[],"mappings":"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"}
@@ -278,6 +278,92 @@ describe("Expression Emission", () => {
278
278
  expect(result).to.include("global::Tsonic.JSRuntime.String.split(path, \"/\")");
279
279
  expect(result).not.to.include("path.split");
280
280
  });
281
+ it("should emit fluent LINQ extension method calls (required for EF query precompilation)", () => {
282
+ const module = {
283
+ kind: "module",
284
+ filePath: "/src/test.ts",
285
+ namespace: "MyApp",
286
+ className: "test",
287
+ isStaticContainer: true,
288
+ imports: [],
289
+ body: [
290
+ {
291
+ kind: "expressionStatement",
292
+ expression: {
293
+ kind: "call",
294
+ callee: {
295
+ kind: "memberAccess",
296
+ object: {
297
+ kind: "identifier",
298
+ name: "q",
299
+ inferredType: { kind: "primitiveType", name: "boolean" }, // doesn't matter; only needs to be instance-style
300
+ },
301
+ property: "Count",
302
+ isComputed: false,
303
+ isOptional: false,
304
+ memberBinding: {
305
+ assembly: "System.Linq",
306
+ type: "System.Linq.Queryable",
307
+ member: "Count",
308
+ isExtensionMethod: true,
309
+ },
310
+ },
311
+ arguments: [],
312
+ isOptional: false,
313
+ },
314
+ },
315
+ ],
316
+ exports: [],
317
+ };
318
+ const result = emitModule(module);
319
+ // Fluent invocation + namespace using.
320
+ expect(result).to.include("using System.Linq;");
321
+ expect(result).to.include("q.Count()");
322
+ // Must not emit nested/static Queryable.* calls (EF query precompiler flags them as "dynamic").
323
+ expect(result).not.to.include("System.Linq.Queryable.Count");
324
+ });
325
+ it("should preserve logical operator grouping with parentheses", () => {
326
+ const module = {
327
+ kind: "module",
328
+ filePath: "/src/test.ts",
329
+ namespace: "MyApp",
330
+ className: "test",
331
+ isStaticContainer: true,
332
+ imports: [],
333
+ body: [
334
+ {
335
+ kind: "expressionStatement",
336
+ expression: {
337
+ kind: "logical",
338
+ operator: "&&",
339
+ left: {
340
+ kind: "identifier",
341
+ name: "a",
342
+ inferredType: { kind: "primitiveType", name: "boolean" },
343
+ },
344
+ right: {
345
+ kind: "logical",
346
+ operator: "||",
347
+ left: {
348
+ kind: "identifier",
349
+ name: "b",
350
+ inferredType: { kind: "primitiveType", name: "boolean" },
351
+ },
352
+ right: {
353
+ kind: "identifier",
354
+ name: "c",
355
+ inferredType: { kind: "primitiveType", name: "boolean" },
356
+ },
357
+ },
358
+ },
359
+ },
360
+ ],
361
+ exports: [],
362
+ };
363
+ const result = emitModule(module);
364
+ // Without parentheses this becomes a && b || c, which changes meaning.
365
+ expect(result).to.include("a && (b || c)");
366
+ });
281
367
  it("should unwrap nullable value types when a non-nullable value is expected", () => {
282
368
  const module = {
283
369
  kind: "module",
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/expressions/index.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/expressions/index.test.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ describe("emitLiteral", () => {
15
15
  isStatic: false,
16
16
  isAsync: false,
17
17
  typeParameters,
18
+ usings: new Set(),
18
19
  });
19
20
  describe("null literal", () => {
20
21
  it("emits 'null' when expectedType is not provided", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"literals.test.js","sourceRoot":"","sources":["../../src/expressions/literals.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"literals.test.js","sourceRoot":"","sources":["../../src/expressions/literals.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../src/expressions/operators.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,EAAa,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAmB,MAAM,aAAa,CAAC;AAmH9E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,EAC/C,SAAS,cAAc,EACvB,gBAAgB,MAAM,KACrB,CAAC,cAAc,EAAE,cAAc,CAqSjC,CAAC;AAUF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,GACtB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,EAChD,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CA6BjC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS,GACpB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,EAC9C,SAAS,cAAc,EACvB,gBAAgB,MAAM,KACrB,CAAC,cAAc,EAAE,cAAc,CAoCjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,EAC/C,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CAyBjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,EACnD,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CAgHjC,CAAC;AAwEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,GAC1B,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC,EACpD,SAAS,cAAc,EACvB,eAAe,MAAM,KACpB,CAAC,cAAc,EAAE,cAAc,CAwEjC,CAAC"}
1
+ {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../src/expressions/operators.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,EAAa,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAmB,MAAM,aAAa,CAAC;AAoH9E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,EAC/C,SAAS,cAAc,EACvB,gBAAgB,MAAM,KACrB,CAAC,cAAc,EAAE,cAAc,CAmTjC,CAAC;AAUF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,GACtB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,EAChD,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CA0CjC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS,GACpB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,EAC9C,SAAS,cAAc,EACvB,gBAAgB,MAAM,KACrB,CAAC,cAAc,EAAE,cAAc,CAoCjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,EAC/C,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CAyBjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC,EACnD,SAAS,cAAc,KACtB,CAAC,cAAc,EAAE,cAAc,CAgHjC,CAAC;AAwEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,GAC1B,MAAM,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC,EACpD,SAAS,cAAc,EACvB,eAAe,MAAM,KACpB,CAAC,cAAc,EAAE,cAAc,CAwEjC,CAAC"}
@@ -32,7 +32,8 @@ const hasInt32Proof = (expr) => {
32
32
  const getPrecedence = (operator) => {
33
33
  const precedences = {
34
34
  "||": 5,
35
- "??": 5,
35
+ // C# precedence: `??` binds less tightly than `||` / `&&` but more tightly than `?:`.
36
+ "??": 4,
36
37
  "&&": 6,
37
38
  "|": 7,
38
39
  "^": 8,
@@ -213,7 +214,8 @@ export const emitBinary = (expr, context, _expectedType) => {
213
214
  return [{ text: "false", precedence: parentPrecedence }, rhsCtx];
214
215
  }
215
216
  const checks = matchingMembers.map((n) => `${rhsText}.Is${n}()`).join(" || ");
216
- return [{ text: checks, precedence: parentPrecedence }, rhsCtx];
217
+ // Lowering emits an `||` chain; wrap to preserve grouping in any surrounding expression.
218
+ return [{ text: `(${checks})`, precedence: 16 }, rhsCtx];
217
219
  }
218
220
  // Dictionary<K,V>: `"k" in dict` → dict.ContainsKey("k")
219
221
  if (resolvedRhs.kind === "dictionaryType") {
@@ -229,12 +231,12 @@ export const emitBinary = (expr, context, _expectedType) => {
229
231
  }
230
232
  throw new Error("ICE: Unsupported `in` operator. Only union shape guards and Dictionary<string, T> membership are supported.");
231
233
  }
232
- // Handle typeof operator specially
234
+ // Handle instanceof operator specially
233
235
  if (expr.operator === "instanceof") {
234
236
  const [leftFrag, leftContext] = emitExpression(expr.left, context);
235
237
  const [rightFrag, rightContext] = emitExpression(expr.right, leftContext);
236
238
  const text = `${leftFrag.text} is ${rightFrag.text}`;
237
- return [{ text, precedence: 7 }, rightContext];
239
+ return [{ text, precedence: parentPrecedence }, rightContext];
238
240
  }
239
241
  // CHAR VS STRING COMPARISON FIX:
240
242
  // In C#, string[int] returns char, but in TypeScript it returns string.
@@ -326,9 +328,22 @@ export const emitBinary = (expr, context, _expectedType) => {
326
328
  }
327
329
  const needsObjectCast = bareTypeParamName !== undefined && typeParamConstraint === "unconstrained";
328
330
  const nullOp = op === "==" ? "== null" : "!= null";
331
+ const nullOperandText = (() => {
332
+ switch (nonNullishExpr.kind) {
333
+ case "identifier":
334
+ case "memberAccess":
335
+ case "call":
336
+ case "new":
337
+ case "this":
338
+ case "literal":
339
+ return nonNullishFrag.text;
340
+ default:
341
+ return `(${nonNullishFrag.text})`;
342
+ }
343
+ })();
329
344
  const text = needsObjectCast
330
345
  ? `((global::System.Object)(${nonNullishFrag.text})) ${nullOp}`
331
- : `${nonNullishFrag.text} ${nullOp}`;
346
+ : `${nullOperandText} ${nullOp}`;
332
347
  return [{ text, precedence: getPrecedence(expr.operator) }, resultContext];
333
348
  }
334
349
  // Standard emission path
@@ -377,6 +392,7 @@ export const emitLogical = (expr, context) => {
377
392
  const operator = expr.operator === "||" && !isBooleanType(expr.left.inferredType)
378
393
  ? "??"
379
394
  : expr.operator;
395
+ const parentPrecedence = getPrecedence(operator);
380
396
  // If the left operand is a non-nullable value type, `??` is invalid in C# and the
381
397
  // fallback is unreachable. Emit only the left operand.
382
398
  if (operator === "??" &&
@@ -391,8 +407,15 @@ export const emitLogical = (expr, context) => {
391
407
  return [leftFrag, leftContext];
392
408
  }
393
409
  const [rightFrag, rightContext] = emitExpression(expr.right, leftContext);
394
- const text = `${leftFrag.text} ${operator} ${rightFrag.text}`;
395
- return [{ text, precedence: getPrecedence(expr.operator) }, rightContext];
410
+ const leftText = leftFrag.precedence !== undefined && leftFrag.precedence < parentPrecedence
411
+ ? `(${leftFrag.text})`
412
+ : leftFrag.text;
413
+ const rightText = rightFrag.precedence !== undefined &&
414
+ rightFrag.precedence <= parentPrecedence
415
+ ? `(${rightFrag.text})`
416
+ : rightFrag.text;
417
+ const text = `${leftText} ${operator} ${rightText}`;
418
+ return [{ text, precedence: getPrecedence(operator) }, rightContext];
396
419
  };
397
420
  /**
398
421
  * Emit a unary operator expression (-, +, !, ~, typeof, void, delete)
@@ -481,7 +504,7 @@ export const emitAssignment = (expr, context) => {
481
504
  const [rightFrag, rightContext] = emitExpression(expr.right, indexContext);
482
505
  // Use native CLR indexer
483
506
  const text = `${objectFrag.text}[${indexFrag.text}] = ${rightFrag.text}`;
484
- return [{ text, precedence: 3 }, rightContext];
507
+ return [{ text, precedence: 2 }, rightContext];
485
508
  }
486
509
  // Left side can be an expression or a pattern (for destructuring)
487
510
  const isPattern = "kind" in expr.left &&
@@ -495,7 +518,7 @@ export const emitAssignment = (expr, context) => {
495
518
  const [rightFrag, rightContext] = emitExpression(expr.right, context);
496
519
  // Use lowerAssignmentPattern to generate the destructuring expression
497
520
  const result = lowerAssignmentPattern(pattern, rightFrag.text, expr.right.inferredType, rightContext);
498
- return [{ text: result.expression, precedence: 3 }, result.context];
521
+ return [{ text: result.expression, precedence: 2 }, result.context];
499
522
  }
500
523
  // Standard assignment (expression on left side)
501
524
  let leftText;
@@ -540,7 +563,7 @@ export const emitAssignment = (expr, context) => {
540
563
  // Pass LHS type as expected type to RHS for proper integer handling
541
564
  const [rightFrag, rightContext] = emitExpression(expr.right, leftContext, leftType);
542
565
  const text = `${leftText} ${expr.operator} ${rightFrag.text}`;
543
- return [{ text, precedence: 3 }, rightContext];
566
+ return [{ text, precedence: 2 }, rightContext];
544
567
  };
545
568
  const tryResolveTernaryGuard = (condition, context) => {
546
569
  // Check for direct call: isUser(x)
@@ -631,7 +654,7 @@ export const emitConditional = (expr, context, expectedType) => {
631
654
  ...falseContext,
632
655
  narrowedBindings: context.narrowedBindings,
633
656
  };
634
- return [{ text, precedence: 4 }, finalContext];
657
+ return [{ text, precedence: 3 }, finalContext];
635
658
  }
636
659
  // Standard ternary emission (no narrowing)
637
660
  const [condText, condContext] = emitBooleanCondition(expr.condition, (e, ctx) => emitExpression(e, ctx), context);
@@ -639,6 +662,6 @@ export const emitConditional = (expr, context, expectedType) => {
639
662
  const [trueFrag, trueContext] = emitExpression(expr.whenTrue, condContext, branchExpectedType);
640
663
  const [falseFrag, falseContext] = emitExpression(expr.whenFalse, trueContext, branchExpectedType);
641
664
  const text = `${condText} ? ${trueFrag.text} : ${falseFrag.text}`;
642
- return [{ text, precedence: 4 }, falseContext];
665
+ return [{ text, precedence: 3 }, falseContext];
643
666
  };
644
667
  //# sourceMappingURL=operators.js.map