@artel/artc 0.6.25210 → 0.6.25211
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 +14 -4
- package/build/api/ApiNodeJS.js +3 -3
- package/build/api/ApiServices.js +318 -333
- package/build/{chunk-CAQIZO5K.js → chunk-5BGDYCRQ.js} +2 -2
- package/build/{chunk-HRQLSHI7.js → chunk-EYLAO2SF.js} +1 -1
- package/build/{chunk-3ORG7RXI.js → chunk-Y3KGPV3L.js} +1498 -1616
- package/build/types/analysis/Analyzer.d.ts +1 -2
- package/build/types/common/Debug.d.ts +3 -0
- package/build/types/common/Logger.d.ts +1 -1
- package/build/types/emitter/Transformer.d.ts +1 -1
- package/build/types/emitter/ir/Nodes.d.ts +13 -11
- package/build/types/entities/BinaryOperatorEntity.d.ts +4 -1
- package/build/types/entities/EntityHiding.d.ts +2 -2
- package/build/types/entities/OperatorEntity.d.ts +45 -0
- package/build/types/entities/OperatorKind.d.ts +63 -0
- package/build/types/entities/UnaryOperatorEntity.d.ts +2 -1
- package/build/types/entities/VariableEntity.d.ts +1 -11
- package/build/types/entities/index.d.ts +7 -4
- package/build/types/parser/OperatorDictionary.d.ts +11 -0
- package/build/types/services/DisplayService.d.ts +5 -5
- package/build/types/tree/KeywordKind.d.ts +25 -29
- package/build/types/tree/NodeKind.d.ts +83 -87
- package/build/types/tree/OperatorKind.d.ts +23 -0
- package/build/types/tree/green/Nodes.d.ts +27 -83
- package/build/types/tree/green/Token.d.ts +4 -3
- package/build/types/tree/green/index.d.ts +1 -0
- package/build/types/tree/index.d.ts +0 -3
- package/build/types/tree/red/Nodes.d.ts +22 -74
- package/build/types/tree/red/index.d.ts +4 -0
- package/build/types/ts-interop/Entities.d.ts +0 -4
- package/package.json +4 -4
- package/build/types/emitter/IntrinsicEntities.d.ts +0 -118
- /package/build/types/emitter/{error-boundary.d.ts → ErrorBoundary.d.ts} +0 -0
package/build/api/ApiServices.js
CHANGED
@@ -181,7 +181,7 @@ import {
|
|
181
181
|
unwrapParenthesizedExpressions,
|
182
182
|
visitChildren,
|
183
183
|
yieldExecution
|
184
|
-
} from "../chunk-
|
184
|
+
} from "../chunk-Y3KGPV3L.js";
|
185
185
|
|
186
186
|
// source/services/CustomCommand.ts
|
187
187
|
import * as ls from "vscode-languageserver";
|
@@ -301,7 +301,7 @@ var AddPropertyAssignmentService = class {
|
|
301
301
|
let result;
|
302
302
|
let leftValueText;
|
303
303
|
if (propertyName !== void 0) {
|
304
|
-
if (assignmentNode.left.kind !==
|
304
|
+
if (assignmentNode.left.kind !== 79 /* PropertyAccessExpression */) {
|
305
305
|
return void 0;
|
306
306
|
}
|
307
307
|
const propertyReceiver = assignmentNode.left.expression;
|
@@ -366,20 +366,18 @@ var AddPropertyAssignmentService = class {
|
|
366
366
|
case 55 /* TypeVariableSetterDeclaration */:
|
367
367
|
case 57 /* NestedMethodDeclaration */:
|
368
368
|
case 66 /* MethodBlockLiteral */:
|
369
|
-
case
|
369
|
+
case 75 /* MethodLiteral */:
|
370
370
|
return void 0;
|
371
|
-
case
|
371
|
+
case 99 /* RunStatement */:
|
372
372
|
return this.ifShouldBeAssignedAtTheEndOfSubprogramThenBody(parent);
|
373
|
-
case
|
374
|
-
case
|
375
|
-
case
|
376
|
-
case
|
377
|
-
case
|
378
|
-
case
|
379
|
-
case
|
380
|
-
case
|
381
|
-
case 123 /* TransactionalStatement */:
|
382
|
-
case 124 /* WhileStatement */:
|
373
|
+
case 100 /* OnErrorClause */:
|
374
|
+
case 102 /* FinallyClause */:
|
375
|
+
case 107 /* ForStatement */:
|
376
|
+
case 108 /* IfStatement */:
|
377
|
+
case 110 /* ElseIfClause */:
|
378
|
+
case 114 /* LoopStatement */:
|
379
|
+
case 119 /* SwitchStatementCaseClause */:
|
380
|
+
case 120 /* WhileStatement */:
|
383
381
|
return this.getContainingSubprogram(parent)?.body;
|
384
382
|
default:
|
385
383
|
Debug.never(parent);
|
@@ -414,7 +412,7 @@ function isSubprogramDeclaration(node) {
|
|
414
412
|
case 55 /* TypeVariableSetterDeclaration */:
|
415
413
|
case 57 /* NestedMethodDeclaration */:
|
416
414
|
case 66 /* MethodBlockLiteral */:
|
417
|
-
case
|
415
|
+
case 75 /* MethodLiteral */:
|
418
416
|
return true;
|
419
417
|
default:
|
420
418
|
Debug.typeIsAssignableTo();
|
@@ -484,7 +482,7 @@ var SyntaxFactory = class {
|
|
484
482
|
static packageMethodDeclaration(tags, modifiers, name, typeParameters, parameters, returnTypeSpecifier, body) {
|
485
483
|
const tagList = new TagList(tags);
|
486
484
|
const modifierList = new ModifierList(modifiers);
|
487
|
-
const
|
485
|
+
const functionKeyword = this.keyword(11 /* Function */);
|
488
486
|
const nameIdentifier = this.createIdentifier(name);
|
489
487
|
const typeParameterClause = this.createTypeParameterClause(typeParameters);
|
490
488
|
const parameterClause = this.parameterClause(parameters);
|
@@ -492,7 +490,7 @@ var SyntaxFactory = class {
|
|
492
490
|
return new PackageMethodDeclaration(
|
493
491
|
tagList,
|
494
492
|
modifierList,
|
495
|
-
|
493
|
+
functionKeyword,
|
496
494
|
nameIdentifier,
|
497
495
|
typeParameterClause,
|
498
496
|
parameterClause,
|
@@ -518,10 +516,10 @@ var SyntaxFactory = class {
|
|
518
516
|
);
|
519
517
|
}
|
520
518
|
static methodTypeDeclarationBody(parameters, returnTypeSpecifier) {
|
521
|
-
const
|
519
|
+
const functionKeyword = this.keyword(11 /* Function */);
|
522
520
|
const parameterClause = this.parameterClause(parameters);
|
523
521
|
const returnTypeAnnotation = this.createTypeAnnotation(returnTypeSpecifier);
|
524
|
-
return new MethodTypeDeclarationBody(void 0,
|
522
|
+
return new MethodTypeDeclarationBody(void 0, functionKeyword, parameterClause, returnTypeAnnotation);
|
525
523
|
}
|
526
524
|
static packageStructuredTypeDeclaration(tags, modifiers, name, typeParameters, body) {
|
527
525
|
const tagList = new TagList(tags);
|
@@ -571,7 +569,7 @@ var SyntaxFactory = class {
|
|
571
569
|
static packageVariableGetterDeclaration(tags, modifiers, name, typeSpecifier, body) {
|
572
570
|
const tagList = new TagList(tags);
|
573
571
|
const modifierList = new ModifierList(modifiers);
|
574
|
-
const getKeyword = this.keyword(
|
572
|
+
const getKeyword = this.keyword(57 /* Get */);
|
575
573
|
const nameIdentifier = this.createIdentifier(name);
|
576
574
|
const typeAnnotation = this.typeAnnotation(typeSpecifier);
|
577
575
|
return new PackageVariableGetterDeclaration(
|
@@ -586,7 +584,7 @@ var SyntaxFactory = class {
|
|
586
584
|
static packageVariableSetterDeclaration(tags, modifiers, name, setterParameterClause, body) {
|
587
585
|
const tagList = new TagList(tags);
|
588
586
|
const modifierList = new ModifierList(modifiers);
|
589
|
-
const setKeyword = this.keyword(
|
587
|
+
const setKeyword = this.keyword(58 /* Set */);
|
590
588
|
const nameIdentifier = this.createIdentifier(name);
|
591
589
|
return new PackageVariableSetterDeclaration(
|
592
590
|
tagList,
|
@@ -640,7 +638,7 @@ var SyntaxFactory = class {
|
|
640
638
|
static typeVariableGetterDeclaration(tags, modifiers, name, typeSpecifier, body) {
|
641
639
|
const tagList = new TagList(tags);
|
642
640
|
const modifierList = new ModifierList(modifiers);
|
643
|
-
const getKeyword = this.keyword(
|
641
|
+
const getKeyword = this.keyword(57 /* Get */);
|
644
642
|
const nameIdentifier = this.createIdentifier(name);
|
645
643
|
const typeAnnotation = this.typeAnnotation(typeSpecifier);
|
646
644
|
return new TypeVariableGetterDeclaration(
|
@@ -655,7 +653,7 @@ var SyntaxFactory = class {
|
|
655
653
|
static typeVariableSetterDeclaration(tags, modifiers, name, setterParameterClause, body) {
|
656
654
|
const tagList = new TagList(tags);
|
657
655
|
const modifierList = new ModifierList(modifiers);
|
658
|
-
const setKeyword = this.keyword(
|
656
|
+
const setKeyword = this.keyword(58 /* Set */);
|
659
657
|
const nameIdentifier = this.createIdentifier(name);
|
660
658
|
return new TypeVariableSetterDeclaration(
|
661
659
|
tagList,
|
@@ -669,7 +667,7 @@ var SyntaxFactory = class {
|
|
669
667
|
static typeMethodDeclaration(tags, modifiers, name, typeParameters, parameters, returnTypeSpecifier, body) {
|
670
668
|
const tagList = new TagList(tags);
|
671
669
|
const modifierList = new ModifierList(modifiers);
|
672
|
-
const
|
670
|
+
const functionKeyword = this.keyword(11 /* Function */);
|
673
671
|
const nameIdentifier = this.createIdentifier(name);
|
674
672
|
const typeParameterClause = this.createTypeParameterClause(typeParameters);
|
675
673
|
const parameterClause = this.parameterClause(parameters);
|
@@ -677,7 +675,7 @@ var SyntaxFactory = class {
|
|
677
675
|
return new TypeMethodDeclaration(
|
678
676
|
tagList,
|
679
677
|
modifierList,
|
680
|
-
|
678
|
+
functionKeyword,
|
681
679
|
nameIdentifier,
|
682
680
|
typeParameterClause,
|
683
681
|
parameterClause,
|
@@ -695,14 +693,14 @@ var SyntaxFactory = class {
|
|
695
693
|
static typeDestructorDeclaration(tags, modifiers, parameters, body) {
|
696
694
|
const tagList = new TagList(tags);
|
697
695
|
const modifierList = new ModifierList(modifiers);
|
698
|
-
const destructionKeyword = this.keyword(
|
696
|
+
const destructionKeyword = this.keyword(46 /* Destruction */);
|
699
697
|
const parameterClause = this.parameterClause(parameters);
|
700
698
|
return new TypeDestructorDeclaration(tagList, modifierList, destructionKeyword, parameterClause, body);
|
701
699
|
}
|
702
700
|
static typeIndexedGetterDeclaration(tags, modifiers, parameters, typeSpecifier, body) {
|
703
701
|
const tagList = new TagList(tags);
|
704
702
|
const modifierList = new ModifierList(modifiers);
|
705
|
-
const getKeyword = this.keyword(
|
703
|
+
const getKeyword = this.keyword(57 /* Get */);
|
706
704
|
const parameterClause = this.indexerParameterClause(parameters);
|
707
705
|
const typeAnnotation = this.typeAnnotation(typeSpecifier);
|
708
706
|
return new TypeIndexedGetterDeclaration(
|
@@ -717,7 +715,7 @@ var SyntaxFactory = class {
|
|
717
715
|
static typeIndexedSetterDeclaration(tags, modifiers, parameters, setterParameterClause, body) {
|
718
716
|
const tagList = new TagList(tags);
|
719
717
|
const modifierList = new ModifierList(modifiers);
|
720
|
-
const getKeyword = this.keyword(
|
718
|
+
const getKeyword = this.keyword(58 /* Set */);
|
721
719
|
const parameterClause = this.indexerParameterClause(parameters);
|
722
720
|
return new TypeIndexedSetterDeclaration(
|
723
721
|
tagList,
|
@@ -873,7 +871,7 @@ var SyntaxFactory = class {
|
|
873
871
|
return new StatementBlock(openBraceToken, statementList, closeBraceToken);
|
874
872
|
}
|
875
873
|
static noneLiteral() {
|
876
|
-
return new KeywordExpression(this.keyword(
|
874
|
+
return new KeywordExpression(this.keyword(56 /* None */));
|
877
875
|
}
|
878
876
|
static integerLiteral(value) {
|
879
877
|
return new TokenExpression(this.token(2 /* IntegerLiteral */, value.toString()));
|
@@ -881,7 +879,7 @@ var SyntaxFactory = class {
|
|
881
879
|
static translationsDeclaration(translations) {
|
882
880
|
const tagList = new TagList([]);
|
883
881
|
const modifierList = new ModifierList([]);
|
884
|
-
const translationsKeyword = this.keyword(
|
882
|
+
const translationsKeyword = this.keyword(54 /* Translations */);
|
885
883
|
const openBraceToken = this.token(43 /* OpenBrace */);
|
886
884
|
const translationList = new TopLevelTranslationList(translations);
|
887
885
|
const closeBraceToken = this.token(20 /* CloseBrace */);
|
@@ -901,7 +899,7 @@ var SyntaxFactory = class {
|
|
901
899
|
return new PackageVariableTranslation(sourceNameIdentifier, minusGreaterThanToken, translatedNameIdentifier);
|
902
900
|
}
|
903
901
|
static packageMethodTranslation(sourceName, sourceTypeParameters, sourceParameters, translatedName, translatedTypeParameters, translatedParameters) {
|
904
|
-
const
|
902
|
+
const functionKeyword = this.keyword(11 /* Function */);
|
905
903
|
const sourceNameIdentifier = this.createIdentifier(sourceName);
|
906
904
|
const sourceTypeParameterClause = this.createTranslationTypeParameterClause(sourceTypeParameters);
|
907
905
|
const sourceParameterClause = this.translationParameterClause(sourceParameters);
|
@@ -910,7 +908,7 @@ var SyntaxFactory = class {
|
|
910
908
|
const translatedTypeParameterClause = this.createTranslationTypeParameterClause(translatedTypeParameters);
|
911
909
|
const translatedParameterClause = this.translationParameterClause(translatedParameters);
|
912
910
|
return new PackageMethodTranslation(
|
913
|
-
|
911
|
+
functionKeyword,
|
914
912
|
sourceNameIdentifier,
|
915
913
|
sourceTypeParameterClause,
|
916
914
|
sourceParameterClause,
|
@@ -978,7 +976,7 @@ var SyntaxFactory = class {
|
|
978
976
|
);
|
979
977
|
}
|
980
978
|
static typeMethodTranslation(sourceName, sourceTypeParameters, sourceParameters, translatedName, translatedTypeParameters, translatedParameters) {
|
981
|
-
const
|
979
|
+
const functionKeyword = this.keyword(11 /* Function */);
|
982
980
|
const sourceNameIdentifier = this.createIdentifier(sourceName);
|
983
981
|
const sourceTypeParameterClause = this.createTranslationTypeParameterClause(sourceTypeParameters);
|
984
982
|
const sourceParameterClause = this.translationParameterClause(sourceParameters);
|
@@ -987,7 +985,7 @@ var SyntaxFactory = class {
|
|
987
985
|
const translatedTypeParameterClause = this.createTranslationTypeParameterClause(translatedTypeParameters);
|
988
986
|
const translatedParameterClause = this.translationParameterClause(translatedParameters);
|
989
987
|
return new TypeMethodTranslation(
|
990
|
-
|
988
|
+
functionKeyword,
|
991
989
|
sourceNameIdentifier,
|
992
990
|
sourceTypeParameterClause,
|
993
991
|
sourceParameterClause,
|
@@ -1033,7 +1031,7 @@ var SyntaxFactory = class {
|
|
1033
1031
|
}
|
1034
1032
|
static token(kind, value) {
|
1035
1033
|
const flags = value === void 0 ? 1 /* Missing */ : 0 /* None */;
|
1036
|
-
return new Token(kind, value ?? "", [], flags);
|
1034
|
+
return new Token(kind, value ?? "", [], flags, void 0);
|
1037
1035
|
}
|
1038
1036
|
static keyword(kind) {
|
1039
1037
|
return new Keyword(kind, [], true);
|
@@ -1068,7 +1066,7 @@ var SyntaxFactory = class {
|
|
1068
1066
|
}
|
1069
1067
|
static createIdentifier(value) {
|
1070
1068
|
if (typeof value === "string") {
|
1071
|
-
return new Token(63 /* Identifier */, value, [], 0 /* None
|
1069
|
+
return new Token(63 /* Identifier */, value, [], 0 /* None */, void 0);
|
1072
1070
|
}
|
1073
1071
|
return value;
|
1074
1072
|
}
|
@@ -1190,7 +1188,7 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
1190
1188
|
writePackageMethodDeclaration(node) {
|
1191
1189
|
this.writeDeclarationTags(node.tagList);
|
1192
1190
|
this.writeDeclarationModifiers(node.modifierList);
|
1193
|
-
this.writeKeyword(node.
|
1191
|
+
this.writeKeyword(node.functionKeyword);
|
1194
1192
|
this.writeWhitespace();
|
1195
1193
|
this.writeToken(node.name);
|
1196
1194
|
if (node.typeParameterClause !== void 0) {
|
@@ -1305,7 +1303,7 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
1305
1303
|
this.writeTypeMemberDeclarationBlock(node.memberBlock);
|
1306
1304
|
}
|
1307
1305
|
writeMethodTypeDeclarationBody(node) {
|
1308
|
-
this.writeKeyword(node.
|
1306
|
+
this.writeKeyword(node.functionKeyword);
|
1309
1307
|
this.writeParameterClause(node.parameterClause);
|
1310
1308
|
if (node.returnTypeAnnotation !== void 0) {
|
1311
1309
|
this.writeTypeAnnotation(node.returnTypeAnnotation, true);
|
@@ -1371,7 +1369,7 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
1371
1369
|
writeTypeMethodDeclaration(node) {
|
1372
1370
|
this.writeDeclarationTags(node.tagList);
|
1373
1371
|
this.writeDeclarationModifiers(node.modifierList);
|
1374
|
-
this.writeKeyword(node.
|
1372
|
+
this.writeKeyword(node.functionKeyword);
|
1375
1373
|
this.writeWhitespace();
|
1376
1374
|
this.writeToken(node.name);
|
1377
1375
|
if (node.typeParameterClause !== void 0) {
|
@@ -1727,7 +1725,7 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
1727
1725
|
this.writeToken(node.translatedName);
|
1728
1726
|
}
|
1729
1727
|
writePackageMethodTranslation(node) {
|
1730
|
-
this.writeKeyword(node.
|
1728
|
+
this.writeKeyword(node.functionKeyword);
|
1731
1729
|
this.writeWhitespace();
|
1732
1730
|
this.writeToken(node.sourceName);
|
1733
1731
|
if (node.sourceTypeParameterClause !== void 0) {
|
@@ -1796,7 +1794,7 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
1796
1794
|
this.writeToken(node.translatedName);
|
1797
1795
|
}
|
1798
1796
|
writeTypeMethodTranslation(node) {
|
1799
|
-
this.writeKeyword(node.
|
1797
|
+
this.writeKeyword(node.functionKeyword);
|
1800
1798
|
this.writeWhitespace();
|
1801
1799
|
this.writeToken(node.sourceName);
|
1802
1800
|
if (node.sourceTypeParameterClause !== void 0) {
|
@@ -2017,19 +2015,19 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
2017
2015
|
[53 /* TypeVariableDeclaration */]: this.prototype.writeTypeVariableDeclaration,
|
2018
2016
|
[54 /* TypeVariableGetterDeclaration */]: this.prototype.writeTypeVariableGetterDeclaration,
|
2019
2017
|
[55 /* TypeVariableSetterDeclaration */]: this.prototype.writeTypeVariableSetterDeclaration,
|
2020
|
-
[
|
2021
|
-
[
|
2022
|
-
[
|
2023
|
-
[
|
2024
|
-
[
|
2025
|
-
[
|
2026
|
-
[
|
2027
|
-
[
|
2028
|
-
[
|
2029
|
-
[
|
2030
|
-
[
|
2031
|
-
[
|
2032
|
-
[
|
2018
|
+
[94 /* StatementBlock */]: this.prototype.writeStatementBlock,
|
2019
|
+
[133 /* QualifiedName */]: this.prototype.writeQualifiedName,
|
2020
|
+
[140 /* VariantDeclaration */]: this.prototype.writeVariantDeclaration,
|
2021
|
+
[141 /* TypeParameterDeclaration */]: this.prototype.writeTypeParameterDeclaration,
|
2022
|
+
[142 /* ParameterDeclaration */]: this.prototype.writeParameterDeclaration,
|
2023
|
+
[143 /* CallArgument */]: this.prototype.writeCallArgument,
|
2024
|
+
[145 /* Tag */]: this.prototype.writeTag,
|
2025
|
+
[147 /* Modifier */]: this.prototype.writeModifier,
|
2026
|
+
[148 /* ParameterClause */]: this.prototype.writeParameterClause,
|
2027
|
+
[149 /* ParameterList */]: this.prototype.writeParameterList,
|
2028
|
+
[150 /* SetterParameterClause */]: this.prototype.writeSetterParameterClause,
|
2029
|
+
[152 /* TypeArgumentClause */]: this.prototype.writeTypeArgumentClause,
|
2030
|
+
[154 /* TypeParameterClause */]: this.prototype.writeTypeParameterClause,
|
2033
2031
|
[17 /* AnonymousMethodTypeDeclaration */]: this.prototype.writeAnonymousMethodTypeDeclaration,
|
2034
2032
|
[18 /* AnonymousStructuredTypeDeclaration */]: this.prototype.writeAnonymousStructuredTypeDeclaration,
|
2035
2033
|
[19 /* AnonymousVariantTypeDeclaration */]: this.prototype.writeAnonymousVariantTypeDeclaration,
|
@@ -2064,80 +2062,76 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
2064
2062
|
[71 /* IndexedAccessExpression */]: this.prototype.writeNodeDefault,
|
2065
2063
|
[72 /* InvalidExpression */]: this.prototype.writeNodeDefault,
|
2066
2064
|
[73 /* IsExpression */]: this.prototype.writeNodeDefault,
|
2067
|
-
[74 /*
|
2068
|
-
[75 /*
|
2069
|
-
[76 /*
|
2070
|
-
[77 /*
|
2071
|
-
[78 /*
|
2072
|
-
[79 /*
|
2073
|
-
[80 /*
|
2074
|
-
[81 /*
|
2075
|
-
[82 /*
|
2076
|
-
[83 /*
|
2077
|
-
[84 /*
|
2078
|
-
[85 /*
|
2079
|
-
[86 /*
|
2080
|
-
[87 /*
|
2081
|
-
[88 /*
|
2082
|
-
[89 /*
|
2083
|
-
[90 /*
|
2084
|
-
[91 /*
|
2085
|
-
[92 /*
|
2086
|
-
[93 /*
|
2087
|
-
[
|
2088
|
-
[
|
2089
|
-
[97 /*
|
2090
|
-
[98 /*
|
2091
|
-
[99 /*
|
2092
|
-
[100 /*
|
2093
|
-
[101 /*
|
2094
|
-
[102 /*
|
2095
|
-
[103 /*
|
2096
|
-
[104 /*
|
2097
|
-
[105 /*
|
2098
|
-
[106 /*
|
2099
|
-
[107 /*
|
2100
|
-
[108 /*
|
2101
|
-
[109 /*
|
2102
|
-
[110 /*
|
2103
|
-
[111 /*
|
2104
|
-
[112 /*
|
2105
|
-
[113 /*
|
2106
|
-
[114 /*
|
2107
|
-
[115 /*
|
2108
|
-
[116 /*
|
2109
|
-
[117 /*
|
2110
|
-
[118 /*
|
2111
|
-
[119 /*
|
2112
|
-
[120 /*
|
2113
|
-
[121 /*
|
2114
|
-
[122 /*
|
2115
|
-
[123 /*
|
2116
|
-
[124 /*
|
2117
|
-
[125 /*
|
2118
|
-
[126 /*
|
2119
|
-
[127 /*
|
2120
|
-
[128 /*
|
2121
|
-
[129 /*
|
2122
|
-
[130 /*
|
2123
|
-
[131 /*
|
2124
|
-
[132 /*
|
2125
|
-
[
|
2126
|
-
[
|
2127
|
-
[
|
2128
|
-
[
|
2129
|
-
[138 /*
|
2130
|
-
[139 /*
|
2131
|
-
[
|
2132
|
-
[
|
2133
|
-
[
|
2134
|
-
[
|
2135
|
-
[
|
2136
|
-
[
|
2137
|
-
[155 /* SetterParameterDeclaration */]: this.prototype.writeNodeDefault,
|
2138
|
-
[157 /* TypeArgumentList */]: this.prototype.writeNodeDefault,
|
2139
|
-
[159 /* TypeParameterList */]: this.prototype.writeNodeDefault,
|
2140
|
-
[160 /* TypeAnnotation */]: this.prototype.writeNodeDefault
|
2065
|
+
[74 /* NotExpression */]: this.prototype.writeNodeDefault,
|
2066
|
+
[75 /* MethodLiteral */]: this.prototype.writeNodeDefault,
|
2067
|
+
[76 /* ParenthesizedExpression */]: this.prototype.writeNodeDefault,
|
2068
|
+
[77 /* WhenTernaryExpression */]: this.prototype.writeNodeDefault,
|
2069
|
+
[78 /* PrefixUnaryExpression */]: this.prototype.writeNodeDefault,
|
2070
|
+
[79 /* PropertyAccessExpression */]: this.prototype.writeNodeDefault,
|
2071
|
+
[80 /* ReferenceExpression */]: this.prototype.writeNodeDefault,
|
2072
|
+
[81 /* DereferenceExpression */]: this.prototype.writeNodeDefault,
|
2073
|
+
[82 /* TextTemplateLiteral */]: this.prototype.writeNodeDefault,
|
2074
|
+
[83 /* TextTemplateSpanList */]: this.prototype.writeNodeDefault,
|
2075
|
+
[84 /* TextTemplateSpan */]: this.prototype.writeNodeDefault,
|
2076
|
+
[85 /* TokenExpression */]: this.prototype.writeNodeDefault,
|
2077
|
+
[86 /* KeywordExpression */]: this.prototype.writeNodeDefault,
|
2078
|
+
[87 /* ObjectExpression */]: this.prototype.writeNodeDefault,
|
2079
|
+
[88 /* BaseExpression */]: this.prototype.writeNodeDefault,
|
2080
|
+
[89 /* IdentifierExpression */]: this.prototype.writeNodeDefault,
|
2081
|
+
[90 /* GenericSpecializationExpression */]: this.prototype.writeNodeDefault,
|
2082
|
+
[91 /* DefaultMatchExpression */]: this.prototype.writeNodeDefault,
|
2083
|
+
[92 /* AssignmentStatement */]: this.prototype.writeNodeDefault,
|
2084
|
+
[93 /* StatementList */]: this.prototype.writeNodeDefault,
|
2085
|
+
[95 /* BreakLoopStatement */]: this.prototype.writeNodeDefault,
|
2086
|
+
[96 /* ContinueLoopStatement */]: this.prototype.writeNodeDefault,
|
2087
|
+
[97 /* DisposeStatement */]: this.prototype.writeNodeDefault,
|
2088
|
+
[98 /* RunStatementClauseList */]: this.prototype.writeNodeDefault,
|
2089
|
+
[99 /* RunStatement */]: this.prototype.writeNodeDefault,
|
2090
|
+
[100 /* OnErrorClause */]: this.prototype.writeNodeDefault,
|
2091
|
+
[101 /* ErrorVariableDeclaration */]: this.prototype.writeNodeDefault,
|
2092
|
+
[102 /* FinallyClause */]: this.prototype.writeNodeDefault,
|
2093
|
+
[103 /* EmptyStatement */]: this.prototype.writeNodeDefault,
|
2094
|
+
[104 /* ErrorStatement */]: this.prototype.writeNodeDefault,
|
2095
|
+
[105 /* ExpressionStatement */]: this.prototype.writeNodeDefault,
|
2096
|
+
[106 /* EnumerationVariableList */]: this.prototype.writeNodeDefault,
|
2097
|
+
[107 /* ForStatement */]: this.prototype.writeNodeDefault,
|
2098
|
+
[108 /* IfStatement */]: this.prototype.writeNodeDefault,
|
2099
|
+
[109 /* ElseIfClauseList */]: this.prototype.writeNodeDefault,
|
2100
|
+
[110 /* ElseIfClause */]: this.prototype.writeNodeDefault,
|
2101
|
+
[111 /* InvalidStatement */]: this.prototype.writeNodeDefault,
|
2102
|
+
[112 /* NestedMethodDeclarationStatement */]: this.prototype.writeNodeDefault,
|
2103
|
+
[113 /* LocalVariableDeclarationStatement */]: this.prototype.writeNodeDefault,
|
2104
|
+
[114 /* LoopStatement */]: this.prototype.writeNodeDefault,
|
2105
|
+
[115 /* ReturnStatement */]: this.prototype.writeNodeDefault,
|
2106
|
+
[116 /* CaseClauseList */]: this.prototype.writeNodeDefault,
|
2107
|
+
[117 /* SwitchStatement */]: this.prototype.writeNodeDefault,
|
2108
|
+
[118 /* MatchExpressionList */]: this.prototype.writeNodeDefault,
|
2109
|
+
[119 /* SwitchStatementCaseClause */]: this.prototype.writeNodeDefault,
|
2110
|
+
[120 /* WhileStatement */]: this.prototype.writeNodeDefault,
|
2111
|
+
[121 /* YieldStatement */]: this.prototype.writeNodeDefault,
|
2112
|
+
[122 /* TranslationParameterList */]: this.prototype.writeNodeDefault,
|
2113
|
+
[123 /* TranslationParameterClause */]: this.prototype.writeTranslationParameterClause,
|
2114
|
+
[124 /* ConstructorTranslation */]: this.prototype.writeConstructorTranslation,
|
2115
|
+
[125 /* IndexerTranslationParameterClause */]: this.prototype.writeIndexerTranslationParameterClause,
|
2116
|
+
[126 /* IndexerTranslation */]: this.prototype.writeIndexerTranslation,
|
2117
|
+
[127 /* TranslationTypeParameterList */]: this.prototype.writeNodeDefault,
|
2118
|
+
[128 /* TranslationTypeParameterClause */]: this.prototype.writeTranslationTypeParameterClause,
|
2119
|
+
[129 /* PackageMethodTranslation */]: this.prototype.writePackageMethodTranslation,
|
2120
|
+
[130 /* TypeMethodTranslation */]: this.prototype.writeTypeMethodTranslation,
|
2121
|
+
[131 /* MethodTypeTranslation */]: this.prototype.writeMethodTypeTranslation,
|
2122
|
+
[132 /* PackageImportTranslation */]: this.prototype.writePackageImportTranslation,
|
2123
|
+
[134 /* PackageVariableTranslation */]: this.prototype.writePackageVariableTranslation,
|
2124
|
+
[135 /* TypeVariableOrVariantTranslation */]: this.prototype.writeTypeVariableOrVariantTranslation,
|
2125
|
+
[136 /* TypeMemberTranslationList */]: this.prototype.writeNodeDefault,
|
2126
|
+
[137 /* TypeTranslation */]: this.prototype.writeTypeTranslation,
|
2127
|
+
[138 /* TextLiteralTranslation */]: this.prototype.writeNodeDefault,
|
2128
|
+
[139 /* TextTemplateLiteralTranslation */]: this.prototype.writeNodeDefault,
|
2129
|
+
[144 /* TagList */]: this.prototype.writeNodeDefault,
|
2130
|
+
[146 /* ModifierList */]: this.prototype.writeNodeDefault,
|
2131
|
+
[151 /* SetterParameterDeclaration */]: this.prototype.writeNodeDefault,
|
2132
|
+
[153 /* TypeArgumentList */]: this.prototype.writeNodeDefault,
|
2133
|
+
[155 /* TypeParameterList */]: this.prototype.writeNodeDefault,
|
2134
|
+
[156 /* TypeAnnotation */]: this.prototype.writeNodeDefault
|
2141
2135
|
};
|
2142
2136
|
return writeFunctions;
|
2143
2137
|
}
|
@@ -2149,14 +2143,13 @@ var SyntaxToCode = class _SyntaxToCode {
|
|
2149
2143
|
};
|
2150
2144
|
var modifierSortOrder = {
|
2151
2145
|
[34 /* Hidden */]: 0,
|
2152
|
-
[
|
2153
|
-
[
|
2154
|
-
[
|
2155
|
-
[
|
2156
|
-
[
|
2157
|
-
[
|
2158
|
-
[
|
2159
|
-
[33 /* Const */]: 8
|
2146
|
+
[39 /* Static */]: 1,
|
2147
|
+
[16 /* Basic */]: 2,
|
2148
|
+
[36 /* Redefinable */]: 3,
|
2149
|
+
[35 /* Abstract */]: 4,
|
2150
|
+
[37 /* Redefined */]: 5,
|
2151
|
+
[38 /* Async */]: 6,
|
2152
|
+
[33 /* Const */]: 7
|
2160
2153
|
};
|
2161
2154
|
|
2162
2155
|
// source/services/TreeUtils.ts
|
@@ -2324,7 +2317,7 @@ var TranslationsGenerationService = class {
|
|
2324
2317
|
return void 0;
|
2325
2318
|
}
|
2326
2319
|
let result;
|
2327
|
-
if (tokenOrKeyword.isToken(63 /* Identifier */) && tokenOrKeyword.parent.kind ===
|
2320
|
+
if (tokenOrKeyword.isToken(63 /* Identifier */) && tokenOrKeyword.parent.kind === 137 /* TypeTranslation */ && tokenOrKeyword.value === tokenOrKeyword.parent.sourceName) {
|
2328
2321
|
const translationPackage = analyzer.getAnalyzedTranslationPackageIfTargetResolved(sourceFile.package);
|
2329
2322
|
if (translationPackage !== void 0) {
|
2330
2323
|
const generator = new TranslationsGenerator(
|
@@ -2336,7 +2329,7 @@ var TranslationsGenerationService = class {
|
|
2336
2329
|
result = generator.generateMissingTypeMemberTranslations(tokenOrKeyword.parent);
|
2337
2330
|
}
|
2338
2331
|
}
|
2339
|
-
if (result === void 0 && tokenOrKeyword.isKeyword(
|
2332
|
+
if (result === void 0 && tokenOrKeyword.isKeyword(54 /* Translations */) && tokenOrKeyword.parent.kind === 21 /* TranslationsDeclaration */) {
|
2340
2333
|
const translationPackage = analyzer.getAnalyzedTranslationPackageIfTargetResolved(sourceFile.package);
|
2341
2334
|
if (translationPackage !== void 0) {
|
2342
2335
|
const generator = new TranslationsGenerator(
|
@@ -2362,7 +2355,7 @@ var TranslationsGenerationService = class {
|
|
2362
2355
|
if (tokenOrKeyword === void 0) {
|
2363
2356
|
return false;
|
2364
2357
|
}
|
2365
|
-
if (!(tokenOrKeyword.isKeyword(
|
2358
|
+
if (!(tokenOrKeyword.isKeyword(54 /* Translations */) && tokenOrKeyword.parent.kind === 21 /* TranslationsDeclaration */)) {
|
2366
2359
|
return false;
|
2367
2360
|
}
|
2368
2361
|
const translationPackage = analyzer.getAnalyzedTranslationPackageIfTargetResolved(sourceFile.package);
|
@@ -2370,7 +2363,7 @@ var TranslationsGenerationService = class {
|
|
2370
2363
|
return false;
|
2371
2364
|
}
|
2372
2365
|
const generator = new TranslationsGenerator(analyzer, sourceFile, translationPackage, sourceFile.package.dialect);
|
2373
|
-
return Query.from(tokenOrKeyword.parent.translationList.translationDeclarations).filter((t) => t.kind ===
|
2366
|
+
return Query.from(tokenOrKeyword.parent.translationList.translationDeclarations).filter((t) => t.kind === 137 /* TypeTranslation */).mapAndFilter((t) => translationPackage.getTypeTranslationTarget(t).target).any((t) => generator.collectNotTranslatedTypeMembers(t).length > 0);
|
2374
2367
|
}
|
2375
2368
|
};
|
2376
2369
|
var TranslationsGenerator = class {
|
@@ -2408,7 +2401,7 @@ var TranslationsGenerator = class {
|
|
2408
2401
|
generateMissingTranslationsForPartiallyTranslatedTypes(translationsDeclaration) {
|
2409
2402
|
const result = new Array();
|
2410
2403
|
for (const translation of translationsDeclaration.translationList.translationDeclarations) {
|
2411
|
-
if (translation.kind ===
|
2404
|
+
if (translation.kind === 137 /* TypeTranslation */) {
|
2412
2405
|
const edits = this.generateMissingTypeMemberTranslations(translation);
|
2413
2406
|
if (edits !== void 0) {
|
2414
2407
|
result.push(...edits);
|
@@ -2509,7 +2502,7 @@ var TranslationsGenerator = class {
|
|
2509
2502
|
detectIndentationStepForTypeMemberTranslations(translationsDeclaration) {
|
2510
2503
|
let indentationStepSize;
|
2511
2504
|
for (const member of translationsDeclaration.translationList.translationDeclarations) {
|
2512
|
-
if (member.kind ===
|
2505
|
+
if (member.kind === 137 /* TypeTranslation */) {
|
2513
2506
|
const typeMemberTranslation = member.memberList?.members.first();
|
2514
2507
|
if (typeMemberTranslation !== void 0) {
|
2515
2508
|
const typeTranslationIndentation = this._sourceFile.getPositionAt(member.typeKeyword.rangeWithoutTrivia.start).character;
|
@@ -2560,7 +2553,7 @@ var TranslationsGenerator = class {
|
|
2560
2553
|
return this.createPackageTypeWithMembersTranslation(entity);
|
2561
2554
|
case 11 /* MethodType */:
|
2562
2555
|
return this.createPackageMethodTypeTranslation(entity);
|
2563
|
-
case
|
2556
|
+
case 19 /* TypeExtension */:
|
2564
2557
|
return void 0;
|
2565
2558
|
default:
|
2566
2559
|
Debug.never(entity);
|
@@ -2802,7 +2795,7 @@ var SignatureForNode = class _SignatureForNode {
|
|
2802
2795
|
return _SignatureForNode.getSignaturesForAutotypeCallExpression(analyzer, node);
|
2803
2796
|
case 71 /* IndexedAccessExpression */:
|
2804
2797
|
return _SignatureForNode.getSignaturesForIndexedAccessExpression(analyzer, node);
|
2805
|
-
case
|
2798
|
+
case 145 /* Tag */:
|
2806
2799
|
return _SignatureForNode.getSignaturesForTag(analyzer, node);
|
2807
2800
|
default:
|
2808
2801
|
Debug.never(node);
|
@@ -3230,7 +3223,7 @@ var CompletionService = class {
|
|
3230
3223
|
if (tokenOrKeyword.isToken(43 /* OpenBrace */) && tokenOrKeyword.parent.kind === 6 /* PackageGroupImportDirective */ || this.tokenOrKeywordIsPackageImportListChild(tokenOrKeyword)) {
|
3231
3224
|
return new PackageImportCompletionContext([], void 0);
|
3232
3225
|
}
|
3233
|
-
if (tokenOrKeyword.isToken(26 /* Dot */) && tokenOrKeyword.parent.kind ===
|
3226
|
+
if (tokenOrKeyword.isToken(26 /* Dot */) && tokenOrKeyword.parent.kind === 79 /* PropertyAccessExpression */) {
|
3234
3227
|
const propertyAccess = tokenOrKeyword.parent;
|
3235
3228
|
{
|
3236
3229
|
const info = this._analyzer.checkExpressionDenotesPackageNameSegment(propertyAccess.expression);
|
@@ -3271,7 +3264,7 @@ var CompletionService = class {
|
|
3271
3264
|
typeExtensionLookup
|
3272
3265
|
);
|
3273
3266
|
}
|
3274
|
-
if (tokenOrKeyword.isToken(26 /* Dot */) && tokenOrKeyword.parent.kind ===
|
3267
|
+
if (tokenOrKeyword.isToken(26 /* Dot */) && tokenOrKeyword.parent.kind === 133 /* QualifiedName */ && tokenOrKeyword.parent.parent.kind === 10 /* NamedTypeSpecifier */) {
|
3275
3268
|
const namedTypeSpecifier = tokenOrKeyword.parent.parent;
|
3276
3269
|
const resolutionResult = this._analyzer.resolveNamedTypeSpecifier(namedTypeSpecifier);
|
3277
3270
|
const segmentIndex = Math.floor(
|
@@ -3365,17 +3358,17 @@ var CompletionService = class {
|
|
3365
3358
|
translationKind = 0 /* Any */;
|
3366
3359
|
hasPrecedingKeyword = false;
|
3367
3360
|
}
|
3368
|
-
if (tokenOrKeyword.isKeyword(17 /* Import */) && tokenOrKeyword.parent.kind ===
|
3361
|
+
if (tokenOrKeyword.isKeyword(17 /* Import */) && tokenOrKeyword.parent.kind === 132 /* PackageImportTranslation */) {
|
3369
3362
|
translationsDeclaration = tokenOrKeyword.parent.parent.parent;
|
3370
3363
|
translationKind = 1 /* PackageImport */;
|
3371
3364
|
hasPrecedingKeyword = true;
|
3372
3365
|
}
|
3373
|
-
if (tokenOrKeyword.isKeyword(15 /* Type */) && (tokenOrKeyword.parent.kind ===
|
3366
|
+
if (tokenOrKeyword.isKeyword(15 /* Type */) && (tokenOrKeyword.parent.kind === 137 /* TypeTranslation */ || tokenOrKeyword.parent.kind === 131 /* MethodTypeTranslation */)) {
|
3374
3367
|
translationsDeclaration = tokenOrKeyword.parent.parent.parent;
|
3375
3368
|
translationKind = 3 /* Type */;
|
3376
3369
|
hasPrecedingKeyword = true;
|
3377
3370
|
}
|
3378
|
-
if (tokenOrKeyword.isKeyword(11 /*
|
3371
|
+
if (tokenOrKeyword.isKeyword(11 /* Function */) && tokenOrKeyword.parent.kind === 129 /* PackageMethodTranslation */) {
|
3379
3372
|
translationsDeclaration = tokenOrKeyword.parent.parent.parent;
|
3380
3373
|
translationKind = 2 /* Method */;
|
3381
3374
|
hasPrecedingKeyword = true;
|
@@ -3395,9 +3388,9 @@ var CompletionService = class {
|
|
3395
3388
|
hasPrecedingKeyword
|
3396
3389
|
);
|
3397
3390
|
}
|
3398
|
-
if (tokenOrKeyword.isToken(26 /* Dot */) && tokenOrKeyword.parent.kind ===
|
3391
|
+
if (tokenOrKeyword.isToken(26 /* Dot */) && tokenOrKeyword.parent.kind === 133 /* QualifiedName */) {
|
3399
3392
|
const qualifiedName = tokenOrKeyword.parent;
|
3400
|
-
if (qualifiedName.parent.kind ===
|
3393
|
+
if (qualifiedName.parent.kind === 132 /* PackageImportTranslation */ && qualifiedName === qualifiedName.parent.sourceName) {
|
3401
3394
|
const precedingSegmentNames = qualifiedName.qualifiers.takeWhile((s) => s.rangeStart < tokenOrKeyword.value.rangeStart).map((p) => this._analyzer.createNameFromIdentifier(p)).toArray();
|
3402
3395
|
const sourceLocale = translationPackage.getTranslatedPackage().getLocale();
|
3403
3396
|
return new PackageImportCompletionContext(precedingSegmentNames, { sourceLocale });
|
@@ -3422,12 +3415,12 @@ var CompletionService = class {
|
|
3422
3415
|
translationKind = 0 /* Any */;
|
3423
3416
|
hasPrecedingKeyword = false;
|
3424
3417
|
}
|
3425
|
-
if (tokenOrKeyword.isKeyword(11 /*
|
3418
|
+
if (tokenOrKeyword.isKeyword(11 /* Function */) && tokenOrKeyword.parent.kind === 130 /* TypeMethodTranslation */) {
|
3426
3419
|
typeTranslation = tokenOrKeyword.parent.parent.parent;
|
3427
3420
|
translationKind = 1 /* Method */;
|
3428
3421
|
hasPrecedingKeyword = true;
|
3429
3422
|
}
|
3430
|
-
if (tokenOrKeyword.isKeyword(28 /* Creation */) && tokenOrKeyword.parent.kind ===
|
3423
|
+
if (tokenOrKeyword.isKeyword(28 /* Creation */) && tokenOrKeyword.parent.kind === 124 /* ConstructorTranslation */) {
|
3431
3424
|
typeTranslation = tokenOrKeyword.parent.parent.parent;
|
3432
3425
|
translationKind = 3 /* Constructor */;
|
3433
3426
|
hasPrecedingKeyword = true;
|
@@ -3467,7 +3460,7 @@ var CompletionService = class {
|
|
3467
3460
|
role.argumentList.parent
|
3468
3461
|
);
|
3469
3462
|
break;
|
3470
|
-
case
|
3463
|
+
case 145 /* Tag */:
|
3471
3464
|
signatures = SignatureForNode.getSignaturesForTag(this._analyzer, role.argumentList.parent);
|
3472
3465
|
valueArguments = ValueArgumentFactory.createValueArgumentsOfTag(role.argumentList.parent);
|
3473
3466
|
break;
|
@@ -3601,22 +3594,22 @@ var CompletionService = class {
|
|
3601
3594
|
}
|
3602
3595
|
const kinds = /* @__PURE__ */ new Set();
|
3603
3596
|
if (syntaxContext.isPackageMemberDeclarationListContext) {
|
3604
|
-
kinds.add(17 /* Import */).add(7 /* Run */).add(28 /* Creation */).add(11 /*
|
3597
|
+
kinds.add(17 /* Import */).add(7 /* Run */).add(28 /* Creation */).add(11 /* Function */).add(15 /* Type */).add(57 /* Get */).add(58 /* Set */).add(54 /* Translations */);
|
3605
3598
|
}
|
3606
3599
|
if (syntaxContext.isPackageMemberDeclarationListContext || syntaxContext.isTypeMemberDeclarationListContext) {
|
3607
|
-
kinds.add(
|
3600
|
+
kinds.add(34 /* Hidden */).add(39 /* Static */).add(16 /* Basic */).add(36 /* Redefinable */).add(35 /* Abstract */).add(37 /* Redefined */).add(38 /* Async */).add(33 /* Const */);
|
3608
3601
|
}
|
3609
3602
|
if (syntaxContext.isTypeMemberDeclarationListContext) {
|
3610
|
-
kinds.add(28 /* Creation */).add(11 /*
|
3603
|
+
kinds.add(28 /* Creation */).add(11 /* Function */).add(46 /* Destruction */).add(57 /* Get */).add(58 /* Set */);
|
3611
3604
|
}
|
3612
3605
|
if (syntaxContext.isStatementContext) {
|
3613
|
-
kinds.add(7 /* Run */).add(32 /* For */).add(23 /* While */).add(24 /* Loop */).add(14 /* Return */).add(18 /* Error */).add(26 /* Yield */).add(
|
3606
|
+
kinds.add(7 /* Run */).add(32 /* For */).add(23 /* While */).add(24 /* Loop */).add(14 /* Return */).add(18 /* Error */).add(26 /* Yield */).add(44 /* Await */).add(30 /* BreakLoop */).add(31 /* ContinueLoop */).add(12 /* If */).add(42 /* Switch */).add(1 /* Let */).add(33 /* Const */).add(45 /* Dispose */).add(11 /* Function */).add(38 /* Async */);
|
3614
3607
|
}
|
3615
3608
|
if (this.isFromKeywordContext(positionDescription)) {
|
3616
3609
|
kinds.add(8 /* From */);
|
3617
3610
|
}
|
3618
3611
|
if (syntaxContext.isExpressionContext !== void 0) {
|
3619
|
-
kinds.add(
|
3612
|
+
kinds.add(41 /* Not */).add(51 /* Yes */).add(52 /* No */).add(56 /* None */).add(38 /* Async */).add(11 /* Function */).add(53 /* Reference */).add(2 /* Autotype */);
|
3620
3613
|
if (positionDescription.kind === "after-token-or-keyword") {
|
3621
3614
|
const container = semanticContext.getContainingTypeOrTypeExtension();
|
3622
3615
|
if (container !== void 0) {
|
@@ -3624,17 +3617,17 @@ var CompletionService = class {
|
|
3624
3617
|
if (container.kind === "type") {
|
3625
3618
|
const typeEntity = container.value;
|
3626
3619
|
if (typeEntity?.kind === 12 /* StructuredType */ && typeEntity.getBaseObjectType() !== void 0 || typeEntity?.kind === 2 /* VariantType */ || typeEntity?.kind === 14 /* AliasType */) {
|
3627
|
-
kinds.add(
|
3620
|
+
kinds.add(55 /* Base */);
|
3628
3621
|
}
|
3629
3622
|
}
|
3630
3623
|
}
|
3631
3624
|
}
|
3632
3625
|
}
|
3633
3626
|
if (this.isTypeKindCompletionContext(positionDescription)) {
|
3634
|
-
kinds.add(4 /* Object */).add(5 /* PlainObject */).add(3 /* Aspect */).add(6 /* Variant */).add(11 /*
|
3627
|
+
kinds.add(4 /* Object */).add(5 /* PlainObject */).add(3 /* Aspect */).add(6 /* Variant */).add(11 /* Function */).add(38 /* Async */);
|
3635
3628
|
}
|
3636
3629
|
if (this.isCaseKeywordContext(positionDescription, syntaxContext)) {
|
3637
|
-
kinds.add(
|
3630
|
+
kinds.add(43 /* Case */);
|
3638
3631
|
}
|
3639
3632
|
if (this.isRunStatementAccessorListContext(positionDescription)) {
|
3640
3633
|
kinds.add(29 /* OnError */).add(19 /* Finally */);
|
@@ -3643,19 +3636,19 @@ var CompletionService = class {
|
|
3643
3636
|
kinds.add(9 /* Else */).add(10 /* ElseIf */);
|
3644
3637
|
}
|
3645
3638
|
if (syntaxContext.precedingExpression !== void 0) {
|
3646
|
-
kinds.add(
|
3639
|
+
kinds.add(40 /* As */).add(13 /* Is */).add(20 /* And */).add(21 /* Or */).add(22 /* Xor */).add(27 /* When */);
|
3647
3640
|
}
|
3648
3641
|
if (this.isModifierLevelContext(positionDescription)) {
|
3649
|
-
kinds.add(
|
3642
|
+
kinds.add(50 /* InType */).add(47 /* InHierarchy */).add(48 /* InFile */).add(49 /* InPackage */);
|
3650
3643
|
}
|
3651
3644
|
if (this.isRepeatWhileKeywordContext(positionDescription)) {
|
3652
3645
|
kinds.add(25 /* RepeatWhile */);
|
3653
3646
|
}
|
3654
3647
|
if (syntaxContext.isUnqualifiedTypeContext?.allowsAnonymousTypes === true) {
|
3655
|
-
kinds.add(5 /* PlainObject */).add(4 /* Object */).add(6 /* Variant */).add(3 /* Aspect */).add(11 /*
|
3648
|
+
kinds.add(5 /* PlainObject */).add(4 /* Object */).add(6 /* Variant */).add(3 /* Aspect */).add(11 /* Function */).add(38 /* Async */);
|
3656
3649
|
}
|
3657
|
-
if (positionDescription.kind === "after-token-or-keyword" && positionDescription.tokenOrKeyword.isKeyword(
|
3658
|
-
kinds.add(11 /*
|
3650
|
+
if (positionDescription.kind === "after-token-or-keyword" && positionDescription.tokenOrKeyword.isKeyword(38 /* Async */) && (positionDescription.tokenOrKeyword.parent.kind === 57 /* NestedMethodDeclaration */ || positionDescription.tokenOrKeyword.parent.kind === 75 /* MethodLiteral */ || positionDescription.tokenOrKeyword.parent.kind === 29 /* MethodTypeDeclarationBody */)) {
|
3651
|
+
kinds.add(11 /* Function */);
|
3659
3652
|
}
|
3660
3653
|
return Query.from(kinds.values()).map(
|
3661
3654
|
(k) => LocalizationHelper.localizeKeyword(k, this._locale, this._dialect).map((v) => new KeywordCompletionItemInfo(this.completionItemInfoContext, k, v))
|
@@ -3666,28 +3659,28 @@ var CompletionService = class {
|
|
3666
3659
|
return false;
|
3667
3660
|
}
|
3668
3661
|
const tokenOrKeyword = positionDescription.tokenOrKeyword;
|
3669
|
-
return tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind ===
|
3662
|
+
return tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind === 94 /* StatementBlock */ && tokenOrKeyword.parent.parent.kind === 114 /* LoopStatement */;
|
3670
3663
|
}
|
3671
3664
|
isModifierLevelContext(positionDescription) {
|
3672
3665
|
if (positionDescription.kind !== "after-token-or-keyword") {
|
3673
3666
|
return false;
|
3674
3667
|
}
|
3675
3668
|
const tokenOrKeyword = positionDescription.tokenOrKeyword;
|
3676
|
-
return tokenOrKeyword.isToken(44 /* OpenParenthesis */) && tokenOrKeyword.parent.kind ===
|
3669
|
+
return tokenOrKeyword.isToken(44 /* OpenParenthesis */) && tokenOrKeyword.parent.kind === 147 /* Modifier */;
|
3677
3670
|
}
|
3678
3671
|
isElseOrElseIfKeywordContext(positionDescription) {
|
3679
3672
|
if (positionDescription.kind !== "after-token-or-keyword") {
|
3680
3673
|
return false;
|
3681
3674
|
}
|
3682
3675
|
const tokenOrKeyword = positionDescription.tokenOrKeyword;
|
3683
|
-
return tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind ===
|
3676
|
+
return tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind === 94 /* StatementBlock */ && (tokenOrKeyword.parent.parent.kind === 108 /* IfStatement */ && tokenOrKeyword.parent === tokenOrKeyword.parent.parent.thenBlock || tokenOrKeyword.parent.parent.kind === 110 /* ElseIfClause */);
|
3684
3677
|
}
|
3685
3678
|
isRunStatementAccessorListContext(positionDescription) {
|
3686
3679
|
if (positionDescription.kind !== "after-token-or-keyword") {
|
3687
3680
|
return false;
|
3688
3681
|
}
|
3689
3682
|
const tokenOrKeyword = positionDescription.tokenOrKeyword;
|
3690
|
-
return tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind ===
|
3683
|
+
return tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind === 94 /* StatementBlock */ && (tokenOrKeyword.parent.parent.kind === 99 /* RunStatement */ || tokenOrKeyword.parent.parent.kind === 100 /* OnErrorClause */ || tokenOrKeyword.parent.parent.kind === 102 /* FinallyClause */);
|
3691
3684
|
}
|
3692
3685
|
isTypeKindCompletionContext(positionDescription) {
|
3693
3686
|
return positionDescription.kind === "after-token-or-keyword" && positionDescription.tokenOrKeyword.isToken(57 /* Equals */) && NodeTypeUtils.isPackageTypeDeclaration(positionDescription.tokenOrKeyword.parent);
|
@@ -3704,10 +3697,10 @@ var CompletionService = class {
|
|
3704
3697
|
return false;
|
3705
3698
|
}
|
3706
3699
|
const tokenOrKeyword = positionDescription.tokenOrKeyword;
|
3707
|
-
if (tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind ===
|
3700
|
+
if (tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind === 94 /* StatementBlock */ && tokenOrKeyword.parent.parent.kind === 119 /* SwitchStatementCaseClause */) {
|
3708
3701
|
return true;
|
3709
3702
|
}
|
3710
|
-
if (syntaxContext.precedingExpression !== void 0 && syntaxContext.precedingExpression.parent.kind ===
|
3703
|
+
if (syntaxContext.precedingExpression !== void 0 && syntaxContext.precedingExpression.parent.kind === 117 /* SwitchStatement */) {
|
3711
3704
|
return true;
|
3712
3705
|
}
|
3713
3706
|
return false;
|
@@ -4103,7 +4096,7 @@ var CompletionService = class {
|
|
4103
4096
|
const keywords = [
|
4104
4097
|
17 /* Import */,
|
4105
4098
|
15 /* Type */,
|
4106
|
-
11 /*
|
4099
|
+
11 /* Function */
|
4107
4100
|
];
|
4108
4101
|
result = result.chain(
|
4109
4102
|
Query.from(keywords).map(
|
@@ -4177,7 +4170,7 @@ var CompletionService = class {
|
|
4177
4170
|
}
|
4178
4171
|
if (!ctx.hasPrecedingKeyword) {
|
4179
4172
|
const keywords = [
|
4180
|
-
11 /*
|
4173
|
+
11 /* Function */,
|
4181
4174
|
28 /* Creation */
|
4182
4175
|
];
|
4183
4176
|
result = result.chain(
|
@@ -4326,7 +4319,7 @@ function isInvalidNode(node) {
|
|
4326
4319
|
switch (node.kind) {
|
4327
4320
|
case 72 /* InvalidExpression */:
|
4328
4321
|
case 43 /* InvalidPackageMemberDeclaration */:
|
4329
|
-
case
|
4322
|
+
case 111 /* InvalidStatement */:
|
4330
4323
|
case 56 /* InvalidTypeMemberDeclaration */:
|
4331
4324
|
case 16 /* InvalidTypeSpecifier */:
|
4332
4325
|
return true;
|
@@ -4836,7 +4829,7 @@ var AliasesSourceMethodCompletionItemInfo = class {
|
|
4836
4829
|
const displayParts = this.displayService.getMethodDeclarationDisplayParts(
|
4837
4830
|
new MethodDeclaration_entity(this.method, Localization.Original.ofEntity(this.method))
|
4838
4831
|
);
|
4839
|
-
const keywordWithWhitespace = this.includeMethodKeyword ? displayParts.
|
4832
|
+
const keywordWithWhitespace = this.includeMethodKeyword ? displayParts.functionKeyword + displayParts.whitespaceAfterFunctionKeyword : "";
|
4840
4833
|
const valueParameters = displayParts.valueParameters.map((p) => p.name).join(displayParts.typeParameterSeparator);
|
4841
4834
|
return keywordWithWhitespace + displayParts.name + displayParts.typeParametersStart + displayParts.typeParameters.join(displayParts.typeParameterSeparator) + displayParts.typeParametersEnd + displayParts.valueParametersStart + valueParameters + displayParts.valueParametersEnd;
|
4842
4835
|
}
|
@@ -5086,7 +5079,7 @@ var SyntaxContextFactory = class {
|
|
5086
5079
|
}
|
5087
5080
|
static isExpressionOrStatementContext(tokenOrKeyword) {
|
5088
5081
|
if (tokenOrKeyword.isToken(57 /* Equals */)) {
|
5089
|
-
if (tokenOrKeyword.parent.kind ===
|
5082
|
+
if (tokenOrKeyword.parent.kind === 92 /* AssignmentStatement */) {
|
5090
5083
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.right);
|
5091
5084
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5092
5085
|
}
|
@@ -5102,24 +5095,24 @@ var SyntaxContextFactory = class {
|
|
5102
5095
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.initializer);
|
5103
5096
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5104
5097
|
}
|
5105
|
-
if (tokenOrKeyword.parent.kind ===
|
5098
|
+
if (tokenOrKeyword.parent.kind === 142 /* ParameterDeclaration */) {
|
5106
5099
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.defaultValue);
|
5107
5100
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5108
5101
|
}
|
5109
|
-
if (tokenOrKeyword.parent.kind ===
|
5102
|
+
if (tokenOrKeyword.parent.kind === 143 /* CallArgument */) {
|
5110
5103
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.value);
|
5111
5104
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5112
5105
|
}
|
5113
|
-
if (tokenOrKeyword.parent.kind ===
|
5106
|
+
if (tokenOrKeyword.parent.kind === 140 /* VariantDeclaration */) {
|
5114
5107
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.value);
|
5115
5108
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5116
5109
|
}
|
5117
5110
|
}
|
5118
|
-
if (tokenOrKeyword.parent.kind ===
|
5111
|
+
if (tokenOrKeyword.parent.kind === 92 /* AssignmentStatement */) {
|
5119
5112
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.right);
|
5120
5113
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5121
5114
|
}
|
5122
|
-
if (tokenOrKeyword.parent.kind ===
|
5115
|
+
if (tokenOrKeyword.parent.kind === 78 /* PrefixUnaryExpression */) {
|
5123
5116
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.operand);
|
5124
5117
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5125
5118
|
}
|
@@ -5127,11 +5120,11 @@ var SyntaxContextFactory = class {
|
|
5127
5120
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.right);
|
5128
5121
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5129
5122
|
}
|
5130
|
-
if (tokenOrKeyword.isToken(7 /* TextTemplateHead */) && tokenOrKeyword.parent.kind ===
|
5123
|
+
if (tokenOrKeyword.isToken(7 /* TextTemplateHead */) && tokenOrKeyword.parent.kind === 82 /* TextTemplateLiteral */) {
|
5131
5124
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.spanList.spans.at(0)?.expression);
|
5132
5125
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5133
5126
|
}
|
5134
|
-
if (tokenOrKeyword.isToken(8 /* TextTemplatePart */) && tokenOrKeyword.parent.kind ===
|
5127
|
+
if (tokenOrKeyword.isToken(8 /* TextTemplatePart */) && tokenOrKeyword.parent.kind === 84 /* TextTemplateSpan */) {
|
5135
5128
|
let expressionForTargetType;
|
5136
5129
|
const spanList = tokenOrKeyword.parent.parent;
|
5137
5130
|
const spanIndex = spanList.spans.indexOf(tokenOrKeyword.parent);
|
@@ -5143,30 +5136,22 @@ var SyntaxContextFactory = class {
|
|
5143
5136
|
isStatementContext: false
|
5144
5137
|
};
|
5145
5138
|
}
|
5146
|
-
if (tokenOrKeyword.isToken(43 /* OpenBrace */) && tokenOrKeyword.parent.kind ===
|
5139
|
+
if (tokenOrKeyword.isToken(43 /* OpenBrace */) && tokenOrKeyword.parent.kind === 94 /* StatementBlock */) {
|
5147
5140
|
return { isExpressionContext: { expressionRole: new ExpressionRole_other(void 0) }, isStatementContext: true };
|
5148
5141
|
}
|
5149
|
-
if (tokenOrKeyword.isToken(51 /* Semicolon */) && tokenOrKeyword.parent.kind ===
|
5142
|
+
if (tokenOrKeyword.isToken(51 /* Semicolon */) && tokenOrKeyword.parent.kind === 93 /* StatementList */) {
|
5150
5143
|
return { isExpressionContext: { expressionRole: new ExpressionRole_other(void 0) }, isStatementContext: true };
|
5151
5144
|
}
|
5152
5145
|
if (tokenOrKeyword.isToken(44 /* OpenParenthesis */)) {
|
5153
|
-
if (tokenOrKeyword.parent.kind ===
|
5146
|
+
if (tokenOrKeyword.parent.kind === 76 /* ParenthesizedExpression */) {
|
5154
5147
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.expression);
|
5155
5148
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5156
5149
|
}
|
5157
|
-
if (tokenOrKeyword.parent.kind ===
|
5150
|
+
if (tokenOrKeyword.parent.kind === 74 /* NotExpression */) {
|
5158
5151
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.expression);
|
5159
5152
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5160
5153
|
}
|
5161
|
-
if (tokenOrKeyword.parent.kind ===
|
5162
|
-
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.expression);
|
5163
|
-
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5164
|
-
}
|
5165
|
-
if (tokenOrKeyword.parent.kind === 74 /* UnobservableExpression */) {
|
5166
|
-
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.expression);
|
5167
|
-
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5168
|
-
}
|
5169
|
-
if (tokenOrKeyword.parent.kind === 81 /* ReferenceExpression */) {
|
5154
|
+
if (tokenOrKeyword.parent.kind === 80 /* ReferenceExpression */) {
|
5170
5155
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.expression);
|
5171
5156
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5172
5157
|
}
|
@@ -5178,7 +5163,7 @@ var SyntaxContextFactory = class {
|
|
5178
5163
|
const expressionRole = new ExpressionRole_callArgument(tokenOrKeyword.parent.callArgumentList, 0);
|
5179
5164
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5180
5165
|
}
|
5181
|
-
if (tokenOrKeyword.parent.kind ===
|
5166
|
+
if (tokenOrKeyword.parent.kind === 145 /* Tag */) {
|
5182
5167
|
const callArgumentList = tokenOrKeyword.parent.callArgumentList;
|
5183
5168
|
if (callArgumentList !== void 0) {
|
5184
5169
|
const expressionRole = new ExpressionRole_callArgument(callArgumentList, 0);
|
@@ -5223,7 +5208,7 @@ var SyntaxContextFactory = class {
|
|
5223
5208
|
const expressionRole = new ExpressionRole_indexedAccessArgument(argumentList, index);
|
5224
5209
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5225
5210
|
}
|
5226
|
-
if (tokenOrKeyword.parent.kind ===
|
5211
|
+
if (tokenOrKeyword.parent.kind === 118 /* MatchExpressionList */) {
|
5227
5212
|
const expressionRole = new ExpressionRole_matchListElement(tokenOrKeyword.parent.parent.parent.parent);
|
5228
5213
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5229
5214
|
}
|
@@ -5232,47 +5217,47 @@ var SyntaxContextFactory = class {
|
|
5232
5217
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5233
5218
|
}
|
5234
5219
|
}
|
5235
|
-
if (tokenOrKeyword.isKeyword(
|
5220
|
+
if (tokenOrKeyword.isKeyword(43 /* Case */) && tokenOrKeyword.parent.kind === 119 /* SwitchStatementCaseClause */) {
|
5236
5221
|
const expressionRole = new ExpressionRole_matchListElement(tokenOrKeyword.parent.parent.parent);
|
5237
5222
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5238
5223
|
}
|
5239
|
-
if (tokenOrKeyword.isKeyword(14 /* Return */) && tokenOrKeyword.parent.kind ===
|
5224
|
+
if (tokenOrKeyword.isKeyword(14 /* Return */) && tokenOrKeyword.parent.kind === 115 /* ReturnStatement */) {
|
5240
5225
|
const expressionRole = new ExpressionRole_returnedValue(tokenOrKeyword.parent);
|
5241
5226
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5242
5227
|
}
|
5243
|
-
if (tokenOrKeyword.isKeyword(
|
5228
|
+
if (tokenOrKeyword.isKeyword(42 /* Switch */) && tokenOrKeyword.parent.kind === 117 /* SwitchStatement */) {
|
5244
5229
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.expression);
|
5245
5230
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5246
5231
|
}
|
5247
|
-
if (tokenOrKeyword.isKeyword(12 /* If */) && tokenOrKeyword.parent.kind ===
|
5232
|
+
if (tokenOrKeyword.isKeyword(12 /* If */) && tokenOrKeyword.parent.kind === 108 /* IfStatement */) {
|
5248
5233
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.condition);
|
5249
5234
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5250
5235
|
}
|
5251
|
-
if (tokenOrKeyword.isKeyword(10 /* ElseIf */) && tokenOrKeyword.parent.kind ===
|
5236
|
+
if (tokenOrKeyword.isKeyword(10 /* ElseIf */) && tokenOrKeyword.parent.kind === 110 /* ElseIfClause */) {
|
5252
5237
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.condition);
|
5253
5238
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5254
5239
|
}
|
5255
|
-
if (tokenOrKeyword.isKeyword(8 /* From */) && tokenOrKeyword.parent.kind ===
|
5240
|
+
if (tokenOrKeyword.isKeyword(8 /* From */) && tokenOrKeyword.parent.kind === 107 /* ForStatement */) {
|
5256
5241
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.enumeratedExpression);
|
5257
5242
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5258
5243
|
}
|
5259
|
-
if (tokenOrKeyword.isKeyword(23 /* While */) && tokenOrKeyword.parent.kind ===
|
5244
|
+
if (tokenOrKeyword.isKeyword(23 /* While */) && tokenOrKeyword.parent.kind === 120 /* WhileStatement */) {
|
5260
5245
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.condition);
|
5261
5246
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5262
5247
|
}
|
5263
|
-
if (tokenOrKeyword.isKeyword(25 /* RepeatWhile */) && tokenOrKeyword.parent.kind ===
|
5248
|
+
if (tokenOrKeyword.isKeyword(25 /* RepeatWhile */) && tokenOrKeyword.parent.kind === 114 /* LoopStatement */) {
|
5264
5249
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.condition);
|
5265
5250
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5266
5251
|
}
|
5267
|
-
if (tokenOrKeyword.isKeyword(26 /* Yield */) && tokenOrKeyword.parent.kind ===
|
5252
|
+
if (tokenOrKeyword.isKeyword(26 /* Yield */) && tokenOrKeyword.parent.kind === 121 /* YieldStatement */) {
|
5268
5253
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.expression);
|
5269
5254
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5270
5255
|
}
|
5271
|
-
if (tokenOrKeyword.isKeyword(27 /* When */) && tokenOrKeyword.parent.kind ===
|
5256
|
+
if (tokenOrKeyword.isKeyword(27 /* When */) && tokenOrKeyword.parent.kind === 77 /* WhenTernaryExpression */) {
|
5272
5257
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.condition);
|
5273
5258
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5274
5259
|
}
|
5275
|
-
if (tokenOrKeyword.isToken(23 /* Colon */) && tokenOrKeyword.parent.kind ===
|
5260
|
+
if (tokenOrKeyword.isToken(23 /* Colon */) && tokenOrKeyword.parent.kind === 77 /* WhenTernaryExpression */) {
|
5276
5261
|
const expressionRole = new ExpressionRole_other(tokenOrKeyword.parent.secondExpression);
|
5277
5262
|
return { isExpressionContext: { expressionRole }, isStatementContext: false };
|
5278
5263
|
}
|
@@ -5294,7 +5279,7 @@ var SyntaxContextFactory = class {
|
|
5294
5279
|
if (tokenOrKeyword.isToken(20 /* CloseBrace */) && tokenOrKeyword.parent.kind === 32 /* TypeMemberDeclarationBlock */ && (tokenOrKeyword.parent.parent.kind === 40 /* TypeExtensionDeclaration */ || tokenOrKeyword.parent.parent.parent.kind === 33 /* PackageStructuredTypeDeclaration */ || tokenOrKeyword.parent.parent.parent.kind === 38 /* PackageVariantTypeDeclaration */ || tokenOrKeyword.parent.parent.parent.kind === 22 /* PackageAliasTypeDeclaration */)) {
|
5295
5280
|
return true;
|
5296
5281
|
}
|
5297
|
-
if (tokenOrKeyword.isToken(20 /* CloseBrace */) && (tokenOrKeyword.parent.kind === 21 /* TranslationsDeclaration */ || tokenOrKeyword.parent.kind === 24 /* PackageMemberGroupDeclaration */ || tokenOrKeyword.parent.kind === 6 /* PackageGroupImportDirective */ || tokenOrKeyword.parent.kind ===
|
5282
|
+
if (tokenOrKeyword.isToken(20 /* CloseBrace */) && (tokenOrKeyword.parent.kind === 21 /* TranslationsDeclaration */ || tokenOrKeyword.parent.kind === 24 /* PackageMemberGroupDeclaration */ || tokenOrKeyword.parent.kind === 6 /* PackageGroupImportDirective */ || tokenOrKeyword.parent.kind === 94 /* StatementBlock */ && (tokenOrKeyword.parent.parent.kind === 25 /* PackageConstructorDeclaration */ || tokenOrKeyword.parent.parent.kind === 26 /* PackageEntryPointDeclaration */ || tokenOrKeyword.parent.parent.kind === 27 /* PackageMethodDeclaration */))) {
|
5298
5283
|
return true;
|
5299
5284
|
}
|
5300
5285
|
if (tokenOrKeyword.isToken(43 /* OpenBrace */) && tokenOrKeyword.parent.kind === 24 /* PackageMemberGroupDeclaration */) {
|
@@ -5306,10 +5291,10 @@ var SyntaxContextFactory = class {
|
|
5306
5291
|
) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 37 /* PackageVariableSetterDeclaration */)) {
|
5307
5292
|
return true;
|
5308
5293
|
}
|
5309
|
-
if (tokenOrKeyword.isKeyword() && tokenOrKeyword.parent.kind ===
|
5294
|
+
if (tokenOrKeyword.isKeyword() && tokenOrKeyword.parent.kind === 147 /* Modifier */ && tokenOrKeyword.value === tokenOrKeyword.parent.value && tokenOrKeyword.parent.openParenthesisToken === void 0 && NodeTypeUtils.isPackageMemberDeclaration(tokenOrKeyword.parent.parent.parent)) {
|
5310
5295
|
return true;
|
5311
5296
|
}
|
5312
|
-
if (tokenOrKeyword.isToken(21 /* CloseParenthesis */) && tokenOrKeyword.parent.kind ===
|
5297
|
+
if (tokenOrKeyword.isToken(21 /* CloseParenthesis */) && tokenOrKeyword.parent.kind === 147 /* Modifier */ && NodeTypeUtils.isPackageMemberDeclaration(tokenOrKeyword.parent.parent.parent)) {
|
5313
5298
|
return true;
|
5314
5299
|
}
|
5315
5300
|
return false;
|
@@ -5330,13 +5315,13 @@ var SyntaxContextFactory = class {
|
|
5330
5315
|
) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(
|
5331
5316
|
tokenOrKeyword,
|
5332
5317
|
51 /* TypeDereferencedVariableSetterDeclaration */
|
5333
|
-
) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 52 /* TypeMethodDeclaration */) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 45 /* TypeConstructorDeclaration */) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 46 /* TypeDestructorDeclaration */) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword,
|
5318
|
+
) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 52 /* TypeMethodDeclaration */) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 45 /* TypeConstructorDeclaration */) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 46 /* TypeDestructorDeclaration */) || SyntaxContextUtils.tokenOrKeywordIsValidEndOfNode(tokenOrKeyword, 140 /* VariantDeclaration */)) {
|
5334
5319
|
return true;
|
5335
5320
|
}
|
5336
|
-
if (tokenOrKeyword.isKeyword() && tokenOrKeyword.parent.kind ===
|
5321
|
+
if (tokenOrKeyword.isKeyword() && tokenOrKeyword.parent.kind === 147 /* Modifier */ && tokenOrKeyword.value === tokenOrKeyword.parent.value && tokenOrKeyword.parent.openParenthesisToken === void 0 && NodeTypeUtils.isTypeMemberDeclaration(tokenOrKeyword.parent.parent.parent)) {
|
5337
5322
|
return true;
|
5338
5323
|
}
|
5339
|
-
if (tokenOrKeyword.isToken(21 /* CloseParenthesis */) && tokenOrKeyword.parent.kind ===
|
5324
|
+
if (tokenOrKeyword.isToken(21 /* CloseParenthesis */) && tokenOrKeyword.parent.kind === 147 /* Modifier */ && NodeTypeUtils.isTypeMemberDeclaration(tokenOrKeyword.parent.parent.parent)) {
|
5340
5325
|
return true;
|
5341
5326
|
}
|
5342
5327
|
return false;
|
@@ -5362,7 +5347,7 @@ var SyntaxContextFactory = class {
|
|
5362
5347
|
return token !== void 0 && offset > token.rangeWithoutTrivia.start && (token.tokenKind === 6 /* TextLiteral */ || token.tokenKind === 5 /* CharLiteral */ || token.tokenKind === 7 /* TextTemplateHead */ || token.tokenKind === 8 /* TextTemplatePart */ || token.tokenKind === 9 /* TextTemplateTail */);
|
5363
5348
|
}
|
5364
5349
|
static isUnqualifiedTypeContext(tokenOrKeyword) {
|
5365
|
-
if (tokenOrKeyword.isToken(23 /* Colon */) && tokenOrKeyword.parent.kind ===
|
5350
|
+
if (tokenOrKeyword.isToken(23 /* Colon */) && tokenOrKeyword.parent.kind === 156 /* TypeAnnotation */) {
|
5366
5351
|
return { allowsAnonymousTypes: true };
|
5367
5352
|
}
|
5368
5353
|
if ((tokenOrKeyword.isKeyword(4 /* Object */) || tokenOrKeyword.isKeyword(5 /* PlainObject */) || tokenOrKeyword.isKeyword(3 /* Aspect */)) && tokenOrKeyword.parent.kind === 34 /* StructuredTypeDeclarationBody */) {
|
@@ -5371,16 +5356,16 @@ var SyntaxContextFactory = class {
|
|
5371
5356
|
if (tokenOrKeyword.isKeyword(15 /* Type */) && (NodeTypeUtils.isPackageTypeDeclaration(tokenOrKeyword.parent) || tokenOrKeyword.parent.kind === 40 /* TypeExtensionDeclaration */)) {
|
5372
5357
|
return { allowsAnonymousTypes: false };
|
5373
5358
|
}
|
5374
|
-
if (tokenOrKeyword.isToken(36 /* LessThan */) && tokenOrKeyword.parent.kind ===
|
5359
|
+
if (tokenOrKeyword.isToken(36 /* LessThan */) && tokenOrKeyword.parent.kind === 152 /* TypeArgumentClause */) {
|
5375
5360
|
return { allowsAnonymousTypes: true };
|
5376
5361
|
}
|
5377
|
-
if (tokenOrKeyword.isToken(24 /* Comma */) && (tokenOrKeyword.parent.kind === 30 /* BaseTypeList */ || tokenOrKeyword.parent.kind ===
|
5378
|
-
return { allowsAnonymousTypes: tokenOrKeyword.parent.kind ===
|
5362
|
+
if (tokenOrKeyword.isToken(24 /* Comma */) && (tokenOrKeyword.parent.kind === 30 /* BaseTypeList */ || tokenOrKeyword.parent.kind === 153 /* TypeArgumentList */)) {
|
5363
|
+
return { allowsAnonymousTypes: tokenOrKeyword.parent.kind === 153 /* TypeArgumentList */ };
|
5379
5364
|
}
|
5380
|
-
if (tokenOrKeyword.isToken(35 /* HashSign */) && tokenOrKeyword.parent.kind ===
|
5365
|
+
if (tokenOrKeyword.isToken(35 /* HashSign */) && tokenOrKeyword.parent.kind === 145 /* Tag */) {
|
5381
5366
|
return { allowsAnonymousTypes: false };
|
5382
5367
|
}
|
5383
|
-
if ((tokenOrKeyword.isToken(23 /* Colon */) || tokenOrKeyword.isToken(57 /* Equals */)) && tokenOrKeyword.parent.kind ===
|
5368
|
+
if ((tokenOrKeyword.isToken(23 /* Colon */) || tokenOrKeyword.isToken(57 /* Equals */)) && tokenOrKeyword.parent.kind === 141 /* TypeParameterDeclaration */) {
|
5384
5369
|
return { allowsAnonymousTypes: false };
|
5385
5370
|
}
|
5386
5371
|
if (tokenOrKeyword.isToken(57 /* Equals */) && tokenOrKeyword.parent.kind === 22 /* PackageAliasTypeDeclaration */) {
|
@@ -5389,7 +5374,7 @@ var SyntaxContextFactory = class {
|
|
5389
5374
|
if (tokenOrKeyword.isKeyword(13 /* Is */) && tokenOrKeyword.parent.kind === 73 /* IsExpression */) {
|
5390
5375
|
return { allowsAnonymousTypes: true };
|
5391
5376
|
}
|
5392
|
-
if (tokenOrKeyword.isKeyword(
|
5377
|
+
if (tokenOrKeyword.isKeyword(40 /* As */) && tokenOrKeyword.parent.kind === 64 /* AsExpression */) {
|
5393
5378
|
return { allowsAnonymousTypes: true };
|
5394
5379
|
}
|
5395
5380
|
if (tokenOrKeyword.isToken(17 /* Bar */) && tokenOrKeyword.parent.kind === 12 /* UnionTypeSpecifierTypeList */) {
|
@@ -5406,32 +5391,32 @@ var SyntaxContextFactory = class {
|
|
5406
5391
|
}
|
5407
5392
|
const packageImport = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(
|
5408
5393
|
tokenOrKeyword,
|
5409
|
-
|
5394
|
+
132 /* PackageImportTranslation */
|
5410
5395
|
);
|
5411
5396
|
if (packageImport !== void 0) {
|
5412
5397
|
return { translationsDeclaration: packageImport.parent.parent };
|
5413
5398
|
}
|
5414
|
-
const type = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(tokenOrKeyword,
|
5399
|
+
const type = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(tokenOrKeyword, 137 /* TypeTranslation */);
|
5415
5400
|
if (type !== void 0) {
|
5416
5401
|
return { translationsDeclaration: type.parent.parent };
|
5417
5402
|
}
|
5418
5403
|
const methodType = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(
|
5419
5404
|
tokenOrKeyword,
|
5420
|
-
|
5405
|
+
131 /* MethodTypeTranslation */
|
5421
5406
|
);
|
5422
5407
|
if (methodType !== void 0) {
|
5423
5408
|
return { translationsDeclaration: methodType.parent.parent };
|
5424
5409
|
}
|
5425
5410
|
const variable = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(
|
5426
5411
|
tokenOrKeyword,
|
5427
|
-
|
5412
|
+
134 /* PackageVariableTranslation */
|
5428
5413
|
);
|
5429
5414
|
if (variable !== void 0) {
|
5430
5415
|
return { translationsDeclaration: variable.parent.parent };
|
5431
5416
|
}
|
5432
5417
|
const method = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(
|
5433
5418
|
tokenOrKeyword,
|
5434
|
-
|
5419
|
+
129 /* PackageMethodTranslation */
|
5435
5420
|
);
|
5436
5421
|
if (method !== void 0) {
|
5437
5422
|
return { translationsDeclaration: method.parent.parent };
|
@@ -5439,33 +5424,33 @@ var SyntaxContextFactory = class {
|
|
5439
5424
|
return void 0;
|
5440
5425
|
}
|
5441
5426
|
static isTypeMemberTranslationListContext(tokenOrKeyword) {
|
5442
|
-
if (tokenOrKeyword.isToken(51 /* Semicolon */) && tokenOrKeyword.parent.kind ===
|
5427
|
+
if (tokenOrKeyword.isToken(51 /* Semicolon */) && tokenOrKeyword.parent.kind === 136 /* TypeMemberTranslationList */) {
|
5443
5428
|
return { typeTranslation: tokenOrKeyword.parent.parent };
|
5444
5429
|
}
|
5445
|
-
if (tokenOrKeyword.isToken(43 /* OpenBrace */) && tokenOrKeyword.parent.kind ===
|
5430
|
+
if (tokenOrKeyword.isToken(43 /* OpenBrace */) && tokenOrKeyword.parent.kind === 137 /* TypeTranslation */) {
|
5446
5431
|
return { typeTranslation: tokenOrKeyword.parent };
|
5447
5432
|
}
|
5448
|
-
const indexer = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(tokenOrKeyword,
|
5433
|
+
const indexer = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(tokenOrKeyword, 126 /* IndexerTranslation */);
|
5449
5434
|
if (indexer !== void 0) {
|
5450
5435
|
return { typeTranslation: indexer.parent.parent };
|
5451
5436
|
}
|
5452
5437
|
const constructor = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(
|
5453
5438
|
tokenOrKeyword,
|
5454
|
-
|
5439
|
+
124 /* ConstructorTranslation */
|
5455
5440
|
);
|
5456
5441
|
if (constructor !== void 0) {
|
5457
5442
|
return { typeTranslation: constructor.parent.parent };
|
5458
5443
|
}
|
5459
5444
|
const variableOrVariant = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(
|
5460
5445
|
tokenOrKeyword,
|
5461
|
-
|
5446
|
+
135 /* TypeVariableOrVariantTranslation */
|
5462
5447
|
);
|
5463
5448
|
if (variableOrVariant !== void 0) {
|
5464
5449
|
return { typeTranslation: variableOrVariant.parent.parent };
|
5465
5450
|
}
|
5466
5451
|
const method = SyntaxContextUtils.ifTokenIsValidEndOfNodeThenNode(
|
5467
5452
|
tokenOrKeyword,
|
5468
|
-
|
5453
|
+
130 /* TypeMethodTranslation */
|
5469
5454
|
);
|
5470
5455
|
if (method !== void 0) {
|
5471
5456
|
return { typeTranslation: method.parent.parent };
|
@@ -5580,25 +5565,25 @@ var NodeSemanticInfoService = class {
|
|
5580
5565
|
return this.ofNonKeywordIdentifier(analyzer, tokenOrKeyword.value, options6);
|
5581
5566
|
} else if (tokenOrKeyword.isKeyword(2 /* Autotype */) && tokenOrKeyword.parent.kind === 69 /* AutotypeCallExpression */) {
|
5582
5567
|
return this.ofAutotypeCallExpression(analyzer, tokenOrKeyword.parent, options6);
|
5583
|
-
} else if (tokenOrKeyword.parent.kind ===
|
5568
|
+
} else if (tokenOrKeyword.parent.kind === 78 /* PrefixUnaryExpression */) {
|
5584
5569
|
return this.ofPrefixUnaryExpressionOperator(analyzer, tokenOrKeyword.parent, options6);
|
5585
|
-
} else if (tokenOrKeyword.isKeyword(
|
5570
|
+
} else if (tokenOrKeyword.isKeyword(41 /* Not */) && tokenOrKeyword.parent.kind === 74 /* NotExpression */) {
|
5586
5571
|
return this.ofNotExpressionNotKeyword(analyzer, tokenOrKeyword.parent, options6);
|
5587
5572
|
} else if (tokenOrKeyword.parent.kind === 65 /* BinaryExpression */) {
|
5588
5573
|
return this.ofBinaryExpressionOperator(analyzer, tokenOrKeyword.parent, options6);
|
5589
5574
|
} else if (tokenOrKeyword.isToken(19 /* Caret */) && (tokenOrKeyword.parent.kind === 50 /* TypeDereferencedVariableGetterDeclaration */ || tokenOrKeyword.parent.kind === 51 /* TypeDereferencedVariableSetterDeclaration */)) {
|
5590
5575
|
return this.ofDereferenceOperatorDeclaration(analyzer, tokenOrKeyword.parent);
|
5591
|
-
} else if (tokenOrKeyword.isToken(19 /* Caret */) && tokenOrKeyword.parent.kind ===
|
5576
|
+
} else if (tokenOrKeyword.isToken(19 /* Caret */) && tokenOrKeyword.parent.kind === 81 /* DereferenceExpression */) {
|
5592
5577
|
return this.ofDereferenceExpressionOperator(analyzer, tokenOrKeyword.parent, options6);
|
5593
|
-
} else if (tokenOrKeyword.parent.kind ===
|
5578
|
+
} else if (tokenOrKeyword.parent.kind === 92 /* AssignmentStatement */) {
|
5594
5579
|
return this.ofAssignmentStatementOperator(analyzer, tokenOrKeyword.parent, options6);
|
5595
5580
|
} else if (tokenOrKeyword.isKeyword(28 /* Creation */) && tokenOrKeyword.parent.kind === 45 /* TypeConstructorDeclaration */) {
|
5596
5581
|
return this.ofTypeConstructorDeclaration(analyzer, tokenOrKeyword.parent);
|
5597
|
-
} else if (tokenOrKeyword.isToken(13 /* Asterisk */) && tokenOrKeyword.parent.kind ===
|
5582
|
+
} else if (tokenOrKeyword.isToken(13 /* Asterisk */) && tokenOrKeyword.parent.kind === 91 /* DefaultMatchExpression */) {
|
5598
5583
|
return this.ofDefaultMatchExpression(analyzer, tokenOrKeyword.parent);
|
5599
|
-
} else if (tokenOrKeyword.isKeyword(4 /* Object */) && tokenOrKeyword.parent.kind ===
|
5584
|
+
} else if (tokenOrKeyword.isKeyword(4 /* Object */) && tokenOrKeyword.parent.kind === 87 /* ObjectExpression */) {
|
5600
5585
|
return this.ofObjectExpression(analyzer, tokenOrKeyword.parent, options6);
|
5601
|
-
} else if (tokenOrKeyword.isKeyword(
|
5586
|
+
} else if (tokenOrKeyword.isKeyword(55 /* Base */) && tokenOrKeyword.parent.kind === 88 /* BaseExpression */) {
|
5602
5587
|
return this.ofBaseExpression(analyzer, tokenOrKeyword.parent, options6);
|
5603
5588
|
} else if ((tokenOrKeyword.isToken(45 /* OpenSquareBracket */) || tokenOrKeyword.isToken(22 /* CloseSquareBracket */)) && tokenOrKeyword.parent.kind === 49 /* TypeIndexerParameterClause */) {
|
5604
5589
|
return this.ofTypeIndexerDeclaration(analyzer, tokenOrKeyword.parent.parent);
|
@@ -5615,11 +5600,11 @@ var NodeSemanticInfoService = class {
|
|
5615
5600
|
let result;
|
5616
5601
|
const parent = node.parent;
|
5617
5602
|
switch (parent.kind) {
|
5618
|
-
case
|
5603
|
+
case 127 /* TranslationTypeParameterList */:
|
5619
5604
|
break;
|
5620
|
-
case
|
5605
|
+
case 122 /* TranslationParameterList */:
|
5621
5606
|
break;
|
5622
|
-
case
|
5607
|
+
case 143 /* CallArgument */: {
|
5623
5608
|
const respectiveParameter = analyzer.getRespectiveParameter(parent);
|
5624
5609
|
if (respectiveParameter !== void 0) {
|
5625
5610
|
const target = new SimpleWithLocalization(
|
@@ -5636,7 +5621,7 @@ var NodeSemanticInfoService = class {
|
|
5636
5621
|
case 59 /* EnumerationVariableDeclaration */:
|
5637
5622
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofEnumerationVariableDeclaration(parent));
|
5638
5623
|
break;
|
5639
|
-
case
|
5624
|
+
case 101 /* ErrorVariableDeclaration */:
|
5640
5625
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofErrorVariableDeclaration(parent));
|
5641
5626
|
break;
|
5642
5627
|
case 22 /* PackageAliasTypeDeclaration */:
|
@@ -5657,7 +5642,7 @@ var NodeSemanticInfoService = class {
|
|
5657
5642
|
case 38 /* PackageVariantTypeDeclaration */:
|
5658
5643
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofPackageVariantTypeDeclaration(parent));
|
5659
5644
|
break;
|
5660
|
-
case
|
5645
|
+
case 89 /* IdentifierExpression */:
|
5661
5646
|
result = this.ofIdentifierExpression(analyzer, parent, options6);
|
5662
5647
|
break;
|
5663
5648
|
case 57 /* NestedMethodDeclaration */:
|
@@ -5666,10 +5651,10 @@ var NodeSemanticInfoService = class {
|
|
5666
5651
|
case 58 /* LocalVariableDeclaration */:
|
5667
5652
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofLocalVariableDeclaration(parent));
|
5668
5653
|
break;
|
5669
|
-
case
|
5654
|
+
case 133 /* QualifiedName */:
|
5670
5655
|
result = this.ofQualifiedNameQualifier(analyzer, parent, node, options6);
|
5671
5656
|
break;
|
5672
|
-
case
|
5657
|
+
case 134 /* PackageVariableTranslation */: {
|
5673
5658
|
const translationPackage = this.getContainingTranslationPackage(analyzer, node);
|
5674
5659
|
const getTargetResult = translationPackage?.getPackageVariableTranslationTarget(parent);
|
5675
5660
|
if (translationPackage !== void 0 && getTargetResult?.target !== void 0) {
|
@@ -5689,7 +5674,7 @@ var NodeSemanticInfoService = class {
|
|
5689
5674
|
}
|
5690
5675
|
break;
|
5691
5676
|
}
|
5692
|
-
case
|
5677
|
+
case 135 /* TypeVariableOrVariantTranslation */: {
|
5693
5678
|
const translationPackage = this.getContainingTranslationPackage(analyzer, node);
|
5694
5679
|
const getTargetsResult = translationPackage?.getTypeVariableOrVariantTranslationTargets(parent);
|
5695
5680
|
if (translationPackage !== void 0 && isNonEmptyArray(getTargetsResult?.targets)) {
|
@@ -5713,7 +5698,7 @@ var NodeSemanticInfoService = class {
|
|
5713
5698
|
}
|
5714
5699
|
break;
|
5715
5700
|
}
|
5716
|
-
case
|
5701
|
+
case 129 /* PackageMethodTranslation */: {
|
5717
5702
|
const translationPackage = this.getContainingTranslationPackage(analyzer, node);
|
5718
5703
|
const getTargetsResult = translationPackage?.getPackageMethodTranslationTargets(parent);
|
5719
5704
|
if (translationPackage !== void 0 && isNonEmptyArray(getTargetsResult?.targets)) {
|
@@ -5737,7 +5722,7 @@ var NodeSemanticInfoService = class {
|
|
5737
5722
|
}
|
5738
5723
|
break;
|
5739
5724
|
}
|
5740
|
-
case
|
5725
|
+
case 130 /* TypeMethodTranslation */: {
|
5741
5726
|
const translationPackage = this.getContainingTranslationPackage(analyzer, node);
|
5742
5727
|
const getTargetsResult = translationPackage?.getTypeMethodTranslationTargets(parent);
|
5743
5728
|
if (translationPackage !== void 0 && isNonEmptyArray(getTargetsResult?.targets)) {
|
@@ -5761,7 +5746,7 @@ var NodeSemanticInfoService = class {
|
|
5761
5746
|
}
|
5762
5747
|
break;
|
5763
5748
|
}
|
5764
|
-
case
|
5749
|
+
case 137 /* TypeTranslation */: {
|
5765
5750
|
const translationPackage = this.getContainingTranslationPackage(analyzer, node);
|
5766
5751
|
const getTargetResult = translationPackage?.getTypeTranslationTarget(parent);
|
5767
5752
|
if (translationPackage !== void 0 && getTargetResult?.target !== void 0) {
|
@@ -5781,7 +5766,7 @@ var NodeSemanticInfoService = class {
|
|
5781
5766
|
}
|
5782
5767
|
break;
|
5783
5768
|
}
|
5784
|
-
case
|
5769
|
+
case 131 /* MethodTypeTranslation */: {
|
5785
5770
|
const translationPackage = this.getContainingTranslationPackage(analyzer, node);
|
5786
5771
|
const getTargetResult = translationPackage?.getMethodTypeTranslationTarget(parent);
|
5787
5772
|
if (translationPackage !== void 0 && getTargetResult?.target !== void 0) {
|
@@ -5801,7 +5786,7 @@ var NodeSemanticInfoService = class {
|
|
5801
5786
|
}
|
5802
5787
|
break;
|
5803
5788
|
}
|
5804
|
-
case
|
5789
|
+
case 142 /* ParameterDeclaration */:
|
5805
5790
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofParameterDeclaration(parent));
|
5806
5791
|
break;
|
5807
5792
|
case 8 /* PackageImport */:
|
@@ -5810,7 +5795,7 @@ var NodeSemanticInfoService = class {
|
|
5810
5795
|
case 9 /* PackagePath */:
|
5811
5796
|
result = void 0;
|
5812
5797
|
break;
|
5813
|
-
case
|
5798
|
+
case 79 /* PropertyAccessExpression */:
|
5814
5799
|
result = this.ofProperty(analyzer, parent, options6);
|
5815
5800
|
break;
|
5816
5801
|
case 52 /* TypeMethodDeclaration */:
|
@@ -5819,10 +5804,10 @@ var NodeSemanticInfoService = class {
|
|
5819
5804
|
case 53 /* TypeVariableDeclaration */:
|
5820
5805
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofTypeVariableDeclaration(parent));
|
5821
5806
|
break;
|
5822
|
-
case
|
5807
|
+
case 141 /* TypeParameterDeclaration */:
|
5823
5808
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofTypeParameterDeclaration(parent));
|
5824
5809
|
break;
|
5825
|
-
case
|
5810
|
+
case 140 /* VariantDeclaration */:
|
5826
5811
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofVariantDeclaration(parent));
|
5827
5812
|
break;
|
5828
5813
|
case 36 /* PackageVariableGetterDeclaration */:
|
@@ -5833,7 +5818,7 @@ var NodeSemanticInfoService = class {
|
|
5833
5818
|
case 55 /* TypeVariableSetterDeclaration */:
|
5834
5819
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofComputedTypeVariableDeclaration(parent));
|
5835
5820
|
break;
|
5836
|
-
case
|
5821
|
+
case 151 /* SetterParameterDeclaration */:
|
5837
5822
|
result = new DefinitionNodeSemanticInfo(analyzer.entity.ofSetterParameterDeclaration(parent));
|
5838
5823
|
break;
|
5839
5824
|
case 3 /* Keyword */:
|
@@ -5977,7 +5962,7 @@ var NodeSemanticInfoService = class {
|
|
5977
5962
|
return result;
|
5978
5963
|
}
|
5979
5964
|
case 42 /* ExtendedTypeClause */:
|
5980
|
-
case
|
5965
|
+
case 132 /* PackageImportTranslation */:
|
5981
5966
|
return void 0;
|
5982
5967
|
default:
|
5983
5968
|
Debug.never(node.parent);
|
@@ -6287,7 +6272,7 @@ var NodeSemanticInfoService = class {
|
|
6287
6272
|
}
|
6288
6273
|
static ofPackageNameSegmentAccess(analyzer, packageTreeNode, node) {
|
6289
6274
|
let parent = getParentSkippingParenthesizedExpressions(node);
|
6290
|
-
while (parent.kind ===
|
6275
|
+
while (parent.kind === 79 /* PropertyAccessExpression */) {
|
6291
6276
|
const meaning = analyzer.resolvePropertyAccessExpression(parent).meaning;
|
6292
6277
|
if (meaning.kind === "package-name-segment-access") {
|
6293
6278
|
packageTreeNode = meaning.packageTreeNode;
|
@@ -6328,7 +6313,7 @@ var NodeSemanticInfoService = class {
|
|
6328
6313
|
let parentCallExpression;
|
6329
6314
|
if (parent.kind === 68 /* CallExpression */) {
|
6330
6315
|
parentCallExpression = parent;
|
6331
|
-
} else if (parent.kind ===
|
6316
|
+
} else if (parent.kind === 90 /* GenericSpecializationExpression */) {
|
6332
6317
|
const grandParent = getParentSkippingParenthesizedExpressions(parent);
|
6333
6318
|
if (grandParent.kind === 68 /* CallExpression */) {
|
6334
6319
|
parentCallExpression = grandParent;
|
@@ -6537,7 +6522,7 @@ var SimpleWithLocalization = class {
|
|
6537
6522
|
|
6538
6523
|
// source/services/Utils.ts
|
6539
6524
|
function getEntitySourceLocations(analyzer, entity) {
|
6540
|
-
if (entity.kind ===
|
6525
|
+
if (entity.kind === 18 /* Package */) {
|
6541
6526
|
return void 0;
|
6542
6527
|
}
|
6543
6528
|
let result;
|
@@ -6586,7 +6571,7 @@ function getEntitySourceLocations(analyzer, entity) {
|
|
6586
6571
|
case 18 /* AnonymousStructuredTypeDeclaration */:
|
6587
6572
|
case 19 /* AnonymousVariantTypeDeclaration */:
|
6588
6573
|
case 66 /* MethodBlockLiteral */:
|
6589
|
-
case
|
6574
|
+
case 75 /* MethodLiteral */:
|
6590
6575
|
range = node.rangeWithoutTrivia;
|
6591
6576
|
break;
|
6592
6577
|
case 22 /* PackageAliasTypeDeclaration */:
|
@@ -6596,8 +6581,8 @@ function getEntitySourceLocations(analyzer, entity) {
|
|
6596
6581
|
case 38 /* PackageVariantTypeDeclaration */:
|
6597
6582
|
case 57 /* NestedMethodDeclaration */:
|
6598
6583
|
case 52 /* TypeMethodDeclaration */:
|
6599
|
-
case
|
6600
|
-
case
|
6584
|
+
case 141 /* TypeParameterDeclaration */:
|
6585
|
+
case 140 /* VariantDeclaration */:
|
6601
6586
|
range = node.name.rangeWithoutTrivia;
|
6602
6587
|
break;
|
6603
6588
|
case 45 /* TypeConstructorDeclaration */:
|
@@ -6889,7 +6874,7 @@ var ReferencesService = class {
|
|
6889
6874
|
result.push(new Reference(sourceFile2, node.autotypeKeyword.rangeWithoutTrivia, referenceKind));
|
6890
6875
|
}
|
6891
6876
|
}
|
6892
|
-
if (node.kind ===
|
6877
|
+
if (node.kind === 78 /* PrefixUnaryExpression */ && restrictions.canBePrefixUnaryOperator) {
|
6893
6878
|
const semanticInfo = NodeSemanticInfoService.ofPrefixUnaryExpressionOperator(
|
6894
6879
|
analyzer,
|
6895
6880
|
node,
|
@@ -6905,7 +6890,7 @@ var ReferencesService = class {
|
|
6905
6890
|
result.push(new Reference(sourceFile2, node.operator.rangeWithoutTrivia, referenceKind));
|
6906
6891
|
}
|
6907
6892
|
}
|
6908
|
-
if (node.kind ===
|
6893
|
+
if (node.kind === 74 /* NotExpression */ && restrictions.canBeNotExpression) {
|
6909
6894
|
const semanticInfo = NodeSemanticInfoService.ofNotExpressionNotKeyword(
|
6910
6895
|
analyzer,
|
6911
6896
|
node,
|
@@ -6949,7 +6934,7 @@ var ReferencesService = class {
|
|
6949
6934
|
result.push(new Reference(sourceFile2, node.caretToken.rangeWithoutTrivia, referenceKind));
|
6950
6935
|
}
|
6951
6936
|
}
|
6952
|
-
if (node.kind ===
|
6937
|
+
if (node.kind === 81 /* DereferenceExpression */ && restrictions.canBeDereferenceOperator) {
|
6953
6938
|
const semanticInfo = NodeSemanticInfoService.ofDereferenceExpressionOperator(
|
6954
6939
|
analyzer,
|
6955
6940
|
node,
|
@@ -6965,7 +6950,7 @@ var ReferencesService = class {
|
|
6965
6950
|
result.push(new Reference(sourceFile2, node.caretToken.rangeWithoutTrivia, referenceKind));
|
6966
6951
|
}
|
6967
6952
|
}
|
6968
|
-
if (node.kind ===
|
6953
|
+
if (node.kind === 92 /* AssignmentStatement */ && restrictions.canBeAssignmentStatementOperator) {
|
6969
6954
|
const semanticInfo = NodeSemanticInfoService.ofAssignmentStatementOperator(
|
6970
6955
|
analyzer,
|
6971
6956
|
node,
|
@@ -6993,7 +6978,7 @@ var ReferencesService = class {
|
|
6993
6978
|
result.push(new Reference(sourceFile2, node.creationKeyword.rangeWithoutTrivia, referenceKind));
|
6994
6979
|
}
|
6995
6980
|
}
|
6996
|
-
if (node.kind ===
|
6981
|
+
if (node.kind === 87 /* ObjectExpression */ && restrictions.canBeObjectExpression) {
|
6997
6982
|
const semanticInfo = NodeSemanticInfoService.ofObjectExpression(analyzer, node, semanticInfoOptions);
|
6998
6983
|
const referenceKind = this.ifReferenceToDefinitionThenKind(
|
6999
6984
|
definition,
|
@@ -7005,7 +6990,7 @@ var ReferencesService = class {
|
|
7005
6990
|
result.push(new Reference(sourceFile2, node.keyword.rangeWithoutTrivia, referenceKind));
|
7006
6991
|
}
|
7007
6992
|
}
|
7008
|
-
if (node.kind ===
|
6993
|
+
if (node.kind === 88 /* BaseExpression */ && restrictions.canBeBaseExpression) {
|
7009
6994
|
const semanticInfo = NodeSemanticInfoService.ofBaseExpression(analyzer, node, semanticInfoOptions);
|
7010
6995
|
const referenceKind = this.ifReferenceToDefinitionThenKind(
|
7011
6996
|
definition,
|
@@ -7291,8 +7276,8 @@ var ReferencesService = class {
|
|
7291
7276
|
case 8 /* DereferenceOperator */:
|
7292
7277
|
case 15 /* UnaryOperator */:
|
7293
7278
|
case 16 /* BinaryOperator */:
|
7294
|
-
case
|
7295
|
-
case
|
7279
|
+
case 18 /* Package */:
|
7280
|
+
case 19 /* TypeExtension */:
|
7296
7281
|
return void 0;
|
7297
7282
|
default:
|
7298
7283
|
Debug.never(entity);
|
@@ -7405,9 +7390,9 @@ var EvaluatableExpressionService = class {
|
|
7405
7390
|
getEvaluatableExpressionForIdentifier(node) {
|
7406
7391
|
const parent = node.parent;
|
7407
7392
|
switch (parent.kind) {
|
7408
|
-
case
|
7393
|
+
case 89 /* IdentifierExpression */:
|
7409
7394
|
return parent;
|
7410
|
-
case
|
7395
|
+
case 79 /* PropertyAccessExpression */:
|
7411
7396
|
if (this.isEvaluatableReceiver(parent.expression)) {
|
7412
7397
|
return parent;
|
7413
7398
|
}
|
@@ -7428,9 +7413,9 @@ var EvaluatableExpressionService = class {
|
|
7428
7413
|
}
|
7429
7414
|
isEvaluatableReceiver(expression) {
|
7430
7415
|
switch (expression.kind) {
|
7431
|
-
case
|
7416
|
+
case 89 /* IdentifierExpression */:
|
7432
7417
|
return true;
|
7433
|
-
case
|
7418
|
+
case 79 /* PropertyAccessExpression */:
|
7434
7419
|
return this.isEvaluatableReceiver(expression.expression);
|
7435
7420
|
default:
|
7436
7421
|
return false;
|
@@ -7456,17 +7441,17 @@ var EvaluatableExpressionService = class {
|
|
7456
7441
|
return { nameIdentifier: node.name };
|
7457
7442
|
case 58 /* LocalVariableDeclaration */:
|
7458
7443
|
return { nameIdentifier: node.name };
|
7459
|
-
case
|
7444
|
+
case 142 /* ParameterDeclaration */:
|
7460
7445
|
return { nameIdentifier: node.name };
|
7461
7446
|
case 52 /* TypeMethodDeclaration */:
|
7462
7447
|
return { nameIdentifier: node.name };
|
7463
7448
|
case 53 /* TypeVariableDeclaration */:
|
7464
7449
|
return { nameIdentifier: node.name };
|
7465
|
-
case
|
7450
|
+
case 141 /* TypeParameterDeclaration */:
|
7466
7451
|
return { nameIdentifier: node.name };
|
7467
|
-
case
|
7452
|
+
case 140 /* VariantDeclaration */:
|
7468
7453
|
return { nameIdentifier: node.name };
|
7469
|
-
case
|
7454
|
+
case 101 /* ErrorVariableDeclaration */:
|
7470
7455
|
return { nameIdentifier: node.name };
|
7471
7456
|
default:
|
7472
7457
|
return void 0;
|
@@ -7623,7 +7608,7 @@ var HoverService = class {
|
|
7623
7608
|
const typeText = this._displayService.displayType(firstTarget.value.type);
|
7624
7609
|
return new Hover(`${keywordText}: ${typeText}`, range);
|
7625
7610
|
} else if (firstTarget.value.typeContextKind === "base") {
|
7626
|
-
const keywordText = this._displayService.displayKeyword(
|
7611
|
+
const keywordText = this._displayService.displayKeyword(55 /* Base */);
|
7627
7612
|
const typeText = this._displayService.displayType(firstTarget.value.type);
|
7628
7613
|
return new Hover(`${keywordText}: ${typeText}`, range);
|
7629
7614
|
} else {
|
@@ -7880,7 +7865,7 @@ var SourceFileItemsService = class {
|
|
7880
7865
|
);
|
7881
7866
|
break;
|
7882
7867
|
}
|
7883
|
-
case
|
7868
|
+
case 140 /* VariantDeclaration */: {
|
7884
7869
|
result.push(
|
7885
7870
|
this.createItem(
|
7886
7871
|
9 /* Variant */,
|
@@ -7892,7 +7877,7 @@ var SourceFileItemsService = class {
|
|
7892
7877
|
);
|
7893
7878
|
break;
|
7894
7879
|
}
|
7895
|
-
case
|
7880
|
+
case 141 /* TypeParameterDeclaration */: {
|
7896
7881
|
result.push(
|
7897
7882
|
this.createItem(
|
7898
7883
|
18 /* TypeParameter */,
|
@@ -7941,7 +7926,7 @@ var SourceFileItemsService = class {
|
|
7941
7926
|
case 4 /* PackageMethod */:
|
7942
7927
|
case 15 /* TypeMethod */:
|
7943
7928
|
case 19 /* NestedMethod */:
|
7944
|
-
return name ?? `<${LocalizationHelper.localizeKeywordAndTakeFirst(11 /*
|
7929
|
+
return name ?? `<${LocalizationHelper.localizeKeywordAndTakeFirst(11 /* Function */, this.locale, this.dialect)}>`;
|
7945
7930
|
case 5 /* StructuredType */:
|
7946
7931
|
case 6 /* MethodType */:
|
7947
7932
|
case 7 /* VariantType */:
|
@@ -7950,21 +7935,21 @@ var SourceFileItemsService = class {
|
|
7950
7935
|
case 10 /* TypeConstructor */:
|
7951
7936
|
return name ?? LocalizationHelper.localizeKeywordAndTakeFirst(28 /* Creation */, this.locale, this.dialect);
|
7952
7937
|
case 11 /* TypeDestructor */:
|
7953
|
-
return name ?? LocalizationHelper.localizeKeywordAndTakeFirst(
|
7938
|
+
return name ?? LocalizationHelper.localizeKeywordAndTakeFirst(46 /* Destruction */, this.locale, this.dialect);
|
7954
7939
|
case 9 /* Variant */:
|
7955
7940
|
return name ?? `<${LocalizationHelper.localizeKeywordAndTakeFirst(6 /* Variant */, this.locale, this.dialect)}>`;
|
7956
7941
|
case 18 /* TypeParameter */:
|
7957
7942
|
return name ?? `<${LocalizationHelper.localizeHelperPhrase(2 /* TypeParameter */, this.locale)}>`;
|
7958
7943
|
case 2 /* PackageVariableGetter */:
|
7959
7944
|
case 13 /* TypeVariableGetter */:
|
7960
|
-
return `${LocalizationHelper.localizeKeywordAndTakeFirst(
|
7945
|
+
return `${LocalizationHelper.localizeKeywordAndTakeFirst(57 /* Get */, this.locale, this.dialect)} ${name ?? ""}`;
|
7961
7946
|
case 3 /* PackageVariableSetter */:
|
7962
7947
|
case 14 /* TypeVariableSetter */:
|
7963
|
-
return `${LocalizationHelper.localizeKeywordAndTakeFirst(
|
7948
|
+
return `${LocalizationHelper.localizeKeywordAndTakeFirst(58 /* Set */, this.locale, this.dialect)} ${name ?? ""}`;
|
7964
7949
|
case 16 /* TypeIndexedGetter */:
|
7965
|
-
return `${LocalizationHelper.localizeKeywordAndTakeFirst(
|
7950
|
+
return `${LocalizationHelper.localizeKeywordAndTakeFirst(57 /* Get */, this.locale, this.dialect)} []`;
|
7966
7951
|
case 17 /* TypeIndexedSetter */:
|
7967
|
-
return `${LocalizationHelper.localizeKeywordAndTakeFirst(
|
7952
|
+
return `${LocalizationHelper.localizeKeywordAndTakeFirst(58 /* Set */, this.locale, this.dialect)} []`;
|
7968
7953
|
default:
|
7969
7954
|
Debug.never(kind);
|
7970
7955
|
}
|
@@ -8123,7 +8108,7 @@ var SelectionRangeService = class {
|
|
8123
8108
|
if (!this.nodeShouldBeSkipped(child) && !child.rangeWithoutTrivia.equals(result.range)) {
|
8124
8109
|
result = new SelectionRange(child.rangeWithoutTrivia, result);
|
8125
8110
|
}
|
8126
|
-
if (child.kind === 0 /* Token */ && (child.tokenKind === 6 /* TextLiteral */ || child.tokenKind === 7 /* TextTemplateHead */ || child.tokenKind === 8 /* TextTemplatePart */ || child.tokenKind === 9 /* TextTemplateTail */ || child.tokenKind === 5 /* CharLiteral */) || child.kind ===
|
8111
|
+
if (child.kind === 0 /* Token */ && (child.tokenKind === 6 /* TextLiteral */ || child.tokenKind === 7 /* TextTemplateHead */ || child.tokenKind === 8 /* TextTemplatePart */ || child.tokenKind === 9 /* TextTemplateTail */ || child.tokenKind === 5 /* CharLiteral */) || child.kind === 82 /* TextTemplateLiteral */) {
|
8127
8112
|
const textContentStart = child.rangeWithoutTrivia.start + 1;
|
8128
8113
|
const textContentEnd = child.rangeWithoutTrivia.end - 1;
|
8129
8114
|
if (offset >= textContentStart && offset < textContentEnd) {
|
@@ -8154,13 +8139,13 @@ var SelectionRangeService = class {
|
|
8154
8139
|
}
|
8155
8140
|
}
|
8156
8141
|
switch (node.kind) {
|
8157
|
-
case
|
8142
|
+
case 156 /* TypeAnnotation */:
|
8158
8143
|
case 34 /* StructuredTypeDeclarationBody */:
|
8159
8144
|
case 39 /* VariantTypeDeclarationBody */:
|
8160
8145
|
case 23 /* AliasTypeDeclarationBody */:
|
8161
8146
|
case 29 /* MethodTypeDeclarationBody */:
|
8162
|
-
case
|
8163
|
-
case
|
8147
|
+
case 84 /* TextTemplateSpan */:
|
8148
|
+
case 83 /* TextTemplateSpanList */:
|
8164
8149
|
return true;
|
8165
8150
|
default:
|
8166
8151
|
return false;
|
@@ -8198,7 +8183,7 @@ var SemanticTokensService = class {
|
|
8198
8183
|
controller.stopChildrenTraverse();
|
8199
8184
|
return;
|
8200
8185
|
}
|
8201
|
-
if (node.kind ===
|
8186
|
+
if (node.kind === 89 /* IdentifierExpression */) {
|
8202
8187
|
const meaning = analyzer.resolveIdentifierExpression(node).meaning;
|
8203
8188
|
if (meaning.kind === "variable-access") {
|
8204
8189
|
const variable = meaning.variable.value.getEntity();
|
@@ -8248,7 +8233,7 @@ var SemanticTokensService = class {
|
|
8248
8233
|
);
|
8249
8234
|
}
|
8250
8235
|
}
|
8251
|
-
if (node.kind ===
|
8236
|
+
if (node.kind === 79 /* PropertyAccessExpression */) {
|
8252
8237
|
const meaning = analyzer.resolvePropertyAccessExpression(node).meaning;
|
8253
8238
|
if (meaning.kind === "variant-access") {
|
8254
8239
|
result.push(
|
@@ -8282,7 +8267,7 @@ var SemanticTokensService = class {
|
|
8282
8267
|
);
|
8283
8268
|
}
|
8284
8269
|
}
|
8285
|
-
if (node.kind ===
|
8270
|
+
if (node.kind === 140 /* VariantDeclaration */) {
|
8286
8271
|
result.push(
|
8287
8272
|
new SemanticToken(
|
8288
8273
|
node.name.rangeWithoutTrivia,
|
@@ -8460,7 +8445,7 @@ var TypeParameterSignatureHelpProvider = class {
|
|
8460
8445
|
}
|
8461
8446
|
let node = token.parent;
|
8462
8447
|
while (node !== void 0) {
|
8463
|
-
if (node.kind ===
|
8448
|
+
if (node.kind === 152 /* TypeArgumentClause */ && this._offset >= node.lessThanToken.rangeWithoutTrivia.end && (node.greaterThanToken.rangeWithoutTrivia.isEmpty || this._offset <= node.greaterThanToken.rangeWithoutTrivia.start)) {
|
8464
8449
|
const argumentIndex = this.getArgumentIndex(node.typeArgumentList, this._offset);
|
8465
8450
|
const argumentCount = this.countArguments(node.typeArgumentList);
|
8466
8451
|
return new NodeWithTypeArgumentsInfo(node.parent, argumentIndex, argumentCount);
|
@@ -8505,7 +8490,7 @@ var TypeParameterSignatureHelpProvider = class {
|
|
8505
8490
|
switch (node.kind) {
|
8506
8491
|
case 10 /* NamedTypeSpecifier */:
|
8507
8492
|
return this.getSignaturesForNamedTypeSpecifier(node);
|
8508
|
-
case
|
8493
|
+
case 90 /* GenericSpecializationExpression */:
|
8509
8494
|
return this.getSignaturesForGenericSpecializationExpression(node);
|
8510
8495
|
default:
|
8511
8496
|
Debug.never(node);
|
@@ -8523,7 +8508,7 @@ var TypeParameterSignatureHelpProvider = class {
|
|
8523
8508
|
}
|
8524
8509
|
getSignaturesForGenericSpecializationExpression(node) {
|
8525
8510
|
const expression = unwrapParenthesizedExpressions(node.expression);
|
8526
|
-
if (expression.kind ===
|
8511
|
+
if (expression.kind === 89 /* IdentifierExpression */) {
|
8527
8512
|
const meaning = this._analyzer.resolveIdentifierExpression(expression).meaning;
|
8528
8513
|
if (meaning.kind === "method-access") {
|
8529
8514
|
return Query.from(meaning.candidates).mapAndFilter((o) => {
|
@@ -8538,7 +8523,7 @@ var TypeParameterSignatureHelpProvider = class {
|
|
8538
8523
|
}
|
8539
8524
|
return void 0;
|
8540
8525
|
}
|
8541
|
-
if (expression.kind ===
|
8526
|
+
if (expression.kind === 79 /* PropertyAccessExpression */) {
|
8542
8527
|
const meaning = this._analyzer.resolvePropertyAccessExpression(expression).meaning;
|
8543
8528
|
let accessedMethods;
|
8544
8529
|
if (meaning.kind === "instance-method-access") {
|
@@ -8716,7 +8701,7 @@ var SignatureContext = class {
|
|
8716
8701
|
this.displayService = displayService;
|
8717
8702
|
}
|
8718
8703
|
convertMethodDisplayParts(parts) {
|
8719
|
-
const prefix = parts.asyncKeywordWithWhitespace + parts.
|
8704
|
+
const prefix = parts.asyncKeywordWithWhitespace + parts.functionKeyword + parts.whitespaceAfterFunctionKeyword + parts.container + parts.name + parts.typeParametersStart;
|
8720
8705
|
const postfix = parts.typeParametersEnd + parts.valueParametersStart + parts.valueParameters.map((p) => p.toString()).join(parts.valueParameterSeparator) + parts.valueParametersEnd + parts.returnTypeAnnotationColon + parts.returnType;
|
8721
8706
|
return new SignatureDisplayParts(prefix, parts.typeParameters, parts.typeParameterSeparator, postfix);
|
8722
8707
|
}
|
@@ -8815,7 +8800,7 @@ var ValueParametersSignatureHelpProvider = class {
|
|
8815
8800
|
}
|
8816
8801
|
break;
|
8817
8802
|
}
|
8818
|
-
case
|
8803
|
+
case 145 /* Tag */: {
|
8819
8804
|
if (node.openParenthesisToken !== void 0 && this._offset >= node.openParenthesisToken.rangeWithoutTrivia.end && node.callArgumentList !== void 0 && (node.closeParenthesisToken === void 0 || node.closeParenthesisToken.rangeWithoutTrivia.isEmpty || this._offset <= node.closeParenthesisToken.rangeWithoutTrivia.start)) {
|
8820
8805
|
const argumentIndex = this.getArgumentIndexInList(node.callArgumentList.elements, this._offset);
|
8821
8806
|
const valueArguments = ValueArgumentFactory.createValueArgumentsOfTag(node);
|
@@ -8902,13 +8887,13 @@ var SignatureContext2 = class {
|
|
8902
8887
|
this.displayService = displayService;
|
8903
8888
|
}
|
8904
8889
|
convertMethodDisplayParts(parts) {
|
8905
|
-
const prefix = parts.asyncKeywordWithWhitespace + parts.
|
8890
|
+
const prefix = parts.asyncKeywordWithWhitespace + parts.functionKeyword + parts.whitespaceAfterFunctionKeyword + parts.container + parts.name + parts.typeParametersStart + parts.typeParameters.join(parts.typeParameterSeparator) + parts.typeParametersEnd + parts.valueParametersStart;
|
8906
8891
|
const valueParameters = parts.valueParameters.map((p) => p.toString());
|
8907
8892
|
const postfix = parts.valueParametersEnd + parts.returnTypeAnnotationColon + parts.returnType;
|
8908
8893
|
return new SignatureDisplayParts(prefix, valueParameters, parts.valueParameterSeparator, postfix);
|
8909
8894
|
}
|
8910
8895
|
convertMethodTypeBodyDisplayParts(parts) {
|
8911
|
-
const prefix = parts.asyncKeywordWithWhitespace + parts.
|
8896
|
+
const prefix = parts.asyncKeywordWithWhitespace + parts.functionKeyword + parts.valueParametersStart;
|
8912
8897
|
const valueParameters = parts.valueParameters.map((p) => p.toString());
|
8913
8898
|
const postfix = parts.valueParametersEnd + parts.returnTypeAnnotationColon + parts.returnType;
|
8914
8899
|
return new SignatureDisplayParts(prefix, valueParameters, parts.valueParameterSeparator, postfix);
|
@@ -11313,7 +11298,7 @@ var EntityToSyntax = class {
|
|
11313
11298
|
const tags = this.convertTags(entity.getTags());
|
11314
11299
|
const modifiers = new Array();
|
11315
11300
|
if (entity.isAsync()) {
|
11316
|
-
modifiers.push(SyntaxFactory.modifier(
|
11301
|
+
modifiers.push(SyntaxFactory.modifier(38 /* Async */));
|
11317
11302
|
}
|
11318
11303
|
const isHidden = entity.isHidden();
|
11319
11304
|
if (isHidden !== void 0) {
|
@@ -11395,16 +11380,16 @@ var EntityToSyntax = class {
|
|
11395
11380
|
commonModifiers.push(SyntaxFactory.modifier(33 /* Const */));
|
11396
11381
|
}
|
11397
11382
|
if (entity.isStatic()) {
|
11398
|
-
commonModifiers.push(SyntaxFactory.modifier(
|
11383
|
+
commonModifiers.push(SyntaxFactory.modifier(39 /* Static */));
|
11399
11384
|
}
|
11400
11385
|
if (entity.isAbstract()) {
|
11401
|
-
commonModifiers.push(SyntaxFactory.modifier(
|
11386
|
+
commonModifiers.push(SyntaxFactory.modifier(35 /* Abstract */));
|
11402
11387
|
}
|
11403
11388
|
if (entity.isRedefinable()) {
|
11404
|
-
commonModifiers.push(SyntaxFactory.modifier(
|
11389
|
+
commonModifiers.push(SyntaxFactory.modifier(36 /* Redefinable */));
|
11405
11390
|
}
|
11406
11391
|
if (entity.isRedefined()) {
|
11407
|
-
commonModifiers.push(SyntaxFactory.modifier(
|
11392
|
+
commonModifiers.push(SyntaxFactory.modifier(37 /* Redefined */));
|
11408
11393
|
}
|
11409
11394
|
const name = this.getEntityName(entity);
|
11410
11395
|
const type = this.convertType(entity.getType());
|
@@ -11450,16 +11435,16 @@ var EntityToSyntax = class {
|
|
11450
11435
|
modifiers.push(this.createHidingModifier(isHidden));
|
11451
11436
|
}
|
11452
11437
|
if (entity.isStatic()) {
|
11453
|
-
modifiers.push(SyntaxFactory.modifier(
|
11438
|
+
modifiers.push(SyntaxFactory.modifier(39 /* Static */));
|
11454
11439
|
}
|
11455
11440
|
if (entity.isAbstract()) {
|
11456
|
-
modifiers.push(SyntaxFactory.modifier(
|
11441
|
+
modifiers.push(SyntaxFactory.modifier(35 /* Abstract */));
|
11457
11442
|
}
|
11458
11443
|
if (entity.isRedefinable()) {
|
11459
|
-
modifiers.push(SyntaxFactory.modifier(
|
11444
|
+
modifiers.push(SyntaxFactory.modifier(36 /* Redefinable */));
|
11460
11445
|
}
|
11461
11446
|
if (entity.isRedefined()) {
|
11462
|
-
modifiers.push(SyntaxFactory.modifier(
|
11447
|
+
modifiers.push(SyntaxFactory.modifier(37 /* Redefined */));
|
11463
11448
|
}
|
11464
11449
|
const name = this.getEntityName(entity);
|
11465
11450
|
const typeParameters = this.convertTypeParameters(entity.getTypeParameters());
|
@@ -11475,7 +11460,7 @@ var EntityToSyntax = class {
|
|
11475
11460
|
modifiers.push(this.createHidingModifier(isHidden));
|
11476
11461
|
}
|
11477
11462
|
if (entity.isAbstract()) {
|
11478
|
-
modifiers.push(SyntaxFactory.modifier(
|
11463
|
+
modifiers.push(SyntaxFactory.modifier(35 /* Abstract */));
|
11479
11464
|
}
|
11480
11465
|
const parameters = this.convertValueParameters(entity.getValueParameters());
|
11481
11466
|
return SyntaxFactory.typeConstructorDeclaration(tags, modifiers, parameters, void 0);
|
@@ -11488,7 +11473,7 @@ var EntityToSyntax = class {
|
|
11488
11473
|
modifiers.push(this.createHidingModifier(isHidden));
|
11489
11474
|
}
|
11490
11475
|
if (entity.isAbstract()) {
|
11491
|
-
modifiers.push(SyntaxFactory.modifier(
|
11476
|
+
modifiers.push(SyntaxFactory.modifier(35 /* Abstract */));
|
11492
11477
|
}
|
11493
11478
|
const parameters = this.convertValueParameters(entity.getValueParameters());
|
11494
11479
|
return SyntaxFactory.typeDestructorDeclaration(tags, modifiers, parameters, void 0);
|
@@ -11496,10 +11481,10 @@ var EntityToSyntax = class {
|
|
11496
11481
|
convertTypeIndexer(entity) {
|
11497
11482
|
const commonModifiers = new Array();
|
11498
11483
|
if (entity.isStatic()) {
|
11499
|
-
commonModifiers.push(SyntaxFactory.modifier(
|
11484
|
+
commonModifiers.push(SyntaxFactory.modifier(39 /* Static */));
|
11500
11485
|
}
|
11501
11486
|
if (entity.isAbstract()) {
|
11502
|
-
commonModifiers.push(SyntaxFactory.modifier(
|
11487
|
+
commonModifiers.push(SyntaxFactory.modifier(35 /* Abstract */));
|
11503
11488
|
}
|
11504
11489
|
const parameters = this.convertValueParameters(entity.getValueParameters());
|
11505
11490
|
const result = new Array();
|
@@ -11616,16 +11601,16 @@ var EntityToSyntax = class {
|
|
11616
11601
|
let levelKeyword;
|
11617
11602
|
switch (hiding.kind) {
|
11618
11603
|
case "type":
|
11619
|
-
levelKeyword =
|
11604
|
+
levelKeyword = 50 /* InType */;
|
11620
11605
|
break;
|
11621
11606
|
case "type-hierarchy":
|
11622
|
-
levelKeyword =
|
11607
|
+
levelKeyword = 47 /* InHierarchy */;
|
11623
11608
|
break;
|
11624
11609
|
case "file":
|
11625
|
-
levelKeyword =
|
11610
|
+
levelKeyword = 48 /* InFile */;
|
11626
11611
|
break;
|
11627
11612
|
case "package":
|
11628
|
-
levelKeyword =
|
11613
|
+
levelKeyword = 49 /* InPackage */;
|
11629
11614
|
break;
|
11630
11615
|
default:
|
11631
11616
|
Debug.never(hiding);
|
@@ -11913,9 +11898,9 @@ var SourceGenerationService = class extends ObservableObject7 {
|
|
11913
11898
|
return this.checkIfEntityOfKindIsPresentInGeneratedCode(entity.getContainer().getEntity());
|
11914
11899
|
case 13 /* PackageAlias */:
|
11915
11900
|
return false;
|
11916
|
-
case
|
11901
|
+
case 18 /* Package */:
|
11917
11902
|
return false;
|
11918
|
-
case
|
11903
|
+
case 19 /* TypeExtension */:
|
11919
11904
|
return true;
|
11920
11905
|
default:
|
11921
11906
|
Debug.never(entity);
|
@@ -11987,8 +11972,8 @@ var EntityFinder = class {
|
|
11987
11972
|
case 4 /* Setter */:
|
11988
11973
|
case 15 /* UnaryOperator */:
|
11989
11974
|
case 16 /* BinaryOperator */:
|
11990
|
-
case
|
11991
|
-
case
|
11975
|
+
case 18 /* Package */:
|
11976
|
+
case 19 /* TypeExtension */:
|
11992
11977
|
return void 0;
|
11993
11978
|
default:
|
11994
11979
|
Debug.never(entity);
|
@@ -12165,8 +12150,8 @@ var EntityFinder = class {
|
|
12165
12150
|
case 14 /* AliasType */:
|
12166
12151
|
case 15 /* UnaryOperator */:
|
12167
12152
|
case 16 /* BinaryOperator */:
|
12168
|
-
case
|
12169
|
-
case
|
12153
|
+
case 18 /* Package */:
|
12154
|
+
case 19 /* TypeExtension */:
|
12170
12155
|
case 8 /* DereferenceOperator */:
|
12171
12156
|
return void 0;
|
12172
12157
|
default:
|
@@ -12197,8 +12182,8 @@ var EntityFinder = class {
|
|
12197
12182
|
case 13 /* PackageAlias */:
|
12198
12183
|
case 15 /* UnaryOperator */:
|
12199
12184
|
case 16 /* BinaryOperator */:
|
12200
|
-
case
|
12201
|
-
case
|
12185
|
+
case 18 /* Package */:
|
12186
|
+
case 19 /* TypeExtension */:
|
12202
12187
|
return void 0;
|
12203
12188
|
default:
|
12204
12189
|
Debug.never(entity);
|
@@ -12882,7 +12867,7 @@ var LanguageServer = class {
|
|
12882
12867
|
const sourceFileContext = yield this.getSourceFileContext(uri, token);
|
12883
12868
|
if (sourceFileContext !== void 0) {
|
12884
12869
|
const node = NodePath.parse(uri.fragment).getNode(sourceFileContext.sourceFile.getSyntaxNode());
|
12885
|
-
if (node?.kind ===
|
12870
|
+
if (node?.kind === 92 /* AssignmentStatement */) {
|
12886
12871
|
const sourceFileEdit = this._addPropertyAssignmentService.createEditWithAssignment(
|
12887
12872
|
sourceFileContext.sourceFile,
|
12888
12873
|
node,
|
@@ -12919,7 +12904,7 @@ var LanguageServer = class {
|
|
12919
12904
|
const node = NodePath.parse(uri.fragment).getNode(sourceFileContext.sourceFile.getSyntaxNode());
|
12920
12905
|
if (node !== void 0) {
|
12921
12906
|
let nodeForRange = node;
|
12922
|
-
if (node.kind ===
|
12907
|
+
if (node.kind === 92 /* AssignmentStatement */) {
|
12923
12908
|
nodeForRange = node.right;
|
12924
12909
|
}
|
12925
12910
|
result = this.convertSourceFileRange(sourceFileContext.sourceFile, nodeForRange.rangeWithoutTrivia);
|