@artel/artc 0.6.25239 → 0.6.25240
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 +4 -2
- package/build/api/ApiNodeJS.js +3 -3
- package/build/api/ApiServices.js +55 -55
- package/build/{chunk-TPCKKHPK.js → chunk-7PUGFDV6.js} +1 -1
- package/build/{chunk-3VRPBHJN.js → chunk-TMFKLPML.js} +1270 -406
- package/build/{chunk-UOGTFZ6X.js → chunk-VCSRWNJI.js} +2 -2
- package/build/types/analysis/Analyzer.d.ts +19 -6
- package/build/types/analysis/DiagnosticCollector.d.ts +2 -1
- package/build/types/analysis/ModifierValidator.d.ts +2 -2
- package/build/types/analysis/TypeMemberImplementationChecker.d.ts +21 -0
- package/build/types/analysis/semantic-context/SemanticContextBasedEntityHidingMatcher.d.ts +9 -8
- package/build/types/common/SearchName.d.ts +1 -0
- package/build/types/diagnostic/DiagnosticCode.d.ts +23 -16
- package/build/types/emitter/Entities.d.ts +2 -0
- package/build/types/emitter/EntityMap.d.ts +2 -0
- package/build/types/entities/AliasTypeEntity.d.ts +2 -1
- package/build/types/entities/BaseEntityHidingMatcher.d.ts +11 -0
- package/build/types/entities/EntityHidingMatcherWithinTypeEntity.d.ts +10 -0
- package/build/types/entities/FunctionTypeEntity.d.ts +5 -3
- package/build/types/entities/PackageEntity.d.ts +3 -1
- package/build/types/entities/StructuredTypeEntity.d.ts +5 -3
- package/build/types/entities/TypeEntity.d.ts +2 -1
- package/build/types/entities/TypeExtensionEntity.d.ts +3 -1
- package/build/types/entities/TypeParameterEntity.d.ts +5 -2
- package/build/types/entities/VariantTypeEntity.d.ts +3 -1
- package/build/types/entities/index.d.ts +15 -3
- package/build/types/ts-interop/Entities.d.ts +15 -3
- package/build/types/ts-interop/TsInteropContext.d.ts +4 -2
- package/build/types/types/TypeMembers.d.ts +8 -1
- package/package.json +2 -2
- package/build/types/analysis/TypeMemberImplementationValidator.d.ts +0 -13
@@ -70,11 +70,11 @@ var __yieldStar = (value) => {
|
|
70
70
|
};
|
71
71
|
|
72
72
|
// source/common/PackageDialect.ts
|
73
|
-
var PackageDialect = /* @__PURE__ */ ((
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
return
|
73
|
+
var PackageDialect = /* @__PURE__ */ ((PackageDialect12) => {
|
74
|
+
PackageDialect12[PackageDialect12["ArtelAM"] = 0] = "ArtelAM";
|
75
|
+
PackageDialect12[PackageDialect12["ArtelA"] = 1] = "ArtelA";
|
76
|
+
PackageDialect12[PackageDialect12["ArtelM"] = 2] = "ArtelM";
|
77
|
+
return PackageDialect12;
|
78
78
|
})(PackageDialect || {});
|
79
79
|
|
80
80
|
// source/common/PackageLocale.ts
|
@@ -620,7 +620,7 @@ var UniqueWithComparatorQuery = class extends Query {
|
|
620
620
|
};
|
621
621
|
|
622
622
|
// source/common/Constants.ts
|
623
|
-
var ArtelVersion = true ? "0.6.
|
623
|
+
var ArtelVersion = true ? "0.6.25240" : "";
|
624
624
|
var ArtelSourceFileExtensions = [".\u0430\u0440\u0442", ".\u0430\u0440\u0442\u0435\u043B\u044C", ".art", ".artel"];
|
625
625
|
var ArtelSourceFileExtensionSet = new Set(ArtelSourceFileExtensions);
|
626
626
|
var ArtelSourceAndConfigurationFileExtensionSet = new Set(ArtelSourceFileExtensionSet).add(".json");
|
@@ -3922,11 +3922,14 @@ var Result;
|
|
3922
3922
|
})(Result || (Result = {}));
|
3923
3923
|
|
3924
3924
|
// source/common/SearchName.ts
|
3925
|
-
var SearchName = class {
|
3925
|
+
var SearchName = class _SearchName {
|
3926
3926
|
constructor(value, isStrictlyOriginal) {
|
3927
3927
|
this.value = value;
|
3928
3928
|
this.isStrictlyOriginal = isStrictlyOriginal;
|
3929
3929
|
}
|
3930
|
+
static fromName(name) {
|
3931
|
+
return new _SearchName(name, (name.flags & 2 /* OriginalName */) !== 0);
|
3932
|
+
}
|
3930
3933
|
};
|
3931
3934
|
|
3932
3935
|
// source/common/ThrottledCancellationToken.ts
|
@@ -12776,9 +12779,9 @@ var DiagnosticCode = /* @__PURE__ */ ((DiagnosticCode2) => {
|
|
12776
12779
|
DiagnosticCode2[DiagnosticCode2["VariableMayNotHasBeenAssignedBeforeUsage"] = 310] = "VariableMayNotHasBeenAssignedBeforeUsage";
|
12777
12780
|
DiagnosticCode2[DiagnosticCode2["NotAllCodePathsReturnAValueAndResultLocalVariableMayNotHasBeenAssigned"] = 311] = "NotAllCodePathsReturnAValueAndResultLocalVariableMayNotHasBeenAssigned";
|
12778
12781
|
DiagnosticCode2[DiagnosticCode2["WriteFunctionHasNoCorrespondingReadFunction"] = 312] = "WriteFunctionHasNoCorrespondingReadFunction";
|
12779
|
-
DiagnosticCode2[DiagnosticCode2["
|
12780
|
-
DiagnosticCode2[DiagnosticCode2["
|
12781
|
-
DiagnosticCode2[DiagnosticCode2["
|
12782
|
+
DiagnosticCode2[DiagnosticCode2["TypeCannotHaveMultipleBaseObjectTypes"] = 313] = "TypeCannotHaveMultipleBaseObjectTypes";
|
12783
|
+
DiagnosticCode2[DiagnosticCode2["TypeThatIsNotMarkedAsBasicCannotBeUsedAsBaseType"] = 314] = "TypeThatIsNotMarkedAsBasicCannotBeUsedAsBaseType";
|
12784
|
+
DiagnosticCode2[DiagnosticCode2["PlainObjectTypeCannotBeUsedAsBaseType"] = 315] = "PlainObjectTypeCannotBeUsedAsBaseType";
|
12782
12785
|
DiagnosticCode2[DiagnosticCode2["ThisTypeIsAlreadyListedInBaseTypeList"] = 316] = "ThisTypeIsAlreadyListedInBaseTypeList";
|
12783
12786
|
DiagnosticCode2[DiagnosticCode2["OnlyObjectAndAspectTypesCanBeUsedAsBaseTypes"] = 317] = "OnlyObjectAndAspectTypesCanBeUsedAsBaseTypes";
|
12784
12787
|
DiagnosticCode2[DiagnosticCode2["PlainObjectTypeCanHaveOnlyAspectsAsBaseTypes"] = 318] = "PlainObjectTypeCanHaveOnlyAspectsAsBaseTypes";
|
@@ -12786,34 +12789,41 @@ var DiagnosticCode = /* @__PURE__ */ ((DiagnosticCode2) => {
|
|
12786
12789
|
DiagnosticCode2[DiagnosticCode2["ModifierListAlreadyContains0Modifier"] = 320] = "ModifierListAlreadyContains0Modifier";
|
12787
12790
|
DiagnosticCode2[DiagnosticCode2["ModifierListOfOuterDeclarationGroupAlreadyContains0Modifier"] = 321] = "ModifierListOfOuterDeclarationGroupAlreadyContains0Modifier";
|
12788
12791
|
DiagnosticCode2[DiagnosticCode2["_0ModifierIsNotAllowedHere"] = 322] = "_0ModifierIsNotAllowedHere";
|
12789
|
-
DiagnosticCode2[DiagnosticCode2["
|
12790
|
-
DiagnosticCode2[DiagnosticCode2["
|
12791
|
-
DiagnosticCode2[DiagnosticCode2["
|
12792
|
-
DiagnosticCode2[DiagnosticCode2["
|
12792
|
+
DiagnosticCode2[DiagnosticCode2["DeclarationCannotBePlacedInGroupHaving0Modifier"] = 323] = "DeclarationCannotBePlacedInGroupHaving0Modifier";
|
12793
|
+
DiagnosticCode2[DiagnosticCode2["PackageConstructorDeclarationCannotHaveModifiers"] = 324] = "PackageConstructorDeclarationCannotHaveModifiers";
|
12794
|
+
DiagnosticCode2[DiagnosticCode2["PackageEntryPointDeclarationCannotHaveModifiers"] = 325] = "PackageEntryPointDeclarationCannotHaveModifiers";
|
12795
|
+
DiagnosticCode2[DiagnosticCode2["TranslationsCannotHaveModifiers"] = 326] = "TranslationsCannotHaveModifiers";
|
12793
12796
|
DiagnosticCode2[DiagnosticCode2["AbstractModifierCanOnlyBeUsedInAbstractObjectTypes"] = 327] = "AbstractModifierCanOnlyBeUsedInAbstractObjectTypes";
|
12794
12797
|
DiagnosticCode2[DiagnosticCode2["BasicModifierCanOnlyBeUsedInObjectTypesAspectTypesAndTypeAliases"] = 328] = "BasicModifierCanOnlyBeUsedInObjectTypesAspectTypesAndTypeAliases";
|
12795
12798
|
DiagnosticCode2[DiagnosticCode2["OverrideModifierCanOnlyBeUsedInObjectAndAspectTypes"] = 329] = "OverrideModifierCanOnlyBeUsedInObjectAndAspectTypes";
|
12796
|
-
DiagnosticCode2[DiagnosticCode2["
|
12797
|
-
DiagnosticCode2[DiagnosticCode2["
|
12799
|
+
DiagnosticCode2[DiagnosticCode2["_0ModifierCannotBeUsedWith1Modifier"] = 330] = "_0ModifierCannotBeUsedWith1Modifier";
|
12800
|
+
DiagnosticCode2[DiagnosticCode2["VariantDeclarationCannotHaveHiddenModifier"] = 331] = "VariantDeclarationCannotHaveHiddenModifier";
|
12798
12801
|
DiagnosticCode2[DiagnosticCode2["BasicModifierCanOnlyBeAppliedToObjectTypes"] = 332] = "BasicModifierCanOnlyBeAppliedToObjectTypes";
|
12799
12802
|
DiagnosticCode2[DiagnosticCode2["AbstractModifierCanOnlyBeAppliedToObjectTypes"] = 333] = "AbstractModifierCanOnlyBeAppliedToObjectTypes";
|
12800
|
-
DiagnosticCode2[DiagnosticCode2["
|
12801
|
-
DiagnosticCode2[DiagnosticCode2["
|
12803
|
+
DiagnosticCode2[DiagnosticCode2["NotBasicObjectTypesCannotHaveBasicMembers"] = 334] = "NotBasicObjectTypesCannotHaveBasicMembers";
|
12804
|
+
DiagnosticCode2[DiagnosticCode2["BasicModifierCannotBeAppliedToAspectTypeFields"] = 335] = "BasicModifierCannotBeAppliedToAspectTypeFields";
|
12802
12805
|
DiagnosticCode2[DiagnosticCode2["WriteFunctionMustHaveTheSameModifiersAsReadFunction"] = 336] = "WriteFunctionMustHaveTheSameModifiersAsReadFunction";
|
12803
12806
|
DiagnosticCode2[DiagnosticCode2["WriteFunctionMustHaveTheSameOrMoreRestrictiveHidingLevelThenReadFunction"] = 337] = "WriteFunctionMustHaveTheSameOrMoreRestrictiveHidingLevelThenReadFunction";
|
12804
12807
|
DiagnosticCode2[DiagnosticCode2["DeclarationConflictsWithBaseTypeMember0"] = 338] = "DeclarationConflictsWithBaseTypeMember0";
|
12805
12808
|
DiagnosticCode2[DiagnosticCode2["DeclarationConflictsWithBaseTypeMember0AddOverrideModifier"] = 339] = "DeclarationConflictsWithBaseTypeMember0AddOverrideModifier";
|
12806
|
-
DiagnosticCode2[DiagnosticCode2["
|
12809
|
+
DiagnosticCode2[DiagnosticCode2["DeclarationConflictsWithBaseTypeMember0ThisMemberCannotBeOverridden"] = 340] = "DeclarationConflictsWithBaseTypeMember0ThisMemberCannotBeOverridden";
|
12807
12810
|
DiagnosticCode2[DiagnosticCode2["DeclarationConflictsWithBaseTypeMember0ToOverrideTypeMustBeAssignableTo1"] = 341] = "DeclarationConflictsWithBaseTypeMember0ToOverrideTypeMustBeAssignableTo1";
|
12808
12811
|
DiagnosticCode2[DiagnosticCode2["DeclarationConflictsWithBaseTypeMember0ToOverrideReturnTypeMustBeAssignableTo1"] = 342] = "DeclarationConflictsWithBaseTypeMember0ToOverrideReturnTypeMustBeAssignableTo1";
|
12809
12812
|
DiagnosticCode2[DiagnosticCode2["OverridingMemberMustHaveTheSameHidingLevelAsBaseMember0"] = 343] = "OverridingMemberMustHaveTheSameHidingLevelAsBaseMember0";
|
12810
12813
|
DiagnosticCode2[DiagnosticCode2["OverridingMethodMustBeAsyncBecauseBaseMethod0IsAsync"] = 344] = "OverridingMethodMustBeAsyncBecauseBaseMethod0IsAsync";
|
12811
12814
|
DiagnosticCode2[DiagnosticCode2["OverridingMethodMustNotBeAsyncBecauseBaseMethod0IsNotAsync"] = 345] = "OverridingMethodMustNotBeAsyncBecauseBaseMethod0IsNotAsync";
|
12812
12815
|
DiagnosticCode2[DiagnosticCode2["OverridingFieldMustNotBeConstOrHaveWriteFunctionToMatchBaseField0"] = 346] = "OverridingFieldMustNotBeConstOrHaveWriteFunctionToMatchBaseField0";
|
12813
|
-
DiagnosticCode2[DiagnosticCode2["
|
12814
|
-
DiagnosticCode2[DiagnosticCode2["
|
12815
|
-
DiagnosticCode2[DiagnosticCode2["
|
12816
|
-
DiagnosticCode2[DiagnosticCode2["
|
12816
|
+
DiagnosticCode2[DiagnosticCode2["OverridingMemberMustHaveWriteFunctionToMatchBaseMember0"] = 347] = "OverridingMemberMustHaveWriteFunctionToMatchBaseMember0";
|
12817
|
+
DiagnosticCode2[DiagnosticCode2["TypeDoesNotImplementMember0"] = 348] = "TypeDoesNotImplementMember0";
|
12818
|
+
DiagnosticCode2[DiagnosticCode2["TypeDoesNotImplementMember0ImplicitImplementationTypeMismatch1"] = 349] = "TypeDoesNotImplementMember0ImplicitImplementationTypeMismatch1";
|
12819
|
+
DiagnosticCode2[DiagnosticCode2["TypeDoesNotImplementMember0ImplicitImplementation1IsAsync"] = 350] = "TypeDoesNotImplementMember0ImplicitImplementation1IsAsync";
|
12820
|
+
DiagnosticCode2[DiagnosticCode2["TypeDoesNotImplementMember0ImplicitImplementation1IsNotAsync"] = 351] = "TypeDoesNotImplementMember0ImplicitImplementation1IsNotAsync";
|
12821
|
+
DiagnosticCode2[DiagnosticCode2["TypeDoesNotImplementMember0ImplicitImplementation1IsNotWriteable"] = 352] = "TypeDoesNotImplementMember0ImplicitImplementation1IsNotWriteable";
|
12822
|
+
DiagnosticCode2[DiagnosticCode2["TypeDoesNotImplementMember0ImplicitImplementation1WriteFunctionIsHidden"] = 353] = "TypeDoesNotImplementMember0ImplicitImplementation1WriteFunctionIsHidden";
|
12823
|
+
DiagnosticCode2[DiagnosticCode2["CannotAccessAbstractMemberOfBaseType"] = 354] = "CannotAccessAbstractMemberOfBaseType";
|
12824
|
+
DiagnosticCode2[DiagnosticCode2["TheFollowingBaseTypeMembersConflictAndMustBeOverridden0"] = 355] = "TheFollowingBaseTypeMembersConflictAndMustBeOverridden0";
|
12825
|
+
DiagnosticCode2[DiagnosticCode2["TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1"] = 356] = "TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1";
|
12826
|
+
DiagnosticCode2[DiagnosticCode2["OnlyIdentifierOrIntegerLiteralIsAllowedAsParameterOfTextTemplateLiteralInTranslations"] = 357] = "OnlyIdentifierOrIntegerLiteralIsAllowedAsParameterOfTextTemplateLiteralInTranslations";
|
12817
12827
|
DiagnosticCode2[DiagnosticCode2["CannotFindTsLibDirectoryBaseSearchPaths0"] = 401] = "CannotFindTsLibDirectoryBaseSearchPaths0";
|
12818
12828
|
DiagnosticCode2[DiagnosticCode2["SourceFile0IsNotPartOfThePackageAndWontBeLoaded"] = 402] = "SourceFile0IsNotPartOfThePackageAndWontBeLoaded";
|
12819
12829
|
DiagnosticCode2[DiagnosticCode2["ProgramWithoutMainPackageCannotBeCompiled"] = 403] = "ProgramWithoutMainPackageCannotBeCompiled";
|
@@ -12934,7 +12944,7 @@ var englishErrorMessages = {
|
|
12934
12944
|
[235 /* TypeExpected */]: "Type expected.",
|
12935
12945
|
[236 /* NameOfTypeOrPackageNotFound */]: "Name of type or package not found.",
|
12936
12946
|
[237 /* TypeIsNotATag */]: "Type is not a tag.",
|
12937
|
-
[238 /* ExpressionOfType0CannotBeUsedForEnumeration */]: "Expression of type '{0}'
|
12947
|
+
[238 /* ExpressionOfType0CannotBeUsedForEnumeration */]: "Expression of type '{0}' cannot be used for enumeration.",
|
12938
12948
|
[239 /* Operator0IsNotDefinedForTypes1And2 */]: "Operator '{0}' is not defined for types '{1}' and '{2}'.",
|
12939
12949
|
[240 /* Operator0IsNotDefinedForType1 */]: "Operator '{0}' is not defined for type '{1}'.",
|
12940
12950
|
[241 /* VariantMustHaveAssociatedValue */]: "Variant must have associated value.",
|
@@ -12955,14 +12965,14 @@ var englishErrorMessages = {
|
|
12955
12965
|
[255 /* AbstractFieldsMustNotHaveInitializers */]: "Abstract fields must not have initializers.",
|
12956
12966
|
[256 /* PackageIsAlreadyImportedInAnotherLanguage */]: "Package is already imported in another language.",
|
12957
12967
|
[257 /* OnlySubprogramsWithReturnTypeCanReturnValue */]: "Only functions with a return type can return a value.",
|
12958
|
-
[258 /* FunctionsUsingYieldStatementCannotReturnValue */]: "Methods using yield statement
|
12959
|
-
[259 /* YieldStatementCannotBeUsedInAnonymousFunctions */]: "Yield statement
|
12960
|
-
[260 /* YieldStatementCannotBeUsedHere */]: "Yield statement
|
12968
|
+
[258 /* FunctionsUsingYieldStatementCannotReturnValue */]: "Methods using yield statement cannot return a value.",
|
12969
|
+
[259 /* YieldStatementCannotBeUsedInAnonymousFunctions */]: "Yield statement cannot be used in anonymous functions.",
|
12970
|
+
[260 /* YieldStatementCannotBeUsedHere */]: "Yield statement cannot be used here.",
|
12961
12971
|
[261 /* FunctionsUsingYieldStatementMustHaveEnumerableAsReturnType */]: "Function using 'yield' statement must have 'Enumerable' as a return type.",
|
12962
|
-
[262 /* YieldStatementCannotBeUsedInTryStatementThatHasCatchClause */]: "Yield statement
|
12963
|
-
[263 /* YieldStatementCannotBeUsedInFinallyClause */]: "Yield statement
|
12972
|
+
[262 /* YieldStatementCannotBeUsedInTryStatementThatHasCatchClause */]: "Yield statement cannot be used in 'try' statement that has 'catch' clause.",
|
12973
|
+
[263 /* YieldStatementCannotBeUsedInFinallyClause */]: "Yield statement cannot be used in 'finally' clause.",
|
12964
12974
|
[264 /* SubprogramMustReturnValue */]: "Function must return a value.",
|
12965
|
-
[265 /* ResultVariableCannotBeUsedInFunctionsUsingYieldStatement */]: "'result' variable
|
12975
|
+
[265 /* ResultVariableCannotBeUsedInFunctionsUsingYieldStatement */]: "'result' variable cannot be used in functions using 'yield' statement.",
|
12966
12976
|
[266 /* TypeAliasReferencesItself */]: "Type alias references itself.",
|
12967
12977
|
[267 /* TypeParameterHasCircularConstraint */]: "Type parameter has circular constraint.",
|
12968
12978
|
[268 /* BaseTypeCausesInheritanceCycle */]: "Base type causes inheritance cycle.",
|
@@ -13010,9 +13020,9 @@ var englishErrorMessages = {
|
|
13010
13020
|
[310 /* VariableMayNotHasBeenAssignedBeforeUsage */]: "Variable may not has been assigned before usage.",
|
13011
13021
|
[311 /* NotAllCodePathsReturnAValueAndResultLocalVariableMayNotHasBeenAssigned */]: "Not all code paths return a value and 'result' local variable may not has been assigned.",
|
13012
13022
|
[312 /* WriteFunctionHasNoCorrespondingReadFunction */]: "Write function has no corresponding read function.",
|
13013
|
-
[313 /*
|
13014
|
-
[314 /*
|
13015
|
-
[315 /*
|
13023
|
+
[313 /* TypeCannotHaveMultipleBaseObjectTypes */]: "Type cannot have multiple base object types.",
|
13024
|
+
[314 /* TypeThatIsNotMarkedAsBasicCannotBeUsedAsBaseType */]: "Type that is not marked as 'basic' cannot be used as base type.",
|
13025
|
+
[315 /* PlainObjectTypeCannotBeUsedAsBaseType */]: "Plain object type cannot be used as base type.",
|
13016
13026
|
[316 /* ThisTypeIsAlreadyListedInBaseTypeList */]: "This type is already listed in base type list.",
|
13017
13027
|
[317 /* OnlyObjectAndAspectTypesCanBeUsedAsBaseTypes */]: "Only object and aspect types can be used as base types.",
|
13018
13028
|
[318 /* PlainObjectTypeCanHaveOnlyAspectsAsBaseTypes */]: "Plain object type can have only aspects as base types.",
|
@@ -13020,37 +13030,44 @@ var englishErrorMessages = {
|
|
13020
13030
|
[320 /* ModifierListAlreadyContains0Modifier */]: "Modifier list already contains '{0}' modifier.",
|
13021
13031
|
[321 /* ModifierListOfOuterDeclarationGroupAlreadyContains0Modifier */]: "Modifier list of outer declaration group already contains '{0}' modifier.",
|
13022
13032
|
[322 /* _0ModifierIsNotAllowedHere */]: "'{0}' modifier is not allowed here.",
|
13023
|
-
[323 /*
|
13024
|
-
[324 /*
|
13025
|
-
[325 /*
|
13026
|
-
[326 /*
|
13033
|
+
[323 /* DeclarationCannotBePlacedInGroupHaving0Modifier */]: "Declaration cannot be placed in group having '{0}' modifier.",
|
13034
|
+
[324 /* PackageConstructorDeclarationCannotHaveModifiers */]: "Package constructor declaration cannot have own modifiers or be placed in group with modifiers.",
|
13035
|
+
[325 /* PackageEntryPointDeclarationCannotHaveModifiers */]: "Package entry point declaration cannot have own modifiers or be placed in group with modifiers.",
|
13036
|
+
[326 /* TranslationsCannotHaveModifiers */]: "Translations cannot have own modifiers or be placed in group with modifiers.",
|
13027
13037
|
[327 /* AbstractModifierCanOnlyBeUsedInAbstractObjectTypes */]: "'abstract' modifier can only be used in aspects and abstract object types.",
|
13028
13038
|
[328 /* BasicModifierCanOnlyBeUsedInObjectTypesAspectTypesAndTypeAliases */]: "'basic' modifier can only be used in object types, aspect types and type aliases.",
|
13029
13039
|
[329 /* OverrideModifierCanOnlyBeUsedInObjectAndAspectTypes */]: "'override' modifier can only be used in object and aspect types.",
|
13030
|
-
[330 /*
|
13031
|
-
[331 /*
|
13040
|
+
[330 /* _0ModifierCannotBeUsedWith1Modifier */]: "'{0}' modifier cannot be used with '{1}' modifier.",
|
13041
|
+
[331 /* VariantDeclarationCannotHaveHiddenModifier */]: "Variant declaration can 'not' have hidden modifier.",
|
13032
13042
|
[332 /* BasicModifierCanOnlyBeAppliedToObjectTypes */]: "'basic' modifier can only be applied to object types.",
|
13033
13043
|
[333 /* AbstractModifierCanOnlyBeAppliedToObjectTypes */]: "'abstract' modifier can only be applied to object types.",
|
13034
|
-
[334 /*
|
13035
|
-
[335 /*
|
13044
|
+
[334 /* NotBasicObjectTypesCannotHaveBasicMembers */]: "Not 'basic' object types cannot have 'basic' members.",
|
13045
|
+
[335 /* BasicModifierCannotBeAppliedToAspectTypeFields */]: "Basic modifier cannot be applied to aspect type fields.",
|
13036
13046
|
[336 /* WriteFunctionMustHaveTheSameModifiersAsReadFunction */]: "Write function must have the same modifiers as read function.",
|
13037
13047
|
[337 /* WriteFunctionMustHaveTheSameOrMoreRestrictiveHidingLevelThenReadFunction */]: "Write function must have the same or more restrictive hiding level then read function.",
|
13038
13048
|
[338 /* DeclarationConflictsWithBaseTypeMember0 */]: "Declaration conflicts with base type member '{0}'.",
|
13039
13049
|
[339 /* DeclarationConflictsWithBaseTypeMember0AddOverrideModifier */]: "Declaration conflicts with base type member '{0}'. To override base member, add 'override' modifier.",
|
13040
|
-
[340 /*
|
13050
|
+
[340 /* DeclarationConflictsWithBaseTypeMember0ThisMemberCannotBeOverridden */]: "Declaration conflicts with base type member '{0}'. This member cannot be overridden.",
|
13041
13051
|
[341 /* DeclarationConflictsWithBaseTypeMember0ToOverrideTypeMustBeAssignableTo1 */]: "Declaration conflicts with base type member '{0}'. To override it, it's type must be assignable to '{1}'.",
|
13042
13052
|
[342 /* DeclarationConflictsWithBaseTypeMember0ToOverrideReturnTypeMustBeAssignableTo1 */]: "Declaration conflicts with base type member '{0}'. To override it, it's return type must be assignable to '{1}'.",
|
13043
13053
|
[343 /* OverridingMemberMustHaveTheSameHidingLevelAsBaseMember0 */]: "Overriding member must have the same hiding level as base member '{0}'.",
|
13044
13054
|
[344 /* OverridingMethodMustBeAsyncBecauseBaseMethod0IsAsync */]: "Overriding method must be 'async' because base method '{0}' is 'async'.",
|
13045
13055
|
[345 /* OverridingMethodMustNotBeAsyncBecauseBaseMethod0IsNotAsync */]: "Overriding method must not be 'async' because base method '{0}' is not 'async'.",
|
13046
|
-
[346 /* OverridingFieldMustNotBeConstOrHaveWriteFunctionToMatchBaseField0 */]: "Overriding field must not be 'const' or have write function to match base field '{0}'",
|
13047
|
-
[347 /*
|
13048
|
-
[348 /*
|
13049
|
-
[349 /*
|
13050
|
-
[350 /*
|
13056
|
+
[346 /* OverridingFieldMustNotBeConstOrHaveWriteFunctionToMatchBaseField0 */]: "Overriding field must not be 'const' or have write function to match base field '{0}'.",
|
13057
|
+
[347 /* OverridingMemberMustHaveWriteFunctionToMatchBaseMember0 */]: "Overriding member must have write function to match base member '{0}'.",
|
13058
|
+
[348 /* TypeDoesNotImplementMember0 */]: "Type does not implement member '{0}'.",
|
13059
|
+
[349 /* TypeDoesNotImplementMember0ImplicitImplementationTypeMismatch1 */]: "Type does not implement member '{0}'. Member '{1}' cannot implement it because their types does not match.",
|
13060
|
+
[350 /* TypeDoesNotImplementMember0ImplicitImplementation1IsAsync */]: "Type does not implement member '{0}'. Method '{1}' cannot implement it because it is 'async'.",
|
13061
|
+
[351 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotAsync */]: "Type does not implement member '{0}'. Method '{1}' cannot implement it because it is not 'async'.",
|
13062
|
+
[352 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotWriteable */]: "Type does not implement member '{0}'. Member '{1}' cannot implement it because it does not have write function or marked 'const'.",
|
13063
|
+
[353 /* TypeDoesNotImplementMember0ImplicitImplementation1WriteFunctionIsHidden */]: "Type does not implement member '{0}'. Member '{1}' cannot implement it because its write function is hidden.",
|
13064
|
+
[354 /* CannotAccessAbstractMemberOfBaseType */]: "Can not access abstract member of base type.",
|
13065
|
+
[355 /* TheFollowingBaseTypeMembersConflictAndMustBeOverridden0 */]: "The following base type members conflict and must be overridden:{0}",
|
13066
|
+
[356 /* TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1 */]: "The following base type members conflict because they have the same original name '{0}' and must be overridden:{1}",
|
13067
|
+
[357 /* OnlyIdentifierOrIntegerLiteralIsAllowedAsParameterOfTextTemplateLiteralInTranslations */]: "Only identifier or integer literal is allowed as parameter of text template literal in translations.",
|
13051
13068
|
[401 /* CannotFindTsLibDirectoryBaseSearchPaths0 */]: "Can not find directory with TypeScript library. Base search paths: {0}.",
|
13052
13069
|
[402 /* SourceFile0IsNotPartOfThePackageAndWontBeLoaded */]: "Source file '{0}' is not part of the package and won't be loaded.",
|
13053
|
-
[403 /* ProgramWithoutMainPackageCannotBeCompiled */]: "Program without main package
|
13070
|
+
[403 /* ProgramWithoutMainPackageCannotBeCompiled */]: "Program without main package cannot be compiled.",
|
13054
13071
|
[404 /* ErrorsInJsonConfigurationFile */]: "Errors in JSON configuration file.",
|
13055
13072
|
[405 /* StandardPackage0NotFound */]: "Standard package '{0}' not found.",
|
13056
13073
|
[406 /* Declaration0NotFoundInStandardPackage1 */]: "Declaration '{0}' not found in standard package '{1}'."
|
@@ -13206,9 +13223,9 @@ var russianErrorMessages = {
|
|
13206
13223
|
[310 /* VariableMayNotHasBeenAssignedBeforeUsage */]: "\u041F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0439 \u043C\u043E\u0433\u043B\u043E \u0431\u044B\u0442\u044C \u043D\u0435 \u043F\u0440\u0438\u0441\u0432\u043E\u0435\u043D\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0434\u043E \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F.",
|
13207
13224
|
[311 /* NotAllCodePathsReturnAValueAndResultLocalVariableMayNotHasBeenAssigned */]: "\u0424\u0443\u043D\u043A\u0446\u0438\u044F \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u043D\u0435 \u0432\u043E \u0432\u0441\u0435\u0445 \u0441\u043B\u0443\u0447\u0430\u044F\u0445 \u0438 \u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0439 '\u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442' \u043C\u043E\u0433\u043B\u043E \u0431\u044B\u0442\u044C \u043D\u0435 \u043F\u0440\u0438\u0441\u0432\u043E\u0435\u043D\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435.",
|
13208
13225
|
[312 /* WriteFunctionHasNoCorrespondingReadFunction */]: "\u0424\u0443\u043D\u043A\u0446\u0438\u044F \u0437\u0430\u043F\u0438\u0441\u0438 \u043D\u0435 \u0438\u043C\u0435\u0435\u0442 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044E\u0449\u0435\u0439 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0447\u0442\u0435\u043D\u0438\u044F.",
|
13209
|
-
[313 /*
|
13210
|
-
[314 /*
|
13211
|
-
[315 /*
|
13226
|
+
[313 /* TypeCannotHaveMultipleBaseObjectTypes */]: "\u0422\u0438\u043F \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0438\u043C\u0435\u0442\u044C \u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0431\u0430\u0437\u043E\u0432\u044B\u0445 \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u044B\u0445 \u0442\u0438\u043F\u043E\u0432.",
|
13227
|
+
[314 /* TypeThatIsNotMarkedAsBasicCannotBeUsedAsBaseType */]: "\u0422\u0438\u043F, \u043D\u0435 \u043F\u043E\u043C\u0435\u0447\u0435\u043D\u043D\u044B\u0439 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u0431\u0430\u0437\u043E\u0432\u044B\u0439', \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D \u0432 \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430.",
|
13228
|
+
[315 /* PlainObjectTypeCannotBeUsedAsBaseType */]: "\u041F\u0440\u043E\u0441\u0442\u043E\u0439 \u043E\u0431\u044A\u0435\u043A\u0442 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D \u0432 \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430.",
|
13212
13229
|
[316 /* ThisTypeIsAlreadyListedInBaseTypeList */]: "\u0422\u0438\u043F \u0443\u0436\u0435 \u0443\u043A\u0430\u0437\u0430\u043D \u0432 \u0441\u043F\u0438\u0441\u043A\u0435 \u0431\u0430\u0437\u043E\u0432\u044B\u0445 \u0442\u0438\u043F\u043E\u0432.",
|
13213
13230
|
[317 /* OnlyObjectAndAspectTypesCanBeUsedAsBaseTypes */]: "\u0422\u043E\u043B\u044C\u043A\u043E \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u044B\u0435 \u0438 \u0430\u0441\u043F\u0435\u043A\u0442\u043D\u044B\u0435 \u0442\u0438\u043F\u044B \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u044B \u0432 \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u0430\u0437\u043E\u0432\u044B\u0445.",
|
13214
13231
|
[318 /* PlainObjectTypeCanHaveOnlyAspectsAsBaseTypes */]: "\u0412 \u043A\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0431\u0430\u0437\u043E\u0432\u044B\u0445 \u0442\u0438\u043F\u043E\u0432 \u043F\u0440\u043E\u0441\u0442\u043E\u0433\u043E \u043E\u0431\u044A\u0435\u043A\u0442\u0430 \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u0443\u043A\u0430\u0437\u0430\u043D\u044B \u0442\u043E\u043B\u044C\u043A\u043E \u0430\u0441\u043F\u0435\u043A\u0442\u044B.",
|
@@ -13216,34 +13233,41 @@ var russianErrorMessages = {
|
|
13216
13233
|
[320 /* ModifierListAlreadyContains0Modifier */]: "\u0421\u043F\u0438\u0441\u043E\u043A \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u0432 \u0443\u0436\u0435 \u0441\u043E\u0434\u0435\u0440\u0436\u0438\u0442 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '{0}'.",
|
13217
13234
|
[321 /* ModifierListOfOuterDeclarationGroupAlreadyContains0Modifier */]: "\u0421\u043F\u0438\u0441\u043E\u043A \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u0432 \u0432\u043D\u0435\u0448\u043D\u0435\u0439 \u0433\u0440\u0443\u043F\u043F\u044B \u043E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0439 \u0443\u0436\u0435 \u0441\u043E\u0434\u0435\u0440\u0436\u0438\u0442 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '{0}'.",
|
13218
13235
|
[322 /* _0ModifierIsNotAllowedHere */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '{0}' \u0437\u0434\u0435\u0441\u044C \u043D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C.",
|
13219
|
-
[323 /*
|
13220
|
-
[324 /*
|
13221
|
-
[325 /*
|
13222
|
-
[326 /*
|
13236
|
+
[323 /* DeclarationCannotBePlacedInGroupHaving0Modifier */]: "\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0435 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0440\u0430\u0441\u043F\u043E\u043B\u0430\u0433\u0430\u0442\u044C\u0441\u044F \u0432 \u0433\u0440\u0443\u043F\u043F\u0435, \u0438\u043C\u0435\u044E\u0449\u0435\u0439 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '{0}'.",
|
13237
|
+
[324 /* PackageConstructorDeclarationCannotHaveModifiers */]: "\u041A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u043F\u0430\u043A\u0435\u0442\u0430 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0438\u043C\u0435\u0442\u044C \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0445 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u0432 \u0438\u043B\u0438 \u0440\u0430\u0441\u043F\u043E\u043B\u0430\u0433\u0430\u0442\u044C\u0441\u044F \u0432 \u0433\u0440\u0443\u043F\u043F\u0435, \u0438\u043C\u0435\u044E\u0449\u0435\u0439 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u044B.",
|
13238
|
+
[325 /* PackageEntryPointDeclarationCannotHaveModifiers */]: "\u0411\u043B\u043E\u043A '\u0432\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0438\u043C\u0435\u0442\u044C \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0445 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u0432 \u0438\u043B\u0438 \u0440\u0430\u0441\u043F\u043E\u043B\u0430\u0433\u0430\u0442\u044C\u0441\u044F \u0432 \u0433\u0440\u0443\u043F\u043F\u0435, \u0438\u043C\u0435\u044E\u0449\u0435\u0439 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u044B.",
|
13239
|
+
[326 /* TranslationsCannotHaveModifiers */]: "\u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B \u043D\u0435 \u043C\u043E\u0433\u0443\u0442 \u0438\u043C\u0435\u0442\u044C \u0441\u043E\u0431\u0441\u0442\u0432\u0435\u043D\u043D\u044B\u0445 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u0432 \u0438\u043B\u0438 \u0440\u0430\u0441\u043F\u043E\u043B\u0430\u0433\u0430\u0442\u044C\u0441\u044F \u0432 \u0433\u0440\u0443\u043F\u043F\u0435, \u0438\u043C\u0435\u044E\u0449\u0435\u0439 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u044B.",
|
13223
13240
|
[327 /* AbstractModifierCanOnlyBeUsedInAbstractObjectTypes */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u0430\u044F' \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0442\u043E\u043B\u044C\u043A\u043E \u0432 \u0430\u0441\u043F\u0435\u043A\u0442\u0430\u0445 \u0438 \u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u044B\u0445 \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u044B\u0445 \u0442\u0438\u043F\u0430\u0445.",
|
13224
13241
|
[328 /* BasicModifierCanOnlyBeUsedInObjectTypesAspectTypesAndTypeAliases */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0431\u0430\u0437\u043E\u0432\u0430\u044F' \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0442\u043E\u043B\u044C\u043A\u043E \u0432 \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u044B\u0445 \u0442\u0438\u043F\u0430\u0445, \u0430\u0441\u043F\u0435\u043A\u0442\u043D\u044B\u0445 \u0442\u0438\u043F\u0430\u0445 \u0438 \u043F\u0441\u0435\u0432\u0434\u043E\u043D\u0438\u043C\u0430\u0445 \u0442\u0438\u043F\u0430.",
|
13225
13242
|
[329 /* OverrideModifierCanOnlyBeUsedInObjectAndAspectTypes */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u0430\u044F' \u043C\u043E\u0436\u0435\u0442 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u044C\u0441\u044F \u0442\u043E\u043B\u044C\u043A\u043E \u0432 \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u044B\u0445 \u0438 \u0430\u0441\u043F\u0435\u043A\u0442\u043D\u044B\u0445 \u0442\u0438\u043F\u0430\u0445.",
|
13226
|
-
[330 /*
|
13227
|
-
[331 /*
|
13243
|
+
[330 /* _0ModifierCannotBeUsedWith1Modifier */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '{0}' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D \u0441\u043E\u0432\u043C\u0435\u0441\u0442\u043D\u043E \u0441 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '{1}'.",
|
13244
|
+
[331 /* VariantDeclarationCannotHaveHiddenModifier */]: "\u0412\u0430\u0440\u0438\u0430\u043D\u0442 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0438\u043C\u0435\u0442\u044C \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0441\u043A\u0440\u044B\u0442\u043E'.",
|
13228
13245
|
[332 /* BasicModifierCanOnlyBeAppliedToObjectTypes */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0431\u0430\u0437\u043E\u0432\u044B\u0439' \u043C\u043E\u0436\u0435\u0442 \u043F\u0440\u0438\u043C\u0435\u043D\u044F\u0442\u044C\u0441\u044F \u0442\u043E\u043B\u044C\u043A\u043E \u043A \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u044B\u043C \u0442\u0438\u043F\u0430\u043C.",
|
13229
13246
|
[333 /* AbstractModifierCanOnlyBeAppliedToObjectTypes */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u044B\u0439' \u043C\u043E\u0436\u0435\u0442 \u043F\u0440\u0438\u043C\u0435\u043D\u044F\u0442\u044C\u0441\u044F \u0442\u043E\u043B\u044C\u043A\u043E \u043A \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u044B\u043C \u0442\u0438\u043F\u0430\u043C.",
|
13230
|
-
[334 /*
|
13231
|
-
[335 /*
|
13247
|
+
[334 /* NotBasicObjectTypesCannotHaveBasicMembers */]: "\u0427\u043B\u0435\u043D\u044B \u043E\u0431\u044A\u0435\u043A\u0442\u043D\u043E\u0433\u043E \u0442\u0438\u043F\u0430, \u043D\u0435 \u043F\u043E\u043C\u0435\u0447\u0435\u043D\u043D\u043E\u0433\u043E \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u0431\u0430\u0437\u043E\u0432\u044B\u0439', \u043D\u0435 \u043C\u043E\u0433\u0443\u0442 \u0431\u044B\u0442\u044C \u0431\u0430\u0437\u043E\u0432\u044B\u043C\u0438.",
|
13248
|
+
[335 /* BasicModifierCannotBeAppliedToAspectTypeFields */]: "\u041C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0431\u0430\u0437\u043E\u0432\u044B\u0439' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u043F\u0440\u0438\u043C\u0435\u043D\u044F\u0442\u044C\u0441\u044F \u043A \u043F\u043E\u043B\u044F\u043C \u0430\u0441\u043F\u0435\u043A\u0442\u043D\u043E\u0433\u043E \u0442\u0438\u043F\u0430.",
|
13232
13249
|
[336 /* WriteFunctionMustHaveTheSameModifiersAsReadFunction */]: "\u0424\u0443\u043D\u043A\u0446\u0438\u044F \u0437\u0430\u043F\u0438\u0441\u0438 \u0434\u043E\u043B\u0436\u043D\u0430 \u0438\u043C\u0435\u0442\u044C \u0442\u0430\u043A\u0438\u0435 \u0436\u0435 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u044B, \u043A\u0430\u043A \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u0447\u0442\u0435\u043D\u0438\u044F.",
|
13233
13250
|
[337 /* WriteFunctionMustHaveTheSameOrMoreRestrictiveHidingLevelThenReadFunction */]: "\u0424\u0443\u043D\u043A\u0446\u0438\u044F \u0437\u0430\u043F\u0438\u0441\u0438 \u0434\u043E\u043B\u0436\u043D\u0430 \u0438\u043C\u0435\u0442\u044C \u0442\u0430\u043A\u043E\u0439 \u0436\u0435 \u0438\u043B\u0438 \u0431\u043E\u043B\u0435\u0435 \u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0438\u0432\u0430\u044E\u0449\u0438\u0439 \u0443\u0440\u043E\u0432\u0435\u043D\u044C \u0441\u043A\u0440\u044B\u0442\u043D\u043E\u0441\u0442\u0438, \u0447\u0435\u043C \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u0447\u0442\u0435\u043D\u0438\u044F.",
|
13234
13251
|
[338 /* DeclarationConflictsWithBaseTypeMember0 */]: "\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0435 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u0435\u0442 \u0441 \u0447\u043B\u0435\u043D\u043E\u043C '{0}' \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430.",
|
13235
13252
|
[339 /* DeclarationConflictsWithBaseTypeMember0AddOverrideModifier */]: "\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0435 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u0435\u0442 \u0441 \u0447\u043B\u0435\u043D\u043E\u043C '{0}' \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430. \u0427\u0442\u043E\u0431\u044B \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044C \u0431\u0430\u0437\u043E\u0432\u044B\u0439 \u0447\u043B\u0435\u043D, \u0434\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440 '\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u0430\u044F'.",
|
13236
|
-
[340 /*
|
13253
|
+
[340 /* DeclarationConflictsWithBaseTypeMember0ThisMemberCannotBeOverridden */]: "\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0435 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u0435\u0442 \u0441 \u0447\u043B\u0435\u043D\u043E\u043C '{0}' \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430. \u042D\u0442\u043E\u0442 \u0447\u043B\u0435\u043D \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D.",
|
13237
13254
|
[341 /* DeclarationConflictsWithBaseTypeMember0ToOverrideTypeMustBeAssignableTo1 */]: "\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0435 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u0435\u0442 \u0441 \u0447\u043B\u0435\u043D\u043E\u043C '{0}' \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430. \u0427\u0442\u043E\u0431\u044B \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044C \u0435\u0433\u043E, \u0442\u0438\u043F \u0434\u043E\u043B\u0436\u0435\u043D \u0431\u044B\u0442\u044C \u0441\u043E\u0432\u043C\u0435\u0441\u0442\u0438\u043C \u0441 \u0442\u0438\u043F\u043E\u043C '{1}'.",
|
13238
13255
|
[342 /* DeclarationConflictsWithBaseTypeMember0ToOverrideReturnTypeMustBeAssignableTo1 */]: "\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0435 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u0435\u0442 \u0441 \u0447\u043B\u0435\u043D\u043E\u043C '{0}' \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430. \u0427\u0442\u043E\u0431\u044B \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044C \u0435\u0433\u043E, \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043C\u044B\u0439 \u0442\u0438\u043F \u0434\u043E\u043B\u0436\u0435\u043D \u0431\u044B\u0442\u044C \u0441\u043E\u0432\u043C\u0435\u0441\u0442\u0438\u043C \u0441 \u0442\u0438\u043F\u043E\u043C '{1}'.",
|
13239
|
-
[
|
13256
|
+
[348 /* TypeDoesNotImplementMember0 */]: "\u0422\u0438\u043F \u043D\u0435 \u0440\u0435\u0430\u043B\u0438\u0437\u0443\u0435\u0442 \u0447\u043B\u0435\u043D '{0}'.",
|
13257
|
+
[349 /* TypeDoesNotImplementMember0ImplicitImplementationTypeMismatch1 */]: "\u0422\u0438\u043F \u043D\u0435 \u0440\u0435\u0430\u043B\u0438\u0437\u0443\u0435\u0442 \u0447\u043B\u0435\u043D '{0}'. \u0427\u043B\u0435\u043D '{1}' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0440\u0435\u0430\u043B\u0438\u0437\u043E\u0432\u0430\u0442\u044C \u0435\u0433\u043E, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0438\u0445 \u0442\u0438\u043F\u044B \u043E\u0442\u043B\u0438\u0447\u0430\u044E\u0442\u0441\u044F.",
|
13258
|
+
[350 /* TypeDoesNotImplementMember0ImplicitImplementation1IsAsync */]: "\u0422\u0438\u043F \u043D\u0435 \u0440\u0435\u0430\u043B\u0438\u0437\u0443\u0435\u0442 \u0447\u043B\u0435\u043D '{0}'. \u041C\u0435\u0442\u043E\u0434 '{1}' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0440\u0435\u0430\u043B\u0438\u0437\u043E\u0432\u0430\u0442\u044C \u0435\u0433\u043E, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0432 \u043E\u0442\u043B\u0438\u0447\u0438\u0435 \u043E\u0442 \u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u043E\u0433\u043E \u0447\u043B\u0435\u043D\u0430 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0430\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u044B\u043C.",
|
13259
|
+
[351 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotAsync */]: "\u0422\u0438\u043F \u043D\u0435 \u0440\u0435\u0430\u043B\u0438\u0437\u0443\u0435\u0442 \u0447\u043B\u0435\u043D '{0}'. \u041C\u0435\u0442\u043E\u0434 '{1}' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0440\u0435\u0430\u043B\u0438\u0437\u043E\u0432\u0430\u0442\u044C \u0435\u0433\u043E, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0432 \u043E\u0442\u043B\u0438\u0447\u0438\u0435 \u043E\u0442 \u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u043E\u0433\u043E \u0447\u043B\u0435\u043D\u0430 \u043D\u0435 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0430\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u044B\u043C.",
|
13260
|
+
[352 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotWriteable */]: "\u0422\u0438\u043F \u043D\u0435 \u0440\u0435\u0430\u043B\u0438\u0437\u0443\u0435\u0442 \u0447\u043B\u0435\u043D '{0}'. \u0427\u043B\u0435\u043D '{1}' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0440\u0435\u0430\u043B\u0438\u0437\u043E\u0432\u0430\u0442\u044C \u0435\u0433\u043E, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u043D\u0435 \u0438\u043C\u0435\u0435\u0442 \u0444\u0443\u043D\u043A\u0446\u0438\u0438 \u0437\u0430\u043F\u0438\u0441\u0438 \u0438\u043B\u0438 \u043F\u043E\u043C\u0435\u0447\u0435\u043D \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u043A\u043E\u043D\u0441\u0442'.",
|
13261
|
+
[353 /* TypeDoesNotImplementMember0ImplicitImplementation1WriteFunctionIsHidden */]: "\u0422\u0438\u043F \u043D\u0435 \u0440\u0435\u0430\u043B\u0438\u0437\u0443\u0435\u0442 \u0447\u043B\u0435\u043D '{0}'. \u0427\u043B\u0435\u043D '{1}' \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0440\u0435\u0430\u043B\u0438\u0437\u043E\u0432\u0430\u0442\u044C \u0435\u0433\u043E, \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0435\u0433\u043E \u0444\u0443\u043D\u043A\u0446\u0438\u044F \u0437\u0430\u043F\u0438\u0441\u0438 \u0441\u043A\u0440\u044B\u0442\u0430.",
|
13240
13262
|
[343 /* OverridingMemberMustHaveTheSameHidingLevelAsBaseMember0 */]: "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0439 \u0447\u043B\u0435\u043D \u0442\u0438\u043F\u0430 \u0434\u043E\u043B\u0436\u0435\u043D \u0438\u043C\u0435\u0442\u044C \u0442\u0430\u043A\u043E\u0439 \u0436\u0435 \u0443\u0440\u043E\u0432\u0435\u043D\u044C \u0441\u043A\u0440\u044B\u0442\u043D\u043E\u0441\u0442\u0438 \u043A\u0430\u043A \u0431\u0430\u0437\u043E\u0432\u044B\u0439 \u0447\u043B\u0435\u043D '{0}'.",
|
13241
13263
|
[344 /* OverridingMethodMustBeAsyncBecauseBaseMethod0IsAsync */]: "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0439 \u043C\u0435\u0442\u043E\u0434 \u0434\u043E\u043B\u0436\u0435\u043D \u0431\u044B\u0442\u044C \u043F\u043E\u043C\u0435\u0447\u0435\u043D \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u0430\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u044B\u0439', \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0431\u0430\u0437\u043E\u0432\u044B\u0439 \u043C\u0435\u0442\u043E\u0434 '{0}' \u043F\u043E\u043C\u0435\u0447\u0435\u043D \u0442\u0430\u043A\u0438\u043C \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C.",
|
13242
13264
|
[345 /* OverridingMethodMustNotBeAsyncBecauseBaseMethod0IsNotAsync */]: "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0439 \u043C\u0435\u0442\u043E\u0434 \u043D\u0435 \u0434\u043E\u043B\u0436\u0435\u043D \u0431\u044B\u0442\u044C \u043F\u043E\u043C\u0435\u0447\u0435\u043D \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u0430\u0441\u0438\u043D\u0445\u0440\u043E\u043D\u043D\u044B\u0439', \u043F\u043E\u0441\u043A\u043E\u043B\u044C\u043A\u0443 \u0431\u0430\u0437\u043E\u0432\u044B\u0439 \u043C\u0435\u0442\u043E\u0434 '{0}' \u043D\u0435 \u043F\u043E\u043C\u0435\u0447\u0435\u043D \u0442\u0430\u043A\u0438\u043C \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C.",
|
13243
|
-
[346 /* OverridingFieldMustNotBeConstOrHaveWriteFunctionToMatchBaseField0 */]: "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u043E\u0435 \u043F\u043E\u043B\u0435 \u043D\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043F\u043E\u043C\u0435\u0447\u0435\u043D\u043E \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u043A\u043E\u043D\u0441\u0442' \u0438\u043B\u0438 \u0434\u043E\u043B\u0436\u043D\u043E \u0438\u043C\u0435\u0442\u044C \u0444\u0443\u043D\u043A\u0446\u0438\
|
13244
|
-
[
|
13245
|
-
[
|
13246
|
-
[
|
13265
|
+
[346 /* OverridingFieldMustNotBeConstOrHaveWriteFunctionToMatchBaseField0 */]: "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u043E\u0435 \u043F\u043E\u043B\u0435 \u043D\u0435 \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043F\u043E\u043C\u0435\u0447\u0435\u043D\u043E \u043C\u043E\u0434\u0438\u0444\u0438\u043A\u0430\u0442\u043E\u0440\u043E\u043C '\u043A\u043E\u043D\u0441\u0442' \u0438\u043B\u0438 \u0434\u043E\u043B\u0436\u043D\u043E \u0438\u043C\u0435\u0442\u044C \u0444\u0443\u043D\u043A\u0446\u0438\u044E \u0437\u0430\u043F\u0438\u0441\u0438, \u0447\u0442\u043E\u0431\u044B \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0431\u0430\u0437\u043E\u0432\u043E\u043C\u0443 \u043F\u043E\u043B\u044E '{0}'.",
|
13266
|
+
[347 /* OverridingMemberMustHaveWriteFunctionToMatchBaseMember0 */]: "\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u043D\u044B\u0439 \u0447\u043B\u0435\u043D \u0442\u0438\u043F\u0430 \u0434\u043E\u043B\u0436\u0435\u043D \u0438\u043C\u0435\u0442\u044C \u0444\u0443\u043D\u043A\u0446\u0438\u044E \u0437\u0430\u043F\u0438\u0441\u0438, \u0447\u0442\u043E\u0431\u044B \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0431\u0430\u0437\u043E\u0432\u043E\u043C\u0443 \u0447\u043B\u0435\u043D\u0443 '{0}'.",
|
13267
|
+
[354 /* CannotAccessAbstractMemberOfBaseType */]: "\u041D\u0435\u043B\u044C\u0437\u044F \u043E\u0431\u0440\u0430\u0442\u0438\u0442\u044C\u0441\u044F \u043A \u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u043E\u043C\u0443 \u0447\u043B\u0435\u043D\u0443 \u0431\u0430\u0437\u043E\u0432\u043E\u0433\u043E \u0442\u0438\u043F\u0430.",
|
13268
|
+
[355 /* TheFollowingBaseTypeMembersConflictAndMustBeOverridden0 */]: "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u0447\u043B\u0435\u043D\u044B \u0431\u0430\u0437\u043E\u0432\u044B\u0445 \u0442\u0438\u043F\u043E\u0432 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u044E\u0442 \u043C\u0435\u0436\u0434\u0443 \u0441\u043E\u0431\u043E\u0439 \u0438 \u0434\u043E\u043B\u0436\u043D\u044B \u0431\u044B\u0442\u044C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u044B:{0}",
|
13269
|
+
[356 /* TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1 */]: "\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u0447\u043B\u0435\u043D\u044B \u0431\u0430\u0437\u043E\u0432\u044B\u0445 \u0442\u0438\u043F\u043E\u0432 \u043A\u043E\u043D\u0444\u043B\u0438\u043A\u0442\u0443\u044E\u0442 \u043C\u0435\u0436\u0434\u0443 \u0441\u043E\u0431\u043E\u0439, \u043F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u0438\u0445 \u0438\u043C\u0435\u043D\u0430 '{0}' \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u044E\u0442 \u043D\u0430 \u044F\u0437\u044B\u043A\u0435 \u043E\u0440\u0438\u0433\u0438\u043D\u0430\u043B\u0430, \u0438 \u0434\u043E\u043B\u0436\u043D\u044B \u0431\u044B\u0442\u044C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u044B:{1}",
|
13270
|
+
[357 /* OnlyIdentifierOrIntegerLiteralIsAllowedAsParameterOfTextTemplateLiteralInTranslations */]: "\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u043E\u043C \u0448\u0430\u0431\u043B\u043E\u043D\u0430 \u0442\u0435\u043A\u0441\u0442\u0430 \u0432 \u043F\u0435\u0440\u0435\u0432\u043E\u0434\u0430\u0445 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0442\u043E\u043B\u044C\u043A\u043E \u0438\u043C\u044F \u0438\u043B\u0438 \u0431\u0443\u043A\u0432\u0430\u043B\u044C\u043D\u043E \u0446\u0435\u043B\u043E\u0435 \u0447\u0438\u0441\u043B\u043E.",
|
13247
13271
|
[401 /* CannotFindTsLibDirectoryBaseSearchPaths0 */]: "\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043D\u0430\u0439\u0442\u0438 \u043F\u0430\u043F\u043A\u0443 \u0441\u043E \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u0439 \u0431\u0438\u0431\u043B\u0438\u043E\u0442\u0435\u043A\u043E\u0439 TypeScript. \u041F\u0443\u0442\u0438, \u043E\u0442\u043D\u043E\u0441\u0438\u0442\u0435\u043B\u044C\u043D\u043E \u043A\u043E\u0442\u043E\u0440\u044B\u0445 \u043E\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043B\u044F\u043B\u0441\u044F \u043F\u043E\u0438\u0441\u043A: {0}.",
|
13248
13272
|
[402 /* SourceFile0IsNotPartOfThePackageAndWontBeLoaded */]: "\u0418\u0441\u0445\u043E\u0434\u043D\u044B\u0439 \u0444\u0430\u0439\u043B '{0}' \u043D\u0435 \u044F\u0432\u043B\u044F\u0435\u0442\u0441\u044F \u0447\u0430\u0441\u0442\u044C\u044E \u043F\u0430\u043A\u0435\u0442\u0430 \u0438 \u043D\u0435 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043D.",
|
13249
13273
|
[403 /* ProgramWithoutMainPackageCannotBeCompiled */]: "\u041F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0430 \u0431\u0435\u0437 \u0433\u043B\u0430\u0432\u043D\u043E\u0433\u043E \u043F\u0430\u043A\u0435\u0442\u0430 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u0431\u044B\u0442\u044C \u0441\u043A\u043E\u043C\u043F\u0438\u043B\u0438\u0440\u043E\u0432\u0430\u043D\u0430.",
|
@@ -13252,65 +13276,6 @@ var russianErrorMessages = {
|
|
13252
13276
|
[406 /* Declaration0NotFoundInStandardPackage1 */]: "\u041E\u0431\u044A\u044F\u0432\u043B\u0435\u043D\u0438\u0435 '{0}' \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E \u0432 \u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u043E\u043C \u043F\u0430\u043A\u0435\u0442\u0435 '{1}'."
|
13253
13277
|
};
|
13254
13278
|
|
13255
|
-
// source/analysis/Localization.ts
|
13256
|
-
var Localization;
|
13257
|
-
((Localization2) => {
|
13258
|
-
class Original {
|
13259
|
-
constructor(locale) {
|
13260
|
-
this.locale = locale;
|
13261
|
-
this.kind = "original";
|
13262
|
-
}
|
13263
|
-
equals(other) {
|
13264
|
-
return this.kind === other.kind && this.locale === other.locale;
|
13265
|
-
}
|
13266
|
-
static ofEntity(entity) {
|
13267
|
-
const locale = getPackageContainingEntity(entity).getLocale();
|
13268
|
-
return new Localization2.Original(locale);
|
13269
|
-
}
|
13270
|
-
}
|
13271
|
-
Localization2.Original = Original;
|
13272
|
-
class Translated {
|
13273
|
-
constructor(translation) {
|
13274
|
-
this.translation = translation;
|
13275
|
-
this.kind = "translated";
|
13276
|
-
}
|
13277
|
-
get locale() {
|
13278
|
-
return this.translation.translationPackage.getTranslationLocale();
|
13279
|
-
}
|
13280
|
-
equals(other) {
|
13281
|
-
return this.kind === other.kind && this.translation.equals(other.translation);
|
13282
|
-
}
|
13283
|
-
}
|
13284
|
-
Localization2.Translated = Translated;
|
13285
|
-
})(Localization || (Localization = {}));
|
13286
|
-
var Translation = class {
|
13287
|
-
constructor(translationPackage) {
|
13288
|
-
this.translationPackage = translationPackage;
|
13289
|
-
}
|
13290
|
-
equals(other) {
|
13291
|
-
return this.translationPackage === other.translationPackage;
|
13292
|
-
}
|
13293
|
-
};
|
13294
|
-
var LocalizedName;
|
13295
|
-
((LocalizedName2) => {
|
13296
|
-
class Original {
|
13297
|
-
constructor(value, localization) {
|
13298
|
-
this.value = value;
|
13299
|
-
this.localization = localization;
|
13300
|
-
this.kind = "original";
|
13301
|
-
}
|
13302
|
-
}
|
13303
|
-
LocalizedName2.Original = Original;
|
13304
|
-
class Translated {
|
13305
|
-
constructor(value, localization) {
|
13306
|
-
this.value = value;
|
13307
|
-
this.localization = localization;
|
13308
|
-
this.kind = "translated";
|
13309
|
-
}
|
13310
|
-
}
|
13311
|
-
LocalizedName2.Translated = Translated;
|
13312
|
-
})(LocalizedName || (LocalizedName = {}));
|
13313
|
-
|
13314
13279
|
// source/analysis/AnalyzedTranslationPackage.ts
|
13315
13280
|
var AnalyzedTranslationPackage = class {
|
13316
13281
|
constructor(_analyzer, _package, _translatedPackage) {
|
@@ -14442,7 +14407,8 @@ var EntityLocalizationHelper = class {
|
|
14442
14407
|
typeEntity2.isAsync(),
|
14443
14408
|
typeEntity2.getSubstitutionApplicationMode(),
|
14444
14409
|
typeEntity2.getContainingPackage(),
|
14445
|
-
typeEntity2.isHidden()
|
14410
|
+
typeEntity2.isHidden(),
|
14411
|
+
typeEntity2.getContext()
|
14446
14412
|
);
|
14447
14413
|
const typeParameters = Query.from(typeEntity2.getTypeParameters()).zip(
|
14448
14414
|
localizedSignature2.getTypeParameterNames(),
|
@@ -14450,7 +14416,8 @@ var EntityLocalizationHelper = class {
|
|
14450
14416
|
n.value,
|
14451
14417
|
p.getConstraint().cycleFree,
|
14452
14418
|
p.getDefaultType(),
|
14453
|
-
localizedTypeEntity.unfinishedValue
|
14419
|
+
localizedTypeEntity.unfinishedValue,
|
14420
|
+
p.getContext()
|
14454
14421
|
)
|
14455
14422
|
).toArray();
|
14456
14423
|
const valueParameters = Query.from(typeEntity2.getValueParameters()).zip(
|
@@ -14473,7 +14440,8 @@ var EntityLocalizationHelper = class {
|
|
14473
14440
|
typeEntity2.isAsync(),
|
14474
14441
|
typeEntity2.getSubstitutionApplicationMode(),
|
14475
14442
|
typeEntity2.getContainingPackage(),
|
14476
|
-
typeEntity2.isHidden()
|
14443
|
+
typeEntity2.isHidden(),
|
14444
|
+
typeEntity2.getContext()
|
14477
14445
|
);
|
14478
14446
|
const typeParameters = Query.from(typeEntity2.getTypeParameters()).zip(
|
14479
14447
|
localizedSignature2.getTypeParameterNames(),
|
@@ -14481,7 +14449,8 @@ var EntityLocalizationHelper = class {
|
|
14481
14449
|
n.value,
|
14482
14450
|
p.getConstraint().cycleFree,
|
14483
14451
|
p.getDefaultType(),
|
14484
|
-
localizedTypeEntity.unfinishedValue
|
14452
|
+
localizedTypeEntity.unfinishedValue,
|
14453
|
+
p.getContext()
|
14485
14454
|
)
|
14486
14455
|
).toArray();
|
14487
14456
|
const valueParameters = Query.from(typeEntity2.getValueParameters()).zip(
|
@@ -17424,6 +17393,7 @@ var Method = class _Method {
|
|
17424
17393
|
isAsync,
|
17425
17394
|
0 /* SubstituteOwnSubstitutions */,
|
17426
17395
|
containingPackage,
|
17396
|
+
void 0,
|
17427
17397
|
void 0
|
17428
17398
|
);
|
17429
17399
|
const valueParameters = this.getValueParameters().map(
|
@@ -17451,6 +17421,9 @@ var Method = class _Method {
|
|
17451
17421
|
isStatic() {
|
17452
17422
|
return this._entity.isStatic();
|
17453
17423
|
}
|
17424
|
+
isOverride() {
|
17425
|
+
return this._entity.isOverride();
|
17426
|
+
}
|
17454
17427
|
applySubstitutions(substitutions) {
|
17455
17428
|
return new _Method(this._analyzer, this._entity, this._substitutions.substituteTypes(substitutions.map));
|
17456
17429
|
}
|
@@ -17521,6 +17494,9 @@ var Field = class _Field {
|
|
17521
17494
|
isStatic() {
|
17522
17495
|
return this._entity.isStatic();
|
17523
17496
|
}
|
17497
|
+
isOverride() {
|
17498
|
+
return this._entity.isOverride();
|
17499
|
+
}
|
17524
17500
|
isVariant() {
|
17525
17501
|
return this._entity.isVariant();
|
17526
17502
|
}
|
@@ -17578,6 +17554,7 @@ var Operator = class _Operator {
|
|
17578
17554
|
isAsync,
|
17579
17555
|
0 /* SubstituteOwnSubstitutions */,
|
17580
17556
|
containingPackage,
|
17557
|
+
void 0,
|
17581
17558
|
void 0
|
17582
17559
|
);
|
17583
17560
|
const valueParameters = this.getValueParameters().map(
|
@@ -17602,6 +17579,9 @@ var Operator = class _Operator {
|
|
17602
17579
|
isStatic() {
|
17603
17580
|
return this._entity.isStatic();
|
17604
17581
|
}
|
17582
|
+
isOverride() {
|
17583
|
+
return this._entity.isOverride();
|
17584
|
+
}
|
17605
17585
|
applySubstitutions(substitutions) {
|
17606
17586
|
return new _Operator(this._analyzer, this._entity, this._substitutions.substituteTypes(substitutions.map));
|
17607
17587
|
}
|
@@ -17613,7 +17593,8 @@ var Operator = class _Operator {
|
|
17613
17593
|
}
|
17614
17594
|
};
|
17615
17595
|
var Constructor = class _Constructor {
|
17616
|
-
constructor(_entity, _substitutions) {
|
17596
|
+
constructor(_analyzer, _entity, _substitutions) {
|
17597
|
+
this._analyzer = _analyzer;
|
17617
17598
|
this._entity = _entity;
|
17618
17599
|
this._substitutions = _substitutions;
|
17619
17600
|
this.kind = "constructor";
|
@@ -17640,7 +17621,15 @@ var Constructor = class _Constructor {
|
|
17640
17621
|
return false;
|
17641
17622
|
}
|
17642
17623
|
applySubstitutions(substitutions) {
|
17643
|
-
return new _Constructor(this._entity, this._substitutions.substituteTypes(substitutions.map));
|
17624
|
+
return new _Constructor(this._analyzer, this._entity, this._substitutions.substituteTypes(substitutions.map));
|
17625
|
+
}
|
17626
|
+
getConstructedType() {
|
17627
|
+
const container = this._entity.getContainer();
|
17628
|
+
const constructedTypeEntity = container.getContextualType();
|
17629
|
+
if (constructedTypeEntity !== void 0) {
|
17630
|
+
return this._analyzer.instantiateType(constructedTypeEntity, this._substitutions);
|
17631
|
+
}
|
17632
|
+
return this._analyzer.standardTypes.unresolved;
|
17644
17633
|
}
|
17645
17634
|
equals(other) {
|
17646
17635
|
if (this === other) {
|
@@ -17722,6 +17711,9 @@ var Indexer = class _Indexer {
|
|
17722
17711
|
isStatic() {
|
17723
17712
|
return this._entity.isStatic();
|
17724
17713
|
}
|
17714
|
+
isOverride() {
|
17715
|
+
return this._entity.isOverride();
|
17716
|
+
}
|
17725
17717
|
applySubstitutions(substitutions) {
|
17726
17718
|
return new _Indexer(this._entity, this._substitutions.substituteTypes(substitutions.map));
|
17727
17719
|
}
|
@@ -17759,6 +17751,9 @@ var DereferenceOperator = class _DereferenceOperator {
|
|
17759
17751
|
isStatic() {
|
17760
17752
|
return false;
|
17761
17753
|
}
|
17754
|
+
isOverride() {
|
17755
|
+
return this._entity.isOverride();
|
17756
|
+
}
|
17762
17757
|
applySubstitutions(substitutions) {
|
17763
17758
|
return new _DereferenceOperator(this._entity, this._substitutions.substituteTypes(substitutions.map));
|
17764
17759
|
}
|
@@ -17961,6 +17956,89 @@ var TypeEntityKind = /* @__PURE__ */ ((TypeEntityKind4) => {
|
|
17961
17956
|
return TypeEntityKind4;
|
17962
17957
|
})(TypeEntityKind || {});
|
17963
17958
|
|
17959
|
+
// source/entities/BaseEntityHidingMatcher.ts
|
17960
|
+
var BaseEntityHidingMatcher = class {
|
17961
|
+
matches(hiding) {
|
17962
|
+
switch (hiding.kind) {
|
17963
|
+
case "type":
|
17964
|
+
return this.typeEntity === hiding.typeEntity;
|
17965
|
+
case "type-hierarchy": {
|
17966
|
+
if (this.typeEntity === void 0) {
|
17967
|
+
return false;
|
17968
|
+
}
|
17969
|
+
if (this.typeEntity === hiding.baseTypeEntity) {
|
17970
|
+
return true;
|
17971
|
+
}
|
17972
|
+
const baseTypes = this.collectBaseTypesRecursively(this.typeEntity);
|
17973
|
+
return baseTypes.has(hiding.baseTypeEntity);
|
17974
|
+
}
|
17975
|
+
case "file":
|
17976
|
+
return this.sourceFile === hiding.sourceFile;
|
17977
|
+
case "package":
|
17978
|
+
return this.package === hiding.packageEntity;
|
17979
|
+
default:
|
17980
|
+
Debug.never(hiding);
|
17981
|
+
}
|
17982
|
+
}
|
17983
|
+
collectBaseTypesRecursively(entity, result) {
|
17984
|
+
result ??= /* @__PURE__ */ new Set();
|
17985
|
+
switch (entity.typeEntityKind) {
|
17986
|
+
case 1 /* Structured */: {
|
17987
|
+
const baseObjectType = unaliasType(entity.getBaseObjectType().cycleFree)?.getEntity();
|
17988
|
+
if (baseObjectType !== void 0 && !result.has(baseObjectType)) {
|
17989
|
+
result.add(baseObjectType);
|
17990
|
+
this.collectBaseTypesRecursively(baseObjectType, result);
|
17991
|
+
}
|
17992
|
+
for (const baseAspectType of entity.getBaseAspectTypes().cycleFree) {
|
17993
|
+
const aspectTypeEntity = unaliasType(baseAspectType).getEntity();
|
17994
|
+
if (aspectTypeEntity !== void 0 && !result.has(aspectTypeEntity)) {
|
17995
|
+
result.add(aspectTypeEntity);
|
17996
|
+
this.collectBaseTypesRecursively(aspectTypeEntity, result);
|
17997
|
+
}
|
17998
|
+
}
|
17999
|
+
break;
|
18000
|
+
}
|
18001
|
+
case 3 /* Variant */: {
|
18002
|
+
const baseObjectType = unaliasType(entity.getBaseObjectType().cycleFree)?.getEntity();
|
18003
|
+
if (baseObjectType !== void 0 && !result.has(baseObjectType)) {
|
18004
|
+
result.add(baseObjectType);
|
18005
|
+
this.collectBaseTypesRecursively(baseObjectType, result);
|
18006
|
+
}
|
18007
|
+
break;
|
18008
|
+
}
|
18009
|
+
case 0 /* Function */: {
|
18010
|
+
const baseObjectType = unaliasType(entity.getBaseObjectType().cycleFree)?.getEntity();
|
18011
|
+
if (baseObjectType !== void 0 && !result.has(baseObjectType)) {
|
18012
|
+
result.add(baseObjectType);
|
18013
|
+
this.collectBaseTypesRecursively(baseObjectType, result);
|
18014
|
+
}
|
18015
|
+
break;
|
18016
|
+
}
|
18017
|
+
case 2 /* Parameter */:
|
18018
|
+
case 4 /* Alias */:
|
18019
|
+
break;
|
18020
|
+
default:
|
18021
|
+
Debug.never(entity);
|
18022
|
+
}
|
18023
|
+
return result;
|
18024
|
+
}
|
18025
|
+
};
|
18026
|
+
|
18027
|
+
// source/entities/EntityHidingMatcherWithinTypeEntity.ts
|
18028
|
+
var EntityHidingMatcherWithinTypeEntity = class extends BaseEntityHidingMatcher {
|
18029
|
+
constructor(_typeEntity) {
|
18030
|
+
super();
|
18031
|
+
this._typeEntity = _typeEntity;
|
18032
|
+
this.sourceFile = void 0;
|
18033
|
+
}
|
18034
|
+
get typeEntity() {
|
18035
|
+
return this.typeEntity;
|
18036
|
+
}
|
18037
|
+
get package() {
|
18038
|
+
return getPackageContainingEntity(this._typeEntity);
|
18039
|
+
}
|
18040
|
+
};
|
18041
|
+
|
17964
18042
|
// source/entities/PackageMembers.ts
|
17965
18043
|
var OriginalPackageMembers = class {
|
17966
18044
|
constructor(_namedMembers, _typeExtensions) {
|
@@ -18036,7 +18114,7 @@ var Compilation = class {
|
|
18036
18114
|
};
|
18037
18115
|
|
18038
18116
|
// source/project/CompilationLoader.ts
|
18039
|
-
import {
|
18117
|
+
import { runAtomically } from "reactronic";
|
18040
18118
|
|
18041
18119
|
// source/diagnostic/RangeDiagnostic.ts
|
18042
18120
|
var RangeDiagnostic = class {
|
@@ -19916,7 +19994,7 @@ var FileSystemTree_exports = {};
|
|
19916
19994
|
__export(FileSystemTree_exports, {
|
19917
19995
|
FileSystemTree: () => FileSystemTree
|
19918
19996
|
});
|
19919
|
-
import { TriggeringObject, ReactiveSystem, trigger,
|
19997
|
+
import { TriggeringObject, ReactiveSystem, trigger, atomic } from "reactronic";
|
19920
19998
|
var FileSystemTree = class extends TriggeringObject {
|
19921
19999
|
constructor(handleInconsistentRequestsWithoutErrors = false, deleteEmptyDirectories = false) {
|
19922
20000
|
super();
|
@@ -20136,19 +20214,19 @@ __decorateClass([
|
|
20136
20214
|
trigger(false)
|
20137
20215
|
], FileSystemTree.prototype, "_rootsByScheme", 2);
|
20138
20216
|
__decorateClass([
|
20139
|
-
|
20217
|
+
atomic
|
20140
20218
|
], FileSystemTree.prototype, "addFile", 1);
|
20141
20219
|
__decorateClass([
|
20142
|
-
|
20220
|
+
atomic
|
20143
20221
|
], FileSystemTree.prototype, "addDirectory", 1);
|
20144
20222
|
__decorateClass([
|
20145
|
-
|
20223
|
+
atomic
|
20146
20224
|
], FileSystemTree.prototype, "deleteFileOrDirectory", 1);
|
20147
20225
|
__decorateClass([
|
20148
|
-
|
20226
|
+
atomic
|
20149
20227
|
], FileSystemTree.prototype, "updateFile", 1);
|
20150
20228
|
__decorateClass([
|
20151
|
-
|
20229
|
+
atomic
|
20152
20230
|
], FileSystemTree.prototype, "addOrUpdateFile", 1);
|
20153
20231
|
var DirectoryInternal = class extends TriggeringObject {
|
20154
20232
|
constructor(uri, name, parent) {
|
@@ -20223,10 +20301,10 @@ __decorateClass([
|
|
20223
20301
|
trigger(false)
|
20224
20302
|
], DirectoryInternal.prototype, "_childByName", 2);
|
20225
20303
|
__decorateClass([
|
20226
|
-
|
20304
|
+
atomic
|
20227
20305
|
], DirectoryInternal.prototype, "addChild", 1);
|
20228
20306
|
__decorateClass([
|
20229
|
-
|
20307
|
+
atomic
|
20230
20308
|
], DirectoryInternal.prototype, "deleteChild", 1);
|
20231
20309
|
var FileInternal = class extends TriggeringObject {
|
20232
20310
|
constructor(uri, name, text, parent) {
|
@@ -20283,7 +20361,7 @@ __decorateClass([
|
|
20283
20361
|
trigger(false)
|
20284
20362
|
], FileInternal.prototype, "_isDisposed", 2);
|
20285
20363
|
__decorateClass([
|
20286
|
-
|
20364
|
+
atomic
|
20287
20365
|
], FileInternal.prototype, "update", 1);
|
20288
20366
|
|
20289
20367
|
// source/diagnostic/TokenDiagnostic.ts
|
@@ -21731,7 +21809,7 @@ var ExpressionParser = class {
|
|
21731
21809
|
let result = this.parseMultiplicativeExpression(isFollowedByStatementBlock);
|
21732
21810
|
while (this.isAdditiveOperator(this.parser.currentTokenOrKeyword)) {
|
21733
21811
|
const operator = this.parser.parseTokenOrKeyword();
|
21734
|
-
const right = this.
|
21812
|
+
const right = this.parseMultiplicativeExpression(isFollowedByStatementBlock);
|
21735
21813
|
result = new BinaryExpression2(result, operator.value, right);
|
21736
21814
|
result = this.parser.intern(result, expressionStart);
|
21737
21815
|
}
|
@@ -21771,7 +21849,7 @@ var ExpressionParser = class {
|
|
21771
21849
|
let result = this.parseBitwiseConjunctiveExpression(isFollowedByStatementBlock);
|
21772
21850
|
while (this.isBitwiseDisjunctiveOperator(this.parser.currentTokenOrKeyword)) {
|
21773
21851
|
const operator = this.parser.parseTokenOrKeyword();
|
21774
|
-
const right = this.
|
21852
|
+
const right = this.parseBitwiseConjunctiveExpression(isFollowedByStatementBlock);
|
21775
21853
|
result = new BinaryExpression2(result, operator.value, right);
|
21776
21854
|
result = this.parser.intern(result, expressionStart);
|
21777
21855
|
}
|
@@ -24065,10 +24143,10 @@ var CompilationLoader = class _CompilationLoader {
|
|
24065
24143
|
}
|
24066
24144
|
static loadUsingSourcesProvider(uri, sourcesProvider, options, diagnostics, workspaceUri, namesOfDirectoriesToIgnore, cancellationToken) {
|
24067
24145
|
return __async(this, null, function* () {
|
24068
|
-
const fileSystemTree =
|
24146
|
+
const fileSystemTree = runAtomically(() => new FileSystemTree());
|
24069
24147
|
const namesOfDirectoriesToIgnoreSet = new Set(namesOfDirectoriesToIgnore ?? DefaultNamesOfDirectoriesToIgnore);
|
24070
24148
|
PerformanceMeasurement.markStart(3 /* IO */);
|
24071
|
-
const rootDirectory = yield
|
24149
|
+
const rootDirectory = yield runAtomically(() => _CompilationLoader.loadArtelFiles(
|
24072
24150
|
uri,
|
24073
24151
|
sourcesProvider,
|
24074
24152
|
fileSystemTree,
|
@@ -25982,7 +26060,7 @@ var ConstructorLookup = class {
|
|
25982
26060
|
const translatedMembers = this._localizationContext?.getTranslatedTypeOrExtensionEntityMembers(entity);
|
25983
26061
|
const originalLocale = getPackageContainingEntity(entity).getLocale();
|
25984
26062
|
let result = entity.getMembers().getConstructors().map((c) => {
|
25985
|
-
const member = new Constructor(c, type.getSubstitutions());
|
26063
|
+
const member = new Constructor(this._analyzer, c, type.getSubstitutions());
|
25986
26064
|
if (translatedMembers !== void 0) {
|
25987
26065
|
const translation = new Translation(translatedMembers.translationPackage);
|
25988
26066
|
return FoundAnonymousDeclaration.translated(member, translation);
|
@@ -26003,7 +26081,7 @@ var ConstructorLookup = class {
|
|
26003
26081
|
const originalLocale = getPackageContainingEntity(e).getLocale();
|
26004
26082
|
return e.getMembers().getConstructors().map(
|
26005
26083
|
(c) => FoundAnonymousDeclaration.original(
|
26006
|
-
new Constructor(c, type.getSubstitutions()),
|
26084
|
+
new Constructor(this._analyzer, c, type.getSubstitutions()),
|
26007
26085
|
originalLocale
|
26008
26086
|
)
|
26009
26087
|
);
|
@@ -26359,6 +26437,9 @@ var TsPackageEntity = class {
|
|
26359
26437
|
getLocale() {
|
26360
26438
|
return this._locale;
|
26361
26439
|
}
|
26440
|
+
getDialect() {
|
26441
|
+
return DefaultDialect;
|
26442
|
+
}
|
26362
26443
|
getMembers() {
|
26363
26444
|
return this._contents.value.getMembers();
|
26364
26445
|
}
|
@@ -26392,6 +26473,9 @@ var SourcePackageLoadedFromDtsEntity = class {
|
|
26392
26473
|
getLocale() {
|
26393
26474
|
return this._sourcePackage.configuration.locale;
|
26394
26475
|
}
|
26476
|
+
getDialect() {
|
26477
|
+
return this._sourcePackage.configuration.dialect;
|
26478
|
+
}
|
26395
26479
|
getMembers() {
|
26396
26480
|
return this._contents.value.getMembers();
|
26397
26481
|
}
|
@@ -26702,6 +26786,9 @@ var TsGlobalClassOrInterfaceEntity = class {
|
|
26702
26786
|
getSubstitutionApplicationMode() {
|
26703
26787
|
return 0 /* SubstituteOwnSubstitutions */;
|
26704
26788
|
}
|
26789
|
+
getContext() {
|
26790
|
+
return this._tsctx.createTypeEntityContext(this);
|
26791
|
+
}
|
26705
26792
|
getDeclaration() {
|
26706
26793
|
return this._symbol.declarations?.find(TsUtils.isClassOrInterfaceDeclaration);
|
26707
26794
|
}
|
@@ -26806,6 +26893,9 @@ var SourceAndTsGlobalClassOrInterfaceMergeEntity = class {
|
|
26806
26893
|
getSubstitutionApplicationMode() {
|
26807
26894
|
return this._sourceData.getSubstitutionApplicationMode();
|
26808
26895
|
}
|
26896
|
+
getContext() {
|
26897
|
+
return this._tsctx.createTypeEntityContext(this);
|
26898
|
+
}
|
26809
26899
|
};
|
26810
26900
|
SourceAndTsGlobalClassOrInterfaceMergeEntity = __decorateClass([
|
26811
26901
|
entityToStringDecorator
|
@@ -26882,6 +26972,9 @@ var TsTypeLiteralEntity = class {
|
|
26882
26972
|
getContainingPackage() {
|
26883
26973
|
return this._containingPackage;
|
26884
26974
|
}
|
26975
|
+
getContext() {
|
26976
|
+
return this._tsctx.createTypeEntityContext(this);
|
26977
|
+
}
|
26885
26978
|
};
|
26886
26979
|
TsTypeLiteralEntity = __decorateClass([
|
26887
26980
|
entityToStringDecorator
|
@@ -26975,6 +27068,9 @@ var TsNamedTypeLiteralEntity = class {
|
|
26975
27068
|
getSubstitutionApplicationMode() {
|
26976
27069
|
return 0 /* SubstituteOwnSubstitutions */;
|
26977
27070
|
}
|
27071
|
+
getContext() {
|
27072
|
+
return this._tsctx.createTypeEntityContext(this);
|
27073
|
+
}
|
26978
27074
|
};
|
26979
27075
|
TsNamedTypeLiteralEntity = __decorateClass([
|
26980
27076
|
entityToStringDecorator
|
@@ -27055,6 +27151,9 @@ var SourceAndTsNamedTypeLiteralMergeEntity = class {
|
|
27055
27151
|
getSubstitutionApplicationMode() {
|
27056
27152
|
return this._sourceData.getSubstitutionApplicationMode();
|
27057
27153
|
}
|
27154
|
+
getContext() {
|
27155
|
+
return this._tsctx.createTypeEntityContext(this);
|
27156
|
+
}
|
27058
27157
|
};
|
27059
27158
|
SourceAndTsNamedTypeLiteralMergeEntity = __decorateClass([
|
27060
27159
|
entityToStringDecorator
|
@@ -27659,6 +27758,9 @@ var TsTypeParameterEntity = class {
|
|
27659
27758
|
getTags() {
|
27660
27759
|
return [];
|
27661
27760
|
}
|
27761
|
+
getContext() {
|
27762
|
+
return this._tsctx.createTypeEntityContext(this);
|
27763
|
+
}
|
27662
27764
|
getDeclaration() {
|
27663
27765
|
return this._symbol.declarations?.find(ts2.isTypeParameterDeclaration);
|
27664
27766
|
}
|
@@ -27877,6 +27979,9 @@ var TsEnumEntity = class {
|
|
27877
27979
|
getBaseObjectType() {
|
27878
27980
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._tsctx.analyzer.getImplicitBaseTypeForVariantType()));
|
27879
27981
|
}
|
27982
|
+
getContext() {
|
27983
|
+
return this._tsctx.createTypeEntityContext(this);
|
27984
|
+
}
|
27880
27985
|
};
|
27881
27986
|
TsEnumEntity = __decorateClass([
|
27882
27987
|
entityToStringDecorator
|
@@ -27996,6 +28101,9 @@ var TsTypeAliasEntity = class {
|
|
27996
28101
|
getSubstitutionApplicationMode() {
|
27997
28102
|
return 0 /* SubstituteOwnSubstitutions */;
|
27998
28103
|
}
|
28104
|
+
getContext() {
|
28105
|
+
return this._tsctx.createTypeEntityContext(this);
|
28106
|
+
}
|
27999
28107
|
getDeclaration() {
|
28000
28108
|
return this._symbol.declarations?.find(ts2.isTypeAliasDeclaration);
|
28001
28109
|
}
|
@@ -28065,6 +28173,9 @@ var TsAnonymousFunctionTypeEntity = class {
|
|
28065
28173
|
getBaseObjectType() {
|
28066
28174
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._tsctx.analyzer.getImplicitBaseTypeForFunctionType()));
|
28067
28175
|
}
|
28176
|
+
getContext() {
|
28177
|
+
return this._tsctx.createTypeEntityContext(this);
|
28178
|
+
}
|
28068
28179
|
};
|
28069
28180
|
TsAnonymousFunctionTypeEntity = __decorateClass([
|
28070
28181
|
entityToStringDecorator
|
@@ -28148,6 +28259,9 @@ var TsNamedFunctionTypeEntity = class {
|
|
28148
28259
|
getBaseObjectType() {
|
28149
28260
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._tsctx.analyzer.getImplicitBaseTypeForFunctionType()));
|
28150
28261
|
}
|
28262
|
+
getContext() {
|
28263
|
+
return this._tsctx.createTypeEntityContext(this);
|
28264
|
+
}
|
28151
28265
|
};
|
28152
28266
|
TsNamedFunctionTypeEntity = __decorateClass([
|
28153
28267
|
entityToStringDecorator
|
@@ -28617,7 +28731,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28617
28731
|
modifier
|
28618
28732
|
));
|
28619
28733
|
} else if ((flags & 64 /* Abstract */) !== 0) {
|
28620
|
-
this.
|
28734
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28621
28735
|
modifier,
|
28622
28736
|
this.findModifier(64 /* Abstract */)
|
28623
28737
|
);
|
@@ -28635,7 +28749,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28635
28749
|
modifier
|
28636
28750
|
));
|
28637
28751
|
} else if ((flags & 128 /* Basic */) !== 0) {
|
28638
|
-
this.
|
28752
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28639
28753
|
modifier,
|
28640
28754
|
this.findModifier(128 /* Basic */)
|
28641
28755
|
);
|
@@ -28648,7 +28762,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28648
28762
|
if ((flags & flag) !== 0) {
|
28649
28763
|
this.reportDuplicateModifier(modifier, flag, parentGroupFlags);
|
28650
28764
|
} else if (declarationKind === 2 /* MemberGroupDeclaration */ && (flags & 512 /* Async */) !== 0) {
|
28651
|
-
this.
|
28765
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28652
28766
|
modifier,
|
28653
28767
|
this.findModifier(512 /* Async */)
|
28654
28768
|
);
|
@@ -28663,7 +28777,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28663
28777
|
if ((flags & flag) !== 0) {
|
28664
28778
|
this.reportDuplicateModifier(modifier, flag, parentGroupFlags);
|
28665
28779
|
} else if (declarationKind === 2 /* MemberGroupDeclaration */ && (flags & 1024 /* Const */) !== 0) {
|
28666
|
-
this.
|
28780
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28667
28781
|
modifier,
|
28668
28782
|
this.findModifier(1024 /* Const */)
|
28669
28783
|
);
|
@@ -28691,7 +28805,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28691
28805
|
presentNotAllowedFlags,
|
28692
28806
|
(f) => {
|
28693
28807
|
const modifier = this.findModifier(f);
|
28694
|
-
this.
|
28808
|
+
this.reportDeclarationCannotBePlacedInGroupWithModifier(nodeForDiagnostic, modifier);
|
28695
28809
|
}
|
28696
28810
|
);
|
28697
28811
|
}
|
@@ -28701,7 +28815,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28701
28815
|
if (firstModifier !== void 0 || parentGroupFlags !== 0 /* None */) {
|
28702
28816
|
const nodeForDiagnostic = firstModifier ?? node.creationKeyword;
|
28703
28817
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
28704
|
-
324 /*
|
28818
|
+
324 /* PackageConstructorDeclarationCannotHaveModifiers */,
|
28705
28819
|
nodeForDiagnostic
|
28706
28820
|
));
|
28707
28821
|
}
|
@@ -28711,7 +28825,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28711
28825
|
if (firstModifier !== void 0 || parentGroupFlags !== 0 /* None */) {
|
28712
28826
|
const nodeForDiagnostic = firstModifier ?? node.runKeyword;
|
28713
28827
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
28714
|
-
325 /*
|
28828
|
+
325 /* PackageEntryPointDeclarationCannotHaveModifiers */,
|
28715
28829
|
nodeForDiagnostic
|
28716
28830
|
));
|
28717
28831
|
}
|
@@ -28721,7 +28835,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28721
28835
|
if (firstModifier !== void 0 || parentGroupFlags !== 0 /* None */) {
|
28722
28836
|
const nodeForDiagnostic = firstModifier ?? node.translationsKeyword;
|
28723
28837
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
28724
|
-
326 /*
|
28838
|
+
326 /* TranslationsCannotHaveModifiers */,
|
28725
28839
|
nodeForDiagnostic
|
28726
28840
|
));
|
28727
28841
|
}
|
@@ -28852,16 +28966,16 @@ var ModifierValidator = class _ModifierValidator {
|
|
28852
28966
|
this.reportDuplicateHiddenModifier(modifier, parentGroupFlags);
|
28853
28967
|
} else if (typeMemberDeclarationKind === 142 /* VariantDeclaration */) {
|
28854
28968
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
28855
|
-
331 /*
|
28969
|
+
331 /* VariantDeclarationCannotHaveHiddenModifier */,
|
28856
28970
|
modifier
|
28857
28971
|
));
|
28858
28972
|
} else if ((flag & 3 /* HiddenInTypeOrWithoutLevel */) !== 0 && (flags & 64 /* Abstract */) !== 0) {
|
28859
|
-
this.
|
28973
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28860
28974
|
modifier,
|
28861
28975
|
this.findModifier(64 /* Abstract */)
|
28862
28976
|
);
|
28863
28977
|
} else if ((flag & 3 /* HiddenInTypeOrWithoutLevel */) !== 0 && (flags & 128 /* Basic */) !== 0) {
|
28864
|
-
this.
|
28978
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28865
28979
|
modifier,
|
28866
28980
|
this.findModifier(128 /* Basic */)
|
28867
28981
|
);
|
@@ -28881,17 +28995,17 @@ var ModifierValidator = class _ModifierValidator {
|
|
28881
28995
|
} else if (!this.typeMemberAllowsAbstractModifier(typeMemberDeclarationKind)) {
|
28882
28996
|
this.reportModifierIsNotAllowedHere(modifier);
|
28883
28997
|
} else if ((flags & 3 /* HiddenInTypeOrWithoutLevel */) !== 0) {
|
28884
|
-
this.
|
28998
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28885
28999
|
modifier,
|
28886
29000
|
this.findModifier(3 /* HiddenInTypeOrWithoutLevel */)
|
28887
29001
|
);
|
28888
29002
|
} else if ((flags & 32 /* Static */) !== 0) {
|
28889
|
-
this.
|
29003
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28890
29004
|
modifier,
|
28891
29005
|
this.findModifier(32 /* Static */)
|
28892
29006
|
);
|
28893
29007
|
} else if ((flags & 128 /* Basic */) !== 0) {
|
28894
|
-
this.
|
29008
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28895
29009
|
modifier,
|
28896
29010
|
this.findModifier(128 /* Basic */)
|
28897
29011
|
);
|
@@ -28912,26 +29026,26 @@ var ModifierValidator = class _ModifierValidator {
|
|
28912
29026
|
this.reportModifierIsNotAllowedHere(modifier);
|
28913
29027
|
} else if (typeMemberDeclarationKind === 52 /* FieldDeclaration */ && declarationWithMembersKind === 2 /* AspectType */) {
|
28914
29028
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
28915
|
-
335 /*
|
29029
|
+
335 /* BasicModifierCannotBeAppliedToAspectTypeFields */,
|
28916
29030
|
modifier
|
28917
29031
|
));
|
28918
29032
|
} else if (declarationWithMembersKind === 0 /* ObjectType */ && !(isTypeMarkedAbstract || isTypeMarkedBasic)) {
|
28919
29033
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
28920
|
-
334 /*
|
29034
|
+
334 /* NotBasicObjectTypesCannotHaveBasicMembers */,
|
28921
29035
|
modifier
|
28922
29036
|
));
|
28923
29037
|
} else if ((flags & 3 /* HiddenInTypeOrWithoutLevel */) !== 0) {
|
28924
|
-
this.
|
29038
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28925
29039
|
modifier,
|
28926
29040
|
this.findModifier(3 /* HiddenInTypeOrWithoutLevel */)
|
28927
29041
|
);
|
28928
29042
|
} else if ((flags & 64 /* Abstract */) !== 0) {
|
28929
|
-
this.
|
29043
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28930
29044
|
modifier,
|
28931
29045
|
this.findModifier(64 /* Abstract */)
|
28932
29046
|
);
|
28933
29047
|
} else if ((flags & 32 /* Static */) !== 0) {
|
28934
|
-
this.
|
29048
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28935
29049
|
modifier,
|
28936
29050
|
this.findModifier(32 /* Static */)
|
28937
29051
|
);
|
@@ -28951,7 +29065,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28951
29065
|
} else if (!this.typeMemberAllowsOverrideModifier(typeMemberDeclarationKind)) {
|
28952
29066
|
this.reportModifierIsNotAllowedHere(modifier);
|
28953
29067
|
} else if ((flags & 32 /* Static */) !== 0) {
|
28954
|
-
this.
|
29068
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28955
29069
|
modifier,
|
28956
29070
|
this.findModifier(32 /* Static */)
|
28957
29071
|
);
|
@@ -28966,17 +29080,17 @@ var ModifierValidator = class _ModifierValidator {
|
|
28966
29080
|
} else if (!this.typeMemberAllowsStaticModifier(typeMemberDeclarationKind)) {
|
28967
29081
|
this.reportModifierIsNotAllowedHere(modifier);
|
28968
29082
|
} else if ((flags & 64 /* Abstract */) !== 0) {
|
28969
|
-
this.
|
29083
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28970
29084
|
modifier,
|
28971
29085
|
this.findModifier(64 /* Abstract */)
|
28972
29086
|
);
|
28973
29087
|
} else if ((flags & 128 /* Basic */) !== 0) {
|
28974
|
-
this.
|
29088
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28975
29089
|
modifier,
|
28976
29090
|
this.findModifier(128 /* Basic */)
|
28977
29091
|
);
|
28978
29092
|
} else if ((flags & 256 /* Override */) !== 0) {
|
28979
|
-
this.
|
29093
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28980
29094
|
modifier,
|
28981
29095
|
this.findModifier(256 /* Override */)
|
28982
29096
|
);
|
@@ -28989,7 +29103,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
28989
29103
|
if ((flags & flag) !== 0) {
|
28990
29104
|
this.reportDuplicateModifier(modifier, flag, parentGroupFlags);
|
28991
29105
|
} else if (typeMemberDeclarationKind === 42 /* TypeMemberGroupDeclaration */ && (flags & 512 /* Async */) !== 0) {
|
28992
|
-
this.
|
29106
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
28993
29107
|
modifier,
|
28994
29108
|
this.findModifier(512 /* Async */)
|
28995
29109
|
);
|
@@ -29004,7 +29118,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
29004
29118
|
if ((flags & flag) !== 0) {
|
29005
29119
|
this.reportDuplicateModifier(modifier, flag, parentGroupFlags);
|
29006
29120
|
} else if (typeMemberDeclarationKind === 42 /* TypeMemberGroupDeclaration */ && (flags & 1024 /* Const */) !== 0) {
|
29007
|
-
this.
|
29121
|
+
this.reportModifierCannotBeUsedWithAnotherModifier(
|
29008
29122
|
modifier,
|
29009
29123
|
this.findModifier(1024 /* Const */)
|
29010
29124
|
);
|
@@ -29028,7 +29142,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
29028
29142
|
presentNotAllowedFlags,
|
29029
29143
|
(f) => {
|
29030
29144
|
const modifier = this.findModifier(f);
|
29031
|
-
this.
|
29145
|
+
this.reportDeclarationCannotBePlacedInGroupWithModifier(nodeForDiagnostic, modifier);
|
29032
29146
|
}
|
29033
29147
|
);
|
29034
29148
|
}
|
@@ -29037,7 +29151,7 @@ var ModifierValidator = class _ModifierValidator {
|
|
29037
29151
|
this.validateTypeMemberCanBePlacedInGroupWithModifiers(node.kind, node.name, parentGroupFlags);
|
29038
29152
|
if ((parentGroupFlags & 128 /* Basic */) !== 0 && declarationWithMembersKind === 2 /* AspectType */) {
|
29039
29153
|
const modifier = this.findModifier(128 /* Basic */);
|
29040
|
-
this.
|
29154
|
+
this.reportDeclarationCannotBePlacedInGroupWithModifier(node.name, modifier);
|
29041
29155
|
}
|
29042
29156
|
}
|
29043
29157
|
typeMemberAllowsAbstractModifier(kind) {
|
@@ -29073,16 +29187,16 @@ var ModifierValidator = class _ModifierValidator {
|
|
29073
29187
|
}
|
29074
29188
|
this._diagnostics.addDiagnostic(diagnostic);
|
29075
29189
|
}
|
29076
|
-
|
29190
|
+
reportDeclarationCannotBePlacedInGroupWithModifier(nodeForDiagnostic, modifier) {
|
29077
29191
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
29078
|
-
323 /*
|
29192
|
+
323 /* DeclarationCannotBePlacedInGroupHaving0Modifier */,
|
29079
29193
|
nodeForDiagnostic,
|
29080
29194
|
[this.displayModifierNode(modifier)]
|
29081
29195
|
));
|
29082
29196
|
}
|
29083
|
-
|
29197
|
+
reportModifierCannotBeUsedWithAnotherModifier(firstModifier, secondModifier) {
|
29084
29198
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
29085
|
-
330 /*
|
29199
|
+
330 /* _0ModifierCannotBeUsedWith1Modifier */,
|
29086
29200
|
firstModifier,
|
29087
29201
|
[this.displayModifierNode(firstModifier), this.displayModifierNode(secondModifier)]
|
29088
29202
|
));
|
@@ -31156,6 +31270,14 @@ var TsInteropContext3 = class {
|
|
31156
31270
|
return new TagType(type, constructor.value, /* @__PURE__ */ new Map());
|
31157
31271
|
});
|
31158
31272
|
}
|
31273
|
+
createTypeEntityContext(entity) {
|
31274
|
+
return new EntityContext(
|
31275
|
+
getPackageContainingEntity(entity),
|
31276
|
+
new EntityHidingMatcherWithinTypeEntity(entity),
|
31277
|
+
void 0,
|
31278
|
+
void 0
|
31279
|
+
);
|
31280
|
+
}
|
31159
31281
|
getPackagesCreationResult() {
|
31160
31282
|
return this._packagesCreationResult.getOrInsertWith(() => this.createPackages());
|
31161
31283
|
}
|
@@ -31784,6 +31906,9 @@ var TsPackageEntityForSymbolsWithUnknownOrigin = class {
|
|
31784
31906
|
getLocale() {
|
31785
31907
|
return 0 /* En */;
|
31786
31908
|
}
|
31909
|
+
getDialect() {
|
31910
|
+
return DefaultDialect;
|
31911
|
+
}
|
31787
31912
|
getMembers() {
|
31788
31913
|
return new OriginalPackageMembers([], []);
|
31789
31914
|
}
|
@@ -35902,6 +36027,229 @@ var TargetTypeHint = class {
|
|
35902
36027
|
}
|
35903
36028
|
};
|
35904
36029
|
|
36030
|
+
// source/analysis/TypeMemberImplementationChecker.ts
|
36031
|
+
var TypeMemberImplementationChecker = class {
|
36032
|
+
constructor(_analyzer, _typeEntity) {
|
36033
|
+
this._analyzer = _analyzer;
|
36034
|
+
this._typeEntity = _typeEntity;
|
36035
|
+
}
|
36036
|
+
check() {
|
36037
|
+
const notExplicitlyImplementedAbstractMembers = this._analyzer.getNotExplicitlyImplementedAbstractMembers(this._typeEntity);
|
36038
|
+
if (notExplicitlyImplementedAbstractMembers.length === 0 || this._typeEntity.typeEntityKind === 1 /* Structured */ && (this._typeEntity.isAbstract() || this._typeEntity.isAspect())) {
|
36039
|
+
return new TypeMemberImplementationCheckResult(notExplicitlyImplementedAbstractMembers, [], []);
|
36040
|
+
}
|
36041
|
+
const diagnosticsData = new Array();
|
36042
|
+
const type = this._analyzer.instantiateTypeByIdentitySubstitution(this._typeEntity);
|
36043
|
+
const typeForImplicitImplementationSearch = this._analyzer.typeUtils.getPossiblyAliasedBaseObjectType(type);
|
36044
|
+
const notImplementedAbstractMembers = new Array();
|
36045
|
+
const implicitImplementations = new Array();
|
36046
|
+
const implicitImplementationUtils = new ImplicitImplementationUtils(this._analyzer);
|
36047
|
+
const typeEntityContext = this._typeEntity.getContext();
|
36048
|
+
const displayService = new DisplayService(
|
36049
|
+
this._analyzer,
|
36050
|
+
typeEntityContext.lctxOrLocale,
|
36051
|
+
typeEntityContext.packageDialect
|
36052
|
+
);
|
36053
|
+
for (const notExplicitlyImplementedAbstractMember of notExplicitlyImplementedAbstractMembers) {
|
36054
|
+
let implicitImplementationMember;
|
36055
|
+
let hasReportedImplicitImplementationDiagnostics = false;
|
36056
|
+
if (typeForImplicitImplementationSearch !== void 0) {
|
36057
|
+
const diagnosticCount = diagnosticsData.length;
|
36058
|
+
implicitImplementationMember = implicitImplementationUtils.findImplementationInType(
|
36059
|
+
notExplicitlyImplementedAbstractMember,
|
36060
|
+
typeForImplicitImplementationSearch,
|
36061
|
+
typeEntityContext,
|
36062
|
+
diagnosticsData
|
36063
|
+
);
|
36064
|
+
hasReportedImplicitImplementationDiagnostics = diagnosticsData.length !== diagnosticCount;
|
36065
|
+
}
|
36066
|
+
if (implicitImplementationMember !== void 0) {
|
36067
|
+
implicitImplementations.push(new ImplicitAbstractMemberImplementationInfo(
|
36068
|
+
notExplicitlyImplementedAbstractMember,
|
36069
|
+
implicitImplementationMember
|
36070
|
+
));
|
36071
|
+
} else {
|
36072
|
+
notImplementedAbstractMembers.push(notExplicitlyImplementedAbstractMember);
|
36073
|
+
if (!hasReportedImplicitImplementationDiagnostics) {
|
36074
|
+
const diagnosticData = DiagnosticData.withCode(
|
36075
|
+
348 /* TypeDoesNotImplementMember0 */,
|
36076
|
+
[displayService.displayTypeMember(notExplicitlyImplementedAbstractMember)]
|
36077
|
+
);
|
36078
|
+
diagnosticsData.push(diagnosticData);
|
36079
|
+
}
|
36080
|
+
}
|
36081
|
+
}
|
36082
|
+
return new TypeMemberImplementationCheckResult(
|
36083
|
+
notImplementedAbstractMembers,
|
36084
|
+
implicitImplementations,
|
36085
|
+
diagnosticsData
|
36086
|
+
);
|
36087
|
+
}
|
36088
|
+
};
|
36089
|
+
var TypeMemberImplementationCheckResult = class {
|
36090
|
+
constructor(notImplementedAbstractMembers, implicitImplementations, diagnosticsData) {
|
36091
|
+
this.notImplementedAbstractMembers = notImplementedAbstractMembers;
|
36092
|
+
this.implicitImplementations = implicitImplementations;
|
36093
|
+
this.diagnosticsData = diagnosticsData;
|
36094
|
+
}
|
36095
|
+
};
|
36096
|
+
var ImplicitAbstractMemberImplementationInfo = class {
|
36097
|
+
constructor(abstractMember, implementingMember) {
|
36098
|
+
this.abstractMember = abstractMember;
|
36099
|
+
this.implementingMember = implementingMember;
|
36100
|
+
}
|
36101
|
+
};
|
36102
|
+
var ImplicitImplementationUtils = class {
|
36103
|
+
constructor(_analyzer) {
|
36104
|
+
this._analyzer = _analyzer;
|
36105
|
+
}
|
36106
|
+
findImplementationInType(member, type, context, diagnosticsData) {
|
36107
|
+
const matchingMembers = this.findMatchingMembersInType(member, type, context);
|
36108
|
+
const matchingRefObjectMember = matchingMembers.find((m) => TypeMemberEntity.isRefObjectTypeMember(m.getEntity()));
|
36109
|
+
if (matchingRefObjectMember === void 0 || TypeMemberEntity.isAbstract(matchingRefObjectMember.getEntity())) {
|
36110
|
+
return void 0;
|
36111
|
+
}
|
36112
|
+
const isValidImplementation = this.checkMatchingMemberCanImplementAbstractMember(
|
36113
|
+
matchingRefObjectMember,
|
36114
|
+
member,
|
36115
|
+
diagnosticsData,
|
36116
|
+
context
|
36117
|
+
);
|
36118
|
+
return isValidImplementation ? matchingRefObjectMember : void 0;
|
36119
|
+
}
|
36120
|
+
findMatchingMembersInType(member, type, context) {
|
36121
|
+
const typeMemberLookup = BoundTypeMemberLookup.ofType(
|
36122
|
+
this._analyzer,
|
36123
|
+
type,
|
36124
|
+
context.localizationContext,
|
36125
|
+
1 /* OnlyInstanceMembers */,
|
36126
|
+
context.hidingMatcher,
|
36127
|
+
context.typeExtensionLookup
|
36128
|
+
);
|
36129
|
+
switch (member.kind) {
|
36130
|
+
case "field":
|
36131
|
+
return typeMemberLookup.getNamedMembersByName(SearchName.fromName(member.getName())).filter((m) => m.value.kind === "field").map((m) => m.value);
|
36132
|
+
case "method":
|
36133
|
+
return typeMemberLookup.getNamedMembersByName(SearchName.fromName(member.getName())).filter((m) => m.value.kind === "method" && this.areMatchingMethods(member, m.value)).map((m) => m.value);
|
36134
|
+
case "operator":
|
36135
|
+
return typeMemberLookup.getOperatorsByKind(member.getOperatorKind()).filter((m) => this.areMatchingTypeMembersWithoutTypeParameters(member, m.value)).map((m) => m.value);
|
36136
|
+
case "indexer":
|
36137
|
+
return typeMemberLookup.getIndexers().filter((m) => this.areMatchingTypeMembersWithoutTypeParameters(member, m.value)).map((m) => m.value);
|
36138
|
+
case "dereference-operator":
|
36139
|
+
return typeMemberLookup.getDereferenceOperators().map((m) => m.value);
|
36140
|
+
case "constructor":
|
36141
|
+
case "destructor":
|
36142
|
+
return [];
|
36143
|
+
default:
|
36144
|
+
Debug.never(member);
|
36145
|
+
}
|
36146
|
+
}
|
36147
|
+
checkMatchingMemberCanImplementAbstractMember(matchingMember, abstractMember, diagnosticsData, context) {
|
36148
|
+
const displayService = new DisplayService(
|
36149
|
+
this._analyzer,
|
36150
|
+
context.lctxOrLocale,
|
36151
|
+
context.containingPackage.getDialect()
|
36152
|
+
);
|
36153
|
+
const matchingMemberType = this._analyzer.overriddenMember.getMemberTypeOrReturnType(matchingMember);
|
36154
|
+
const abstractMemberType = this._analyzer.overriddenMember.getMemberTypeOrReturnType(abstractMember);
|
36155
|
+
if (!matchingMemberType.equals(abstractMemberType)) {
|
36156
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36157
|
+
349 /* TypeDoesNotImplementMember0ImplicitImplementationTypeMismatch1 */,
|
36158
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36159
|
+
));
|
36160
|
+
return false;
|
36161
|
+
}
|
36162
|
+
if (matchingMember.kind === "method" && abstractMember.kind === "method") {
|
36163
|
+
if (matchingMember.isAsync() !== abstractMember.isAsync()) {
|
36164
|
+
const code = matchingMember.isAsync() ? 350 /* TypeDoesNotImplementMember0ImplicitImplementation1IsAsync */ : 351 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotAsync */;
|
36165
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36166
|
+
code,
|
36167
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36168
|
+
));
|
36169
|
+
return false;
|
36170
|
+
}
|
36171
|
+
}
|
36172
|
+
if (matchingMember.kind === "field" && abstractMember.kind === "field") {
|
36173
|
+
const matchingMemberEntity = matchingMember.getEntity();
|
36174
|
+
const matchingMemberSetter = matchingMemberEntity.getSetter();
|
36175
|
+
const isMatchingMemberWriteable = isComputedVariableEntity(matchingMemberEntity) ? matchingMemberSetter !== void 0 : !matchingMemberEntity.isConstant();
|
36176
|
+
const abstractMemberEntity = abstractMember.getEntity();
|
36177
|
+
const abstractMemberSetter = abstractMemberEntity.getSetter();
|
36178
|
+
const isAbstractMemberWriteable = isComputedVariableEntity(abstractMemberEntity) ? abstractMemberSetter !== void 0 : !abstractMemberEntity.isConstant();
|
36179
|
+
if (isAbstractMemberWriteable && !isMatchingMemberWriteable) {
|
36180
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36181
|
+
352 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotWriteable */,
|
36182
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36183
|
+
));
|
36184
|
+
return false;
|
36185
|
+
} else if (isAbstractMemberWriteable && isComputedVariableEntity(matchingMemberEntity) && matchingMemberSetter !== void 0) {
|
36186
|
+
const matchingMemberSetterHiding = matchingMemberSetter.isHidden();
|
36187
|
+
if (matchingMemberSetterHiding !== void 0 && !context.hidingMatcher.matches(matchingMemberSetterHiding)) {
|
36188
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36189
|
+
353 /* TypeDoesNotImplementMember0ImplicitImplementation1WriteFunctionIsHidden */,
|
36190
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36191
|
+
));
|
36192
|
+
return false;
|
36193
|
+
}
|
36194
|
+
}
|
36195
|
+
}
|
36196
|
+
if (matchingMember.kind === "indexer" && abstractMember.kind === "indexer") {
|
36197
|
+
const matchingMemberSetter = matchingMember.getEntity().getSetter();
|
36198
|
+
const abstractMemberSetter = abstractMember.getEntity().getSetter();
|
36199
|
+
if (abstractMemberSetter !== void 0 && matchingMemberSetter === void 0) {
|
36200
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36201
|
+
352 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotWriteable */,
|
36202
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36203
|
+
));
|
36204
|
+
return false;
|
36205
|
+
} else if (abstractMemberSetter !== void 0 && matchingMemberSetter !== void 0) {
|
36206
|
+
const matchingMemberSetterHiding = matchingMemberSetter.isHidden();
|
36207
|
+
if (matchingMemberSetterHiding !== void 0 && !context.hidingMatcher.matches(matchingMemberSetterHiding)) {
|
36208
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36209
|
+
353 /* TypeDoesNotImplementMember0ImplicitImplementation1WriteFunctionIsHidden */,
|
36210
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36211
|
+
));
|
36212
|
+
return false;
|
36213
|
+
}
|
36214
|
+
}
|
36215
|
+
}
|
36216
|
+
if (matchingMember.kind === "dereference-operator" && abstractMember.kind === "dereference-operator") {
|
36217
|
+
const matchingMemberSetter = matchingMember.getEntity().getSetter();
|
36218
|
+
const abstractMemberSetter = abstractMember.getEntity().getSetter();
|
36219
|
+
if (abstractMemberSetter !== void 0 && matchingMemberSetter === void 0) {
|
36220
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36221
|
+
352 /* TypeDoesNotImplementMember0ImplicitImplementation1IsNotWriteable */,
|
36222
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36223
|
+
));
|
36224
|
+
return false;
|
36225
|
+
} else if (abstractMemberSetter !== void 0 && matchingMemberSetter !== void 0) {
|
36226
|
+
const matchingMemberSetterHiding = matchingMemberSetter.isHidden();
|
36227
|
+
if (matchingMemberSetterHiding !== void 0 && !context.hidingMatcher.matches(matchingMemberSetterHiding)) {
|
36228
|
+
diagnosticsData.push(DiagnosticData.withCode(
|
36229
|
+
353 /* TypeDoesNotImplementMember0ImplicitImplementation1WriteFunctionIsHidden */,
|
36230
|
+
[displayService.displayTypeMember(abstractMember), displayService.displayTypeMember(matchingMember)]
|
36231
|
+
));
|
36232
|
+
return false;
|
36233
|
+
}
|
36234
|
+
}
|
36235
|
+
}
|
36236
|
+
return true;
|
36237
|
+
}
|
36238
|
+
areMatchingMethods(method1, method2) {
|
36239
|
+
const method1Parameters = method1.getValueParameters();
|
36240
|
+
const method2Parameters = method2.getValueParameters();
|
36241
|
+
return method1Parameters.length === method2Parameters.length && Query.from(method1Parameters).zip(method2Parameters, (p1, p2) => p1.getType().equals(p2.getType())).all((v) => v);
|
36242
|
+
}
|
36243
|
+
areMatchingTypeMembersWithoutTypeParameters(member1, member2) {
|
36244
|
+
if (member1.kind !== member2.kind) {
|
36245
|
+
return false;
|
36246
|
+
}
|
36247
|
+
const member1Parameters = member1.getValueParameters();
|
36248
|
+
const member2Parameters = member2.getValueParameters();
|
36249
|
+
return member1Parameters.length === member2Parameters.length && Query.from(member1Parameters).zip(member2Parameters, (p1, p2) => p1.getType().equals(p2.getType())).all((v) => v);
|
36250
|
+
}
|
36251
|
+
};
|
36252
|
+
|
35905
36253
|
// source/analysis/Visitor.ts
|
35906
36254
|
function visitChildren(node, visitChildCb) {
|
35907
36255
|
for (const child of node.children) {
|
@@ -37620,10 +37968,11 @@ var NamedDeclaration_packageNameSegment = class {
|
|
37620
37968
|
};
|
37621
37969
|
|
37622
37970
|
// source/analysis/semantic-context/SemanticContextBasedEntityHidingMatcher.ts
|
37623
|
-
var SemanticContextBasedEntityHidingMatcher = class {
|
37971
|
+
var SemanticContextBasedEntityHidingMatcher = class extends BaseEntityHidingMatcher {
|
37624
37972
|
constructor(semanticContext) {
|
37973
|
+
super();
|
37625
37974
|
this._sourceFile = new Cached();
|
37626
|
-
this.
|
37975
|
+
this._typeEntity = new Cached();
|
37627
37976
|
this._package = new Cached();
|
37628
37977
|
this._semanticContext = semanticContext;
|
37629
37978
|
}
|
@@ -37633,76 +37982,12 @@ var SemanticContextBasedEntityHidingMatcher = class {
|
|
37633
37982
|
get package() {
|
37634
37983
|
return this._package.getOrInsertWith(() => this._semanticContext.getContainingPackage());
|
37635
37984
|
}
|
37636
|
-
get
|
37637
|
-
return this.
|
37985
|
+
get typeEntity() {
|
37986
|
+
return this._typeEntity.getOrInsertWith(() => {
|
37638
37987
|
const typeOrExtension = this._semanticContext.getContainingTypeOrTypeExtension();
|
37639
37988
|
return typeOrExtension?.kind === "type" ? typeOrExtension.value : void 0;
|
37640
37989
|
});
|
37641
37990
|
}
|
37642
|
-
matches(hiding) {
|
37643
|
-
switch (hiding.kind) {
|
37644
|
-
case "type":
|
37645
|
-
return this.type === hiding.typeEntity;
|
37646
|
-
case "type-hierarchy": {
|
37647
|
-
if (this.type === void 0) {
|
37648
|
-
return false;
|
37649
|
-
}
|
37650
|
-
if (this.type === hiding.baseTypeEntity) {
|
37651
|
-
return true;
|
37652
|
-
}
|
37653
|
-
const baseTypes = this.collectBaseTypesRecursively(this.type);
|
37654
|
-
return baseTypes.has(hiding.baseTypeEntity);
|
37655
|
-
}
|
37656
|
-
case "file":
|
37657
|
-
return this.sourceFile === hiding.sourceFile;
|
37658
|
-
case "package":
|
37659
|
-
return this.package === hiding.packageEntity;
|
37660
|
-
default:
|
37661
|
-
Debug.never(hiding);
|
37662
|
-
}
|
37663
|
-
}
|
37664
|
-
collectBaseTypesRecursively(entity, result) {
|
37665
|
-
result ??= /* @__PURE__ */ new Set();
|
37666
|
-
switch (entity.typeEntityKind) {
|
37667
|
-
case 1 /* Structured */: {
|
37668
|
-
const baseObjectType = unaliasType(entity.getBaseObjectType().cycleFree)?.getEntity();
|
37669
|
-
if (baseObjectType !== void 0 && !result.has(baseObjectType)) {
|
37670
|
-
result.add(baseObjectType);
|
37671
|
-
this.collectBaseTypesRecursively(baseObjectType, result);
|
37672
|
-
}
|
37673
|
-
for (const baseAspectType of entity.getBaseAspectTypes().cycleFree) {
|
37674
|
-
const aspectTypeEntity = unaliasType(baseAspectType).getEntity();
|
37675
|
-
if (aspectTypeEntity !== void 0 && !result.has(aspectTypeEntity)) {
|
37676
|
-
result.add(aspectTypeEntity);
|
37677
|
-
this.collectBaseTypesRecursively(aspectTypeEntity, result);
|
37678
|
-
}
|
37679
|
-
}
|
37680
|
-
break;
|
37681
|
-
}
|
37682
|
-
case 3 /* Variant */: {
|
37683
|
-
const baseObjectType = unaliasType(entity.getBaseObjectType().cycleFree)?.getEntity();
|
37684
|
-
if (baseObjectType !== void 0 && !result.has(baseObjectType)) {
|
37685
|
-
result.add(baseObjectType);
|
37686
|
-
this.collectBaseTypesRecursively(baseObjectType, result);
|
37687
|
-
}
|
37688
|
-
break;
|
37689
|
-
}
|
37690
|
-
case 0 /* Function */: {
|
37691
|
-
const baseObjectType = unaliasType(entity.getBaseObjectType().cycleFree)?.getEntity();
|
37692
|
-
if (baseObjectType !== void 0 && !result.has(baseObjectType)) {
|
37693
|
-
result.add(baseObjectType);
|
37694
|
-
this.collectBaseTypesRecursively(baseObjectType, result);
|
37695
|
-
}
|
37696
|
-
break;
|
37697
|
-
}
|
37698
|
-
case 2 /* Parameter */:
|
37699
|
-
case 4 /* Alias */:
|
37700
|
-
break;
|
37701
|
-
default:
|
37702
|
-
Debug.never(entity);
|
37703
|
-
}
|
37704
|
-
return result;
|
37705
|
-
}
|
37706
37991
|
};
|
37707
37992
|
|
37708
37993
|
// source/analysis/semantic-context/SemanticContextBase.ts
|
@@ -39962,7 +40247,8 @@ var Analyzer = class _Analyzer {
|
|
39962
40247
|
this._diagnosticsComputedLazily = new Array();
|
39963
40248
|
this._diagnosticsComputedLazilyAcceptor = new Cached();
|
39964
40249
|
this._sourcePackageMemberConflictsDiagnostics = /* @__PURE__ */ new Map();
|
39965
|
-
this.
|
40250
|
+
this._notExplicitlyImplementedAbstractTypeMembers = /* @__PURE__ */ new Map();
|
40251
|
+
this._typeMemberImplementationCheckResults = /* @__PURE__ */ new Map();
|
39966
40252
|
this.compilation = compilation;
|
39967
40253
|
this._tsInteropInputs = tsInteropInputs;
|
39968
40254
|
this.standardTypes = new StandardTypes(this);
|
@@ -40897,6 +41183,7 @@ var Analyzer = class _Analyzer {
|
|
40897
41183
|
isAsync,
|
40898
41184
|
0 /* SubstituteOwnSubstitutions */,
|
40899
41185
|
containingPackage,
|
41186
|
+
void 0,
|
40900
41187
|
void 0
|
40901
41188
|
);
|
40902
41189
|
const typeEntity = unfinishedTypeEntity.finish(typeParameters, valueParameters);
|
@@ -41007,25 +41294,25 @@ var Analyzer = class _Analyzer {
|
|
41007
41294
|
}
|
41008
41295
|
return new OriginalPackageMembers(namedMembers.toArray(), typeExtensions.toArray());
|
41009
41296
|
}
|
41010
|
-
instantiateType(entity,
|
41011
|
-
|
41297
|
+
instantiateType(entity, typeArgumentsOrSubstitutions) {
|
41298
|
+
typeArgumentsOrSubstitutions ??= [];
|
41012
41299
|
switch (entity.typeEntityKind) {
|
41013
41300
|
case 3 /* Variant */: {
|
41014
|
-
const substitutions = new Substitutions(this, entity.getTypeParameters(),
|
41301
|
+
const substitutions = typeArgumentsOrSubstitutions instanceof Array ? new Substitutions(this, entity.getTypeParameters(), typeArgumentsOrSubstitutions) : typeArgumentsOrSubstitutions;
|
41015
41302
|
return this.typeFactory.getVariantType(entity, substitutions);
|
41016
41303
|
}
|
41017
41304
|
case 2 /* Parameter */:
|
41018
41305
|
return this.typeFactory.getParameterType(entity, false);
|
41019
41306
|
case 0 /* Function */: {
|
41020
|
-
const substitutions = new Substitutions(this, entity.getTypeParameters(),
|
41307
|
+
const substitutions = typeArgumentsOrSubstitutions instanceof Array ? new Substitutions(this, entity.getTypeParameters(), typeArgumentsOrSubstitutions) : typeArgumentsOrSubstitutions;
|
41021
41308
|
return this.typeFactory.getFunctionType(entity, substitutions);
|
41022
41309
|
}
|
41023
41310
|
case 1 /* Structured */: {
|
41024
|
-
const substitutions = new Substitutions(this, entity.getTypeParameters(),
|
41311
|
+
const substitutions = typeArgumentsOrSubstitutions instanceof Array ? new Substitutions(this, entity.getTypeParameters(), typeArgumentsOrSubstitutions) : typeArgumentsOrSubstitutions;
|
41025
41312
|
return this.typeFactory.getStructuredType(entity, substitutions);
|
41026
41313
|
}
|
41027
41314
|
case 4 /* Alias */: {
|
41028
|
-
const substitutions = new Substitutions(this, entity.getTypeParameters(),
|
41315
|
+
const substitutions = typeArgumentsOrSubstitutions instanceof Array ? new Substitutions(this, entity.getTypeParameters(), typeArgumentsOrSubstitutions) : typeArgumentsOrSubstitutions;
|
41029
41316
|
return this.typeFactory.getAliasType(entity, substitutions);
|
41030
41317
|
}
|
41031
41318
|
default:
|
@@ -41051,6 +41338,19 @@ var Analyzer = class _Analyzer {
|
|
41051
41338
|
Debug.never(entity);
|
41052
41339
|
}
|
41053
41340
|
}
|
41341
|
+
instantiateTypeMemberByIdentitySubstitution(entity) {
|
41342
|
+
const container = entity.getContainer();
|
41343
|
+
let substitutions;
|
41344
|
+
if (container.kind === "type") {
|
41345
|
+
substitutions = Substitutions.identity(this, container.typeEntity.getTypeParameters());
|
41346
|
+
} else if (container.kind === "type-extension") {
|
41347
|
+
const extendedTypeTypeParameters = container.typeExtension.getExtendedTypeEntity()?.getTypeParameters() ?? [];
|
41348
|
+
substitutions = Substitutions.identity(this, extendedTypeTypeParameters);
|
41349
|
+
} else {
|
41350
|
+
Debug.never(container);
|
41351
|
+
}
|
41352
|
+
return TypeMemberEntity.instantiate(this, entity, substitutions);
|
41353
|
+
}
|
41054
41354
|
createPackageMemberHiding(node, modifierFlags) {
|
41055
41355
|
if ((modifierFlags & (1 /* HiddenWithoutLevel */ | 8 /* HiddenInFile */)) !== 0) {
|
41056
41356
|
return new EntityHidingLevel_file(TreeQuery.fromNode(node).projectSourceFile(this));
|
@@ -41499,8 +41799,8 @@ var Analyzer = class _Analyzer {
|
|
41499
41799
|
}
|
41500
41800
|
return result;
|
41501
41801
|
}
|
41502
|
-
|
41503
|
-
let result = this.
|
41802
|
+
getNotExplicitlyImplementedAbstractMembers(typeEntity) {
|
41803
|
+
let result = this._notExplicitlyImplementedAbstractTypeMembers.get(typeEntity);
|
41504
41804
|
if (result === void 0) {
|
41505
41805
|
const type = this.instantiateTypeByIdentitySubstitution(typeEntity);
|
41506
41806
|
const abstractMembers = new Array();
|
@@ -41526,7 +41826,7 @@ var Analyzer = class _Analyzer {
|
|
41526
41826
|
if (baseTypeEntity.typeEntityKind === 1 /* Structured */ && baseTypeEntity.isRefObject() && !baseTypeEntity.isAbstract()) {
|
41527
41827
|
continue;
|
41528
41828
|
}
|
41529
|
-
const notImplementedAbstractBaseTypeMembers = this.
|
41829
|
+
const notImplementedAbstractBaseTypeMembers = this.getTypeMemberImplementationCheckResult(baseTypeEntity).notImplementedAbstractMembers;
|
41530
41830
|
for (const baseTypeMember of notImplementedAbstractBaseTypeMembers) {
|
41531
41831
|
const substitutedBaseTypeMember = baseTypeMember.applySubstitutions(baseType.getSubstitutions());
|
41532
41832
|
if (!overriddenMembers.some((m) => m.equals(substitutedBaseTypeMember))) {
|
@@ -41535,10 +41835,51 @@ var Analyzer = class _Analyzer {
|
|
41535
41835
|
}
|
41536
41836
|
}
|
41537
41837
|
result = abstractMembers;
|
41538
|
-
this.
|
41838
|
+
this._notExplicitlyImplementedAbstractTypeMembers.set(typeEntity, result);
|
41839
|
+
}
|
41840
|
+
return result;
|
41841
|
+
}
|
41842
|
+
getTypeMemberImplementationCheckResult(typeEntity) {
|
41843
|
+
let result = this._typeMemberImplementationCheckResults.get(typeEntity);
|
41844
|
+
if (result === void 0) {
|
41845
|
+
const checker = new TypeMemberImplementationChecker(this, typeEntity);
|
41846
|
+
result = checker.check();
|
41847
|
+
this._typeMemberImplementationCheckResults.set(typeEntity, result);
|
41539
41848
|
}
|
41540
41849
|
return result;
|
41541
41850
|
}
|
41851
|
+
createEntityContextForTypeDeclaration(node) {
|
41852
|
+
let semanticContext;
|
41853
|
+
switch (node.kind) {
|
41854
|
+
case 17 /* AnonymousFunctionTypeDeclaration */:
|
41855
|
+
case 18 /* AnonymousStructuredTypeDeclaration */:
|
41856
|
+
case 19 /* AnonymousVariantTypeDeclaration */:
|
41857
|
+
case 20 /* PackageAliasTypeDeclaration */:
|
41858
|
+
case 26 /* PackageFunctionTypeDeclaration */:
|
41859
|
+
case 31 /* PackageStructuredTypeDeclaration */:
|
41860
|
+
case 36 /* PackageVariantTypeDeclaration */:
|
41861
|
+
semanticContext = this.semanticContext.outermostSemanticContextOfTypeDeclaration(node);
|
41862
|
+
break;
|
41863
|
+
case 143 /* TypeParameterDeclaration */:
|
41864
|
+
semanticContext = this.semanticContext.containing(node);
|
41865
|
+
break;
|
41866
|
+
default:
|
41867
|
+
Debug.never(node);
|
41868
|
+
}
|
41869
|
+
return EntityContext.fromSemanticContext(semanticContext);
|
41870
|
+
}
|
41871
|
+
isFunctionBlockWithImplicitlyReturnedExpression(node) {
|
41872
|
+
if (node.expressionOrStatementList.kind === 90 /* StatementList */) {
|
41873
|
+
return false;
|
41874
|
+
}
|
41875
|
+
if (node.expressionOrStatementList.kind === 68 /* CallExpression */) {
|
41876
|
+
const returnType = this.semanticContext.ofFunctionBlock(node).getContainingSubprogram()?.getReturnType();
|
41877
|
+
if (returnType === void 0 || returnType.equals(this.standardTypes.none)) {
|
41878
|
+
return false;
|
41879
|
+
}
|
41880
|
+
}
|
41881
|
+
return true;
|
41882
|
+
}
|
41542
41883
|
createTsInterop() {
|
41543
41884
|
const configs = collectRequiredJsLibraryConfigs(this.compilation);
|
41544
41885
|
const implementationByConfig = /* @__PURE__ */ new Map();
|
@@ -42282,7 +42623,10 @@ var Type4 = class {
|
|
42282
42623
|
false,
|
42283
42624
|
1 /* SubstituteOwnSubstitutionsAndMerge */,
|
42284
42625
|
containingPackage,
|
42285
|
-
void 0
|
42626
|
+
void 0,
|
42627
|
+
EntityContext.fromSemanticContext(
|
42628
|
+
this._analyzer.semanticContext.outermostSemanticContextOfRegularOrBlockFunctionLiteral(node)
|
42629
|
+
)
|
42286
42630
|
).finish([], []);
|
42287
42631
|
return this._analyzer.typeFactory.getFunctionType(entity, Substitutions.empty(this._analyzer));
|
42288
42632
|
}
|
@@ -42307,7 +42651,10 @@ var Type4 = class {
|
|
42307
42651
|
isAsync,
|
42308
42652
|
0 /* SubstituteOwnSubstitutions */,
|
42309
42653
|
containingPackage,
|
42310
|
-
void 0
|
42654
|
+
void 0,
|
42655
|
+
EntityContext.fromSemanticContext(
|
42656
|
+
this._analyzer.semanticContext.outermostSemanticContextOfRegularOrBlockFunctionLiteral(node)
|
42657
|
+
)
|
42311
42658
|
);
|
42312
42659
|
for (let i = 0; i < declaredParameters.length; i++) {
|
42313
42660
|
const ownParameter = declaredParameters[i];
|
@@ -42356,7 +42703,10 @@ var Type4 = class {
|
|
42356
42703
|
isAsync,
|
42357
42704
|
0 /* SubstituteOwnSubstitutions */,
|
42358
42705
|
containingPackage,
|
42359
|
-
void 0
|
42706
|
+
void 0,
|
42707
|
+
EntityContext.fromSemanticContext(
|
42708
|
+
this._analyzer.semanticContext.outermostSemanticContextOfRegularOrBlockFunctionLiteral(node)
|
42709
|
+
)
|
42360
42710
|
);
|
42361
42711
|
const parameters = node.parameterClause.parameterList.parameters.map((p) => {
|
42362
42712
|
const name = this._analyzer.createNameFromIdentifier(p.name);
|
@@ -42700,12 +43050,11 @@ var TargetType = class {
|
|
42700
43050
|
}
|
42701
43051
|
getTargetTypeOfChildOfFunctionBlock(parent, child) {
|
42702
43052
|
Debug.assert(child === parent.expressionOrStatementList);
|
42703
|
-
|
42704
|
-
|
42705
|
-
|
42706
|
-
|
43053
|
+
if (this._analyzer.isFunctionBlockWithImplicitlyReturnedExpression(parent)) {
|
43054
|
+
return this._analyzer.semanticContext.ofFunctionBlock(parent).getContainingSubprogram()?.getReturnType();
|
43055
|
+
} else {
|
43056
|
+
return void 0;
|
42707
43057
|
}
|
42708
|
-
return returnType;
|
42709
43058
|
}
|
42710
43059
|
};
|
42711
43060
|
var ReturnType = class {
|
@@ -43683,7 +44032,8 @@ var OverriddenMember = class {
|
|
43683
44032
|
let result = this._overriddenAndShadowedFields.get(node);
|
43684
44033
|
if (result === void 0) {
|
43685
44034
|
const entity = node.kind === 52 /* FieldDeclaration */ ? this._analyzer.entity.ofFieldDeclaration(node) : this._analyzer.entity.ofComputedFieldDeclaration(node);
|
43686
|
-
|
44035
|
+
const typeMember = this._analyzer.instantiateTypeMemberByIdentitySubstitution(entity);
|
44036
|
+
result = this.findOverriddenMembers(typeMember, node, this._isField, this._namedMemberFinder);
|
43687
44037
|
this._overriddenAndShadowedFields.set(node, result);
|
43688
44038
|
}
|
43689
44039
|
return result;
|
@@ -43692,7 +44042,8 @@ var OverriddenMember = class {
|
|
43692
44042
|
let result = this._overriddenAndShadowedMethods.get(node);
|
43693
44043
|
if (result === void 0) {
|
43694
44044
|
const entity = this._analyzer.entity.ofMethodDeclaration(node);
|
43695
|
-
|
44045
|
+
const typeMember = this._analyzer.instantiateTypeMemberByIdentitySubstitution(entity);
|
44046
|
+
result = this.findOverriddenMembers(typeMember, node, this._isMethod, this._namedMemberFinder);
|
43696
44047
|
this._overriddenAndShadowedMethods.set(node, result);
|
43697
44048
|
}
|
43698
44049
|
return result;
|
@@ -43701,7 +44052,8 @@ var OverriddenMember = class {
|
|
43701
44052
|
let result = this._overriddenAndShadowedOperators.get(node);
|
43702
44053
|
if (result === void 0) {
|
43703
44054
|
const entity = this._analyzer.entity.ofOperatorDeclaration(node);
|
43704
|
-
|
44055
|
+
const typeMember = this._analyzer.instantiateTypeMemberByIdentitySubstitution(entity);
|
44056
|
+
result = this.findOverriddenMembers(typeMember, node, this._isOperator, this._operatorFinder);
|
43705
44057
|
this._overriddenAndShadowedOperators.set(node, result);
|
43706
44058
|
}
|
43707
44059
|
return result;
|
@@ -43710,7 +44062,8 @@ var OverriddenMember = class {
|
|
43710
44062
|
let result = this._overriddenAndShadowedIndexers.get(node);
|
43711
44063
|
if (result === void 0) {
|
43712
44064
|
const entity = this._analyzer.entity.ofIndexerDeclaration(node);
|
43713
|
-
|
44065
|
+
const typeMember = this._analyzer.instantiateTypeMemberByIdentitySubstitution(entity);
|
44066
|
+
result = this.findOverriddenMembers(typeMember, node, this._isIndexer, this._indexerFinder);
|
43714
44067
|
this._overriddenAndShadowedIndexers.set(node, result);
|
43715
44068
|
}
|
43716
44069
|
return result;
|
@@ -43719,7 +44072,13 @@ var OverriddenMember = class {
|
|
43719
44072
|
let result = this._overriddenAndShadowedDereferenceOperators.get(node);
|
43720
44073
|
if (result === void 0) {
|
43721
44074
|
const entity = this._analyzer.entity.ofDereferenceOperatorDeclaration(node);
|
43722
|
-
|
44075
|
+
const typeMember = this._analyzer.instantiateTypeMemberByIdentitySubstitution(entity);
|
44076
|
+
result = this.findOverriddenMembers(
|
44077
|
+
typeMember,
|
44078
|
+
node,
|
44079
|
+
this._isDereferenceOperator,
|
44080
|
+
this._dereferenceOperatorFinder
|
44081
|
+
);
|
43723
44082
|
this._overriddenAndShadowedDereferenceOperators.set(node, result);
|
43724
44083
|
}
|
43725
44084
|
return result;
|
@@ -43727,22 +44086,6 @@ var OverriddenMember = class {
|
|
43727
44086
|
entityCanBeOverridden(entity) {
|
43728
44087
|
return TypeMemberEntity.isBasic(entity);
|
43729
44088
|
}
|
43730
|
-
getEntityTypeOrReturnType(entity) {
|
43731
|
-
switch (entity.kind) {
|
43732
|
-
case 0 /* Variable */:
|
43733
|
-
return entity.getType();
|
43734
|
-
case 1 /* Function */:
|
43735
|
-
return entity.getReturnType();
|
43736
|
-
case 5 /* Indexer */:
|
43737
|
-
return entity.getType();
|
43738
|
-
case 6 /* DereferenceOperator */:
|
43739
|
-
return entity.getType();
|
43740
|
-
case 9 /* Operator */:
|
43741
|
-
return entity.getReturnType();
|
43742
|
-
default:
|
43743
|
-
Debug.never(entity);
|
43744
|
-
}
|
43745
|
-
}
|
43746
44089
|
getMemberTypeOrReturnType(member) {
|
43747
44090
|
switch (member.kind) {
|
43748
44091
|
case "field":
|
@@ -43755,16 +44098,48 @@ var OverriddenMember = class {
|
|
43755
44098
|
return member.getType();
|
43756
44099
|
case "dereference-operator":
|
43757
44100
|
return member.getType();
|
44101
|
+
case "constructor":
|
44102
|
+
return member.getConstructedType();
|
44103
|
+
case "destructor":
|
44104
|
+
return this._analyzer.standardTypes.none;
|
44105
|
+
default:
|
44106
|
+
Debug.never(member);
|
44107
|
+
}
|
44108
|
+
}
|
44109
|
+
findMatchingMembersInType(member, type) {
|
44110
|
+
const entityContext = member.getEntity().getContainer().getEntity().getContext();
|
44111
|
+
const typeMemberLookup = BoundTypeMemberLookup.ofType(
|
44112
|
+
this._analyzer,
|
44113
|
+
type,
|
44114
|
+
entityContext.localizationContext,
|
44115
|
+
1 /* OnlyInstanceMembers */,
|
44116
|
+
entityContext.hidingMatcher,
|
44117
|
+
entityContext.typeExtensionLookup
|
44118
|
+
);
|
44119
|
+
switch (member.kind) {
|
44120
|
+
case "field":
|
44121
|
+
case "method":
|
44122
|
+
return this.findOverriddenOrShadowedNamedMembersInType(member, typeMemberLookup);
|
44123
|
+
case "operator":
|
44124
|
+
return this.findOverriddenOrShadowedOperatorsInType(member, typeMemberLookup);
|
44125
|
+
case "indexer":
|
44126
|
+
return this.findOverriddenOrShadowedIndexersInType(member, typeMemberLookup);
|
44127
|
+
case "dereference-operator":
|
44128
|
+
return this.findOverriddenOrShadowedDereferenceOperatorsInType(member, typeMemberLookup);
|
44129
|
+
case "constructor":
|
44130
|
+
case "destructor":
|
44131
|
+
return [];
|
43758
44132
|
default:
|
43759
44133
|
Debug.never(member);
|
43760
44134
|
}
|
43761
44135
|
}
|
43762
|
-
findOverriddenMembers(
|
44136
|
+
findOverriddenMembers(member, contextualNode, isMemberOfCorrectKind, overriddenOrShadowedMemberFinder) {
|
43763
44137
|
const overriddenMembers = new Array();
|
43764
44138
|
const shadowedMembers = new Array();
|
43765
|
-
if (this.entityCanOverrideOrShadow(
|
43766
|
-
|
43767
|
-
|
44139
|
+
if (this.entityCanOverrideOrShadow(member.getEntity())) {
|
44140
|
+
let overridingMemberType;
|
44141
|
+
for (const lookup of this.enumerateTypeMemberLookups(member.getEntity(), contextualNode)) {
|
44142
|
+
const overriddenOrShadowedMembers = overriddenOrShadowedMemberFinder(member, lookup);
|
43768
44143
|
for (const overriddenOrShadowedMember of overriddenOrShadowedMembers) {
|
43769
44144
|
if (!isMemberOfCorrectKind(overriddenOrShadowedMember)) {
|
43770
44145
|
if (!shadowedMembers.some((m) => m.value.equals(overriddenOrShadowedMember))) {
|
@@ -43778,14 +44153,17 @@ var OverriddenMember = class {
|
|
43778
44153
|
const overriddenOrShadowedMemberEntity = overriddenOrShadowedMember.getEntity();
|
43779
44154
|
let shadowReason;
|
43780
44155
|
if (!this.entityCanBeOverridden(overriddenOrShadowedMemberEntity)) {
|
43781
|
-
shadowReason = 1 /*
|
43782
|
-
} else if (!
|
44156
|
+
shadowReason = 1 /* BaseMemberCannotBeOverridden */;
|
44157
|
+
} else if (!member.isOverride() && !TypeMemberEntity.isAbstract(overriddenOrShadowedMember.getEntity())) {
|
43783
44158
|
shadowReason = 2 /* NoOverrideModifier */;
|
43784
44159
|
}
|
43785
44160
|
if (shadowReason === void 0 || shadowReason === 2 /* NoOverrideModifier */) {
|
43786
|
-
|
44161
|
+
overridingMemberType ??= this.getMemberTypeOrReturnType(member);
|
43787
44162
|
const overriddenType = this.getMemberTypeOrReturnType(overriddenOrShadowedMember);
|
43788
|
-
const typeAssignabilityFlags = this._analyzer.getTypeAssignabilityFlags(
|
44163
|
+
const typeAssignabilityFlags = this._analyzer.getTypeAssignabilityFlags(
|
44164
|
+
overridingMemberType,
|
44165
|
+
overriddenType
|
44166
|
+
);
|
43789
44167
|
if ((typeAssignabilityFlags & (1 /* NotAssignable */ | 16 /* ImplicitConversion */)) !== 0) {
|
43790
44168
|
shadowReason = shadowReason === 2 /* NoOverrideModifier */ ? 3 /* NoOverrideModifierAndTypeOrReturnTypeMismatch */ : 4 /* TypeOrReturnTypeMismatch */;
|
43791
44169
|
}
|
@@ -43804,13 +44182,13 @@ var OverriddenMember = class {
|
|
43804
44182
|
}
|
43805
44183
|
return new OverriddenAndShadowedMembers(overriddenMembers, shadowedMembers);
|
43806
44184
|
}
|
43807
|
-
findOverriddenOrShadowedNamedMembersInType(
|
44185
|
+
findOverriddenOrShadowedNamedMembersInType(member, typeMemberLookup) {
|
43808
44186
|
return typeMemberLookup.getNamedMembersByName(new SearchName(
|
43809
|
-
|
43810
|
-
(
|
44187
|
+
member.getName(),
|
44188
|
+
(member.getName().flags & 2 /* OriginalName */) !== 0
|
43811
44189
|
)).filter((m) => {
|
43812
|
-
if (
|
43813
|
-
return this.checkMethodOverridesOrShadowsMethod(
|
44190
|
+
if (member.kind === "method" && m.value.kind === "method") {
|
44191
|
+
return this.checkMethodOverridesOrShadowsMethod(member, m.value);
|
43814
44192
|
}
|
43815
44193
|
return true;
|
43816
44194
|
}).map((d) => d.value);
|
@@ -43905,7 +44283,7 @@ var OverriddenMember = class {
|
|
43905
44283
|
};
|
43906
44284
|
var ShadowReason = /* @__PURE__ */ ((ShadowReason2) => {
|
43907
44285
|
ShadowReason2[ShadowReason2["BaseMemberHasDifferentKind"] = 0] = "BaseMemberHasDifferentKind";
|
43908
|
-
ShadowReason2[ShadowReason2["
|
44286
|
+
ShadowReason2[ShadowReason2["BaseMemberCannotBeOverridden"] = 1] = "BaseMemberCannotBeOverridden";
|
43909
44287
|
ShadowReason2[ShadowReason2["NoOverrideModifier"] = 2] = "NoOverrideModifier";
|
43910
44288
|
ShadowReason2[ShadowReason2["NoOverrideModifierAndTypeOrReturnTypeMismatch"] = 3] = "NoOverrideModifierAndTypeOrReturnTypeMismatch";
|
43911
44289
|
ShadowReason2[ShadowReason2["TypeOrReturnTypeMismatch"] = 4] = "TypeOrReturnTypeMismatch";
|
@@ -45097,6 +45475,25 @@ var TypeUtils = class {
|
|
45097
45475
|
Debug.never(type);
|
45098
45476
|
}
|
45099
45477
|
}
|
45478
|
+
getPossiblyAliasedBaseObjectType(type) {
|
45479
|
+
switch (type.kind) {
|
45480
|
+
case "function":
|
45481
|
+
return type.getBaseType();
|
45482
|
+
case "structured":
|
45483
|
+
return type.getBaseObjectType();
|
45484
|
+
case "variant":
|
45485
|
+
return type.getBaseType();
|
45486
|
+
case "alias":
|
45487
|
+
return void 0;
|
45488
|
+
case "unresolved":
|
45489
|
+
case "parameter":
|
45490
|
+
case "union":
|
45491
|
+
case "intersection":
|
45492
|
+
return void 0;
|
45493
|
+
default:
|
45494
|
+
Debug.never(type);
|
45495
|
+
}
|
45496
|
+
}
|
45100
45497
|
getBaseAndAliasedTypesRecursively(type) {
|
45101
45498
|
const result = new Array();
|
45102
45499
|
this.collectBaseAndAliasedTypesRecursively(type, result);
|
@@ -45432,6 +45829,14 @@ var StubTypeParameterEntity = class {
|
|
45432
45829
|
getTags() {
|
45433
45830
|
return [];
|
45434
45831
|
}
|
45832
|
+
getContext() {
|
45833
|
+
return new EntityContext(
|
45834
|
+
getPackageContainingEntity(this),
|
45835
|
+
new EntityHidingMatcherWithinTypeEntity(this),
|
45836
|
+
void 0,
|
45837
|
+
void 0
|
45838
|
+
);
|
45839
|
+
}
|
45435
45840
|
};
|
45436
45841
|
var ExpressionDenotesFunctionCheckResult = class {
|
45437
45842
|
constructor(candidates, suitableFunctions) {
|
@@ -45750,7 +46155,7 @@ var BaseMemberConflictsValidator = class {
|
|
45750
46155
|
}
|
45751
46156
|
const membersText = "\n" + conflictingMembers.map((m) => `'${this.displayService.displayTypeMember(m.value, m.localization)}'`).join("\n");
|
45752
46157
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
45753
|
-
|
46158
|
+
355 /* TheFollowingBaseTypeMembersConflictAndMustBeOverridden0 */,
|
45754
46159
|
this._nodeForDiagnostic,
|
45755
46160
|
[membersText]
|
45756
46161
|
));
|
@@ -45761,7 +46166,7 @@ var BaseMemberConflictsValidator = class {
|
|
45761
46166
|
}
|
45762
46167
|
const membersText = "\n" + conflictingMembers.map((m) => `'${this.displayService.displayTypeMember(m.value, m.localization)}'`).join("\n");
|
45763
46168
|
this._diagnostics.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
45764
|
-
|
46169
|
+
356 /* TheFollowingBaseTypeMembersConflictBecauseTheyHaveTheSameOriginalName0AndMustBeOverridden1 */,
|
45765
46170
|
this._nodeForDiagnostic,
|
45766
46171
|
[originalName.unescapedOriginal, membersText]
|
45767
46172
|
));
|
@@ -46013,55 +46418,6 @@ var TypeMemberConflictsValidator = class {
|
|
46013
46418
|
}
|
46014
46419
|
};
|
46015
46420
|
|
46016
|
-
// source/analysis/TypeMemberImplementationValidator.ts
|
46017
|
-
var TypeMemberImplementationValidator = class {
|
46018
|
-
constructor(_analyzer, _typeEntity, _displayService, _diagnostics) {
|
46019
|
-
this._analyzer = _analyzer;
|
46020
|
-
this._typeEntity = _typeEntity;
|
46021
|
-
this._displayService = _displayService;
|
46022
|
-
this._diagnostics = _diagnostics;
|
46023
|
-
}
|
46024
|
-
validate() {
|
46025
|
-
if (this._typeEntity.typeEntityKind === 1 /* Structured */ && (this._typeEntity.isAbstract() || this._typeEntity.isAspect())) {
|
46026
|
-
return;
|
46027
|
-
}
|
46028
|
-
const notImplementedAbstractMembers = this._analyzer.getNotImplementedAbstractMembers(this._typeEntity);
|
46029
|
-
if (notImplementedAbstractMembers.length === 0) {
|
46030
|
-
return;
|
46031
|
-
}
|
46032
|
-
const diagnosticLocation = this.getDiagnosticLocation();
|
46033
|
-
if (diagnosticLocation === void 0) {
|
46034
|
-
return;
|
46035
|
-
}
|
46036
|
-
for (const notImplementedAbstractMember of notImplementedAbstractMembers) {
|
46037
|
-
const diagnosticData = DiagnosticData.withCode(
|
46038
|
-
347 /* TypeDoesNotImplementMember0 */,
|
46039
|
-
[this._displayService.displayTypeMember(notImplementedAbstractMember)]
|
46040
|
-
);
|
46041
|
-
this._diagnostics.addDiagnostic(new Diagnostic(diagnosticData, diagnosticLocation));
|
46042
|
-
}
|
46043
|
-
}
|
46044
|
-
getDiagnosticLocation() {
|
46045
|
-
const definition = this._typeEntity.getDefinition();
|
46046
|
-
if (definition.kind !== 0 /* Source */) {
|
46047
|
-
return void 0;
|
46048
|
-
}
|
46049
|
-
if (NodeTypeUtils.isNamedTypeDeclaration(definition.node)) {
|
46050
|
-
return this._analyzer.createNodeDiagnosticLocation(definition.node.name);
|
46051
|
-
}
|
46052
|
-
switch (definition.node.kind) {
|
46053
|
-
case 17 /* AnonymousFunctionTypeDeclaration */:
|
46054
|
-
return this._analyzer.createNodeDiagnosticLocation(definition.node.body.functionKeyword);
|
46055
|
-
case 18 /* AnonymousStructuredTypeDeclaration */:
|
46056
|
-
return this._analyzer.createNodeDiagnosticLocation(definition.node.body.structuredTypeKindKeyword);
|
46057
|
-
case 19 /* AnonymousVariantTypeDeclaration */:
|
46058
|
-
return this._analyzer.createNodeDiagnosticLocation(definition.node.body.variantKeyword);
|
46059
|
-
default:
|
46060
|
-
Debug.never(definition.node);
|
46061
|
-
}
|
46062
|
-
}
|
46063
|
-
};
|
46064
|
-
|
46065
46421
|
// source/analysis/DiagnosticCollector.ts
|
46066
46422
|
var DiagnosticCollector = class _DiagnosticCollector {
|
46067
46423
|
constructor(analyzer, sourceFile, cancellationToken) {
|
@@ -46262,6 +46618,29 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46262
46618
|
case 134 /* PackageImportTranslation */: {
|
46263
46619
|
break;
|
46264
46620
|
}
|
46621
|
+
case 141 /* TextTemplateLiteralTranslation */: {
|
46622
|
+
const sourceSpans = node.sourceText.spanList.spans;
|
46623
|
+
sourceSpans.forEach((span, i) => {
|
46624
|
+
if (!(span.expression.kind === 86 /* IdentifierExpression */ || span.expression.kind === 82 /* TokenExpression */ && span.expression.token.tokenKind === 2 /* IntegerLiteral */)) {
|
46625
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46626
|
+
357 /* OnlyIdentifierOrIntegerLiteralIsAllowedAsParameterOfTextTemplateLiteralInTranslations */,
|
46627
|
+
span.expression
|
46628
|
+
));
|
46629
|
+
}
|
46630
|
+
});
|
46631
|
+
if (node.translatedTextOrTranslationFunction.kind === 79 /* TextTemplateLiteral */) {
|
46632
|
+
const translatedSpans = node.translatedTextOrTranslationFunction.spanList.spans;
|
46633
|
+
translatedSpans.forEach((span, i) => {
|
46634
|
+
if (!(span.expression.kind === 86 /* IdentifierExpression */ || span.expression.kind === 82 /* TokenExpression */ && span.expression.token.tokenKind === 2 /* IntegerLiteral */)) {
|
46635
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46636
|
+
357 /* OnlyIdentifierOrIntegerLiteralIsAllowedAsParameterOfTextTemplateLiteralInTranslations */,
|
46637
|
+
span.expression
|
46638
|
+
));
|
46639
|
+
}
|
46640
|
+
});
|
46641
|
+
}
|
46642
|
+
break;
|
46643
|
+
}
|
46265
46644
|
case 31 /* PackageStructuredTypeDeclaration */: {
|
46266
46645
|
const entity = this._analyzer.entity.ofPackageStructuredTypeDeclaration(node);
|
46267
46646
|
if (entity.getBaseObjectType().causesCycle || entity.getBaseAspectTypes().causesCycle) {
|
@@ -46284,7 +46663,8 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46284
46663
|
this._diagnosticAcceptor,
|
46285
46664
|
node.name
|
46286
46665
|
).validate();
|
46287
|
-
|
46666
|
+
const typeMemberImplementationCheckResult = this._analyzer.getTypeMemberImplementationCheckResult(entity);
|
46667
|
+
this.attachNodeLocationAndAddDiagnostics(typeMemberImplementationCheckResult.diagnosticsData, node.name);
|
46288
46668
|
break;
|
46289
46669
|
}
|
46290
46670
|
case 36 /* PackageVariantTypeDeclaration */: {
|
@@ -46303,7 +46683,8 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46303
46683
|
this._diagnosticAcceptor,
|
46304
46684
|
node.name
|
46305
46685
|
).validate();
|
46306
|
-
|
46686
|
+
const typeMemberImplementationCheckResult = this._analyzer.getTypeMemberImplementationCheckResult(entity);
|
46687
|
+
this.attachNodeLocationAndAddDiagnostics(typeMemberImplementationCheckResult.diagnosticsData, node.name);
|
46307
46688
|
break;
|
46308
46689
|
}
|
46309
46690
|
case 30 /* TypeMemberDeclarationBlock */: {
|
@@ -46650,7 +47031,11 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46650
47031
|
this._diagnosticAcceptor,
|
46651
47032
|
node.body.structuredTypeKindKeyword
|
46652
47033
|
).validate();
|
46653
|
-
|
47034
|
+
const typeMemberImplementationCheckResult = this._analyzer.getTypeMemberImplementationCheckResult(entity);
|
47035
|
+
this.attachNodeLocationAndAddDiagnostics(
|
47036
|
+
typeMemberImplementationCheckResult.diagnosticsData,
|
47037
|
+
node.body.structuredTypeKindKeyword
|
47038
|
+
);
|
46654
47039
|
break;
|
46655
47040
|
}
|
46656
47041
|
case 19 /* AnonymousVariantTypeDeclaration */: {
|
@@ -46666,7 +47051,11 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46666
47051
|
this._diagnosticAcceptor,
|
46667
47052
|
node.body.variantKeyword
|
46668
47053
|
).validate();
|
46669
|
-
|
47054
|
+
const typeMemberImplementationCheckResult = this._analyzer.getTypeMemberImplementationCheckResult(entity);
|
47055
|
+
this.attachNodeLocationAndAddDiagnostics(
|
47056
|
+
typeMemberImplementationCheckResult.diagnosticsData,
|
47057
|
+
node.body.variantKeyword
|
47058
|
+
);
|
46670
47059
|
break;
|
46671
47060
|
}
|
46672
47061
|
case 32 /* StructuredTypeDeclarationBody */: {
|
@@ -46733,7 +47122,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46733
47122
|
const entity = meaning.operator.value.getEntity();
|
46734
47123
|
if (this.isReceiverBaseAutoVariableAccess(node.expression) && TypeMemberEntity.isAbstract(entity)) {
|
46735
47124
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
46736
|
-
|
47125
|
+
354 /* CannotAccessAbstractMemberOfBaseType */,
|
46737
47126
|
node.caretToken
|
46738
47127
|
));
|
46739
47128
|
}
|
@@ -46769,7 +47158,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46769
47158
|
node.closeSquareBracketToken.rangeWithoutTrivia.end
|
46770
47159
|
);
|
46771
47160
|
this.addDiagnostic(this._analyzer.createSourceFileRangeDiagnostic(
|
46772
|
-
|
47161
|
+
354 /* CannotAccessAbstractMemberOfBaseType */,
|
46773
47162
|
range,
|
46774
47163
|
this._sourceFile
|
46775
47164
|
));
|
@@ -46958,7 +47347,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46958
47347
|
this._analyzer.checkBodyOfBasicAliasTypeMethod(node, this._diagnosticAcceptor);
|
46959
47348
|
}
|
46960
47349
|
}
|
46961
|
-
this.
|
47350
|
+
this.checkTypeMemberCorrectlyOverridesBaseMember(
|
46962
47351
|
entity,
|
46963
47352
|
this._analyzer.overriddenMember.getOverriddenAndShadowedMethods(node),
|
46964
47353
|
node.name
|
@@ -46979,7 +47368,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
46979
47368
|
checkOperatorDeclaration(node) {
|
46980
47369
|
const entity = this._analyzer.entity.ofOperatorDeclaration(node);
|
46981
47370
|
this.checkTypeMemberBodyPresence(entity, node.block, node.name);
|
46982
|
-
this.
|
47371
|
+
this.checkTypeMemberCorrectlyOverridesBaseMember(
|
46983
47372
|
entity,
|
46984
47373
|
this._analyzer.overriddenMember.getOverriddenAndShadowedOperators(node),
|
46985
47374
|
node.name
|
@@ -47067,7 +47456,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47067
47456
|
));
|
47068
47457
|
}
|
47069
47458
|
}
|
47070
|
-
this.
|
47459
|
+
this.checkTypeMemberCorrectlyOverridesBaseMember(
|
47071
47460
|
entity,
|
47072
47461
|
this._analyzer.overriddenMember.getOverriddenAndShadowedFields(node),
|
47073
47462
|
node.name
|
@@ -47077,7 +47466,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47077
47466
|
const entity = this._analyzer.entity.ofComputedFieldDeclaration(node);
|
47078
47467
|
entity.ensureAllDiagnosticsReported?.();
|
47079
47468
|
this.checkTypeMemberBodyPresence(entity, node.block, node.name);
|
47080
|
-
this.
|
47469
|
+
this.checkTypeMemberCorrectlyOverridesBaseMember(
|
47081
47470
|
entity,
|
47082
47471
|
this._analyzer.overriddenMember.getOverriddenAndShadowedFields(node),
|
47083
47472
|
node.name
|
@@ -47097,7 +47486,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47097
47486
|
const entity = this._analyzer.entity.ofIndexerDeclaration(node);
|
47098
47487
|
entity.ensureAllDiagnosticsReported?.();
|
47099
47488
|
this.checkTypeMemberBodyPresence(entity, node.block, node.parameterClause);
|
47100
|
-
this.
|
47489
|
+
this.checkTypeMemberCorrectlyOverridesBaseMember(
|
47101
47490
|
entity,
|
47102
47491
|
this._analyzer.overriddenMember.getOverriddenAndShadowedIndexers(node),
|
47103
47492
|
node.parameterClause
|
@@ -47119,7 +47508,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47119
47508
|
const entity = this._analyzer.entity.ofDereferenceOperatorDeclaration(node);
|
47120
47509
|
entity.ensureAllDiagnosticsReported?.();
|
47121
47510
|
this.checkTypeMemberBodyPresence(entity, node.block, node.caretToken);
|
47122
|
-
this.
|
47511
|
+
this.checkTypeMemberCorrectlyOverridesBaseMember(
|
47123
47512
|
entity,
|
47124
47513
|
this._analyzer.overriddenMember.getOverriddenAndShadowedDereferenceOperators(node),
|
47125
47514
|
node.caretToken
|
@@ -47457,7 +47846,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47457
47846
|
const suitableFunctionEntity = suitableFunction.value.getEntity();
|
47458
47847
|
if (meaning.kind === "instance-method-access" && this.isReceiverBaseAutoVariableAccess(node.expression) && suitableFunctionEntity.subkind === "method" && TypeMemberEntity.isAbstract(suitableFunctionEntity)) {
|
47459
47848
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
47460
|
-
|
47849
|
+
354 /* CannotAccessAbstractMemberOfBaseType */,
|
47461
47850
|
node.memberName
|
47462
47851
|
));
|
47463
47852
|
}
|
@@ -47484,7 +47873,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47484
47873
|
const entity = meaning.field.value.getEntity();
|
47485
47874
|
if (this.isReceiverBaseAutoVariableAccess(node.expression) && TypeMemberEntity.isAbstract(entity)) {
|
47486
47875
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
47487
|
-
|
47876
|
+
354 /* CannotAccessAbstractMemberOfBaseType */,
|
47488
47877
|
node.memberName
|
47489
47878
|
));
|
47490
47879
|
}
|
@@ -47494,7 +47883,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47494
47883
|
const entity = meaning.singleSuitableOperator?.value.getEntity();
|
47495
47884
|
if (entity !== void 0 && this.isReceiverBaseAutoVariableAccess(node.expression) && TypeMemberEntity.isAbstract(entity)) {
|
47496
47885
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
47497
|
-
|
47886
|
+
354 /* CannotAccessAbstractMemberOfBaseType */,
|
47498
47887
|
node.memberName
|
47499
47888
|
));
|
47500
47889
|
}
|
@@ -47985,7 +48374,7 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
47985
48374
|
}
|
47986
48375
|
}
|
47987
48376
|
}
|
47988
|
-
|
48377
|
+
checkTypeMemberCorrectlyOverridesBaseMember(entity, overriddenAndShadowedMembers, nodeForDiagnostic) {
|
47989
48378
|
let reportedSomeDiagnostics = false;
|
47990
48379
|
if (entity.isOverride() && overriddenAndShadowedMembers.overriddenMembers.length === 0) {
|
47991
48380
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
@@ -48008,10 +48397,10 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
48008
48397
|
));
|
48009
48398
|
break;
|
48010
48399
|
}
|
48011
|
-
case 1 /*
|
48400
|
+
case 1 /* BaseMemberCannotBeOverridden */: {
|
48012
48401
|
if (entity.isOverride()) {
|
48013
48402
|
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
48014
|
-
340 /*
|
48403
|
+
340 /* DeclarationConflictsWithBaseTypeMember0ThisMemberCannotBeOverridden */,
|
48015
48404
|
nodeForDiagnostic,
|
48016
48405
|
[this._displayService.displayTypeMember(shadowedMember.value)]
|
48017
48406
|
));
|
@@ -48085,6 +48474,24 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
48085
48474
|
));
|
48086
48475
|
reportedSomeDiagnostics ||= true;
|
48087
48476
|
}
|
48477
|
+
} else if (entity.kind === 5 /* Indexer */ && overriddenMemberEntity.kind === 5 /* Indexer */) {
|
48478
|
+
if (overriddenMemberEntity.getSetter() !== void 0 && entity.getSetter() === void 0) {
|
48479
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
48480
|
+
347 /* OverridingMemberMustHaveWriteFunctionToMatchBaseMember0 */,
|
48481
|
+
nodeForDiagnostic,
|
48482
|
+
[this._displayService.displayTypeMember(overriddenMember)]
|
48483
|
+
));
|
48484
|
+
reportedSomeDiagnostics ||= true;
|
48485
|
+
}
|
48486
|
+
} else if (entity.kind === 6 /* DereferenceOperator */ && overriddenMemberEntity.kind === 6 /* DereferenceOperator */) {
|
48487
|
+
if (overriddenMemberEntity.getSetter() !== void 0 && entity.getSetter() === void 0) {
|
48488
|
+
this.addDiagnostic(this._analyzer.createNodeDiagnostic(
|
48489
|
+
347 /* OverridingMemberMustHaveWriteFunctionToMatchBaseMember0 */,
|
48490
|
+
nodeForDiagnostic,
|
48491
|
+
[this._displayService.displayTypeMember(overriddenMember)]
|
48492
|
+
));
|
48493
|
+
reportedSomeDiagnostics ||= true;
|
48494
|
+
}
|
48088
48495
|
}
|
48089
48496
|
}
|
48090
48497
|
}
|
@@ -48099,6 +48506,12 @@ var DiagnosticCollector = class _DiagnosticCollector {
|
|
48099
48506
|
overridingMemberHasCorrectHiding(overridingMemberHiding, overriddenMemberHiding) {
|
48100
48507
|
return overriddenMemberHiding === void 0 ? overridingMemberHiding === void 0 : overriddenMemberHiding.kind === overridingMemberHiding?.kind;
|
48101
48508
|
}
|
48509
|
+
attachNodeLocationAndAddDiagnostics(diagnosticsData, node) {
|
48510
|
+
for (const diagnosticData of diagnosticsData) {
|
48511
|
+
const location = this._analyzer.createNodeDiagnosticLocation(node);
|
48512
|
+
this.addDiagnostic(new Diagnostic(diagnosticData, location));
|
48513
|
+
}
|
48514
|
+
}
|
48102
48515
|
addDiagnostic(diagnostic) {
|
48103
48516
|
if (diagnostic !== void 0) {
|
48104
48517
|
this._diagnostics.push(diagnostic);
|
@@ -48433,6 +48846,9 @@ var PackageAliasTypeDeclarationEntity = class {
|
|
48433
48846
|
getSubstitutionApplicationMode() {
|
48434
48847
|
return 0 /* SubstituteOwnSubstitutions */;
|
48435
48848
|
}
|
48849
|
+
getContext() {
|
48850
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
48851
|
+
}
|
48436
48852
|
};
|
48437
48853
|
PackageAliasTypeDeclarationEntity = __decorateClass([
|
48438
48854
|
entityToStringDecorator
|
@@ -49211,6 +49627,9 @@ var PackageFunctionTypeDeclarationEntity = class {
|
|
49211
49627
|
getBaseObjectType() {
|
49212
49628
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._analyzer.getImplicitBaseTypeForFunctionType()));
|
49213
49629
|
}
|
49630
|
+
getContext() {
|
49631
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
49632
|
+
}
|
49214
49633
|
};
|
49215
49634
|
PackageFunctionTypeDeclarationEntity = __decorateClass([
|
49216
49635
|
entityToStringDecorator
|
@@ -49274,6 +49693,9 @@ var AnonymousFunctionTypeDeclarationEntity = class {
|
|
49274
49693
|
getBaseObjectType() {
|
49275
49694
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._analyzer.getImplicitBaseTypeForFunctionType()));
|
49276
49695
|
}
|
49696
|
+
getContext() {
|
49697
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
49698
|
+
}
|
49277
49699
|
};
|
49278
49700
|
AnonymousFunctionTypeDeclarationEntity = __decorateClass([
|
49279
49701
|
entityToStringDecorator
|
@@ -49282,14 +49704,15 @@ var UnfinishedIntrinsicAnonymousFunctionTypeEntity = class {
|
|
49282
49704
|
get unfinishedValue() {
|
49283
49705
|
return this._unfinishedValue;
|
49284
49706
|
}
|
49285
|
-
constructor(analyzer, returnType, isAsync, substitutionApplicationMode, containingPackage, isHidden) {
|
49707
|
+
constructor(analyzer, returnType, isAsync, substitutionApplicationMode, containingPackage, isHidden, context) {
|
49286
49708
|
this._unfinishedValue = new IntrinsicAnonymousFunctionTypeEntity(
|
49287
49709
|
analyzer,
|
49288
49710
|
returnType,
|
49289
49711
|
isAsync,
|
49290
49712
|
substitutionApplicationMode,
|
49291
49713
|
containingPackage,
|
49292
|
-
isHidden
|
49714
|
+
isHidden,
|
49715
|
+
context
|
49293
49716
|
);
|
49294
49717
|
}
|
49295
49718
|
finish(typeParameters, valueParameters) {
|
@@ -49302,7 +49725,7 @@ var IntrinsicAnonymousFunctionTypeEntity = class {
|
|
49302
49725
|
/**
|
49303
49726
|
* После создания данного класса необходимо вызывать setTypeParameters и setValueParameters.
|
49304
49727
|
*/
|
49305
|
-
constructor(_analyzer, _returnType, _isAsync, _substitutionApplicationMode, _containingPackage, _isHidden) {
|
49728
|
+
constructor(_analyzer, _returnType, _isAsync, _substitutionApplicationMode, _containingPackage, _isHidden, context) {
|
49306
49729
|
this._analyzer = _analyzer;
|
49307
49730
|
this._returnType = _returnType;
|
49308
49731
|
this._isAsync = _isAsync;
|
@@ -49314,6 +49737,12 @@ var IntrinsicAnonymousFunctionTypeEntity = class {
|
|
49314
49737
|
this.subkind = "anonymous";
|
49315
49738
|
this._members = new Cached();
|
49316
49739
|
this._baseObjectType = new Cached();
|
49740
|
+
this._context = context ?? new EntityContext(
|
49741
|
+
getPackageContainingEntity(this),
|
49742
|
+
new EntityHidingMatcherWithinTypeEntity(this),
|
49743
|
+
void 0,
|
49744
|
+
void 0
|
49745
|
+
);
|
49317
49746
|
}
|
49318
49747
|
getNaming() {
|
49319
49748
|
return new EntityNaming_anonymous();
|
@@ -49368,6 +49797,9 @@ var IntrinsicAnonymousFunctionTypeEntity = class {
|
|
49368
49797
|
getBaseObjectType() {
|
49369
49798
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._analyzer.getImplicitBaseTypeForFunctionType()));
|
49370
49799
|
}
|
49800
|
+
getContext() {
|
49801
|
+
return this._context;
|
49802
|
+
}
|
49371
49803
|
};
|
49372
49804
|
IntrinsicAnonymousFunctionTypeEntity = __decorateClass([
|
49373
49805
|
entityToStringDecorator
|
@@ -49376,7 +49808,7 @@ var UnfinishedIntrinsicPackageFunctionTypeEntity = class {
|
|
49376
49808
|
get unfinishedValue() {
|
49377
49809
|
return this._unfinishedValue;
|
49378
49810
|
}
|
49379
|
-
constructor(analyzer, name, returnType, isAsync, substitutionApplicationMode, containingPackage, isHidden) {
|
49811
|
+
constructor(analyzer, name, returnType, isAsync, substitutionApplicationMode, containingPackage, isHidden, context) {
|
49380
49812
|
this._unfinishedValue = new IntrinsicPackageFunctionTypeEntity(
|
49381
49813
|
analyzer,
|
49382
49814
|
name,
|
@@ -49384,7 +49816,8 @@ var UnfinishedIntrinsicPackageFunctionTypeEntity = class {
|
|
49384
49816
|
isAsync,
|
49385
49817
|
substitutionApplicationMode,
|
49386
49818
|
containingPackage,
|
49387
|
-
isHidden
|
49819
|
+
isHidden,
|
49820
|
+
context
|
49388
49821
|
);
|
49389
49822
|
}
|
49390
49823
|
finish(typeParameters, valueParameters) {
|
@@ -49397,7 +49830,7 @@ var IntrinsicPackageFunctionTypeEntity = class {
|
|
49397
49830
|
/**
|
49398
49831
|
* После создания данного класса необходимо вызывать setTypeParameters и setValueParameters.
|
49399
49832
|
*/
|
49400
|
-
constructor(_analyzer, _name, _returnType, _isAsync, _substitutionApplicationMode, _containingPackage, _isHidden) {
|
49833
|
+
constructor(_analyzer, _name, _returnType, _isAsync, _substitutionApplicationMode, _containingPackage, _isHidden, context) {
|
49401
49834
|
this._analyzer = _analyzer;
|
49402
49835
|
this._name = _name;
|
49403
49836
|
this._returnType = _returnType;
|
@@ -49410,6 +49843,12 @@ var IntrinsicPackageFunctionTypeEntity = class {
|
|
49410
49843
|
this.subkind = "package";
|
49411
49844
|
this._members = new Cached();
|
49412
49845
|
this._baseObjectType = new Cached();
|
49846
|
+
this._context = context ?? new EntityContext(
|
49847
|
+
getPackageContainingEntity(this),
|
49848
|
+
new EntityHidingMatcherWithinTypeEntity(this),
|
49849
|
+
void 0,
|
49850
|
+
void 0
|
49851
|
+
);
|
49413
49852
|
}
|
49414
49853
|
getName() {
|
49415
49854
|
return this._name;
|
@@ -49467,6 +49906,9 @@ var IntrinsicPackageFunctionTypeEntity = class {
|
|
49467
49906
|
getBaseObjectType() {
|
49468
49907
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._analyzer.getImplicitBaseTypeForFunctionType()));
|
49469
49908
|
}
|
49909
|
+
getContext() {
|
49910
|
+
return this._context;
|
49911
|
+
}
|
49470
49912
|
};
|
49471
49913
|
IntrinsicPackageFunctionTypeEntity = __decorateClass([
|
49472
49914
|
entityToStringDecorator
|
@@ -49936,6 +50378,9 @@ var SourcePackageEntity = class {
|
|
49936
50378
|
getLocale() {
|
49937
50379
|
return this._package.configuration.locale;
|
49938
50380
|
}
|
50381
|
+
getDialect() {
|
50382
|
+
return this._package.configuration.dialect;
|
50383
|
+
}
|
49939
50384
|
getMembers() {
|
49940
50385
|
return this._members.getOrInsertWith(() => this._analyzer.createPackageMembers(this._package));
|
49941
50386
|
}
|
@@ -50358,6 +50803,9 @@ var PackageStructuredTypeDeclarationEntity = class {
|
|
50358
50803
|
getSubstitutionApplicationMode() {
|
50359
50804
|
return this._data.getSubstitutionApplicationMode();
|
50360
50805
|
}
|
50806
|
+
getContext() {
|
50807
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
50808
|
+
}
|
50361
50809
|
};
|
50362
50810
|
PackageStructuredTypeDeclarationEntity = __decorateClass([
|
50363
50811
|
entityToStringDecorator
|
@@ -50549,6 +50997,9 @@ var AnonymousStructuredTypeDeclarationEntity = class {
|
|
50549
50997
|
getContainingPackage() {
|
50550
50998
|
return TreeQuery.fromNode(this._node).packageEntity(this._analyzer);
|
50551
50999
|
}
|
51000
|
+
getContext() {
|
51001
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
51002
|
+
}
|
50552
51003
|
getBaseTypes() {
|
50553
51004
|
return this._baseTypes.getOrInsertWith(() => {
|
50554
51005
|
if (this._node.body.baseTypeList === void 0) {
|
@@ -50574,7 +51025,7 @@ var UnfinishedIntrinsicPackageStructuredTypeEntity = class {
|
|
50574
51025
|
get unfinishedValue() {
|
50575
51026
|
return this._unfinishedValue;
|
50576
51027
|
}
|
50577
|
-
constructor(analyzer, name, containingPackage, typeParameters, isBasic, isAbstract, isAspect, isRefObject, baseObjectType, baseAspectTypes, isHidden, substitutionApplicationMode) {
|
51028
|
+
constructor(analyzer, name, containingPackage, typeParameters, isBasic, isAbstract, isAspect, isRefObject, baseObjectType, baseAspectTypes, isHidden, substitutionApplicationMode, context) {
|
50578
51029
|
this._unfinishedValue = new IntrinsicPackageStructuredTypeEntity(
|
50579
51030
|
analyzer,
|
50580
51031
|
name,
|
@@ -50587,7 +51038,8 @@ var UnfinishedIntrinsicPackageStructuredTypeEntity = class {
|
|
50587
51038
|
baseObjectType,
|
50588
51039
|
baseAspectTypes,
|
50589
51040
|
isHidden,
|
50590
|
-
substitutionApplicationMode
|
51041
|
+
substitutionApplicationMode,
|
51042
|
+
context
|
50591
51043
|
);
|
50592
51044
|
}
|
50593
51045
|
finish(ownNamedMembers, ownOperators, ownConstructors, ownDestructors, ownIndexers, ownDereferenceOperators) {
|
@@ -50606,7 +51058,7 @@ var IntrinsicPackageStructuredTypeEntity = class {
|
|
50606
51058
|
/**
|
50607
51059
|
* После создания необходимо вызывать setMembers.
|
50608
51060
|
*/
|
50609
|
-
constructor(_analyzer, _name, _containingPackage, _typeParameters, _isBasic, _isAbstract, _isAspect, _isRefObject, _baseObjectType, _baseAspectTypes, _isHidden, _substitutionApplicationMode) {
|
51061
|
+
constructor(_analyzer, _name, _containingPackage, _typeParameters, _isBasic, _isAbstract, _isAspect, _isRefObject, _baseObjectType, _baseAspectTypes, _isHidden, _substitutionApplicationMode, context) {
|
50610
51062
|
this._analyzer = _analyzer;
|
50611
51063
|
this._name = _name;
|
50612
51064
|
this._containingPackage = _containingPackage;
|
@@ -50624,6 +51076,12 @@ var IntrinsicPackageStructuredTypeEntity = class {
|
|
50624
51076
|
this.subkind = "package";
|
50625
51077
|
this._safeBaseObjectType = new Cached();
|
50626
51078
|
this._safeBaseAspectTypes = new Cached();
|
51079
|
+
this._context = context ?? new EntityContext(
|
51080
|
+
getPackageContainingEntity(this),
|
51081
|
+
new EntityHidingMatcherWithinTypeEntity(this),
|
51082
|
+
void 0,
|
51083
|
+
void 0
|
51084
|
+
);
|
50627
51085
|
}
|
50628
51086
|
getNaming() {
|
50629
51087
|
return new EntityNaming_named(this._name);
|
@@ -50690,6 +51148,9 @@ var IntrinsicPackageStructuredTypeEntity = class {
|
|
50690
51148
|
getSubstitutionApplicationMode() {
|
50691
51149
|
return this._substitutionApplicationMode;
|
50692
51150
|
}
|
51151
|
+
getContext() {
|
51152
|
+
return this._context;
|
51153
|
+
}
|
50693
51154
|
};
|
50694
51155
|
IntrinsicPackageStructuredTypeEntity = __decorateClass([
|
50695
51156
|
entityToStringDecorator
|
@@ -50698,7 +51159,7 @@ var UnfinishedIntrinsicAnonymousStructuredTypeEntity = class {
|
|
50698
51159
|
get unfinishedValue() {
|
50699
51160
|
return this._unfinishedValue;
|
50700
51161
|
}
|
50701
|
-
constructor(analyzer, typeParameters, isAspect, isRefObject, baseObjectType, baseAspectTypes, isHidden, substitutionApplicationMode, containingPackage) {
|
51162
|
+
constructor(analyzer, typeParameters, isAspect, isRefObject, baseObjectType, baseAspectTypes, isHidden, substitutionApplicationMode, containingPackage, context) {
|
50702
51163
|
this._unfinishedValue = new IntrinsicAnonymousStructuredTypeEntity(
|
50703
51164
|
analyzer,
|
50704
51165
|
typeParameters,
|
@@ -50708,7 +51169,8 @@ var UnfinishedIntrinsicAnonymousStructuredTypeEntity = class {
|
|
50708
51169
|
baseAspectTypes,
|
50709
51170
|
isHidden,
|
50710
51171
|
substitutionApplicationMode,
|
50711
|
-
containingPackage
|
51172
|
+
containingPackage,
|
51173
|
+
context
|
50712
51174
|
);
|
50713
51175
|
}
|
50714
51176
|
finish(ownNamedMembers, ownOperators, ownConstructors, ownDestructors, ownIndexers, ownDereferenceOperators) {
|
@@ -50727,7 +51189,7 @@ var IntrinsicAnonymousStructuredTypeEntity = class {
|
|
50727
51189
|
/**
|
50728
51190
|
* После создания необходимо вызывать setMembers.
|
50729
51191
|
*/
|
50730
|
-
constructor(_analyzer, _typeParameters, _isAspect, _isRefObject, _baseObjectType, _baseAspectTypes, _isHidden, _substitutionApplicationMode, _containingPackage) {
|
51192
|
+
constructor(_analyzer, _typeParameters, _isAspect, _isRefObject, _baseObjectType, _baseAspectTypes, _isHidden, _substitutionApplicationMode, _containingPackage, context) {
|
50731
51193
|
this._analyzer = _analyzer;
|
50732
51194
|
this._typeParameters = _typeParameters;
|
50733
51195
|
this._isAspect = _isAspect;
|
@@ -50742,6 +51204,12 @@ var IntrinsicAnonymousStructuredTypeEntity = class {
|
|
50742
51204
|
this.subkind = "anonymous";
|
50743
51205
|
this._safeBaseObjectType = new Cached();
|
50744
51206
|
this._safeBaseAspectTypes = new Cached();
|
51207
|
+
this._context = context ?? new EntityContext(
|
51208
|
+
getPackageContainingEntity(this),
|
51209
|
+
new EntityHidingMatcherWithinTypeEntity(this),
|
51210
|
+
void 0,
|
51211
|
+
void 0
|
51212
|
+
);
|
50745
51213
|
}
|
50746
51214
|
getNaming() {
|
50747
51215
|
return new EntityNaming_anonymous();
|
@@ -50805,6 +51273,9 @@ var IntrinsicAnonymousStructuredTypeEntity = class {
|
|
50805
51273
|
getContainingPackage() {
|
50806
51274
|
return this._containingPackage;
|
50807
51275
|
}
|
51276
|
+
getContext() {
|
51277
|
+
return this._context;
|
51278
|
+
}
|
50808
51279
|
};
|
50809
51280
|
IntrinsicAnonymousStructuredTypeEntity = __decorateClass([
|
50810
51281
|
entityToStringDecorator
|
@@ -50819,7 +51290,7 @@ function validateBaseTypeListAndCreateBaseTypes(analyzer, baseTypeList, entity,
|
|
50819
51290
|
if (unaliasedBaseType.isRefObject()) {
|
50820
51291
|
if (declaredBaseObjectType !== void 0) {
|
50821
51292
|
diagnostics.addDiagnostic(analyzer.createNodeDiagnostic(
|
50822
|
-
313 /*
|
51293
|
+
313 /* TypeCannotHaveMultipleBaseObjectTypes */,
|
50823
51294
|
baseTypeSpecifier
|
50824
51295
|
));
|
50825
51296
|
} else if (entity.isPlainObject()) {
|
@@ -50834,7 +51305,7 @@ function validateBaseTypeListAndCreateBaseTypes(analyzer, baseTypeList, entity,
|
|
50834
51305
|
));
|
50835
51306
|
} else if (!unaliasedBaseType.markedBasic() && !unaliasedBaseType.isAbstract()) {
|
50836
51307
|
diagnostics.addDiagnostic(analyzer.createNodeDiagnostic(
|
50837
|
-
314 /*
|
51308
|
+
314 /* TypeThatIsNotMarkedAsBasicCannotBeUsedAsBaseType */,
|
50838
51309
|
baseTypeSpecifier
|
50839
51310
|
));
|
50840
51311
|
} else {
|
@@ -50842,7 +51313,7 @@ function validateBaseTypeListAndCreateBaseTypes(analyzer, baseTypeList, entity,
|
|
50842
51313
|
}
|
50843
51314
|
} else if (unaliasedBaseType.isPlainObject()) {
|
50844
51315
|
diagnostics.addDiagnostic(analyzer.createNodeDiagnostic(
|
50845
|
-
315 /*
|
51316
|
+
315 /* PlainObjectTypeCannotBeUsedAsBaseType */,
|
50846
51317
|
baseTypeSpecifier
|
50847
51318
|
));
|
50848
51319
|
} else if (unaliasedBaseType.isAspect()) {
|
@@ -50922,6 +51393,9 @@ var SourceTypeExtensionEntity = class {
|
|
50922
51393
|
getTags() {
|
50923
51394
|
return this._analyzer.tags.ofNodeWithTags(this._node);
|
50924
51395
|
}
|
51396
|
+
getContext() {
|
51397
|
+
return EntityContext.fromSemanticContext(this._analyzer.semanticContext.ofTypeExtensionDeclarationBody(this._node));
|
51398
|
+
}
|
50925
51399
|
};
|
50926
51400
|
SourceTypeExtensionEntity = __decorateClass([
|
50927
51401
|
entityToStringDecorator
|
@@ -51160,12 +51634,15 @@ var SourceTypeParameterEntity = class {
|
|
51160
51634
|
getTags() {
|
51161
51635
|
return [];
|
51162
51636
|
}
|
51637
|
+
getContext() {
|
51638
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
51639
|
+
}
|
51163
51640
|
};
|
51164
51641
|
SourceTypeParameterEntity = __decorateClass([
|
51165
51642
|
entityToStringDecorator
|
51166
51643
|
], SourceTypeParameterEntity);
|
51167
51644
|
var IntrinsicTypeParameterEntity = class {
|
51168
|
-
constructor(_name, _constraint, _defaultValue, _containingEntity) {
|
51645
|
+
constructor(_name, _constraint, _defaultValue, _containingEntity, context) {
|
51169
51646
|
this._name = _name;
|
51170
51647
|
this._constraint = _constraint;
|
51171
51648
|
this._defaultValue = _defaultValue;
|
@@ -51173,6 +51650,12 @@ var IntrinsicTypeParameterEntity = class {
|
|
51173
51650
|
this.kind = 2 /* Type */;
|
51174
51651
|
this.typeEntityKind = 2 /* Parameter */;
|
51175
51652
|
this._typeParameterConstraint = new TypeParameterConstraint(_constraint);
|
51653
|
+
this._context = context ?? new EntityContext(
|
51654
|
+
getPackageContainingEntity(this),
|
51655
|
+
new EntityHidingMatcherWithinTypeEntity(this),
|
51656
|
+
void 0,
|
51657
|
+
void 0
|
51658
|
+
);
|
51176
51659
|
}
|
51177
51660
|
getName() {
|
51178
51661
|
return this._name;
|
@@ -51201,6 +51684,9 @@ var IntrinsicTypeParameterEntity = class {
|
|
51201
51684
|
getTags() {
|
51202
51685
|
return [];
|
51203
51686
|
}
|
51687
|
+
getContext() {
|
51688
|
+
return this._context;
|
51689
|
+
}
|
51204
51690
|
};
|
51205
51691
|
IntrinsicTypeParameterEntity = __decorateClass([
|
51206
51692
|
entityToStringDecorator
|
@@ -51313,6 +51799,9 @@ var PackageVariantTypeDeclarationEntity = class {
|
|
51313
51799
|
getBaseObjectType() {
|
51314
51800
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._analyzer.getImplicitBaseTypeForVariantType()));
|
51315
51801
|
}
|
51802
|
+
getContext() {
|
51803
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
51804
|
+
}
|
51316
51805
|
};
|
51317
51806
|
PackageVariantTypeDeclarationEntity = __decorateClass([
|
51318
51807
|
entityToStringDecorator
|
@@ -51386,6 +51875,9 @@ var AnonymousVariantTypeDeclarationEntity = class {
|
|
51386
51875
|
getBaseObjectType() {
|
51387
51876
|
return this._baseObjectType.getOrInsertWith(() => new BaseObjectType(this._analyzer.getImplicitBaseTypeForVariantType()));
|
51388
51877
|
}
|
51878
|
+
getContext() {
|
51879
|
+
return this._analyzer.createEntityContextForTypeDeclaration(this._node);
|
51880
|
+
}
|
51389
51881
|
};
|
51390
51882
|
AnonymousVariantTypeDeclarationEntity = __decorateClass([
|
51391
51883
|
entityToStringDecorator
|
@@ -51525,6 +52017,11 @@ var TypeMemberEntity;
|
|
51525
52017
|
return container.kind === "type" && container.typeEntity.typeEntityKind === 1 /* Structured */ && container.typeEntity.isAspect();
|
51526
52018
|
}
|
51527
52019
|
TypeMemberEntity7.isAspectTypeMember = isAspectTypeMember;
|
52020
|
+
function isRefObjectTypeMember(entity) {
|
52021
|
+
const container = entity.getContainer();
|
52022
|
+
return container.kind === "type" && container.typeEntity.typeEntityKind === 1 /* Structured */ && container.typeEntity.isRefObject();
|
52023
|
+
}
|
52024
|
+
TypeMemberEntity7.isRefObjectTypeMember = isRefObjectTypeMember;
|
51528
52025
|
function isStatic(entity) {
|
51529
52026
|
switch (entity.kind) {
|
51530
52027
|
case 0 /* Variable */:
|
@@ -51608,7 +52105,7 @@ var TypeMemberEntity;
|
|
51608
52105
|
case 6 /* DereferenceOperator */:
|
51609
52106
|
return new DereferenceOperator(entity, substitutions);
|
51610
52107
|
case 7 /* Constructor */:
|
51611
|
-
return new Constructor(entity, substitutions);
|
52108
|
+
return new Constructor(analyzer, entity, substitutions);
|
51612
52109
|
case 8 /* Destructor */:
|
51613
52110
|
return new Destructor(entity, substitutions);
|
51614
52111
|
case 9 /* Operator */:
|
@@ -51619,6 +52116,28 @@ var TypeMemberEntity;
|
|
51619
52116
|
}
|
51620
52117
|
TypeMemberEntity7.instantiate = instantiate;
|
51621
52118
|
})(TypeMemberEntity || (TypeMemberEntity = {}));
|
52119
|
+
var EntityContext = class _EntityContext {
|
52120
|
+
constructor(containingPackage, hidingMatcher, localizationContext, typeExtensionLookup) {
|
52121
|
+
this.containingPackage = containingPackage;
|
52122
|
+
this.hidingMatcher = hidingMatcher;
|
52123
|
+
this.localizationContext = localizationContext;
|
52124
|
+
this.typeExtensionLookup = typeExtensionLookup;
|
52125
|
+
}
|
52126
|
+
get lctxOrLocale() {
|
52127
|
+
return this.localizationContext ?? this.containingPackage.getLocale();
|
52128
|
+
}
|
52129
|
+
get packageDialect() {
|
52130
|
+
return this.containingPackage.getDialect();
|
52131
|
+
}
|
52132
|
+
static fromSemanticContext(semanticContext) {
|
52133
|
+
return new _EntityContext(
|
52134
|
+
semanticContext.getContainingPackage(),
|
52135
|
+
semanticContext.getHidingMatcher(),
|
52136
|
+
semanticContext.getLocalizationContext(),
|
52137
|
+
semanticContext
|
52138
|
+
);
|
52139
|
+
}
|
52140
|
+
};
|
51622
52141
|
function entityToStringDecorator(constructor) {
|
51623
52142
|
if (!("debuggerDisplay" in constructor.prototype)) {
|
51624
52143
|
Object.defineProperty(constructor.prototype, "debuggerDisplay", {
|
@@ -51851,6 +52370,65 @@ var EntityOrPackageNameTreeNode_node = class {
|
|
51851
52370
|
}
|
51852
52371
|
};
|
51853
52372
|
|
52373
|
+
// source/analysis/Localization.ts
|
52374
|
+
var Localization;
|
52375
|
+
((Localization2) => {
|
52376
|
+
class Original {
|
52377
|
+
constructor(locale) {
|
52378
|
+
this.locale = locale;
|
52379
|
+
this.kind = "original";
|
52380
|
+
}
|
52381
|
+
equals(other) {
|
52382
|
+
return this.kind === other.kind && this.locale === other.locale;
|
52383
|
+
}
|
52384
|
+
static ofEntity(entity) {
|
52385
|
+
const locale = getPackageContainingEntity(entity).getLocale();
|
52386
|
+
return new Localization2.Original(locale);
|
52387
|
+
}
|
52388
|
+
}
|
52389
|
+
Localization2.Original = Original;
|
52390
|
+
class Translated {
|
52391
|
+
constructor(translation) {
|
52392
|
+
this.translation = translation;
|
52393
|
+
this.kind = "translated";
|
52394
|
+
}
|
52395
|
+
get locale() {
|
52396
|
+
return this.translation.translationPackage.getTranslationLocale();
|
52397
|
+
}
|
52398
|
+
equals(other) {
|
52399
|
+
return this.kind === other.kind && this.translation.equals(other.translation);
|
52400
|
+
}
|
52401
|
+
}
|
52402
|
+
Localization2.Translated = Translated;
|
52403
|
+
})(Localization || (Localization = {}));
|
52404
|
+
var Translation = class {
|
52405
|
+
constructor(translationPackage) {
|
52406
|
+
this.translationPackage = translationPackage;
|
52407
|
+
}
|
52408
|
+
equals(other) {
|
52409
|
+
return this.translationPackage === other.translationPackage;
|
52410
|
+
}
|
52411
|
+
};
|
52412
|
+
var LocalizedName;
|
52413
|
+
((LocalizedName2) => {
|
52414
|
+
class Original {
|
52415
|
+
constructor(value, localization) {
|
52416
|
+
this.value = value;
|
52417
|
+
this.localization = localization;
|
52418
|
+
this.kind = "original";
|
52419
|
+
}
|
52420
|
+
}
|
52421
|
+
LocalizedName2.Original = Original;
|
52422
|
+
class Translated {
|
52423
|
+
constructor(value, localization) {
|
52424
|
+
this.value = value;
|
52425
|
+
this.localization = localization;
|
52426
|
+
this.kind = "translated";
|
52427
|
+
}
|
52428
|
+
}
|
52429
|
+
LocalizedName2.Translated = Translated;
|
52430
|
+
})(LocalizedName || (LocalizedName = {}));
|
52431
|
+
|
51854
52432
|
// source/emitter/Emitter.ts
|
51855
52433
|
import { CodeGenerator } from "@babel/generator";
|
51856
52434
|
|
@@ -52117,6 +52695,7 @@ var VariableEntityDetails = class {
|
|
52117
52695
|
this.isAbstract = false;
|
52118
52696
|
this.isTypeExtensionMemberAddedToPrototype = false;
|
52119
52697
|
this.isStatic = false;
|
52698
|
+
this.isConst = false;
|
52120
52699
|
}
|
52121
52700
|
};
|
52122
52701
|
var TypeOrExtensionEntityDetails = class {
|
@@ -52130,6 +52709,7 @@ var TypeOrExtensionEntityDetails = class {
|
|
52130
52709
|
* актуальную для них самих информацию, и анализ переопределённых членов типа не требуется.
|
52131
52710
|
*/
|
52132
52711
|
this.areOwnComputedNamesOfMembersResolved = false;
|
52712
|
+
this.implicitlyImplementedAbstractMembersByImplementingMember = /* @__PURE__ */ new Map();
|
52133
52713
|
}
|
52134
52714
|
};
|
52135
52715
|
var PackageEntityDetails = class {
|
@@ -54293,7 +54873,7 @@ var StandardTypes2 = class {
|
|
54293
54873
|
};
|
54294
54874
|
|
54295
54875
|
// source/emitter/EntityMap.ts
|
54296
|
-
var EntityMap = class {
|
54876
|
+
var EntityMap = class _EntityMap {
|
54297
54877
|
constructor(analyzer, targetPlatform) {
|
54298
54878
|
this._variables = /* @__PURE__ */ new Map();
|
54299
54879
|
this._functions = /* @__PURE__ */ new Map();
|
@@ -54321,6 +54901,7 @@ var EntityMap = class {
|
|
54321
54901
|
result.name = this.getNameText(entity.getName(), entity.getTags());
|
54322
54902
|
result.type = this.getType(entity.getType());
|
54323
54903
|
result.containingPackage = this.getContainingPackageAndAccumulateIfMember(entity, result);
|
54904
|
+
result.details.isConst = entity.isConstant();
|
54324
54905
|
result.details.isVariadicParameter = entity.subkind === "parameter" && entity.isVariadic();
|
54325
54906
|
if (entity.subkind === "package") {
|
54326
54907
|
result.isPackageMember = true;
|
@@ -54491,6 +55072,7 @@ var EntityMap = class {
|
|
54491
55072
|
break;
|
54492
55073
|
}
|
54493
55074
|
case 5 /* Indexer */: {
|
55075
|
+
result.parameters = owningEntity.getValueParameters().map((p) => this.getVariableEntity(p));
|
54494
55076
|
result.ifTypeMemberThenContainingType = this.getTypeOrExtensionEntity(
|
54495
55077
|
owningEntity.getContainer().getEntity()
|
54496
55078
|
);
|
@@ -54554,6 +55136,7 @@ var EntityMap = class {
|
|
54554
55136
|
break;
|
54555
55137
|
}
|
54556
55138
|
case 5 /* Indexer */: {
|
55139
|
+
result.parameters = owningEntity.getValueParameters().map((p) => this.getVariableEntity(p));
|
54557
55140
|
result.ifTypeMemberThenContainingType = this.getTypeOrExtensionEntity(
|
54558
55141
|
owningEntity.getContainer().getEntity()
|
54559
55142
|
);
|
@@ -54626,6 +55209,10 @@ var EntityMap = class {
|
|
54626
55209
|
}).toArray();
|
54627
55210
|
result.members = this.createTypeMembers(entity.getMembers());
|
54628
55211
|
result.details.isDefaultExport = this.isDefaultExport(entity);
|
55212
|
+
result.details.implicitlyImplementedAbstractMembersByImplementingMember = Query.from(this._analyzer.getTypeMemberImplementationCheckResult(entity).implicitImplementations.flatMap((i) => this.createImplicitAbstractMemberImplementationInfo(
|
55213
|
+
i.abstractMember,
|
55214
|
+
i.implementingMember
|
55215
|
+
))).groupByToMap((i) => i.implementingMember, (i) => i.abstractMember);
|
54629
55216
|
}
|
54630
55217
|
}
|
54631
55218
|
return result;
|
@@ -54908,6 +55495,101 @@ var EntityMap = class {
|
|
54908
55495
|
}
|
54909
55496
|
return unaliased;
|
54910
55497
|
}
|
55498
|
+
static {
|
55499
|
+
this.implicitImplementationMemberKindsMismatchErrorMessage = "\u0412\u0438\u0434 \u0430\u0431\u0441\u0442\u0440\u0430\u043A\u0442\u043D\u043E\u0433\u043E \u0447\u043B\u0435\u043D\u0430 \u0442\u0438\u043F\u0430 \u0434\u043E\u043B\u0436\u0435\u043D \u0441\u043E\u0432\u043F\u0430\u0434\u0430\u0442\u044C \u0441 \u0432\u0438\u0434\u043E\u043C \u0447\u043B\u0435\u043D\u0430 \u0442\u0438\u043F\u0430, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u0435\u0433\u043E \u043D\u0435\u044F\u0432\u043D\u043E \u0440\u0435\u0430\u043B\u0438\u0437\u0443\u0435\u0442.";
|
55500
|
+
}
|
55501
|
+
createImplicitAbstractMemberImplementationInfo(abstractMember, implementingMember) {
|
55502
|
+
const abstractMemberEntity = abstractMember.getEntity();
|
55503
|
+
const implementingMemberEntity = implementingMember.getEntity();
|
55504
|
+
switch (abstractMemberEntity.kind) {
|
55505
|
+
case 0 /* Variable */: {
|
55506
|
+
Debug.assert(
|
55507
|
+
implementingMemberEntity.kind === 0 /* Variable */,
|
55508
|
+
_EntityMap.implicitImplementationMemberKindsMismatchErrorMessage
|
55509
|
+
);
|
55510
|
+
return {
|
55511
|
+
abstractMember: this.getVariableEntity(abstractMemberEntity),
|
55512
|
+
implementingMember: this.getVariableEntity(implementingMemberEntity)
|
55513
|
+
};
|
55514
|
+
}
|
55515
|
+
case 1 /* Function */: {
|
55516
|
+
Debug.assert(
|
55517
|
+
implementingMemberEntity.kind === 1 /* Function */,
|
55518
|
+
_EntityMap.implicitImplementationMemberKindsMismatchErrorMessage
|
55519
|
+
);
|
55520
|
+
return {
|
55521
|
+
abstractMember: this.getFunctionEntity(abstractMemberEntity),
|
55522
|
+
implementingMember: this.getFunctionEntity(implementingMemberEntity)
|
55523
|
+
};
|
55524
|
+
}
|
55525
|
+
case 9 /* Operator */: {
|
55526
|
+
Debug.assert(
|
55527
|
+
implementingMemberEntity.kind === 9 /* Operator */,
|
55528
|
+
_EntityMap.implicitImplementationMemberKindsMismatchErrorMessage
|
55529
|
+
);
|
55530
|
+
return {
|
55531
|
+
abstractMember: this.getOperatorEntity(abstractMemberEntity),
|
55532
|
+
implementingMember: this.getOperatorEntity(implementingMemberEntity)
|
55533
|
+
};
|
55534
|
+
}
|
55535
|
+
case 5 /* Indexer */: {
|
55536
|
+
Debug.assert(
|
55537
|
+
implementingMemberEntity.kind === 5 /* Indexer */,
|
55538
|
+
_EntityMap.implicitImplementationMemberKindsMismatchErrorMessage
|
55539
|
+
);
|
55540
|
+
const result = new Array();
|
55541
|
+
const abstractGetterEntity = abstractMemberEntity.getGetter();
|
55542
|
+
Debug.assertNotNull(abstractGetterEntity);
|
55543
|
+
const implementingGetterEntity = implementingMemberEntity.getGetter();
|
55544
|
+
Debug.assertNotNull(implementingGetterEntity);
|
55545
|
+
result.push({
|
55546
|
+
abstractMember: this.getGetterEntity(abstractGetterEntity),
|
55547
|
+
implementingMember: this.getGetterEntity(implementingGetterEntity)
|
55548
|
+
});
|
55549
|
+
const abstractSetterEntity = abstractMemberEntity.getSetter();
|
55550
|
+
if (abstractSetterEntity !== void 0) {
|
55551
|
+
const implementingSetterEntity = implementingMemberEntity.getSetter();
|
55552
|
+
Debug.assertNotNull(implementingSetterEntity);
|
55553
|
+
result.push({
|
55554
|
+
abstractMember: this.getSetterEntity(abstractSetterEntity),
|
55555
|
+
implementingMember: this.getSetterEntity(implementingSetterEntity)
|
55556
|
+
});
|
55557
|
+
}
|
55558
|
+
return result;
|
55559
|
+
}
|
55560
|
+
case 6 /* DereferenceOperator */: {
|
55561
|
+
Debug.assert(
|
55562
|
+
implementingMemberEntity.kind === 6 /* DereferenceOperator */,
|
55563
|
+
_EntityMap.implicitImplementationMemberKindsMismatchErrorMessage
|
55564
|
+
);
|
55565
|
+
const result = new Array();
|
55566
|
+
const abstractGetterEntity = abstractMemberEntity.getGetter();
|
55567
|
+
Debug.assertNotNull(abstractGetterEntity);
|
55568
|
+
const implementingGetterEntity = implementingMemberEntity.getGetter();
|
55569
|
+
Debug.assertNotNull(implementingGetterEntity);
|
55570
|
+
result.push({
|
55571
|
+
abstractMember: this.getGetterEntity(abstractGetterEntity),
|
55572
|
+
implementingMember: this.getGetterEntity(implementingGetterEntity)
|
55573
|
+
});
|
55574
|
+
const abstractSetterEntity = abstractMemberEntity.getSetter();
|
55575
|
+
if (abstractSetterEntity !== void 0) {
|
55576
|
+
const implementingSetterEntity = implementingMemberEntity.getSetter();
|
55577
|
+
Debug.assertNotNull(implementingSetterEntity);
|
55578
|
+
result.push({
|
55579
|
+
abstractMember: this.getSetterEntity(abstractSetterEntity),
|
55580
|
+
implementingMember: this.getSetterEntity(implementingSetterEntity)
|
55581
|
+
});
|
55582
|
+
}
|
55583
|
+
return result;
|
55584
|
+
}
|
55585
|
+
case 7 /* Constructor */:
|
55586
|
+
Debug.unreachable("\u041A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u044B \u043D\u0435 \u043C\u043E\u0433\u0443 \u0438\u043C\u0435\u0442\u044C \u043D\u0435\u044F\u0432\u043D\u0443\u044E \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044E.");
|
55587
|
+
case 8 /* Destructor */:
|
55588
|
+
Debug.unreachable("\u0414\u0435\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440\u044B \u043D\u0435 \u043C\u043E\u0433\u0443 \u0438\u043C\u0435\u0442\u044C \u043D\u0435\u044F\u0432\u043D\u0443\u044E \u0440\u0435\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044E.");
|
55589
|
+
default:
|
55590
|
+
Debug.never(abstractMemberEntity);
|
55591
|
+
}
|
55592
|
+
}
|
54911
55593
|
};
|
54912
55594
|
var MappedVariableEntity = class {
|
54913
55595
|
constructor(originalEntity) {
|
@@ -56434,6 +57116,8 @@ var GeneralLowering = class {
|
|
56434
57116
|
const loweringContext = new GeneralLoweringContext(this._ectx);
|
56435
57117
|
const compoundDeclarationsLowering = new CompoundDeclarationsAndOperatorsLowering(loweringContext);
|
56436
57118
|
compoundDeclarationsLowering.lower(state);
|
57119
|
+
const implicitImplementationLowering = new ImplicitImplementationLowering(loweringContext);
|
57120
|
+
implicitImplementationLowering.lower(state);
|
56437
57121
|
const basicTypeExtensionMembersLowering = new TypeExtensionBasicMembersLowering(loweringContext);
|
56438
57122
|
basicTypeExtensionMembersLowering.lower(state);
|
56439
57123
|
const aspectsLowering = new AspectsLowering(loweringContext);
|
@@ -56779,6 +57463,13 @@ var GeneralLoweringContext = class {
|
|
56779
57463
|
return new VariableAccessExpression(AccessedVariable.fromEntity(symbolDeclaration), 0 /* Get */, void 0);
|
56780
57464
|
}
|
56781
57465
|
}
|
57466
|
+
isWriteableVariable(entity) {
|
57467
|
+
if (this.isComputedVariable(entity)) {
|
57468
|
+
return entity.setter !== void 0;
|
57469
|
+
} else {
|
57470
|
+
return !entity.details.isConst;
|
57471
|
+
}
|
57472
|
+
}
|
56782
57473
|
isComputedVariable(entity) {
|
56783
57474
|
return entity.getter !== void 0 || entity.setter !== void 0;
|
56784
57475
|
}
|
@@ -56934,6 +57625,176 @@ var ExecutableCodeLowering = class {
|
|
56934
57625
|
return this._ctx.createMemberAccessWithNullCheck(receiver, createMemberAccess, tempVariables, this._packageEntity);
|
56935
57626
|
}
|
56936
57627
|
};
|
57628
|
+
var ImplicitImplementationLowering = class {
|
57629
|
+
constructor(_ctx) {
|
57630
|
+
this._ctx = _ctx;
|
57631
|
+
}
|
57632
|
+
lower(state) {
|
57633
|
+
for (const declaration of state.enumerateDeclarations()) {
|
57634
|
+
if (declaration.kind === 24 /* PackageTypeDeclaration */) {
|
57635
|
+
const implicitImplementations = declaration.entity.details.implicitlyImplementedAbstractMembersByImplementingMember;
|
57636
|
+
if (implicitImplementations.size > 0) {
|
57637
|
+
const explicitImplementationDeclarations = new Array();
|
57638
|
+
for (const [implementingMember, implementedAbstractMembers] of implicitImplementations) {
|
57639
|
+
explicitImplementationDeclarations.push(this.createExplicitImplementation(
|
57640
|
+
implementingMember,
|
57641
|
+
implementedAbstractMembers,
|
57642
|
+
declaration.entity
|
57643
|
+
));
|
57644
|
+
}
|
57645
|
+
declaration.members = declaration.members.concat(explicitImplementationDeclarations);
|
57646
|
+
declaration.entity.members = declaration.entity.members.concat(explicitImplementationDeclarations.map((d) => d.entity));
|
57647
|
+
}
|
57648
|
+
}
|
57649
|
+
}
|
57650
|
+
}
|
57651
|
+
createExplicitImplementation(implementingMember, implementedAbstractMembers, containingType) {
|
57652
|
+
switch (implementingMember.kind) {
|
57653
|
+
case "method": {
|
57654
|
+
Debug.assert(implementedAbstractMembers.every((m) => m.kind === "method"));
|
57655
|
+
return this.createExplicitMethodImplementation(implementingMember, implementedAbstractMembers, containingType);
|
57656
|
+
}
|
57657
|
+
case "variable": {
|
57658
|
+
Debug.assert(implementedAbstractMembers.every((m) => m.kind === "variable"));
|
57659
|
+
return this.createExplicitFieldImplementation(implementingMember, implementedAbstractMembers, containingType);
|
57660
|
+
}
|
57661
|
+
default:
|
57662
|
+
Debug.never(implementingMember);
|
57663
|
+
}
|
57664
|
+
}
|
57665
|
+
// method(p1, p2) {
|
57666
|
+
// return base.method(p1, p2)
|
57667
|
+
// }
|
57668
|
+
createExplicitMethodImplementation(implementingMethod, implementedAbstractMethods, containingType) {
|
57669
|
+
const parameterEntities = implementingMethod.parameters.map((p) => new IntrinsicVariableEntity(p.name, p.type, p.containingPackage));
|
57670
|
+
const methodEntity = new IntrinsicFunctionEntity(
|
57671
|
+
0 /* RegularFunction */,
|
57672
|
+
implementingMethod.name,
|
57673
|
+
parameterEntities,
|
57674
|
+
implementingMethod.returnType,
|
57675
|
+
implementingMethod.containingPackage
|
57676
|
+
);
|
57677
|
+
methodEntity.ifTypeMemberThenContainingType = containingType;
|
57678
|
+
if (implementingMethod.details.hasComputedName !== void 0) {
|
57679
|
+
methodEntity.details.hasComputedName = { ...implementingMethod.details.hasComputedName };
|
57680
|
+
}
|
57681
|
+
methodEntity.details.overriddenMembers = [implementingMethod, ...implementedAbstractMethods];
|
57682
|
+
const parameterDeclarations = parameterEntities.map((e) => new ValueParameterDeclaration(
|
57683
|
+
e,
|
57684
|
+
void 0,
|
57685
|
+
false,
|
57686
|
+
void 0
|
57687
|
+
));
|
57688
|
+
const methodAccess = new MethodAccessExpression(
|
57689
|
+
new BaseExpression3(void 0),
|
57690
|
+
false,
|
57691
|
+
AccessedFunction5.fromEntity(implementingMethod),
|
57692
|
+
true,
|
57693
|
+
void 0,
|
57694
|
+
void 0
|
57695
|
+
);
|
57696
|
+
const args = new OrderedArguments(parameterEntities.map((e) => VariableAccessExpression.get(e)), false);
|
57697
|
+
const methodCall = new CallExpression5(
|
57698
|
+
methodAccess,
|
57699
|
+
false,
|
57700
|
+
args,
|
57701
|
+
false,
|
57702
|
+
implementingMethod.returnType,
|
57703
|
+
void 0
|
57704
|
+
);
|
57705
|
+
const body = new BlockStatement([new ReturnStatement3(methodCall, void 0)], void 0);
|
57706
|
+
return new MethodDeclaration3(
|
57707
|
+
[],
|
57708
|
+
new Modifiers(),
|
57709
|
+
parameterDeclarations,
|
57710
|
+
body,
|
57711
|
+
methodEntity,
|
57712
|
+
false,
|
57713
|
+
void 0,
|
57714
|
+
void 0
|
57715
|
+
);
|
57716
|
+
}
|
57717
|
+
// get field() {
|
57718
|
+
// return super.field
|
57719
|
+
// }
|
57720
|
+
// set field(value) {
|
57721
|
+
// super.field = value
|
57722
|
+
// }
|
57723
|
+
createExplicitFieldImplementation(implementingField, implementedAbstractFields, containingType) {
|
57724
|
+
const fieldEntity = new IntrinsicVariableEntity(
|
57725
|
+
implementingField.name,
|
57726
|
+
implementingField.type,
|
57727
|
+
implementingField.containingPackage
|
57728
|
+
);
|
57729
|
+
fieldEntity.ifTypeMemberThenContainingType = containingType;
|
57730
|
+
if (implementingField.details.hasComputedName !== void 0) {
|
57731
|
+
fieldEntity.details.hasComputedName = { ...implementingField.details.hasComputedName };
|
57732
|
+
}
|
57733
|
+
fieldEntity.details.overriddenMembers = [implementingField, ...implementedAbstractFields];
|
57734
|
+
const getter = this.createRedirectingGetter(implementingField);
|
57735
|
+
let setter;
|
57736
|
+
if (this._ctx.isWriteableVariable(implementingField)) {
|
57737
|
+
setter = this.createRedirectingSetter(implementingField);
|
57738
|
+
}
|
57739
|
+
return new ComputedFieldDeclaration(fieldEntity, new Modifiers(), getter, setter, void 0, void 0);
|
57740
|
+
}
|
57741
|
+
// get field() {
|
57742
|
+
// return super.field
|
57743
|
+
// }
|
57744
|
+
createRedirectingGetter(targetFieldEntity) {
|
57745
|
+
const getterEntity = new IntrinsicFunctionEntity(
|
57746
|
+
1 /* GetterOrSetter */,
|
57747
|
+
targetFieldEntity.name,
|
57748
|
+
[],
|
57749
|
+
targetFieldEntity.type,
|
57750
|
+
targetFieldEntity.containingPackage
|
57751
|
+
);
|
57752
|
+
const variableAccess = FieldAccessExpression.get(
|
57753
|
+
new BaseExpression3(void 0),
|
57754
|
+
false,
|
57755
|
+
targetFieldEntity,
|
57756
|
+
void 0,
|
57757
|
+
void 0
|
57758
|
+
);
|
57759
|
+
const body = new BlockStatement([new ReturnStatement3(variableAccess, void 0)], void 0);
|
57760
|
+
return new FieldGetterDeclaration3(getterEntity, [], body, void 0);
|
57761
|
+
}
|
57762
|
+
// set field(value) {
|
57763
|
+
// super.field = value
|
57764
|
+
// }
|
57765
|
+
createRedirectingSetter(targetFieldEntity) {
|
57766
|
+
const parameterEntity = new IntrinsicVariableEntity(
|
57767
|
+
EmitPhaseName.ofSetterParameter(targetFieldEntity.containingPackage.locale),
|
57768
|
+
targetFieldEntity.type,
|
57769
|
+
targetFieldEntity.containingPackage
|
57770
|
+
);
|
57771
|
+
const setterEntity = new IntrinsicFunctionEntity(
|
57772
|
+
1 /* GetterOrSetter */,
|
57773
|
+
targetFieldEntity.name,
|
57774
|
+
[parameterEntity],
|
57775
|
+
this._ctx.ectx.standardTypes.none,
|
57776
|
+
targetFieldEntity.containingPackage
|
57777
|
+
);
|
57778
|
+
const variableAccess = FieldAccessExpression.set(
|
57779
|
+
new BaseExpression3(void 0),
|
57780
|
+
false,
|
57781
|
+
targetFieldEntity,
|
57782
|
+
void 0,
|
57783
|
+
void 0
|
57784
|
+
);
|
57785
|
+
const parameterAccess = VariableAccessExpression.get(parameterEntity);
|
57786
|
+
const variableAssignment = new AssignmentStatement3(
|
57787
|
+
variableAccess,
|
57788
|
+
0 /* Equals */,
|
57789
|
+
parameterAccess,
|
57790
|
+
void 0,
|
57791
|
+
void 0,
|
57792
|
+
new AssignmentEmitOptions(false, false, false)
|
57793
|
+
);
|
57794
|
+
const body = new BlockStatement([variableAssignment], void 0);
|
57795
|
+
return new FieldSetterDeclaration3(setterEntity, [], body, parameterEntity, void 0);
|
57796
|
+
}
|
57797
|
+
};
|
56937
57798
|
var CompoundDeclarationsAndOperatorsLowering = class {
|
56938
57799
|
constructor(_ctx) {
|
56939
57800
|
this._ctx = _ctx;
|
@@ -57340,7 +58201,10 @@ var AspectsLowering = class {
|
|
57340
58201
|
affectsDerivedMembers: false
|
57341
58202
|
};
|
57342
58203
|
const getter = this.createRedirectingGetter(targetVariableEntity);
|
57343
|
-
|
58204
|
+
let setter;
|
58205
|
+
if (this._ctx.isWriteableVariable(aspectVariableEntity)) {
|
58206
|
+
setter = this.createRedirectingSetter(targetVariableEntity);
|
58207
|
+
}
|
57344
58208
|
return new ComputedFieldDeclaration(entity, new Modifiers(), getter, setter, void 0, void 0);
|
57345
58209
|
}
|
57346
58210
|
// get [Aspect_variable]() {
|
@@ -60253,12 +61117,11 @@ var IrBuilder = class {
|
|
60253
61117
|
}
|
60254
61118
|
}
|
60255
61119
|
} else {
|
60256
|
-
const isResultNone = this._analyzer.isFunctionResultNone(node);
|
60257
61120
|
const expression = this.buildExpression(node.expressionOrStatementList);
|
60258
|
-
if (
|
60259
|
-
statements = [new ExpressionStatement3(expression, this.getSourceLocation(node.expressionOrStatementList))];
|
60260
|
-
} else {
|
61121
|
+
if (this._analyzer.isFunctionBlockWithImplicitlyReturnedExpression(node)) {
|
60261
61122
|
statements = [new ReturnStatement3(expression, void 0)];
|
61123
|
+
} else {
|
61124
|
+
statements = [new ExpressionStatement3(expression, this.getSourceLocation(node.expressionOrStatementList))];
|
60262
61125
|
}
|
60263
61126
|
}
|
60264
61127
|
return new BlockStatement(statements, this.getSourceLocation(node));
|
@@ -62156,9 +63019,9 @@ var IrBuilder = class {
|
|
62156
63019
|
case "unresolved":
|
62157
63020
|
throw new EmitterError("Invalid or unresolved type");
|
62158
63021
|
case "union":
|
62159
|
-
throw new EmitterError("Union type
|
63022
|
+
throw new EmitterError("Union type cannot be used as accessed type.");
|
62160
63023
|
case "intersection":
|
62161
|
-
throw new EmitterError("Intersection type
|
63024
|
+
throw new EmitterError("Intersection type cannot be used as accessed type.");
|
62162
63025
|
default:
|
62163
63026
|
Debug.never(type);
|
62164
63027
|
}
|
@@ -64616,7 +65479,7 @@ var ImportDirectivesCreator = class {
|
|
64616
65479
|
if (defaultImport === void 0) {
|
64617
65480
|
defaultImport = EmitPhaseName.ofDefaultImport(this._locale, this._id++);
|
64618
65481
|
} else if (specifiers.length !== 0) {
|
64619
|
-
Logger.error("Cjs module
|
65482
|
+
Logger.error("Cjs module cannot contain both default and named exports.");
|
64620
65483
|
}
|
64621
65484
|
result = new CjsModuleImportDirectiveStatement(
|
64622
65485
|
defaultImport,
|
@@ -64869,18 +65732,6 @@ export {
|
|
64869
65732
|
DiagnosticData,
|
64870
65733
|
DiagnosticKind,
|
64871
65734
|
DiagnosticFlags,
|
64872
|
-
getUnescapedTextFromTextToken,
|
64873
|
-
unwrapParenthesizedExpressions,
|
64874
|
-
getParentSkippingParenthesizedExpressions,
|
64875
|
-
unaliasType,
|
64876
|
-
getPackageContainingEntity,
|
64877
|
-
findTag,
|
64878
|
-
getRequiredTypeParameterCount,
|
64879
|
-
flattenPackageMemberDeclarationList,
|
64880
|
-
flattenTypeMemberDeclarationList,
|
64881
|
-
isComputedVariableEntity,
|
64882
|
-
EntityOrPackageNameTreeNode_entity,
|
64883
|
-
EntityOrPackageNameTreeNode_node,
|
64884
65735
|
Localization,
|
64885
65736
|
Translation,
|
64886
65737
|
LocalizedName,
|
@@ -65054,7 +65905,20 @@ export {
|
|
65054
65905
|
isEntityWithTags,
|
65055
65906
|
isTypeMemberEntity,
|
65056
65907
|
TypeMemberEntity,
|
65908
|
+
EntityContext,
|
65057
65909
|
entityToStringDecorator,
|
65910
|
+
getUnescapedTextFromTextToken,
|
65911
|
+
unwrapParenthesizedExpressions,
|
65912
|
+
getParentSkippingParenthesizedExpressions,
|
65913
|
+
unaliasType,
|
65914
|
+
getPackageContainingEntity,
|
65915
|
+
findTag,
|
65916
|
+
getRequiredTypeParameterCount,
|
65917
|
+
flattenPackageMemberDeclarationList,
|
65918
|
+
flattenTypeMemberDeclarationList,
|
65919
|
+
isComputedVariableEntity,
|
65920
|
+
EntityOrPackageNameTreeNode_entity,
|
65921
|
+
EntityOrPackageNameTreeNode_node,
|
65058
65922
|
TagType,
|
65059
65923
|
TagFunction,
|
65060
65924
|
TagArgument_string,
|