@artel/artc 0.6.25242 → 0.6.25243
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/build/Cli.js +3 -3
- package/build/api/Api.js +2 -2
- package/build/api/ApiNodeJS.js +3 -3
- package/build/api/ApiServices.js +58 -54
- package/build/{chunk-CS2AK7Z7.js → chunk-7D775S4V.js} +453 -108
- package/build/{chunk-BQ6QF4YU.js → chunk-7MCQTANE.js} +2 -2
- package/build/{chunk-TECXIZJ5.js → chunk-EU5AITNE.js} +1 -1
- package/build/types/analysis/Analyzer.d.ts +0 -1
- package/build/types/diagnostic/DiagnosticCode.d.ts +6 -1
- package/build/types/tree/NodeKind.d.ts +19 -15
- package/build/types/tree/green/Nodes.d.ts +58 -12
- package/build/types/tree/red/Nodes.d.ts +65 -13
- package/package.json +1 -1
@@ -620,7 +620,7 @@ var UniqueWithComparatorQuery = class extends Query {
|
|
620
620
|
};
|
621
621
|
|
622
622
|
// source/common/Constants.ts
|
623
|
-
var ArtelVersion = true ? "0.6.
|
623
|
+
var ArtelVersion = true ? "0.6.25243" : "";
|
624
624
|
var ArtelSourceFileExtensions = [".\u0430\u0440\u0442", ".\u0430\u0440\u0442\u0435\u043B\u044C", ".art", ".artel"];
|
625
625
|
var ArtelSourceFileExtensionSet = new Set(ArtelSourceFileExtensions);
|
626
626
|
var ArtelSourceAndConfigurationFileExtensionSet = new Set(ArtelSourceFileExtensionSet).add(".json");
|
@@ -1172,6 +1172,10 @@ __export(green_exports, {
|
|
1172
1172
|
TopLevelTranslationList: () => TopLevelTranslationList2,
|
1173
1173
|
TranslationParameterClause: () => TranslationParameterClause2,
|
1174
1174
|
TranslationParameterList: () => TranslationParameterList2,
|
1175
|
+
TranslationTextTemplate: () => TranslationTextTemplate2,
|
1176
|
+
TranslationTextTemplateParameter: () => TranslationTextTemplateParameter2,
|
1177
|
+
TranslationTextTemplateSpan: () => TranslationTextTemplateSpan2,
|
1178
|
+
TranslationTextTemplateSpanList: () => TranslationTextTemplateSpanList2,
|
1175
1179
|
TranslationTypeParameterClause: () => TranslationTypeParameterClause2,
|
1176
1180
|
TranslationTypeParameterList: () => TranslationTypeParameterList2,
|
1177
1181
|
TranslationsDeclaration: () => TranslationsDeclaration2,
|
@@ -1415,21 +1419,25 @@ var NodeKind = /* @__PURE__ */ ((NodeKind3) => {
|
|
1415
1419
|
NodeKind3[NodeKind3["TypeTranslation"] = 139] = "TypeTranslation";
|
1416
1420
|
NodeKind3[NodeKind3["TextLiteralTranslation"] = 140] = "TextLiteralTranslation";
|
1417
1421
|
NodeKind3[NodeKind3["TextTemplateLiteralTranslation"] = 141] = "TextTemplateLiteralTranslation";
|
1418
|
-
NodeKind3[NodeKind3["
|
1419
|
-
NodeKind3[NodeKind3["
|
1420
|
-
NodeKind3[NodeKind3["
|
1421
|
-
NodeKind3[NodeKind3["
|
1422
|
-
NodeKind3[NodeKind3["
|
1423
|
-
NodeKind3[NodeKind3["
|
1424
|
-
NodeKind3[NodeKind3["
|
1425
|
-
NodeKind3[NodeKind3["
|
1426
|
-
NodeKind3[NodeKind3["
|
1427
|
-
NodeKind3[NodeKind3["
|
1428
|
-
NodeKind3[NodeKind3["
|
1429
|
-
NodeKind3[NodeKind3["
|
1430
|
-
NodeKind3[NodeKind3["
|
1431
|
-
NodeKind3[NodeKind3["
|
1432
|
-
NodeKind3[NodeKind3["
|
1422
|
+
NodeKind3[NodeKind3["TranslationTextTemplate"] = 142] = "TranslationTextTemplate";
|
1423
|
+
NodeKind3[NodeKind3["TranslationTextTemplateSpanList"] = 143] = "TranslationTextTemplateSpanList";
|
1424
|
+
NodeKind3[NodeKind3["TranslationTextTemplateSpan"] = 144] = "TranslationTextTemplateSpan";
|
1425
|
+
NodeKind3[NodeKind3["TranslationTextTemplateParameter"] = 145] = "TranslationTextTemplateParameter";
|
1426
|
+
NodeKind3[NodeKind3["VariantDeclaration"] = 146] = "VariantDeclaration";
|
1427
|
+
NodeKind3[NodeKind3["TypeParameterDeclaration"] = 147] = "TypeParameterDeclaration";
|
1428
|
+
NodeKind3[NodeKind3["ParameterDeclaration"] = 148] = "ParameterDeclaration";
|
1429
|
+
NodeKind3[NodeKind3["Argument"] = 149] = "Argument";
|
1430
|
+
NodeKind3[NodeKind3["TagList"] = 150] = "TagList";
|
1431
|
+
NodeKind3[NodeKind3["Tag"] = 151] = "Tag";
|
1432
|
+
NodeKind3[NodeKind3["ModifierList"] = 152] = "ModifierList";
|
1433
|
+
NodeKind3[NodeKind3["Modifier"] = 153] = "Modifier";
|
1434
|
+
NodeKind3[NodeKind3["ParameterClause"] = 154] = "ParameterClause";
|
1435
|
+
NodeKind3[NodeKind3["ParameterList"] = 155] = "ParameterList";
|
1436
|
+
NodeKind3[NodeKind3["TypeArgumentClause"] = 156] = "TypeArgumentClause";
|
1437
|
+
NodeKind3[NodeKind3["TypeArgumentList"] = 157] = "TypeArgumentList";
|
1438
|
+
NodeKind3[NodeKind3["TypeParameterClause"] = 158] = "TypeParameterClause";
|
1439
|
+
NodeKind3[NodeKind3["TypeParameterList"] = 159] = "TypeParameterList";
|
1440
|
+
NodeKind3[NodeKind3["TypeAnnotation"] = 160] = "TypeAnnotation";
|
1433
1441
|
return NodeKind3;
|
1434
1442
|
})(NodeKind || {});
|
1435
1443
|
|
@@ -1826,6 +1834,10 @@ __export(tree_exports, {
|
|
1826
1834
|
TopLevelTranslationList: () => TopLevelTranslationList,
|
1827
1835
|
TranslationParameterClause: () => TranslationParameterClause,
|
1828
1836
|
TranslationParameterList: () => TranslationParameterList,
|
1837
|
+
TranslationTextTemplate: () => TranslationTextTemplate,
|
1838
|
+
TranslationTextTemplateParameter: () => TranslationTextTemplateParameter,
|
1839
|
+
TranslationTextTemplateSpan: () => TranslationTextTemplateSpan,
|
1840
|
+
TranslationTextTemplateSpanList: () => TranslationTextTemplateSpanList,
|
1829
1841
|
TranslationTypeParameterClause: () => TranslationTypeParameterClause,
|
1830
1842
|
TranslationTypeParameterList: () => TranslationTypeParameterList,
|
1831
1843
|
TranslationsDeclaration: () => TranslationsDeclaration,
|
@@ -4015,9 +4027,9 @@ var TreeQuery = class {
|
|
4015
4027
|
return analyzer.entity.ofEnumerationVariableDeclaration(parent);
|
4016
4028
|
case 99 /* ErrorVariableDeclaration */:
|
4017
4029
|
return analyzer.entity.ofErrorVariableDeclaration(parent);
|
4018
|
-
case
|
4030
|
+
case 148 /* ParameterDeclaration */:
|
4019
4031
|
return analyzer.entity.ofParameterDeclaration(parent);
|
4020
|
-
case
|
4032
|
+
case 147 /* TypeParameterDeclaration */:
|
4021
4033
|
return analyzer.entity.ofTypeParameterDeclaration(parent);
|
4022
4034
|
case 31 /* PackageStructuredTypeDeclaration */:
|
4023
4035
|
return analyzer.entity.ofPackageStructuredTypeDeclaration(parent);
|
@@ -4043,7 +4055,7 @@ var TreeQuery = class {
|
|
4043
4055
|
return analyzer.entity.ofConstructorDeclaration(parent);
|
4044
4056
|
case 44 /* DestructorDeclaration */:
|
4045
4057
|
return analyzer.entity.ofDestructorDeclaration(parent);
|
4046
|
-
case
|
4058
|
+
case 146 /* VariantDeclaration */:
|
4047
4059
|
return analyzer.entity.ofVariantDeclaration(parent);
|
4048
4060
|
case 38 /* TypeExtensionDeclaration */:
|
4049
4061
|
return analyzer.entity.ofTypeExtensionDeclaration(parent);
|
@@ -8518,10 +8530,100 @@ var TextTemplateLiteralTranslation = class extends BaseNode {
|
|
8518
8530
|
];
|
8519
8531
|
}
|
8520
8532
|
};
|
8533
|
+
var TranslationTextTemplate = class extends BaseNode {
|
8534
|
+
constructor(green, rangeStart, parent) {
|
8535
|
+
super(green, rangeStart, parent);
|
8536
|
+
this.kind = 142 /* TranslationTextTemplate */;
|
8537
|
+
}
|
8538
|
+
get children() {
|
8539
|
+
return this._children ??= this.createChildren();
|
8540
|
+
}
|
8541
|
+
get head() {
|
8542
|
+
return this.children[0];
|
8543
|
+
}
|
8544
|
+
get spanList() {
|
8545
|
+
return this.children[1];
|
8546
|
+
}
|
8547
|
+
get thisAsNode() {
|
8548
|
+
return this;
|
8549
|
+
}
|
8550
|
+
createChildren() {
|
8551
|
+
return [
|
8552
|
+
this.green.head.toRed(childRangeStart(this, 0), this),
|
8553
|
+
this.green.spanList.toRed(childRangeStart(this, 1), this)
|
8554
|
+
];
|
8555
|
+
}
|
8556
|
+
};
|
8557
|
+
var TranslationTextTemplateSpanList = class extends BaseNode {
|
8558
|
+
constructor(green, rangeStart, parent) {
|
8559
|
+
super(green, rangeStart, parent);
|
8560
|
+
this.kind = 143 /* TranslationTextTemplateSpanList */;
|
8561
|
+
}
|
8562
|
+
get children() {
|
8563
|
+
return this._children ??= this.createChildren();
|
8564
|
+
}
|
8565
|
+
get spans() {
|
8566
|
+
return this.children;
|
8567
|
+
}
|
8568
|
+
get thisAsNode() {
|
8569
|
+
return this;
|
8570
|
+
}
|
8571
|
+
createChildren() {
|
8572
|
+
return this.green.spans.map((e, i) => e.toRed(childRangeStart(this, i), this));
|
8573
|
+
}
|
8574
|
+
};
|
8575
|
+
var TranslationTextTemplateSpan = class extends BaseNode {
|
8576
|
+
constructor(green, rangeStart, parent) {
|
8577
|
+
super(green, rangeStart, parent);
|
8578
|
+
this.kind = 144 /* TranslationTextTemplateSpan */;
|
8579
|
+
}
|
8580
|
+
get children() {
|
8581
|
+
return this._children ??= this.createChildren();
|
8582
|
+
}
|
8583
|
+
get parameter() {
|
8584
|
+
return this.children[0];
|
8585
|
+
}
|
8586
|
+
get text() {
|
8587
|
+
return this.children[1];
|
8588
|
+
}
|
8589
|
+
get thisAsNode() {
|
8590
|
+
return this;
|
8591
|
+
}
|
8592
|
+
createChildren() {
|
8593
|
+
return [
|
8594
|
+
this.green.parameter.toRed(childRangeStart(this, 0), this),
|
8595
|
+
this.green.text.toRed(childRangeStart(this, 1), this)
|
8596
|
+
];
|
8597
|
+
}
|
8598
|
+
};
|
8599
|
+
var TranslationTextTemplateParameter = class extends BaseNode {
|
8600
|
+
constructor(green, rangeStart, parent) {
|
8601
|
+
super(green, rangeStart, parent);
|
8602
|
+
this.kind = 145 /* TranslationTextTemplateParameter */;
|
8603
|
+
}
|
8604
|
+
get children() {
|
8605
|
+
return this._children ??= this.createChildren();
|
8606
|
+
}
|
8607
|
+
get name() {
|
8608
|
+
return this.children[0];
|
8609
|
+
}
|
8610
|
+
get typeAnnotation() {
|
8611
|
+
return this.children[1];
|
8612
|
+
}
|
8613
|
+
get thisAsNode() {
|
8614
|
+
return this;
|
8615
|
+
}
|
8616
|
+
createChildren() {
|
8617
|
+
return [
|
8618
|
+
this.green.name.toRed(childRangeStart(this, 0), this),
|
8619
|
+
this.green.typeAnnotation?.toRed(childRangeStart(this, 1), this)
|
8620
|
+
];
|
8621
|
+
}
|
8622
|
+
};
|
8521
8623
|
var VariantDeclaration = class extends BaseNode {
|
8522
8624
|
constructor(green, rangeStart, parent) {
|
8523
8625
|
super(green, rangeStart, parent);
|
8524
|
-
this.kind =
|
8626
|
+
this.kind = 146 /* VariantDeclaration */;
|
8525
8627
|
}
|
8526
8628
|
get children() {
|
8527
8629
|
return this._children ??= this.createChildren();
|
@@ -8557,7 +8659,7 @@ var VariantDeclaration = class extends BaseNode {
|
|
8557
8659
|
var TypeParameterDeclaration = class extends BaseNode {
|
8558
8660
|
constructor(green, rangeStart, parent) {
|
8559
8661
|
super(green, rangeStart, parent);
|
8560
|
-
this.kind =
|
8662
|
+
this.kind = 147 /* TypeParameterDeclaration */;
|
8561
8663
|
}
|
8562
8664
|
get children() {
|
8563
8665
|
return this._children ??= this.createChildren();
|
@@ -8593,7 +8695,7 @@ var TypeParameterDeclaration = class extends BaseNode {
|
|
8593
8695
|
var ParameterDeclaration = class extends BaseNode {
|
8594
8696
|
constructor(green, rangeStart, parent) {
|
8595
8697
|
super(green, rangeStart, parent);
|
8596
|
-
this.kind =
|
8698
|
+
this.kind = 148 /* ParameterDeclaration */;
|
8597
8699
|
}
|
8598
8700
|
get children() {
|
8599
8701
|
return this._children ??= this.createChildren();
|
@@ -8629,7 +8731,7 @@ var ParameterDeclaration = class extends BaseNode {
|
|
8629
8731
|
var Argument = class extends BaseNode {
|
8630
8732
|
constructor(green, rangeStart, parent) {
|
8631
8733
|
super(green, rangeStart, parent);
|
8632
|
-
this.kind =
|
8734
|
+
this.kind = 149 /* Argument */;
|
8633
8735
|
}
|
8634
8736
|
get children() {
|
8635
8737
|
return this._children ??= this.createChildren();
|
@@ -8657,7 +8759,7 @@ var Argument = class extends BaseNode {
|
|
8657
8759
|
var TagList = class extends BaseNode {
|
8658
8760
|
constructor(green, rangeStart, parent) {
|
8659
8761
|
super(green, rangeStart, parent);
|
8660
|
-
this.kind =
|
8762
|
+
this.kind = 150 /* TagList */;
|
8661
8763
|
}
|
8662
8764
|
get children() {
|
8663
8765
|
return this._children ??= this.createChildren();
|
@@ -8675,7 +8777,7 @@ var TagList = class extends BaseNode {
|
|
8675
8777
|
var Tag = class extends BaseNode {
|
8676
8778
|
constructor(green, rangeStart, parent) {
|
8677
8779
|
super(green, rangeStart, parent);
|
8678
|
-
this.kind =
|
8780
|
+
this.kind = 151 /* Tag */;
|
8679
8781
|
}
|
8680
8782
|
get children() {
|
8681
8783
|
return this._children ??= this.createChildren();
|
@@ -8715,7 +8817,7 @@ var Tag = class extends BaseNode {
|
|
8715
8817
|
var ModifierList = class extends BaseNode {
|
8716
8818
|
constructor(green, rangeStart, parent) {
|
8717
8819
|
super(green, rangeStart, parent);
|
8718
|
-
this.kind =
|
8820
|
+
this.kind = 152 /* ModifierList */;
|
8719
8821
|
}
|
8720
8822
|
get children() {
|
8721
8823
|
return this._children ??= this.createChildren();
|
@@ -8733,7 +8835,7 @@ var ModifierList = class extends BaseNode {
|
|
8733
8835
|
var Modifier = class extends BaseNode {
|
8734
8836
|
constructor(green, rangeStart, parent) {
|
8735
8837
|
super(green, rangeStart, parent);
|
8736
|
-
this.kind =
|
8838
|
+
this.kind = 153 /* Modifier */;
|
8737
8839
|
}
|
8738
8840
|
get children() {
|
8739
8841
|
return this._children ??= this.createChildren();
|
@@ -8765,7 +8867,7 @@ var Modifier = class extends BaseNode {
|
|
8765
8867
|
var ParameterClause = class extends BaseNode {
|
8766
8868
|
constructor(green, rangeStart, parent) {
|
8767
8869
|
super(green, rangeStart, parent);
|
8768
|
-
this.kind =
|
8870
|
+
this.kind = 154 /* ParameterClause */;
|
8769
8871
|
}
|
8770
8872
|
get children() {
|
8771
8873
|
return this._children ??= this.createChildren();
|
@@ -8793,7 +8895,7 @@ var ParameterClause = class extends BaseNode {
|
|
8793
8895
|
var ParameterList = class extends BaseNode {
|
8794
8896
|
constructor(green, rangeStart, parent) {
|
8795
8897
|
super(green, rangeStart, parent);
|
8796
|
-
this.kind =
|
8898
|
+
this.kind = 155 /* ParameterList */;
|
8797
8899
|
}
|
8798
8900
|
get children() {
|
8799
8901
|
return this._children ??= this.createChildren();
|
@@ -8814,7 +8916,7 @@ var ParameterList = class extends BaseNode {
|
|
8814
8916
|
var TypeArgumentClause = class extends BaseNode {
|
8815
8917
|
constructor(green, rangeStart, parent) {
|
8816
8918
|
super(green, rangeStart, parent);
|
8817
|
-
this.kind =
|
8919
|
+
this.kind = 156 /* TypeArgumentClause */;
|
8818
8920
|
}
|
8819
8921
|
get children() {
|
8820
8922
|
return this._children ??= this.createChildren();
|
@@ -8842,7 +8944,7 @@ var TypeArgumentClause = class extends BaseNode {
|
|
8842
8944
|
var TypeArgumentList = class extends BaseNode {
|
8843
8945
|
constructor(green, rangeStart, parent) {
|
8844
8946
|
super(green, rangeStart, parent);
|
8845
|
-
this.kind =
|
8947
|
+
this.kind = 157 /* TypeArgumentList */;
|
8846
8948
|
}
|
8847
8949
|
get children() {
|
8848
8950
|
return this._children ??= this.createChildren();
|
@@ -8863,7 +8965,7 @@ var TypeArgumentList = class extends BaseNode {
|
|
8863
8965
|
var TypeParameterClause = class extends BaseNode {
|
8864
8966
|
constructor(green, rangeStart, parent) {
|
8865
8967
|
super(green, rangeStart, parent);
|
8866
|
-
this.kind =
|
8968
|
+
this.kind = 158 /* TypeParameterClause */;
|
8867
8969
|
}
|
8868
8970
|
get children() {
|
8869
8971
|
return this._children ??= this.createChildren();
|
@@ -8891,7 +8993,7 @@ var TypeParameterClause = class extends BaseNode {
|
|
8891
8993
|
var TypeParameterList = class extends BaseNode {
|
8892
8994
|
constructor(green, rangeStart, parent) {
|
8893
8995
|
super(green, rangeStart, parent);
|
8894
|
-
this.kind =
|
8996
|
+
this.kind = 159 /* TypeParameterList */;
|
8895
8997
|
}
|
8896
8998
|
get children() {
|
8897
8999
|
return this._children ??= this.createChildren();
|
@@ -8912,7 +9014,7 @@ var TypeParameterList = class extends BaseNode {
|
|
8912
9014
|
var TypeAnnotation = class extends BaseNode {
|
8913
9015
|
constructor(green, rangeStart, parent) {
|
8914
9016
|
super(green, rangeStart, parent);
|
8915
|
-
this.kind =
|
9017
|
+
this.kind = 160 /* TypeAnnotation */;
|
8916
9018
|
}
|
8917
9019
|
get children() {
|
8918
9020
|
return this._children ??= this.createChildren();
|
@@ -12176,10 +12278,83 @@ var TextTemplateLiteralTranslation2 = class extends BaseNode2 {
|
|
12176
12278
|
return new TextTemplateLiteralTranslation(this, rangeStart, parent);
|
12177
12279
|
}
|
12178
12280
|
};
|
12281
|
+
var TranslationTextTemplate2 = class extends BaseNode2 {
|
12282
|
+
constructor(head, spanList) {
|
12283
|
+
super();
|
12284
|
+
this.kind = 142 /* TranslationTextTemplate */;
|
12285
|
+
this.children = [head, spanList];
|
12286
|
+
}
|
12287
|
+
get head() {
|
12288
|
+
return this.children[0];
|
12289
|
+
}
|
12290
|
+
get spanList() {
|
12291
|
+
return this.children[1];
|
12292
|
+
}
|
12293
|
+
get thisAsNode() {
|
12294
|
+
return this;
|
12295
|
+
}
|
12296
|
+
toRed(rangeStart, parent) {
|
12297
|
+
return new TranslationTextTemplate(this, rangeStart, parent);
|
12298
|
+
}
|
12299
|
+
};
|
12300
|
+
var TranslationTextTemplateSpanList2 = class extends BaseNode2 {
|
12301
|
+
constructor(spans) {
|
12302
|
+
super();
|
12303
|
+
this.kind = 143 /* TranslationTextTemplateSpanList */;
|
12304
|
+
this.children = spans;
|
12305
|
+
}
|
12306
|
+
get spans() {
|
12307
|
+
return this.children;
|
12308
|
+
}
|
12309
|
+
get thisAsNode() {
|
12310
|
+
return this;
|
12311
|
+
}
|
12312
|
+
toRed(rangeStart, parent) {
|
12313
|
+
return new TranslationTextTemplateSpanList(this, rangeStart, parent);
|
12314
|
+
}
|
12315
|
+
};
|
12316
|
+
var TranslationTextTemplateSpan2 = class extends BaseNode2 {
|
12317
|
+
constructor(parameter, text) {
|
12318
|
+
super();
|
12319
|
+
this.kind = 144 /* TranslationTextTemplateSpan */;
|
12320
|
+
this.children = [parameter, text];
|
12321
|
+
}
|
12322
|
+
get parameter() {
|
12323
|
+
return this.children[0];
|
12324
|
+
}
|
12325
|
+
get text() {
|
12326
|
+
return this.children[1];
|
12327
|
+
}
|
12328
|
+
get thisAsNode() {
|
12329
|
+
return this;
|
12330
|
+
}
|
12331
|
+
toRed(rangeStart, parent) {
|
12332
|
+
return new TranslationTextTemplateSpan(this, rangeStart, parent);
|
12333
|
+
}
|
12334
|
+
};
|
12335
|
+
var TranslationTextTemplateParameter2 = class extends BaseNode2 {
|
12336
|
+
constructor(name, typeAnnotation) {
|
12337
|
+
super();
|
12338
|
+
this.kind = 145 /* TranslationTextTemplateParameter */;
|
12339
|
+
this.children = [name, typeAnnotation];
|
12340
|
+
}
|
12341
|
+
get name() {
|
12342
|
+
return this.children[0];
|
12343
|
+
}
|
12344
|
+
get typeAnnotation() {
|
12345
|
+
return this.children[1];
|
12346
|
+
}
|
12347
|
+
get thisAsNode() {
|
12348
|
+
return this;
|
12349
|
+
}
|
12350
|
+
toRed(rangeStart, parent) {
|
12351
|
+
return new TranslationTextTemplateParameter(this, rangeStart, parent);
|
12352
|
+
}
|
12353
|
+
};
|
12179
12354
|
var VariantDeclaration2 = class extends BaseNode2 {
|
12180
12355
|
constructor(tagList, modifierList, name, equalsToken, value) {
|
12181
12356
|
super();
|
12182
|
-
this.kind =
|
12357
|
+
this.kind = 146 /* VariantDeclaration */;
|
12183
12358
|
this.children = [tagList, modifierList, name, equalsToken, value];
|
12184
12359
|
}
|
12185
12360
|
get tagList() {
|
@@ -12207,7 +12382,7 @@ var VariantDeclaration2 = class extends BaseNode2 {
|
|
12207
12382
|
var TypeParameterDeclaration2 = class extends BaseNode2 {
|
12208
12383
|
constructor(name, colonToken, constraint, equalsToken, defaultType) {
|
12209
12384
|
super();
|
12210
|
-
this.kind =
|
12385
|
+
this.kind = 147 /* TypeParameterDeclaration */;
|
12211
12386
|
this.children = [name, colonToken, constraint, equalsToken, defaultType];
|
12212
12387
|
}
|
12213
12388
|
get name() {
|
@@ -12235,7 +12410,7 @@ var TypeParameterDeclaration2 = class extends BaseNode2 {
|
|
12235
12410
|
var ParameterDeclaration2 = class extends BaseNode2 {
|
12236
12411
|
constructor(tagList, name, typeAnnotation, equalsToken, defaultValue) {
|
12237
12412
|
super();
|
12238
|
-
this.kind =
|
12413
|
+
this.kind = 148 /* ParameterDeclaration */;
|
12239
12414
|
this.children = [tagList, name, typeAnnotation, equalsToken, defaultValue];
|
12240
12415
|
}
|
12241
12416
|
get tagList() {
|
@@ -12263,7 +12438,7 @@ var ParameterDeclaration2 = class extends BaseNode2 {
|
|
12263
12438
|
var Argument2 = class extends BaseNode2 {
|
12264
12439
|
constructor(name, equalsToken, value) {
|
12265
12440
|
super();
|
12266
|
-
this.kind =
|
12441
|
+
this.kind = 149 /* Argument */;
|
12267
12442
|
this.children = [name, equalsToken, value];
|
12268
12443
|
}
|
12269
12444
|
get name() {
|
@@ -12285,7 +12460,7 @@ var Argument2 = class extends BaseNode2 {
|
|
12285
12460
|
var TagList2 = class extends BaseNode2 {
|
12286
12461
|
constructor(tags) {
|
12287
12462
|
super();
|
12288
|
-
this.kind =
|
12463
|
+
this.kind = 150 /* TagList */;
|
12289
12464
|
this.children = tags;
|
12290
12465
|
}
|
12291
12466
|
get tags() {
|
@@ -12301,7 +12476,7 @@ var TagList2 = class extends BaseNode2 {
|
|
12301
12476
|
var Tag2 = class extends BaseNode2 {
|
12302
12477
|
constructor(hashSignToken, name, typeArgumentClause, openParenthesisToken, argumentList, closeParenthesisToken) {
|
12303
12478
|
super();
|
12304
|
-
this.kind =
|
12479
|
+
this.kind = 151 /* Tag */;
|
12305
12480
|
this.children = [hashSignToken, name, typeArgumentClause, openParenthesisToken, argumentList, closeParenthesisToken];
|
12306
12481
|
}
|
12307
12482
|
get hashSignToken() {
|
@@ -12332,7 +12507,7 @@ var Tag2 = class extends BaseNode2 {
|
|
12332
12507
|
var ModifierList2 = class extends BaseNode2 {
|
12333
12508
|
constructor(modifiers) {
|
12334
12509
|
super();
|
12335
|
-
this.kind =
|
12510
|
+
this.kind = 152 /* ModifierList */;
|
12336
12511
|
this.children = modifiers;
|
12337
12512
|
}
|
12338
12513
|
get modifiers() {
|
@@ -12348,7 +12523,7 @@ var ModifierList2 = class extends BaseNode2 {
|
|
12348
12523
|
var Modifier2 = class extends BaseNode2 {
|
12349
12524
|
constructor(value, openParenthesisToken, level, closeParenthesisToken) {
|
12350
12525
|
super();
|
12351
|
-
this.kind =
|
12526
|
+
this.kind = 153 /* Modifier */;
|
12352
12527
|
this.children = [value, openParenthesisToken, level, closeParenthesisToken];
|
12353
12528
|
}
|
12354
12529
|
get value() {
|
@@ -12373,7 +12548,7 @@ var Modifier2 = class extends BaseNode2 {
|
|
12373
12548
|
var ParameterClause2 = class extends BaseNode2 {
|
12374
12549
|
constructor(openParenthesisToken, parameterList, closeParenthesisToken) {
|
12375
12550
|
super();
|
12376
|
-
this.kind =
|
12551
|
+
this.kind = 154 /* ParameterClause */;
|
12377
12552
|
this.children = [openParenthesisToken, parameterList, closeParenthesisToken];
|
12378
12553
|
}
|
12379
12554
|
get openParenthesisToken() {
|
@@ -12395,7 +12570,7 @@ var ParameterClause2 = class extends BaseNode2 {
|
|
12395
12570
|
var ParameterList2 = class extends BaseNode2 {
|
12396
12571
|
constructor(elements) {
|
12397
12572
|
super();
|
12398
|
-
this.kind =
|
12573
|
+
this.kind = 155 /* ParameterList */;
|
12399
12574
|
this.children = elements;
|
12400
12575
|
}
|
12401
12576
|
get elements() {
|
@@ -12411,7 +12586,7 @@ var ParameterList2 = class extends BaseNode2 {
|
|
12411
12586
|
var TypeArgumentClause2 = class extends BaseNode2 {
|
12412
12587
|
constructor(lessThanToken, typeArgumentList, greaterThanToken) {
|
12413
12588
|
super();
|
12414
|
-
this.kind =
|
12589
|
+
this.kind = 156 /* TypeArgumentClause */;
|
12415
12590
|
this.children = [lessThanToken, typeArgumentList, greaterThanToken];
|
12416
12591
|
}
|
12417
12592
|
get lessThanToken() {
|
@@ -12433,7 +12608,7 @@ var TypeArgumentClause2 = class extends BaseNode2 {
|
|
12433
12608
|
var TypeArgumentList2 = class extends BaseNode2 {
|
12434
12609
|
constructor(elements) {
|
12435
12610
|
super();
|
12436
|
-
this.kind =
|
12611
|
+
this.kind = 157 /* TypeArgumentList */;
|
12437
12612
|
this.children = elements;
|
12438
12613
|
}
|
12439
12614
|
get elements() {
|
@@ -12449,7 +12624,7 @@ var TypeArgumentList2 = class extends BaseNode2 {
|
|
12449
12624
|
var TypeParameterClause2 = class extends BaseNode2 {
|
12450
12625
|
constructor(lessThanToken, typeParameterList, greaterThanToken) {
|
12451
12626
|
super();
|
12452
|
-
this.kind =
|
12627
|
+
this.kind = 158 /* TypeParameterClause */;
|
12453
12628
|
this.children = [lessThanToken, typeParameterList, greaterThanToken];
|
12454
12629
|
}
|
12455
12630
|
get lessThanToken() {
|
@@ -12471,7 +12646,7 @@ var TypeParameterClause2 = class extends BaseNode2 {
|
|
12471
12646
|
var TypeParameterList2 = class extends BaseNode2 {
|
12472
12647
|
constructor(elements) {
|
12473
12648
|
super();
|
12474
|
-
this.kind =
|
12649
|
+
this.kind = 159 /* TypeParameterList */;
|
12475
12650
|
this.children = elements;
|
12476
12651
|
}
|
12477
12652
|
get elements() {
|
@@ -12487,7 +12662,7 @@ var TypeParameterList2 = class extends BaseNode2 {
|
|
12487
12662
|
var TypeAnnotation2 = class extends BaseNode2 {
|
12488
12663
|
constructor(colonToken, typeSpecifier) {
|
12489
12664
|
super();
|
12490
|
-
this.kind =
|
12665
|
+
this.kind = 160 /* TypeAnnotation */;
|
12491
12666
|
this.children = [colonToken, typeSpecifier];
|
12492
12667
|
}
|
12493
12668
|
get colonToken() {
|
@@ -12823,7 +12998,12 @@ var DiagnosticCode = /* @__PURE__ */ ((DiagnosticCode2) => {
|
|
12823
12998
|
DiagnosticCode2[DiagnosticCode2["CannotAccessAbstractMemberOfBaseType"] = 354] = "CannotAccessAbstractMemberOfBaseType";
|
12824
12999
|
DiagnosticCode2[DiagnosticCode2["TheFollowingBaseTypeMembersConflictAndMustBeOverridden0"] = 355] = "TheFollowingBaseTypeMembersConflictAndMustBeOverridden0";
|
12825
13000
|
DiagnosticCode2[DiagnosticCode2["TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1"] = 356] = "TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1";
|
12826
|
-
DiagnosticCode2[DiagnosticCode2["
|
13001
|
+
DiagnosticCode2[DiagnosticCode2["EitherIdentifiersOrIntegerIndexesAreAllowedAsParametersOfTextTemplateLiteral"] = 357] = "EitherIdentifiersOrIntegerIndexesAreAllowedAsParametersOfTextTemplateLiteral";
|
13002
|
+
DiagnosticCode2[DiagnosticCode2["OnlyIndex0IsAllowedHereAsParameterOfTextTemplateLiteral"] = 358] = "OnlyIndex0IsAllowedHereAsParameterOfTextTemplateLiteral";
|
13003
|
+
DiagnosticCode2[DiagnosticCode2["OnlyIntegerLiteralInRangeFromZeroToNIsAllowedHereAsParameterOfTextTemplateLiteral"] = 359] = "OnlyIntegerLiteralInRangeFromZeroToNIsAllowedHereAsParameterOfTextTemplateLiteral";
|
13004
|
+
DiagnosticCode2[DiagnosticCode2["OnlyIdentifierIsAllowedHereAsParameterOfTextTemplateLiteral"] = 360] = "OnlyIdentifierIsAllowedHereAsParameterOfTextTemplateLiteral";
|
13005
|
+
DiagnosticCode2[DiagnosticCode2["TranslationFunctionIsNotAllowedWhenIndexesAreUsedAsParametersInSourceTextTemplate"] = 361] = "TranslationFunctionIsNotAllowedWhenIndexesAreUsedAsParametersInSourceTextTemplate";
|
13006
|
+
DiagnosticCode2[DiagnosticCode2["UnknownParameterOfTextTemplateTranslation"] = 362] = "UnknownParameterOfTextTemplateTranslation";
|
12827
13007
|
DiagnosticCode2[DiagnosticCode2["CannotFindTsLibDirectoryBaseSearchPaths0"] = 401] = "CannotFindTsLibDirectoryBaseSearchPaths0";
|
12828
13008
|
DiagnosticCode2[DiagnosticCode2["SourceFile0IsNotPartOfThePackageAndWontBeLoaded"] = 402] = "SourceFile0IsNotPartOfThePackageAndWontBeLoaded";
|
12829
13009
|
DiagnosticCode2[DiagnosticCode2["ProgramWithoutMainPackageCannotBeCompiled"] = 403] = "ProgramWithoutMainPackageCannotBeCompiled";
|
@@ -13064,7 +13244,12 @@ var englishErrorMessages = {
|
|
13064
13244
|
[354 /* CannotAccessAbstractMemberOfBaseType */]: "Can not access abstract member of base type.",
|
13065
13245
|
[355 /* TheFollowingBaseTypeMembersConflictAndMustBeOverridden0 */]: "The following base type members conflict and must be overridden:{0}",
|
13066
13246
|
[356 /* TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1 */]: "The following base type members conflict because they have the same original name '{0}' and must be overridden:{1}",
|
13067
|
-
[357 /*
|
13247
|
+
[357 /* EitherIdentifiersOrIntegerIndexesAreAllowedAsParametersOfTextTemplateLiteral */]: "Either identifiers or integer indexes are allowed as parameters of text template literal.",
|
13248
|
+
[358 /* OnlyIndex0IsAllowedHereAsParameterOfTextTemplateLiteral */]: "Only index {0} is allowed here as parameter of text template literal.",
|
13249
|
+
[359 /* OnlyIntegerLiteralInRangeFromZeroToNIsAllowedHereAsParameterOfTextTemplateLiteral */]: "Only integer literal in range from 0 to {0} is allowed here as parameter of text template literal.",
|
13250
|
+
[360 /* OnlyIdentifierIsAllowedHereAsParameterOfTextTemplateLiteral */]: "Only identifier is allowed here as parameter of text template literal.",
|
13251
|
+
[361 /* TranslationFunctionIsNotAllowedWhenIndexesAreUsedAsParametersInSourceTextTemplate */]: "Translation function is not allowed when indexes are used as parameters in source text template.",
|
13252
|
+
[362 /* UnknownParameterOfTextTemplateTranslation */]: "Unknown parameter of text template translation.",
|
13068
13253
|
[401 /* CannotFindTsLibDirectoryBaseSearchPaths0 */]: "Can not find directory with TypeScript library. Base search paths: {0}.",
|
13069
13254
|
[402 /* SourceFile0IsNotPartOfThePackageAndWontBeLoaded */]: "Source file '{0}' is not part of the package and won't be loaded.",
|
13070
13255
|
[403 /* ProgramWithoutMainPackageCannotBeCompiled */]: "Program without main package cannot be compiled.",
|
@@ -13267,7 +13452,12 @@ var russianErrorMessages = {
|
|
13267
13452
|
[354 /* CannotAccessAbstractMemberOfBaseType */]: "\u041D\u0435\u043B\u044C\u0437\u044F \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u044C\u0441\u044F \u043A \u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u043E\u043C\u0443 \u0447\u043B\u0435\u043D\u0443 \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430.",
|
13268
13453
|
[355 /* TheFollowingBaseTypeMembersConflictAndMustBeOverridden0 */]: "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u0447\u043B\u0435\u043D\u044B \u0431\u0430\u0437\u043E\u0432\u044B\u0445 \u0442\u0438\u043F\u043E\u0432 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u044E\u0442 \u043C\u0435\u0436\u0434\u0443 \u0441\u043E\u0431\u043E\u0439 \u0438 \u0434\u043E\u043B\u0436\u043D\u044B \u0431\u044B\u0442\u044C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u044B:{0}",
|
13269
13454
|
[356 /* TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1 */]: "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u0447\u043B\u0435\u043D\u044B \u0431\u0430\u0437\u043E\u0432\u044B\u0445 \u0442\u0438\u043F\u043E\u0432 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u044E\u0442 \u043C\u0435\u0436\u0434\u0443 \u0441\u043E\u0431\u043E\u0439, \u043F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u0438\u0445 \u0438\u043C\u0435\u043D\u0430 '{0}' \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u044E\u0442 \u043D\u0430 \u044F\u0437\u044B\u043A\u0435 \u043E\u0440\u0438\u0433\u0438\u043D\u0430\u043B\u0430, \u0438 \u0434\u043E\u043B\u0436\u043D\u044B \u0431\u044B\u0442\u044C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u044B:{1}",
|
13270
|
-
[357 /*
|
13455
|
+
[357 /* EitherIdentifiersOrIntegerIndexesAreAllowedAsParametersOfTextTemplateLiteral */]: "\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u0430\u043C\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0430 \u0442\u0435\u043A\u0441\u0442\u0430 \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u043B\u0438\u0431\u043E \u0438\u043C\u0435\u043D\u0430, \u043B\u0438\u0431\u043E \u0446\u0435\u043B\u043E\u0447\u0438\u0441\u043B\u0435\u043D\u043D\u044B\u0435 \u0438\u043D\u0434\u0435\u043A\u0441\u044B.",
|
13456
|
+
[358 /* OnlyIndex0IsAllowedHereAsParameterOfTextTemplateLiteral */]: "\u0417\u0434\u0435\u0441\u044C \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u043C \u0448\u0430\u0431\u043B\u043E\u043D\u0430 \u0442\u0435\u043A\u0441\u0442\u0430 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0442\u043E\u043B\u044C\u043A\u043E \u0446\u0435\u043B\u043E\u0447\u0438\u0441\u043B\u0435\u043D\u043D\u044B\u0439 \u0438\u043D\u0434\u0435\u043A\u0441 {0}.",
|
13457
|
+
[359 /* OnlyIntegerLiteralInRangeFromZeroToNIsAllowedHereAsParameterOfTextTemplateLiteral */]: "\u0417\u0434\u0435\u0441\u044C \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u043C \u0448\u0430\u0431\u043B\u043E\u043D\u0430 \u0442\u0435\u043A\u0441\u0442\u0430 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0442\u043E\u043B\u044C\u043A\u043E \u0431\u0443\u043A\u0432\u0430\u043B\u044C\u043D\u043E \u0446\u0435\u043B\u043E\u0435 \u0447\u0438\u0441\u043B\u043E \u0432 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D\u0435 \u043E\u0442 0 \u0434\u043E {0}.",
|
13458
|
+
[360 /* OnlyIdentifierIsAllowedHereAsParameterOfTextTemplateLiteral */]: "\u0417\u0434\u0435\u0441\u044C \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u043C \u0448\u0430\u0431\u043B\u043E\u043D\u0430 \u0442\u0435\u043A\u0441\u0442\u0430 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0442\u043E\u043B\u044C\u043A\u043E \u0438\u043C\u044F.",
|
13459
|
+
[361 /* TranslationFunctionIsNotAllowedWhenIndexesAreUsedAsParametersInSourceTextTemplate */]: "\u0414\u043B\u044F \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u0430 \u0448\u0430\u0431\u043B\u043E\u043D\u0430 \u0442\u0435\u043A\u0441\u0442\u0430, \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0433\u043E \u043D\u043E\u043C\u0435\u0440\u0430 \u0432 \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u0432, \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0444\u0443\u043D\u043A\u0446\u0438\u044F.",
|
13460
|
+
[362 /* UnknownParameterOfTextTemplateTranslation */]: "\u041D\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043D\u044B\u0439 \u043F\u0430\u0440\u0430\u043C\u0435\u0442\u0440 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u0438\u043C\u043E\u0433\u043E \u0448\u0430\u0431\u043B\u043E\u043D\u0430 \u0442\u0435\u043A\u0441\u0442\u0430.",
|
13271
13461
|
[401 /* CannotFindTsLibDirectoryBaseSearchPaths0 */]: "\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043D\u0430\u0439\u0442\u0438 \u043F\u0430\u043F\u043A\u0443 \u0441\u043E \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0439 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u043E\u0439 TypeScript. \u041F\u0443\u0442\u0438, \u043E\u0442\u043D\u043E\u0441\u0438\u0442\u0435\u043B\u044C\u043D\u043E \u043A\u043E\u0442\u043E\u0440\u044B\u0445 \u043E\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043B\u044F\u043B\u0441\u044F \u043F\u043E\u0438\u0441\u043A: {0}.",
|
13272
13462
|
[402 /* SourceFile0IsNotPartOfThePackageAndWontBeLoaded */]: "\u0418\u0441\u0445\u043E\u0434\u043D\u044B\u0439 \u0444\u0430\u0439\u043B '{0}' \u043D\u0435 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0447\u0430\u0441\u0442\u044C\u044E \u043F\u0430\u043A\u0435\u0442\u0430 \u0438 \u043D\u0435 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D.",
|
13273
13463
|
[403 /* ProgramWithoutMainPackageCannotBeCompiled */]: "\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0430 \u0431\u0435\u0437 \u0433\u043B\u0430\u0432\u043D\u043E\u0433\u043E \u043F\u0430\u043A\u0435\u0442\u0430 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0441\u043A\u043E\u043C\u043F\u0438\u043B\u0438\u0440\u043E\u0432\u0430\u043D\u0430.",
|
@@ -22237,6 +22427,40 @@ var ExpressionParser = class {
|
|
22237
22427
|
}
|
22238
22428
|
return result;
|
22239
22429
|
}
|
22430
|
+
parseTranslationTextTemplate() {
|
22431
|
+
const literalStart = this.parser.tokenOrKeywordStartPosition();
|
22432
|
+
const head = this.parser.parseExpectedToken(7 /* TextTemplateHead */);
|
22433
|
+
const spanListStart = this.parser.tokenOrKeywordStartPosition();
|
22434
|
+
const spans = new Array();
|
22435
|
+
if (!head.isMissing) {
|
22436
|
+
let span;
|
22437
|
+
do {
|
22438
|
+
const spanStart = this.parser.tokenOrKeywordStartPosition();
|
22439
|
+
let parameter;
|
22440
|
+
if (this.parser.currentTokenOrKeyword.isToken(2 /* IntegerLiteral */)) {
|
22441
|
+
parameter = this.parser.parseExpectedToken(2 /* IntegerLiteral */);
|
22442
|
+
} else {
|
22443
|
+
parameter = this.parseTranslationTextTemplateParameter();
|
22444
|
+
}
|
22445
|
+
const text = this.parseTextTemplatePartOrTail();
|
22446
|
+
span = this.parser.intern(new TranslationTextTemplateSpan2(parameter, text), spanStart);
|
22447
|
+
spans.push(span);
|
22448
|
+
} while (span.text.tokenKind === 8 /* TextTemplatePart */);
|
22449
|
+
}
|
22450
|
+
const spanList = this.parser.intern(new TranslationTextTemplateSpanList2(spans), spanListStart);
|
22451
|
+
const result = new TranslationTextTemplate2(head, spanList);
|
22452
|
+
return this.parser.intern(result, literalStart);
|
22453
|
+
}
|
22454
|
+
parseTranslationTextTemplateParameter() {
|
22455
|
+
const parameterStart = this.parser.tokenOrKeywordStartPosition();
|
22456
|
+
const name = this.parser.parseIdentifier(4 /* Other */);
|
22457
|
+
let typeAnnotation;
|
22458
|
+
if (this.parser.typeAnnotationParser.isStartOfTypeAnnotation()) {
|
22459
|
+
typeAnnotation = this.parser.typeAnnotationParser.parseTypeAnnotation();
|
22460
|
+
}
|
22461
|
+
const result = new TranslationTextTemplateParameter2(name, typeAnnotation);
|
22462
|
+
return this.parser.intern(result, parameterStart);
|
22463
|
+
}
|
22240
22464
|
parseFunctionBlockLiteral() {
|
22241
22465
|
const functionBlockLiteralStart = this.parser.tokenOrKeywordStartPosition();
|
22242
22466
|
const block = this.parser.statementParser.parseFunctionBlock();
|
@@ -23522,11 +23746,15 @@ var TranslationsDeclarationParser = class {
|
|
23522
23746
|
}
|
23523
23747
|
parseTextTemplateLiteralTranslation() {
|
23524
23748
|
const translationStart = this.parser.tokenOrKeywordStartPosition();
|
23525
|
-
const sourceTextTemplateLiteral = this.parser.expressionParser.
|
23749
|
+
const sourceTextTemplateLiteral = this.parser.expressionParser.parseTranslationTextTemplate();
|
23526
23750
|
const minusGreaterThanToken = this.parser.parseExpectedToken(43 /* MinusGreaterThan */);
|
23527
23751
|
let translatedTextOrTranslationFunction;
|
23528
23752
|
if (this.parser.currentTokenOrKeyword.kind === "token") {
|
23529
23753
|
switch (this.parser.currentTokenOrKeyword.tokenKind) {
|
23754
|
+
case 6 /* TextLiteral */: {
|
23755
|
+
translatedTextOrTranslationFunction = this.parser.parseExpectedToken(6 /* TextLiteral */);
|
23756
|
+
break;
|
23757
|
+
}
|
23530
23758
|
case 7 /* TextTemplateHead */: {
|
23531
23759
|
translatedTextOrTranslationFunction = this.parser.expressionParser.parseTextTemplateLiteral();
|
23532
23760
|
break;
|
@@ -23540,6 +23768,9 @@ var TranslationsDeclarationParser = class {
|
|
23540
23768
|
translatedTextOrTranslationFunction = this.parser.expressionParser.parseFunctionLiteral();
|
23541
23769
|
}
|
23542
23770
|
if (translatedTextOrTranslationFunction === void 0) {
|
23771
|
+
if (this.parser.expressionParser.isStartOfExpression(false)) {
|
23772
|
+
this.parser.expressionParser.parseExpression(false);
|
23773
|
+
}
|
23543
23774
|
translatedTextOrTranslationFunction = new InvalidExpression2();
|
23544
23775
|
this.parser.tryReportDiagnosticAtCurrentRange(
|
23545
23776
|
133 /* TranslatedTextTemplateOrTranslationFunctionBlockExpected */
|
@@ -28430,7 +28661,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28430
28661
|
[53 /* FieldGetterDeclaration */]: this.allowedTypeMemberHidingModifiers | 32 /* Static */ | 64 /* Abstract */ | 128 /* Basic */ | 256 /* Override */,
|
28431
28662
|
[54 /* FieldSetterDeclaration */]: this.allowedTypeMemberHidingModifiers | 32 /* Static */ | 64 /* Abstract */ | 128 /* Basic */ | 256 /* Override */,
|
28432
28663
|
[55 /* InvalidTypeMemberDeclaration */]: this.allowedTypeMemberModifiers,
|
28433
|
-
[
|
28664
|
+
[146 /* VariantDeclaration */]: 0 /* None */
|
28434
28665
|
};
|
28435
28666
|
}
|
28436
28667
|
static validatePackageVariableAccessorsHaveConsistentModifiers(analyzer, getterModifiers, setterModifiers, nodeForDiagnostic, diagnostics) {
|
@@ -28941,7 +29172,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28941
29172
|
break;
|
28942
29173
|
case 55 /* InvalidTypeMemberDeclaration */:
|
28943
29174
|
break;
|
28944
|
-
case
|
29175
|
+
case 146 /* VariantDeclaration */:
|
28945
29176
|
this.validateTypeMemberCanBePlacedInGroupWithModifiers(
|
28946
29177
|
declaration.kind,
|
28947
29178
|
declaration.name,
|
@@ -28964,7 +29195,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28964
29195
|
const flag = modifierToModifierFlag(modifier);
|
28965
29196
|
if ((flags & 31 /* AnyHiddenModifier */) !== 0) {
|
28966
29197
|
this.reportDuplicateHiddenModifier(modifier, parentGroupFlags);
|
28967
|
-
} else if (typeMemberDeclarationKind ===
|
29198
|
+
} else if (typeMemberDeclarationKind === 146 /* VariantDeclaration */) {
|
28968
29199
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
28969
29200
|
331 /* VariantDeclarationCannotHaveHiddenModifier */,
|
28970
29201
|
modifier
|
@@ -29245,7 +29476,7 @@ var NodeTypeUtils = class {
|
|
29245
29476
|
case 26 /* PackageFunctionTypeDeclaration */:
|
29246
29477
|
case 17 /* AnonymousFunctionTypeDeclaration */:
|
29247
29478
|
case 20 /* PackageAliasTypeDeclaration */:
|
29248
|
-
case
|
29479
|
+
case 147 /* TypeParameterDeclaration */:
|
29249
29480
|
return true;
|
29250
29481
|
default:
|
29251
29482
|
Debug.typeIsAssignableTo();
|
@@ -29259,7 +29490,7 @@ var NodeTypeUtils = class {
|
|
29259
29490
|
case 36 /* PackageVariantTypeDeclaration */:
|
29260
29491
|
case 26 /* PackageFunctionTypeDeclaration */:
|
29261
29492
|
case 20 /* PackageAliasTypeDeclaration */:
|
29262
|
-
case
|
29493
|
+
case 147 /* TypeParameterDeclaration */:
|
29263
29494
|
return true;
|
29264
29495
|
default:
|
29265
29496
|
Debug.typeIsAssignableTo();
|
@@ -29304,7 +29535,7 @@ var NodeTypeUtils = class {
|
|
29304
29535
|
case 46 /* IndexedElementSetterDeclaration */:
|
29305
29536
|
case 48 /* DereferencedVariableGetterDeclaration */:
|
29306
29537
|
case 49 /* DereferencedVariableSetterDeclaration */:
|
29307
|
-
case
|
29538
|
+
case 146 /* VariantDeclaration */:
|
29308
29539
|
case 42 /* TypeMemberGroupDeclaration */:
|
29309
29540
|
case 55 /* InvalidTypeMemberDeclaration */:
|
29310
29541
|
return true;
|
@@ -29434,9 +29665,9 @@ var NodeTypeUtils = class {
|
|
29434
29665
|
case 58 /* EnumerationVariableDeclaration */:
|
29435
29666
|
case 33 /* PackageVariableDeclaration */:
|
29436
29667
|
case 57 /* LocalVariableDeclaration */:
|
29437
|
-
case
|
29668
|
+
case 148 /* ParameterDeclaration */:
|
29438
29669
|
case 52 /* FieldDeclaration */:
|
29439
|
-
case
|
29670
|
+
case 146 /* VariantDeclaration */:
|
29440
29671
|
return true;
|
29441
29672
|
default:
|
29442
29673
|
Debug.typeIsAssignableTo();
|
@@ -39292,7 +39523,7 @@ function getDiagnosticRange(entity, preferSetterParameter = false) {
|
|
39292
39523
|
if (definition.value.nodes.length === 1) {
|
39293
39524
|
return definition.value.nodes[0].name.rangeWithoutTrivia;
|
39294
39525
|
} else if (definition.value.nodes.length > 1) {
|
39295
|
-
if (definition.value.nodes.every((n) => n.kind ===
|
39526
|
+
if (definition.value.nodes.every((n) => n.kind === 148 /* ParameterDeclaration */)) {
|
39296
39527
|
const getterParameterDeclaration = definition.value.nodes.find((n) => n.parent.parent.parent.kind === 45 /* IndexedElementGetterDeclaration */);
|
39297
39528
|
const setterParameterDeclaration = definition.value.nodes.find((n) => n.parent.parent.parent.kind === 46 /* IndexedElementSetterDeclaration */);
|
39298
39529
|
if (setterParameterDeclaration !== void 0 && preferSetterParameter) {
|
@@ -40537,7 +40768,7 @@ var Analyzer = class _Analyzer {
|
|
40537
40768
|
case 69 /* AutotypeCallExpression */:
|
40538
40769
|
matchResult = this.argumentToParameterMatchResult.ofAutotypeCallExpression(node.parent.parent);
|
40539
40770
|
break;
|
40540
|
-
case
|
40771
|
+
case 151 /* Tag */:
|
40541
40772
|
matchResult = this.argumentToParameterMatchResult.ofTag(node.parent.parent);
|
40542
40773
|
break;
|
40543
40774
|
case 70 /* IndexedAccessExpression */:
|
@@ -41386,10 +41617,6 @@ var Analyzer = class _Analyzer {
|
|
41386
41617
|
return result;
|
41387
41618
|
});
|
41388
41619
|
}
|
41389
|
-
isFunctionResultNone(node) {
|
41390
|
-
const returnType = this.semanticContext.ofFunctionBlock(node).getContainingSubprogram()?.getReturnType();
|
41391
|
-
return returnType === void 0 || returnType.equals(this.standardTypes.none);
|
41392
|
-
}
|
41393
41620
|
createBackingPackageVariables(declaredMembers, pkg) {
|
41394
41621
|
const declarationNames = Query.from(declaredMembers).map((d) => d.getName().key).uniqueToSet();
|
41395
41622
|
const result = new Array();
|
@@ -41526,7 +41753,7 @@ var Analyzer = class _Analyzer {
|
|
41526
41753
|
}
|
41527
41754
|
break;
|
41528
41755
|
}
|
41529
|
-
case
|
41756
|
+
case 146 /* VariantDeclaration */: {
|
41530
41757
|
variables.push(this.entity.ofVariantDeclaration(member));
|
41531
41758
|
break;
|
41532
41759
|
}
|
@@ -41810,7 +42037,7 @@ var Analyzer = class _Analyzer {
|
|
41810
42037
|
case 36 /* PackageVariantTypeDeclaration */:
|
41811
42038
|
semanticContext = this.semanticContext.outermostSemanticContextOfTypeDeclaration(node);
|
41812
42039
|
break;
|
41813
|
-
case
|
42040
|
+
case 147 /* TypeParameterDeclaration */:
|
41814
42041
|
semanticContext = this.semanticContext.containing(node);
|
41815
42042
|
break;
|
41816
42043
|
default:
|
@@ -41822,9 +42049,13 @@ var Analyzer = class _Analyzer {
|
|
41822
42049
|
if (node.expressionOrStatementList.kind === 90 /* StatementList */) {
|
41823
42050
|
return false;
|
41824
42051
|
}
|
41825
|
-
|
41826
|
-
|
41827
|
-
|
42052
|
+
const functionContext = this.semanticContext.ofFunctionBlock(node);
|
42053
|
+
const returnType = functionContext.getContainingSubprogram()?.getReturnType();
|
42054
|
+
if (returnType === void 0 || returnType.equals(this.standardTypes.none)) {
|
42055
|
+
if (node.expressionOrStatementList.kind === 68 /* CallExpression */) {
|
42056
|
+
return false;
|
42057
|
+
}
|
42058
|
+
if (functionContext.getContainingPackage().getDialect() !== 1 /* ArtelA */) {
|
41828
42059
|
return false;
|
41829
42060
|
}
|
41830
42061
|
}
|
@@ -42580,10 +42811,10 @@ var Type4 = class {
|
|
42580
42811
|
).finish([], []);
|
42581
42812
|
return this._analyzer.typeFactory.getFunctionType(entity, Substitutions.empty(this._analyzer));
|
42582
42813
|
}
|
42583
|
-
// Данный метод не должен получать
|
42814
|
+
// Данный метод не должен получать объект entity параметров и вызывать у них getType(), поскольку получение типа
|
42584
42815
|
// реализовано через получение сигнатуры, что приведёт к рекурсии.
|
42585
42816
|
// Выведение типа через значение по умолчанию пока не поддерживается, поскольку может привести к рекурсии, если в
|
42586
|
-
// качестве значения по умолчанию указан параметр этой же безымянной
|
42817
|
+
// качестве значения по умолчанию указан параметр этой же безымянной функции.
|
42587
42818
|
inferFunctionLiteralTypeFromNodeWithFallbackToTargetType(node, targetType) {
|
42588
42819
|
const isAsync = node.asyncKeyword !== void 0;
|
42589
42820
|
const parameters = [];
|
@@ -42634,10 +42865,10 @@ var Type4 = class {
|
|
42634
42865
|
const entity = unfinishedEntity.finish([], parameters);
|
42635
42866
|
return this._analyzer.typeFactory.getFunctionType(entity, Substitutions.empty(this._analyzer));
|
42636
42867
|
}
|
42637
|
-
// Данный метод не должен получать
|
42868
|
+
// Данный метод не должен получать объект entity параметров и вызывать у них getType(), поскольку получение типа
|
42638
42869
|
// реализовано через получение сигнатуры, что приведёт к рекурсии.
|
42639
42870
|
// Выведение типа через значение по умолчанию пока не поддерживается, поскольку может привести к рекурсии, если в
|
42640
|
-
// качестве значения по умолчанию указан параметр этой же безымянной
|
42871
|
+
// качестве значения по умолчанию указан параметр этой же безымянной функции.
|
42641
42872
|
inferFunctionLiteralTypeFromNode(node) {
|
42642
42873
|
const isAsync = node.asyncKeyword !== void 0;
|
42643
42874
|
let returnType;
|
@@ -42700,6 +42931,7 @@ var TargetType = class {
|
|
42700
42931
|
constructor(_analyzer) {
|
42701
42932
|
this._analyzer = _analyzer;
|
42702
42933
|
this._targetErrorType = new Cached();
|
42934
|
+
this._translationFunctionTypes = /* @__PURE__ */ new Map();
|
42703
42935
|
}
|
42704
42936
|
get targetErrorType() {
|
42705
42937
|
return this._targetErrorType.getOrInsertWith(() => this._analyzer.typeFactory.getUnionType([this._analyzer.standardTypes.error, this._analyzer.standardTypes.text]));
|
@@ -42718,7 +42950,7 @@ var TargetType = class {
|
|
42718
42950
|
return this.getTargetTypeOfChildOfAssignmentStatement(node.parent, node);
|
42719
42951
|
case 64 /* BinaryExpression */:
|
42720
42952
|
return this.getTargetTypeOfChildOfBinaryExpression(node.parent, node);
|
42721
|
-
case
|
42953
|
+
case 149 /* Argument */:
|
42722
42954
|
return this.getTargetTypeOfChildOfArgument(node.parent, node);
|
42723
42955
|
case 68 /* CallExpression */:
|
42724
42956
|
return this.getTargetTypeOfChildOfCallExpression(node.parent, node);
|
@@ -42742,7 +42974,7 @@ var TargetType = class {
|
|
42742
42974
|
return this.getTargetTypeOfChildOfIsExpression(node.parent, node);
|
42743
42975
|
case 57 /* LocalVariableDeclaration */:
|
42744
42976
|
return this.getTargetTypeOfChildOfLocalVariableDeclaration(node.parent, node);
|
42745
|
-
case
|
42977
|
+
case 148 /* ParameterDeclaration */:
|
42746
42978
|
return this.getTargetTypeOfChildOfParameterDeclaration(node.parent, node);
|
42747
42979
|
case 73 /* ParenthesizedExpression */:
|
42748
42980
|
return this.getTargetTypeOfChildOfParenthesizedExpression(node.parent, node);
|
@@ -42768,7 +43000,7 @@ var TargetType = class {
|
|
42768
43000
|
return this.getTargetTypeOfChildOfSwitchStatement(node.parent, node);
|
42769
43001
|
case 118 /* MatchExpressionList */:
|
42770
43002
|
return this.getTargetTypeOfChildOfMatchExpressionList(node.parent, node);
|
42771
|
-
case
|
43003
|
+
case 146 /* VariantDeclaration */:
|
42772
43004
|
return this.getTargetTypeOfChildOfVariantDeclaration(node.parent, node);
|
42773
43005
|
case 120 /* WhileStatement */:
|
42774
43006
|
return this.getTargetTypeOfChildOfWhileStatement(node.parent, node);
|
@@ -42778,10 +43010,10 @@ var TargetType = class {
|
|
42778
43010
|
return this.getTargetTypeOfChildOfGenericSpecializationExpression(node.parent, node);
|
42779
43011
|
case 109 /* ElseIfClause */:
|
42780
43012
|
return this.getTargetTypeOfChildOfElseIfClause(node.parent, node);
|
42781
|
-
case 141 /* TextTemplateLiteralTranslation */:
|
42782
|
-
return this.getTargetTypeOfChildOfTextTemplateLiteralTranslation(node.parent, node);
|
42783
43013
|
case 92 /* FunctionBlock */:
|
42784
43014
|
return this.getTargetTypeOfChildOfFunctionBlock(node.parent, node);
|
43015
|
+
case 141 /* TextTemplateLiteralTranslation */:
|
43016
|
+
return this.getTargetTypeOfChildOfTextTemplateLiteralTranslation(node.parent, node);
|
42785
43017
|
default:
|
42786
43018
|
Debug.never(node.parent);
|
42787
43019
|
}
|
@@ -42990,9 +43222,6 @@ var TargetType = class {
|
|
42990
43222
|
Debug.assert(child === parent.expression);
|
42991
43223
|
return this.ofExpression(parent);
|
42992
43224
|
}
|
42993
|
-
getTargetTypeOfChildOfTextTemplateLiteralTranslation(_parent, _child) {
|
42994
|
-
return void 0;
|
42995
|
-
}
|
42996
43225
|
getTargetTypeOfChildOfFunctionBlock(parent, child) {
|
42997
43226
|
Debug.assert(child === parent.expressionOrStatementList);
|
42998
43227
|
if (this._analyzer.isFunctionBlockWithImplicitlyReturnedExpression(parent)) {
|
@@ -43001,6 +43230,58 @@ var TargetType = class {
|
|
43001
43230
|
return void 0;
|
43002
43231
|
}
|
43003
43232
|
}
|
43233
|
+
getTargetTypeOfChildOfTextTemplateLiteralTranslation(parent, child) {
|
43234
|
+
Debug.assert(child === parent.translatedTextOrTranslationFunction);
|
43235
|
+
let result = this._translationFunctionTypes.get(parent);
|
43236
|
+
if (result === void 0) {
|
43237
|
+
result = this.createTranslationFunctionTypeFromTextTemplate(parent);
|
43238
|
+
this._translationFunctionTypes.set(parent, result);
|
43239
|
+
}
|
43240
|
+
return void 0;
|
43241
|
+
}
|
43242
|
+
createTranslationFunctionTypeFromTextTemplate(node) {
|
43243
|
+
if (node.translatedTextOrTranslationFunction.kind === 65 /* FunctionLiteral */ || node.translatedTextOrTranslationFunction.kind === 66 /* FunctionBlockLiteral */) {
|
43244
|
+
const parameters = [];
|
43245
|
+
const templateSpans = node.sourceText.spanList.spans;
|
43246
|
+
const returnType = this._analyzer.standardTypes.text;
|
43247
|
+
const containingPackage = TreeQuery.fromNode(node).packageEntity(this._analyzer);
|
43248
|
+
const isAsync = false;
|
43249
|
+
const unfinishedEntity = new UnfinishedIntrinsicAnonymousFunctionTypeEntity(
|
43250
|
+
this._analyzer,
|
43251
|
+
returnType,
|
43252
|
+
isAsync,
|
43253
|
+
0 /* SubstituteOwnSubstitutions */,
|
43254
|
+
containingPackage,
|
43255
|
+
void 0,
|
43256
|
+
EntityContext.fromSemanticContext(
|
43257
|
+
this._analyzer.semanticContext.outermostSemanticContextOfRegularOrBlockFunctionLiteral(
|
43258
|
+
node.translatedTextOrTranslationFunction
|
43259
|
+
)
|
43260
|
+
)
|
43261
|
+
);
|
43262
|
+
for (let i = 0; i < templateSpans.length; i++) {
|
43263
|
+
const span = templateSpans[i];
|
43264
|
+
const parameter = span.parameter;
|
43265
|
+
if (parameter.kind === 145 /* TranslationTextTemplateParameter */) {
|
43266
|
+
const name = this._analyzer.createNameFromIdentifier(parameter.name);
|
43267
|
+
const parameterType = this._analyzer.standardTypes.refObject;
|
43268
|
+
parameters.push(
|
43269
|
+
new IntrinsicParameterVariableEntity(
|
43270
|
+
name,
|
43271
|
+
parameterType,
|
43272
|
+
new ParameterVariableEntityContainer.Entity(unfinishedEntity.unfinishedValue),
|
43273
|
+
false,
|
43274
|
+
false,
|
43275
|
+
void 0
|
43276
|
+
)
|
43277
|
+
);
|
43278
|
+
}
|
43279
|
+
}
|
43280
|
+
const entity = unfinishedEntity.finish([], parameters);
|
43281
|
+
return this._analyzer.typeFactory.getFunctionType(entity, Substitutions.empty(this._analyzer));
|
43282
|
+
}
|
43283
|
+
return void 0;
|
43284
|
+
}
|
43004
43285
|
};
|
43005
43286
|
var ReturnType = class {
|
43006
43287
|
constructor(_analyzer) {
|
@@ -46461,7 +46742,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46461
46742
|
this.checkDereferenceExpression(node);
|
46462
46743
|
break;
|
46463
46744
|
}
|
46464
|
-
case
|
46745
|
+
case 151 /* Tag */: {
|
46465
46746
|
const { diagnostic } = this._analyzer.resolveTag(node);
|
46466
46747
|
this.addMaybeLazyDiagnostic(diagnostic);
|
46467
46748
|
const matchResult = this._analyzer.argumentToParameterMatchResult.ofTag(node);
|
@@ -46565,24 +46846,85 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46565
46846
|
}
|
46566
46847
|
case 141 /* TextTemplateLiteralTranslation */: {
|
46567
46848
|
const sourceSpans = node.sourceText.spanList.spans;
|
46568
|
-
sourceSpans.
|
46569
|
-
|
46570
|
-
|
46571
|
-
|
46572
|
-
|
46573
|
-
|
46849
|
+
const parametersAreNames = sourceSpans.every((span) => span.parameter.kind === 145 /* TranslationTextTemplateParameter */ && span.parameter.name.isMissing === false);
|
46850
|
+
const parametersAreIndexes = !parametersAreNames && sourceSpans.every((span) => span.parameter.kind === 0 /* Token */ && span.parameter.tokenKind === 2 /* IntegerLiteral */ && span.parameter.isMissing === false);
|
46851
|
+
if (parametersAreNames) {
|
46852
|
+
const names = sourceSpans.map((span) => {
|
46853
|
+
Debug.assert(span.parameter.kind === 145 /* TranslationTextTemplateParameter */);
|
46854
|
+
return span.parameter.name.value;
|
46855
|
+
});
|
46856
|
+
switch (node.translatedTextOrTranslationFunction.kind) {
|
46857
|
+
case 0 /* Token */:
|
46858
|
+
break;
|
46859
|
+
case 79 /* TextTemplateLiteral */: {
|
46860
|
+
const targetSpans = node.translatedTextOrTranslationFunction.spanList.spans;
|
46861
|
+
targetSpans.forEach((span) => {
|
46862
|
+
if (span.expression.kind === 86 /* IdentifierExpression */) {
|
46863
|
+
if (!names.includes(span.expression.identifier.value)) {
|
46864
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46865
|
+
362 /* UnknownParameterOfTextTemplateTranslation */,
|
46866
|
+
span.expression
|
46867
|
+
));
|
46868
|
+
}
|
46869
|
+
} else {
|
46870
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46871
|
+
360 /* OnlyIdentifierIsAllowedHereAsParameterOfTextTemplateLiteral */,
|
46872
|
+
span.expression
|
46873
|
+
));
|
46874
|
+
}
|
46875
|
+
});
|
46876
|
+
break;
|
46877
|
+
}
|
46878
|
+
case 66 /* FunctionBlockLiteral */:
|
46879
|
+
case 65 /* FunctionLiteral */: {
|
46880
|
+
break;
|
46881
|
+
}
|
46574
46882
|
}
|
46575
|
-
}
|
46576
|
-
|
46577
|
-
|
46578
|
-
|
46579
|
-
|
46883
|
+
} else {
|
46884
|
+
if (parametersAreIndexes) {
|
46885
|
+
sourceSpans.forEach((span, i) => {
|
46886
|
+
Debug.assert(span.parameter.kind === 0 /* Token */ && span.parameter.tokenKind === 2 /* IntegerLiteral */);
|
46887
|
+
if (Number.parseInt(span.parameter.value) !== i) {
|
46888
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46889
|
+
358 /* OnlyIndex0IsAllowedHereAsParameterOfTextTemplateLiteral */,
|
46890
|
+
span.parameter,
|
46891
|
+
[i.toString()]
|
46892
|
+
));
|
46893
|
+
}
|
46894
|
+
});
|
46895
|
+
switch (node.translatedTextOrTranslationFunction.kind) {
|
46896
|
+
case 0 /* Token */:
|
46897
|
+
break;
|
46898
|
+
case 79 /* TextTemplateLiteral */: {
|
46899
|
+
const targetSpans = node.translatedTextOrTranslationFunction.spanList.spans;
|
46900
|
+
targetSpans.forEach((span, i) => {
|
46901
|
+
if (!(span.expression.kind === 82 /* TokenExpression */ && span.expression.token.tokenKind === 2 /* IntegerLiteral */ && isNumberInRange(Number.parseInt(span.expression.token.value), 0, sourceSpans.length))) {
|
46902
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46903
|
+
359 /* OnlyIntegerLiteralInRangeFromZeroToNIsAllowedHereAsParameterOfTextTemplateLiteral */,
|
46904
|
+
span.expression,
|
46905
|
+
[(sourceSpans.length - 1).toString()]
|
46906
|
+
));
|
46907
|
+
}
|
46908
|
+
});
|
46909
|
+
break;
|
46910
|
+
}
|
46911
|
+
case 66 /* FunctionBlockLiteral */:
|
46912
|
+
case 65 /* FunctionLiteral */: {
|
46913
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46914
|
+
361 /* TranslationFunctionIsNotAllowedWhenIndexesAreUsedAsParametersInSourceTextTemplate */,
|
46915
|
+
node.translatedTextOrTranslationFunction
|
46916
|
+
));
|
46917
|
+
break;
|
46918
|
+
}
|
46919
|
+
}
|
46920
|
+
} else {
|
46921
|
+
sourceSpans.forEach((span) => {
|
46580
46922
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46581
|
-
357 /*
|
46582
|
-
span.
|
46923
|
+
357 /* EitherIdentifiersOrIntegerIndexesAreAllowedAsParametersOfTextTemplateLiteral */,
|
46924
|
+
span.parameter
|
46583
46925
|
));
|
46584
|
-
}
|
46585
|
-
}
|
46926
|
+
});
|
46927
|
+
}
|
46586
46928
|
}
|
46587
46929
|
break;
|
46588
46930
|
}
|
@@ -46827,7 +47169,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46827
47169
|
const underlyingType = this._analyzer.entity.ofVariantTypeDeclaration(node.parent).getUnderlyingType();
|
46828
47170
|
const isIntegerVariant = underlyingType.equals(this._analyzer.standardTypes.integer);
|
46829
47171
|
for (const member of node.memberBlock.memberList.members) {
|
46830
|
-
if (member.kind ===
|
47172
|
+
if (member.kind === 146 /* VariantDeclaration */) {
|
46831
47173
|
if (member.value === void 0 && !isIntegerVariant) {
|
46832
47174
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46833
47175
|
241 /* VariantMustHaveAssociatedValue */,
|
@@ -46908,7 +47250,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46908
47250
|
).validate();
|
46909
47251
|
break;
|
46910
47252
|
}
|
46911
|
-
case
|
47253
|
+
case 147 /* TypeParameterDeclaration */: {
|
46912
47254
|
const entity = this._analyzer.entity.ofTypeParameterDeclaration(node);
|
46913
47255
|
if (entity.getConstraint().causesCycle) {
|
46914
47256
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
@@ -46941,7 +47283,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46941
47283
|
this.checkIfVariableIsUnused(entity, node.name);
|
46942
47284
|
break;
|
46943
47285
|
}
|
46944
|
-
case
|
47286
|
+
case 148 /* ParameterDeclaration */: {
|
46945
47287
|
this.checkParameterDeclaration(node);
|
46946
47288
|
break;
|
46947
47289
|
}
|
@@ -48482,6 +48824,9 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
48482
48824
|
}
|
48483
48825
|
}
|
48484
48826
|
};
|
48827
|
+
function isNumberInRange(num, inclusiveLowerBound, exclusiveUpperBound) {
|
48828
|
+
return num >= inclusiveLowerBound && num < exclusiveUpperBound;
|
48829
|
+
}
|
48485
48830
|
var requiredParameterCountBySyntacticalOperatorKind = {
|
48486
48831
|
[0 /* Plus */]: 1 /* ZeroOrOne */,
|
48487
48832
|
[1 /* Minus */]: 1 /* ZeroOrOne */,
|
@@ -51688,7 +52033,7 @@ var PackageVariantTypeDeclarationEntity = class {
|
|
51688
52033
|
getUnderlyingType() {
|
51689
52034
|
return this._underlyingType.getOrInsertWith(() => {
|
51690
52035
|
let result;
|
51691
|
-
const variants = Query.from(flattenTypeMemberDeclarationList(this._node.body.memberBlock.memberList)).filter((m) => m.kind ===
|
52036
|
+
const variants = Query.from(flattenTypeMemberDeclarationList(this._node.body.memberBlock.memberList)).filter((m) => m.kind === 146 /* VariantDeclaration */);
|
51692
52037
|
for (const variant of variants) {
|
51693
52038
|
if (variant.value !== void 0) {
|
51694
52039
|
const value = unwrapParenthesizedExpressions(variant.value);
|
@@ -51783,7 +52128,7 @@ var AnonymousVariantTypeDeclarationEntity = class {
|
|
51783
52128
|
}
|
51784
52129
|
getUnderlyingType() {
|
51785
52130
|
return this._underlyingType.getOrInsertWith(() => {
|
51786
|
-
const firstVariant = this._node.body.memberBlock.memberList.members.first((m) => m.kind ===
|
52131
|
+
const firstVariant = this._node.body.memberBlock.memberList.members.first((m) => m.kind === 146 /* VariantDeclaration */);
|
51787
52132
|
if (firstVariant?.value !== void 0) {
|
51788
52133
|
const type = this._analyzer.type.ofExpression(firstVariant.value);
|
51789
52134
|
if (type.equals(this._analyzer.standardTypes.integer) || type.equals(this._analyzer.standardTypes.number) || type.equals(this._analyzer.standardTypes.text)) {
|
@@ -61314,7 +61659,7 @@ var IrBuilder = class {
|
|
61314
61659
|
buildPackageVariantTypeDeclaration(declaration) {
|
61315
61660
|
const modifiers = new Modifiers();
|
61316
61661
|
const underlyingTypeKind = this.getUnderlyingTypeKind(this._analyzer.entity.ofPackageVariantTypeDeclaration(declaration));
|
61317
|
-
const variants = Query.from(declaration.body.memberBlock.memberList.members).mapAndFilter((m) => m.kind ===
|
61662
|
+
const variants = Query.from(declaration.body.memberBlock.memberList.members).mapAndFilter((m) => m.kind === 146 /* VariantDeclaration */ ? this.buildVariantDeclaration(m) : void 0).toArray();
|
61318
61663
|
const originalEntity = this._analyzer.entity.ofPackageVariantTypeDeclaration(declaration);
|
61319
61664
|
const entity = this._entityMap.getVariantTypeEntity(originalEntity);
|
61320
61665
|
return new PackageVariantTypeDeclaration4(
|
@@ -61387,7 +61732,7 @@ var IrBuilder = class {
|
|
61387
61732
|
case 55 /* InvalidTypeMemberDeclaration */:
|
61388
61733
|
Logger.errorAtNode("Unexpected invalid structured type member.", member);
|
61389
61734
|
break;
|
61390
|
-
case
|
61735
|
+
case 146 /* VariantDeclaration */:
|
61391
61736
|
break;
|
61392
61737
|
case 53 /* FieldGetterDeclaration */:
|
61393
61738
|
case 54 /* FieldSetterDeclaration */: {
|
@@ -63085,7 +63430,7 @@ var IrBuilder = class {
|
|
63085
63430
|
buildAnonymousVariantTypeDeclaration(declaration) {
|
63086
63431
|
const modifiers = new Modifiers();
|
63087
63432
|
const underlyingTypeKind = this.getUnderlyingTypeKind(this._analyzer.entity.ofAnonymousVariantTypeDeclaration(declaration));
|
63088
|
-
const variants = Query.from(declaration.body.memberBlock.memberList.members).mapAndFilter((m) => m.kind ===
|
63433
|
+
const variants = Query.from(declaration.body.memberBlock.memberList.members).mapAndFilter((m) => m.kind === 146 /* VariantDeclaration */ ? this.buildVariantDeclaration(m) : void 0).toArray();
|
63089
63434
|
const originalEntity = this._analyzer.entity.ofAnonymousVariantTypeDeclaration(declaration);
|
63090
63435
|
const entity = this._entityMap.getVariantTypeEntity(originalEntity);
|
63091
63436
|
return new PackageVariantTypeDeclaration4(
|