@tsonic/frontend 0.0.38 → 0.0.39
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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/ir/binding-resolution.test.js +91 -0
- package/dist/ir/binding-resolution.test.js.map +1 -1
- package/dist/ir/bindings-disambiguation.test.js +9 -0
- package/dist/ir/bindings-disambiguation.test.js.map +1 -1
- package/dist/ir/converters/expressions/access.d.ts.map +1 -1
- package/dist/ir/converters/expressions/access.js +14 -24
- package/dist/ir/converters/expressions/access.js.map +1 -1
- package/dist/ir/converters/expressions/calls.d.ts +2 -2
- package/dist/ir/converters/expressions/calls.d.ts.map +1 -1
- package/dist/ir/converters/expressions/calls.js +133 -12
- package/dist/ir/converters/expressions/calls.js.map +1 -1
- package/dist/ir/converters/statements/declarations/classes/orchestrator.d.ts.map +1 -1
- package/dist/ir/converters/statements/declarations/classes/orchestrator.js +4 -2
- package/dist/ir/converters/statements/declarations/classes/orchestrator.js.map +1 -1
- package/dist/ir/converters/statements/helpers.d.ts +7 -0
- package/dist/ir/converters/statements/helpers.d.ts.map +1 -1
- package/dist/ir/converters/statements/helpers.js +12 -0
- package/dist/ir/converters/statements/helpers.js.map +1 -1
- package/dist/ir/expression-converter.d.ts.map +1 -1
- package/dist/ir/expression-converter.js +4 -3
- package/dist/ir/expression-converter.js.map +1 -1
- package/dist/ir/type-system/type-system.d.ts +12 -1
- package/dist/ir/type-system/type-system.d.ts.map +1 -1
- package/dist/ir/type-system/type-system.js +161 -11
- package/dist/ir/type-system/type-system.js.map +1 -1
- package/dist/ir/types/expressions.d.ts +19 -1
- package/dist/ir/types/expressions.d.ts.map +1 -1
- package/dist/ir/types/index.d.ts +1 -1
- package/dist/ir/types/index.d.ts.map +1 -1
- package/dist/ir/types/index.js.map +1 -1
- package/dist/ir/types.d.ts +1 -1
- package/dist/ir/types.d.ts.map +1 -1
- package/dist/ir/types.js.map +1 -1
- package/dist/ir/validation/anonymous-type-lowering-pass.d.ts.map +1 -1
- package/dist/ir/validation/anonymous-type-lowering-pass.js +6 -0
- package/dist/ir/validation/anonymous-type-lowering-pass.js.map +1 -1
- package/dist/ir/validation/numeric-proof-pass.d.ts.map +1 -1
- package/dist/ir/validation/numeric-proof-pass.js +2 -0
- package/dist/ir/validation/numeric-proof-pass.js.map +1 -1
- package/dist/ir/validation/soundness-gate.d.ts.map +1 -1
- package/dist/ir/validation/soundness-gate.js +9 -3
- package/dist/ir/validation/soundness-gate.js.map +1 -1
- package/dist/types/diagnostic.d.ts +1 -1
- package/dist/types/diagnostic.d.ts.map +1 -1
- package/dist/validation/core-intrinsics.d.ts.map +1 -1
- package/dist/validation/core-intrinsics.js +4 -0
- package/dist/validation/core-intrinsics.js.map +1 -1
- package/package.json +1 -1
|
@@ -7,6 +7,65 @@
|
|
|
7
7
|
import * as ts from "typescript";
|
|
8
8
|
import { getSourceSpan, extractTypeArguments, checkIfRequiresSpecialization, } from "./helpers.js";
|
|
9
9
|
import { convertExpression } from "../../expression-converter.js";
|
|
10
|
+
import { createDiagnostic } from "../../../types/diagnostic.js";
|
|
11
|
+
/**
|
|
12
|
+
* Unwrap call-site argument modifier markers.
|
|
13
|
+
*
|
|
14
|
+
* @tsonic/core/lang.js exports compile-time-only intrinsics:
|
|
15
|
+
* - out(x) → emit `out x` at the call site
|
|
16
|
+
* - ref(x) → emit `ref x`
|
|
17
|
+
* - inref(x) → emit `in x`
|
|
18
|
+
*
|
|
19
|
+
* These markers must be erased by the compiler and must never reach emission as
|
|
20
|
+
* normal calls.
|
|
21
|
+
*/
|
|
22
|
+
const unwrapCallSiteArgumentModifier = (expr) => {
|
|
23
|
+
// Unwrap parentheses first (out((x)) etc).
|
|
24
|
+
let current = expr;
|
|
25
|
+
while (ts.isParenthesizedExpression(current)) {
|
|
26
|
+
current = current.expression;
|
|
27
|
+
}
|
|
28
|
+
if (!ts.isCallExpression(current))
|
|
29
|
+
return { expression: expr };
|
|
30
|
+
if (!ts.isIdentifier(current.expression))
|
|
31
|
+
return { expression: expr };
|
|
32
|
+
const name = current.expression.text;
|
|
33
|
+
if (name !== "out" && name !== "ref" && name !== "inref") {
|
|
34
|
+
return { expression: expr };
|
|
35
|
+
}
|
|
36
|
+
// Markers are non-generic and take exactly one argument.
|
|
37
|
+
if (current.typeArguments && current.typeArguments.length > 0) {
|
|
38
|
+
return { expression: expr };
|
|
39
|
+
}
|
|
40
|
+
if (current.arguments.length !== 1) {
|
|
41
|
+
return { expression: expr };
|
|
42
|
+
}
|
|
43
|
+
const inner = current.arguments[0];
|
|
44
|
+
if (!inner)
|
|
45
|
+
return { expression: expr };
|
|
46
|
+
const modifier = name === "inref" ? "in" : name;
|
|
47
|
+
return { expression: inner, modifier };
|
|
48
|
+
};
|
|
49
|
+
const applyCallSiteArgumentModifiers = (base, overrides, argCount, ctx, node) => {
|
|
50
|
+
const hasOverrides = overrides.some((m) => m !== undefined);
|
|
51
|
+
if (!hasOverrides)
|
|
52
|
+
return base;
|
|
53
|
+
const passing = base?.slice(0, argCount) ?? Array(argCount).fill("value");
|
|
54
|
+
for (let i = 0; i < argCount; i++) {
|
|
55
|
+
const override = overrides[i];
|
|
56
|
+
if (!override)
|
|
57
|
+
continue;
|
|
58
|
+
const existing = passing[i];
|
|
59
|
+
// If we have a resolved signature, call-site modifiers must match it exactly.
|
|
60
|
+
// (We do not currently use call-site modifiers to influence overload resolution.)
|
|
61
|
+
if (base !== undefined && existing !== override) {
|
|
62
|
+
ctx.diagnostics.push(createDiagnostic("TSN7444", "error", `Call-site passing modifier '${override}' conflicts with resolved signature (expected '${existing}' at argument ${i}).`, getSourceSpan(node), "Remove the call-site modifier, or call the correct overload that matches ref/out/in."));
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
passing[i] = override;
|
|
66
|
+
}
|
|
67
|
+
return passing;
|
|
68
|
+
};
|
|
10
69
|
/**
|
|
11
70
|
* Extract argument passing modes from resolved signature.
|
|
12
71
|
* Returns array aligned with arguments, indicating ref/out/in/value for each.
|
|
@@ -421,6 +480,26 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
421
480
|
sourceSpan: getSourceSpan(node),
|
|
422
481
|
};
|
|
423
482
|
}
|
|
483
|
+
// Check for defaultof<T>() - language intrinsic for default value.
|
|
484
|
+
// defaultof<T>() compiles to C#: default(T)
|
|
485
|
+
if (ts.isIdentifier(node.expression) &&
|
|
486
|
+
node.expression.text === "defaultof" &&
|
|
487
|
+
node.typeArguments &&
|
|
488
|
+
node.typeArguments.length === 1 &&
|
|
489
|
+
node.arguments.length === 0) {
|
|
490
|
+
const targetTypeNode = node.typeArguments[0];
|
|
491
|
+
if (!targetTypeNode) {
|
|
492
|
+
throw new Error("ICE: defaultof requires exactly 1 type argument");
|
|
493
|
+
}
|
|
494
|
+
const typeSystem = ctx.typeSystem;
|
|
495
|
+
const targetType = typeSystem.typeFromSyntax(ctx.binding.captureTypeSyntax(targetTypeNode));
|
|
496
|
+
return {
|
|
497
|
+
kind: "defaultof",
|
|
498
|
+
targetType,
|
|
499
|
+
inferredType: targetType,
|
|
500
|
+
sourceSpan: getSourceSpan(node),
|
|
501
|
+
};
|
|
502
|
+
}
|
|
424
503
|
// Check for trycast<T>(x) - special intrinsic for safe casting
|
|
425
504
|
// trycast<T>(x) compiles to C#: x as T (safe cast, returns null on failure)
|
|
426
505
|
if (ts.isIdentifier(node.expression) &&
|
|
@@ -495,6 +574,7 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
495
574
|
const typeSystem = ctx.typeSystem;
|
|
496
575
|
const sigId = ctx.binding.resolveCallSignature(node);
|
|
497
576
|
const argumentCount = node.arguments.length;
|
|
577
|
+
const callSiteArgModifiers = new Array(argumentCount).fill(undefined);
|
|
498
578
|
const explicitTypeArgs = node.typeArguments
|
|
499
579
|
? node.typeArguments.map((ta) => typeSystem.typeFromSyntax(ctx.binding.captureTypeSyntax(ta)))
|
|
500
580
|
: undefined;
|
|
@@ -532,8 +612,13 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
532
612
|
});
|
|
533
613
|
continue;
|
|
534
614
|
}
|
|
535
|
-
|
|
615
|
+
const unwrapped = unwrapCallSiteArgumentModifier(arg);
|
|
616
|
+
if (unwrapped.modifier) {
|
|
617
|
+
callSiteArgModifiers[i] = unwrapped.modifier;
|
|
618
|
+
}
|
|
619
|
+
args.push(convertExpression(unwrapped.expression, ctx, expectedType));
|
|
536
620
|
}
|
|
621
|
+
const argumentPassing = applyCallSiteArgumentModifiers(extractArgumentPassing(node, ctx), callSiteArgModifiers, argumentCount, ctx, node);
|
|
537
622
|
return {
|
|
538
623
|
kind: "call",
|
|
539
624
|
callee,
|
|
@@ -543,7 +628,7 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
543
628
|
sourceSpan: getSourceSpan(node),
|
|
544
629
|
typeArguments,
|
|
545
630
|
requiresSpecialization,
|
|
546
|
-
argumentPassing
|
|
631
|
+
argumentPassing,
|
|
547
632
|
parameterTypes: paramTypesForArgs,
|
|
548
633
|
};
|
|
549
634
|
}
|
|
@@ -595,13 +680,17 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
595
680
|
};
|
|
596
681
|
continue;
|
|
597
682
|
}
|
|
598
|
-
|
|
683
|
+
const unwrapped = unwrapCallSiteArgumentModifier(arg);
|
|
684
|
+
if (unwrapped.modifier) {
|
|
685
|
+
callSiteArgModifiers[index] = unwrapped.modifier;
|
|
686
|
+
}
|
|
687
|
+
if (shouldDeferLambdaForInference(unwrapped.expression)) {
|
|
599
688
|
// Defer *untyped* lambda conversion until after we infer generic type args
|
|
600
689
|
// from other arguments. Explicitly typed lambdas are safe to convert early
|
|
601
690
|
// and often provide the only deterministic inference signal.
|
|
602
691
|
continue;
|
|
603
692
|
}
|
|
604
|
-
const converted = convertExpression(
|
|
693
|
+
const converted = convertExpression(unwrapped.expression, ctx, expectedType);
|
|
605
694
|
argsWorking[index] = converted;
|
|
606
695
|
argTypesForInference[index] = converted.inferredType;
|
|
607
696
|
}
|
|
@@ -624,7 +713,11 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
624
713
|
continue;
|
|
625
714
|
if (ts.isSpreadElement(arg))
|
|
626
715
|
continue;
|
|
627
|
-
|
|
716
|
+
const unwrapped = unwrapCallSiteArgumentModifier(arg);
|
|
717
|
+
if (unwrapped.modifier) {
|
|
718
|
+
callSiteArgModifiers[index] = unwrapped.modifier;
|
|
719
|
+
}
|
|
720
|
+
if (!isLambdaArg(unwrapped.expression))
|
|
628
721
|
continue;
|
|
629
722
|
const expectedType = parameterTypesForLambdaContext?.[index];
|
|
630
723
|
const lambdaExpectedType = expectedType?.kind === "functionType"
|
|
@@ -632,7 +725,7 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
632
725
|
: expectedType
|
|
633
726
|
? typeSystem.delegateToFunctionType(expectedType) ?? expectedType
|
|
634
727
|
: undefined;
|
|
635
|
-
argsWorking[index] = convertExpression(
|
|
728
|
+
argsWorking[index] = convertExpression(unwrapped.expression, ctx, lambdaExpectedType);
|
|
636
729
|
}
|
|
637
730
|
const convertedArgs = argsWorking.map((a) => {
|
|
638
731
|
if (!a) {
|
|
@@ -657,6 +750,7 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
657
750
|
(finalResolved
|
|
658
751
|
? finalResolved.parameterModes.slice(0, node.arguments.length)
|
|
659
752
|
: extractArgumentPassing(node, ctx));
|
|
753
|
+
const argumentPassingWithOverrides = applyCallSiteArgumentModifiers(argumentPassing, callSiteArgModifiers, argumentCount, ctx, node);
|
|
660
754
|
const narrowing = (() => {
|
|
661
755
|
const pred = finalResolved?.typePredicate;
|
|
662
756
|
if (!pred)
|
|
@@ -680,7 +774,7 @@ export const convertCallExpression = (node, ctx) => {
|
|
|
680
774
|
sourceSpan: getSourceSpan(node),
|
|
681
775
|
typeArguments,
|
|
682
776
|
requiresSpecialization,
|
|
683
|
-
argumentPassing,
|
|
777
|
+
argumentPassing: argumentPassingWithOverrides,
|
|
684
778
|
parameterTypes,
|
|
685
779
|
narrowing,
|
|
686
780
|
};
|
|
@@ -707,6 +801,7 @@ export const convertNewExpression = (node, ctx) => {
|
|
|
707
801
|
const typeSystem = ctx.typeSystem;
|
|
708
802
|
const sigId = ctx.binding.resolveConstructorSignature(node);
|
|
709
803
|
const argumentCount = node.arguments?.length ?? 0;
|
|
804
|
+
const callSiteArgModifiers = new Array(argumentCount).fill(undefined);
|
|
710
805
|
// Extract explicit type arguments from call site
|
|
711
806
|
const explicitTypeArgs = node.typeArguments
|
|
712
807
|
? node.typeArguments.map((ta) => typeSystem.typeFromSyntax(ctx.binding.captureTypeSyntax(ta)))
|
|
@@ -746,11 +841,15 @@ export const convertNewExpression = (node, ctx) => {
|
|
|
746
841
|
};
|
|
747
842
|
continue;
|
|
748
843
|
}
|
|
749
|
-
|
|
844
|
+
const unwrapped = unwrapCallSiteArgumentModifier(arg);
|
|
845
|
+
if (unwrapped.modifier) {
|
|
846
|
+
callSiteArgModifiers[index] = unwrapped.modifier;
|
|
847
|
+
}
|
|
848
|
+
if (isLambdaArg(unwrapped.expression)) {
|
|
750
849
|
// Defer lambda conversion until after generic type arg inference
|
|
751
850
|
continue;
|
|
752
851
|
}
|
|
753
|
-
const converted = convertExpression(
|
|
852
|
+
const converted = convertExpression(unwrapped.expression, ctx, expectedType);
|
|
754
853
|
argsWorking[index] = converted;
|
|
755
854
|
argTypesForInference[index] = converted.inferredType;
|
|
756
855
|
}
|
|
@@ -773,7 +872,11 @@ export const convertNewExpression = (node, ctx) => {
|
|
|
773
872
|
continue;
|
|
774
873
|
if (ts.isSpreadElement(arg))
|
|
775
874
|
continue;
|
|
776
|
-
|
|
875
|
+
const unwrapped = unwrapCallSiteArgumentModifier(arg);
|
|
876
|
+
if (unwrapped.modifier) {
|
|
877
|
+
callSiteArgModifiers[index] = unwrapped.modifier;
|
|
878
|
+
}
|
|
879
|
+
if (!isLambdaArg(unwrapped.expression))
|
|
777
880
|
continue;
|
|
778
881
|
const expectedType = parameterTypesForLambdaContext?.[index];
|
|
779
882
|
const lambdaExpectedType = expectedType?.kind === "functionType"
|
|
@@ -781,7 +884,7 @@ export const convertNewExpression = (node, ctx) => {
|
|
|
781
884
|
: expectedType
|
|
782
885
|
? typeSystem.delegateToFunctionType(expectedType) ?? expectedType
|
|
783
886
|
: undefined;
|
|
784
|
-
argsWorking[index] = convertExpression(
|
|
887
|
+
argsWorking[index] = convertExpression(unwrapped.expression, ctx, lambdaExpectedType);
|
|
785
888
|
}
|
|
786
889
|
// Fill any remaining undefined slots (shouldn't happen, but be safe)
|
|
787
890
|
const convertedArgs = argsWorking.map((a, index) => {
|
|
@@ -791,7 +894,20 @@ export const convertNewExpression = (node, ctx) => {
|
|
|
791
894
|
if (!arg) {
|
|
792
895
|
throw new Error("ICE: new expression argument conversion produced a hole");
|
|
793
896
|
}
|
|
794
|
-
|
|
897
|
+
if (ts.isSpreadElement(arg)) {
|
|
898
|
+
const spreadExpr = convertExpression(arg.expression, ctx, undefined);
|
|
899
|
+
return {
|
|
900
|
+
kind: "spread",
|
|
901
|
+
expression: spreadExpr,
|
|
902
|
+
inferredType: spreadExpr.inferredType,
|
|
903
|
+
sourceSpan: getSourceSpan(arg),
|
|
904
|
+
};
|
|
905
|
+
}
|
|
906
|
+
const unwrapped = unwrapCallSiteArgumentModifier(arg);
|
|
907
|
+
if (unwrapped.modifier) {
|
|
908
|
+
callSiteArgModifiers[index] = unwrapped.modifier;
|
|
909
|
+
}
|
|
910
|
+
return convertExpression(unwrapped.expression, ctx, undefined);
|
|
795
911
|
});
|
|
796
912
|
// Collect final argTypes
|
|
797
913
|
const argTypes = convertedArgs.map((a) => a.kind === "spread" ? undefined : a.inferredType);
|
|
@@ -808,6 +924,10 @@ export const convertNewExpression = (node, ctx) => {
|
|
|
808
924
|
// If sigId is missing, use unknownType (do not fabricate a nominal type)
|
|
809
925
|
const inferredType = finalResolved?.returnType ?? { kind: "unknownType" };
|
|
810
926
|
const parameterTypes = finalResolved?.parameterTypes ?? initialParameterTypes;
|
|
927
|
+
const argumentPassingBase = finalResolved
|
|
928
|
+
? finalResolved.parameterModes.slice(0, argumentCount)
|
|
929
|
+
: extractArgumentPassing(node, ctx);
|
|
930
|
+
const argumentPassing = applyCallSiteArgumentModifiers(argumentPassingBase, callSiteArgModifiers, argumentCount, ctx, node);
|
|
811
931
|
// Phase 18: IrNewExpression.typeArguments must include inferred type arguments.
|
|
812
932
|
// The emitter relies on this field to emit generic constructor calls (e.g., new Box<int>(...)).
|
|
813
933
|
const inferredTypeArguments = inferredType.kind === "referenceType" ? inferredType.typeArguments : undefined;
|
|
@@ -821,6 +941,7 @@ export const convertNewExpression = (node, ctx) => {
|
|
|
821
941
|
arguments: convertedArgs,
|
|
822
942
|
inferredType,
|
|
823
943
|
sourceSpan: getSourceSpan(node),
|
|
944
|
+
argumentPassing,
|
|
824
945
|
parameterTypes,
|
|
825
946
|
typeArguments: typeArgumentsForIr,
|
|
826
947
|
requiresSpecialization,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../../../src/ir/converters/expressions/calls.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../../../src/ir/converters/expressions/calls.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../../../../src/ir/converters/statements/declarations/classes/orchestrator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAiB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../../../../src/ir/converters/statements/declarations/classes/orchestrator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAiB,MAAM,sBAAsB,CAAC;AAazE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AA0ErE;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAClC,MAAM,EAAE,CAAC,gBAAgB,EACzB,KAAK,cAAc,KAClB,kBAAkB,GAAG,IAsIvB,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Class declaration conversion orchestrator
|
|
3
3
|
*/
|
|
4
4
|
import * as ts from "typescript";
|
|
5
|
-
import { hasExportModifier, convertTypeParameters, hasStaticModifier, } from "../../helpers.js";
|
|
5
|
+
import { hasExportModifier, convertTypeParameters, hasStaticModifier, hasDeclareModifier, } from "../../helpers.js";
|
|
6
6
|
import { convertAccessorProperty, convertProperty } from "./properties.js";
|
|
7
7
|
import { convertMethod, convertMethodOverloadGroup } from "./methods.js";
|
|
8
8
|
import { convertConstructor, extractParameterProperties, } from "./constructors.js";
|
|
@@ -25,7 +25,9 @@ const convertClassMember = (node, ctx, superClass, constructorParams) => {
|
|
|
25
25
|
const filterOwnMembers = (node) => {
|
|
26
26
|
// All members directly on node.members ARE own members by definition
|
|
27
27
|
// The AST doesn't include inherited members in the class's members array
|
|
28
|
-
|
|
28
|
+
//
|
|
29
|
+
// NOTE: `declare` members are type-only in TypeScript and must not emit.
|
|
30
|
+
return node.members.filter((m) => !hasDeclareModifier(m));
|
|
29
31
|
};
|
|
30
32
|
/**
|
|
31
33
|
* Deduplicate members by name, keeping first occurrence
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../../../src/ir/converters/statements/declarations/classes/orchestrator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../../../src/ir/converters/statements/declarations/classes/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,13 @@ export declare const hasExportModifier: (node: ts.Node) => boolean;
|
|
|
32
32
|
* Check if node has static modifier
|
|
33
33
|
*/
|
|
34
34
|
export declare const hasStaticModifier: (node: ts.Node) => boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Check if node has declare modifier.
|
|
37
|
+
*
|
|
38
|
+
* `declare` class members are type-only in TypeScript and should not emit runtime code.
|
|
39
|
+
* Tsonic mirrors this by skipping them during IR conversion.
|
|
40
|
+
*/
|
|
41
|
+
export declare const hasDeclareModifier: (node: ts.Node) => boolean;
|
|
35
42
|
/**
|
|
36
43
|
* Check if node has readonly modifier
|
|
37
44
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/ir/converters/statements/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EACL,WAAW,EACX,eAAe,EACf,eAAe,EAEf,qBAAqB,EAErB,MAAM,EACP,MAAM,gBAAgB,CAAC;AAIxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/D;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,GAAG,MAAM,KAAG,MAmB5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,gBAAgB,SAAS,EAAE,CAAC,wBAAwB,EAAE,GAAG,SAAS,EAClE,KAAK,cAAc,KAClB,SAAS,eAAe,EAAE,GAAG,SAsC/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,oBAAoB,CAAC,EACjD,KAAK,cAAc,KAClB,SAAS,WAAW,EA2DtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,8BAA8B,GACzC,MAAM,EAAE,CAAC,uBAAuB,EAChC,KAAK,cAAc,KAClB,qBAiCF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,OAMjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,OAMjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,OAMnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,eAQhD,CAAC"}
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/ir/converters/statements/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EACL,WAAW,EACX,eAAe,EACf,eAAe,EAEf,qBAAqB,EAErB,MAAM,EACP,MAAM,gBAAgB,CAAC;AAIxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/D;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,GAAG,MAAM,KAAG,MAmB5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,gBAAgB,SAAS,EAAE,CAAC,wBAAwB,EAAE,GAAG,SAAS,EAClE,KAAK,cAAc,KAClB,SAAS,eAAe,EAAE,GAAG,SAsC/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,YAAY,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,oBAAoB,CAAC,EACjD,KAAK,cAAc,KAClB,SAAS,WAAW,EA2DtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,8BAA8B,GACzC,MAAM,EAAE,CAAC,uBAAuB,EAChC,KAAK,cAAc,KAClB,qBAiCF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,OAMjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,OAMjD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,OAMlD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,OAMnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,EAAE,CAAC,IAAI,KAAG,eAQhD,CAAC"}
|
|
@@ -170,6 +170,18 @@ export const hasStaticModifier = (node) => {
|
|
|
170
170
|
const modifiers = ts.getModifiers(node);
|
|
171
171
|
return (modifiers?.some((m) => m.kind === ts.SyntaxKind.StaticKeyword) ?? false);
|
|
172
172
|
};
|
|
173
|
+
/**
|
|
174
|
+
* Check if node has declare modifier.
|
|
175
|
+
*
|
|
176
|
+
* `declare` class members are type-only in TypeScript and should not emit runtime code.
|
|
177
|
+
* Tsonic mirrors this by skipping them during IR conversion.
|
|
178
|
+
*/
|
|
179
|
+
export const hasDeclareModifier = (node) => {
|
|
180
|
+
if (!ts.canHaveModifiers(node))
|
|
181
|
+
return false;
|
|
182
|
+
const modifiers = ts.getModifiers(node);
|
|
183
|
+
return (modifiers?.some((m) => m.kind === ts.SyntaxKind.DeclareKeyword) ?? false);
|
|
184
|
+
};
|
|
173
185
|
/**
|
|
174
186
|
* Check if node has readonly modifier
|
|
175
187
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/ir/converters/statements/helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/ir/converters/statements/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-converter.d.ts","sourceRoot":"","sources":["../../src/ir/expression-converter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EACL,YAAY,EAEZ,MAAM,EAGP,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAmG3D;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,EAAE,CAAC,UAAU,EACnB,KAAK,cAAc,EACnB,cAAc,MAAM,GAAG,SAAS,KAC/B,
|
|
1
|
+
{"version":3,"file":"expression-converter.d.ts","sourceRoot":"","sources":["../../src/ir/expression-converter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EACL,YAAY,EAEZ,MAAM,EAGP,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAmG3D;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,EAAE,CAAC,UAAU,EACnB,KAAK,cAAc,EACnB,cAAc,MAAM,GAAG,SAAS,KAC/B,YAqUF,CAAC;AAGF,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,6BAA6B,GAC9B,MAAM,qCAAqC,CAAC"}
|
|
@@ -250,13 +250,14 @@ export const convertExpression = (node, ctx, expectedType) => {
|
|
|
250
250
|
};
|
|
251
251
|
}
|
|
252
252
|
if (ts.isAwaitExpression(node)) {
|
|
253
|
-
// await unwraps Promise - for now pass through the expression's type
|
|
254
|
-
// (full unwrapping would require detecting Promise<T> and returning T)
|
|
255
253
|
const awaitedExpr = convertExpression(node.expression, ctx, undefined);
|
|
254
|
+
const awaitedType = awaitedExpr.inferredType
|
|
255
|
+
? ctx.typeSystem.expandUtility("Awaited", [awaitedExpr.inferredType])
|
|
256
|
+
: undefined;
|
|
256
257
|
return {
|
|
257
258
|
kind: "await",
|
|
258
259
|
expression: awaitedExpr,
|
|
259
|
-
inferredType:
|
|
260
|
+
inferredType: awaitedType,
|
|
260
261
|
sourceSpan: getSourceSpan(node),
|
|
261
262
|
};
|
|
262
263
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-converter.js","sourceRoot":"","sources":["../../src/ir/expression-converter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expression-converter.js","sourceRoot":"","sources":["../../src/ir/expression-converter.ts"],"names":[],"mappings":"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"}
|