@artel/artc 0.6.25223 → 0.6.25225

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +85 -79
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +797 -674
  5. package/build/{chunk-DZNNWICP.js → chunk-TFTCV5R5.js} +6604 -5875
  6. package/build/{chunk-AX3LQ2CF.js → chunk-UB6LHKS5.js} +3 -3
  7. package/build/{chunk-LG4Z4SWO.js → chunk-Z6TZA6SN.js} +3 -3
  8. package/build/types/analysis/AccessedFunction.d.ts +53 -0
  9. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +16 -15
  10. package/build/types/analysis/Analyzer.d.ts +142 -127
  11. package/build/types/analysis/CallExpressionMeaning.d.ts +10 -10
  12. package/build/types/analysis/DiagnosticCollector.d.ts +17 -17
  13. package/build/types/analysis/EntityLocalizationHelper.d.ts +6 -6
  14. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +10 -10
  15. package/build/types/analysis/ImportedPackageNameTree.d.ts +1 -0
  16. package/build/types/analysis/LocalizationContext.d.ts +2 -2
  17. package/build/types/analysis/{PropertyAccessExpressionMeaning.d.ts → MemberAccessExpressionMeaning.d.ts} +27 -21
  18. package/build/types/analysis/NamedTypeResolver.d.ts +5 -1
  19. package/build/types/analysis/NamedTypeSpecifierResolver.d.ts +4 -1
  20. package/build/types/analysis/NodeTypeUtils.d.ts +13 -13
  21. package/build/types/analysis/OperationOverloadResolver.d.ts +1 -1
  22. package/build/types/analysis/Scope.d.ts +15 -15
  23. package/build/types/analysis/SemanticContext.d.ts +29 -29
  24. package/build/types/analysis/SemanticContextBuilder.d.ts +22 -22
  25. package/build/types/analysis/SourceFileMembers.d.ts +2 -2
  26. package/build/types/analysis/StatementBlockScopeBuilder.d.ts +12 -12
  27. package/build/types/analysis/{SubstitutedMethod.d.ts → SubstitutedFunction.d.ts} +14 -14
  28. package/build/types/analysis/TagMeaning.d.ts +23 -20
  29. package/build/types/analysis/Tags.d.ts +6 -6
  30. package/build/types/analysis/TypeNarrower.d.ts +21 -21
  31. package/build/types/analysis/Utils.d.ts +15 -3
  32. package/build/types/analysis/WellKnownDeclarations.d.ts +4 -4
  33. package/build/types/analysis/control-flow/GraphBuilder.d.ts +43 -0
  34. package/build/types/analysis/{ControlFlowGraphVisualizer.d.ts → control-flow/GraphVisualizer.d.ts} +3 -3
  35. package/build/types/analysis/control-flow/NarrowableExpression.d.ts +5 -0
  36. package/build/types/analysis/control-flow/Nodes.d.ts +91 -0
  37. package/build/types/analysis/control-flow/index.d.ts +4 -0
  38. package/build/types/api/Api.d.ts +3 -3
  39. package/build/types/common/HelperPhrases.d.ts +3 -2
  40. package/build/types/diagnostic/DiagnosticCode.d.ts +130 -131
  41. package/build/types/emitter/EmitPhaseName.d.ts +8 -8
  42. package/build/types/emitter/Emitter.d.ts +4 -4
  43. package/build/types/emitter/EmitterContext.d.ts +2 -2
  44. package/build/types/emitter/Entities.d.ts +31 -29
  45. package/build/types/emitter/EntityMap.d.ts +8 -8
  46. package/build/types/emitter/IrBuilder.d.ts +18 -18
  47. package/build/types/emitter/IrToJs.d.ts +9 -9
  48. package/build/types/emitter/Transformer.d.ts +37 -37
  49. package/build/types/emitter/ir/AccessedEntities.d.ts +5 -5
  50. package/build/types/emitter/ir/ComputedAccess.d.ts +5 -5
  51. package/build/types/emitter/ir/EmitOptions.d.ts +41 -27
  52. package/build/types/emitter/ir/Nodes.d.ts +141 -140
  53. package/build/types/emitter/ir/types.d.ts +8 -8
  54. package/build/types/entities/ConstructorEntity.d.ts +9 -9
  55. package/build/types/entities/DereferenceOperatorEntity.d.ts +4 -4
  56. package/build/types/entities/DestructorEntity.d.ts +4 -4
  57. package/build/types/entities/{MethodEntity.d.ts → FunctionEntity.d.ts} +36 -36
  58. package/build/types/entities/{MethodTypeEntity.d.ts → FunctionTypeEntity.d.ts} +23 -23
  59. package/build/types/entities/GetterEntity.d.ts +9 -9
  60. package/build/types/entities/IndexerEntity.d.ts +4 -4
  61. package/build/types/entities/SetterEntity.d.ts +9 -9
  62. package/build/types/entities/TypeEntity.d.ts +3 -3
  63. package/build/types/entities/TypeEntityMembers.d.ts +3 -3
  64. package/build/types/entities/TypeParameterEntity.d.ts +2 -2
  65. package/build/types/entities/VariableEntity.d.ts +32 -32
  66. package/build/types/entities/index.d.ts +14 -14
  67. package/build/types/services/CompletionService.d.ts +8 -9
  68. package/build/types/services/DisplayService.d.ts +72 -69
  69. package/build/types/services/HoverService.d.ts +1 -1
  70. package/build/types/services/NodeSemanticInfo.d.ts +26 -21
  71. package/build/types/services/SemanticTokensService.d.ts +6 -6
  72. package/build/types/services/SourceFileItemsService.d.ts +11 -11
  73. package/build/types/services/TypeDefinitionService.d.ts +2 -2
  74. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +10 -10
  75. package/build/types/services/signature-help/TypeParameterSignatureHelpProvider.d.ts +1 -1
  76. package/build/types/services/source-generation/EntityToSyntax.d.ts +10 -9
  77. package/build/types/tree/NodeKind.d.ts +27 -27
  78. package/build/types/tree/green/Nodes.d.ts +127 -128
  79. package/build/types/tree/green/SyntaxFactory.d.ts +20 -19
  80. package/build/types/tree/green/SyntaxToCode.d.ts +23 -21
  81. package/build/types/tree/red/Nodes.d.ts +173 -172
  82. package/build/types/ts-interop/Entities.d.ts +28 -28
  83. package/build/types/ts-interop/TsInteropContext.d.ts +2 -1
  84. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +1 -1
  85. package/build/types/ts-interop/TsTypeMembersCreator.d.ts +1 -1
  86. package/build/types/types/{MethodType.d.ts → FunctionType.d.ts} +6 -6
  87. package/build/types/types/IntersectionType.d.ts +20 -0
  88. package/build/types/types/ParameterType.d.ts +6 -3
  89. package/build/types/types/StandardTypes.d.ts +2 -2
  90. package/build/types/types/Type.d.ts +3 -2
  91. package/build/types/types/TypeFactory.d.ts +8 -6
  92. package/build/types/types/TypeMembers.d.ts +8 -8
  93. package/build/types/types/index.d.ts +2 -1
  94. package/package.json +1 -1
  95. package/build/types/analysis/AccessedMethod.d.ts +0 -53
  96. package/build/types/analysis/ControlFlowGraphBuilder.d.ts +0 -129
@@ -27,48 +27,48 @@ export declare class DiagnosticCollector {
27
27
  private collectNotTranslatedTypeMembers;
28
28
  private createNotTranslatedEntitiesDiagnostic;
29
29
  private checkAllDefaultConstructorArgumentsAreNamed;
30
- private checkPackageMethodDeclaration;
30
+ private checkPackageFunctionDeclaration;
31
31
  private checkPackageVariableGetterDeclaration;
32
32
  private checkPackageVariableSetterDeclaration;
33
- private checkTypeConstructorDeclaration;
34
- private checkTypeMethodDeclaration;
33
+ private checkConstructorDeclaration;
34
+ private checkMethodDeclaration;
35
35
  private checkOperatorDeclaration;
36
- private checkTypeVariableDeclaration;
37
- private checkTypeVariableGetterDeclaration;
38
- private checkTypeVariableSetterDeclaration;
39
- private checkTypeIndexedGetterDeclaration;
40
- private checkTypeIndexedSetterDeclaration;
41
- private checkTypeDereferencedVariableGetterDeclaration;
42
- private checkTypeDereferencedVariableSetterDeclaration;
43
- private checkNestedMethodDeclaration;
44
- private checkPossibleGeneratorMethodReturnType;
36
+ private checkFieldDeclaration;
37
+ private checkFieldGetterDeclaration;
38
+ private checkFieldSetterDeclaration;
39
+ private checkIndexedElementGetterDeclaration;
40
+ private checkIndexedElementSetterDeclaration;
41
+ private checkDereferencedVariableGetterDeclaration;
42
+ private checkDereferencedVariableSetterDeclaration;
43
+ private checkNestedFunctionDeclaration;
44
+ private checkPossibleGeneratorFunctionReturnType;
45
45
  private checkReturnStatement;
46
46
  private checkYieldStatement;
47
47
  private checkTypeMemberBodyPresence;
48
48
  private tryGetTypeMemberDeclarationEntity;
49
49
  private isAspectTypeMemberDeclaration;
50
50
  private collectIdentifierExpressionDiagnostics;
51
- private collectPropertyAccessExpressionDiagnostics;
51
+ private collectMemberAccessExpressionDiagnostics;
52
52
  private addDiagnosticsFromMatchResult;
53
53
  private checkStatementForVariablesUsedBeforeBeingAssigned;
54
54
  private checkExpressionTypeAssignableToTargetType;
55
55
  private addTypeAssignabilityDiagnosticIfBothTypesResolved;
56
56
  private checkAssignmentIsValid;
57
57
  private checkAssignmentToIdentifierExpression;
58
- private checkAssignmentToPropertyAccessExpression;
58
+ private checkAssignmentToMemberAccessExpression;
59
59
  private checkAssignmentToVariable;
60
60
  private checkAssignmentToPackageVariable;
61
- private checkAssignmentToTypeVariable;
61
+ private checkAssignmentToField;
62
62
  private checkAssignmentToObjectExpression;
63
63
  private checkAssignmentToDereferenceExpression;
64
64
  private checkAssignmentToIndexedAccessExpression;
65
65
  private checkOptionalChainingIsUsedOnTheLeftSideOfAssignment;
66
66
  private checkGenericSpecializationExpression;
67
- private checkMethodSpecialization;
67
+ private checkFunctionSpecialization;
68
68
  private checkTypeSpecialization;
69
69
  private checkSpecializationOfDeclarationWithParameters;
70
70
  /**
71
- * @returns `true` если была ошибка, иначе `false`.
71
+ * @returns `true` если не было ошибки, иначе `false`.
72
72
  */
73
73
  private checkTypeArgumentCount;
74
74
  private checkParameterDeclaration;
@@ -1,17 +1,17 @@
1
1
  import { LocalizedSubprogramSignature, LocalizedTypeHeader, TypeEntityWithHeaderLocalization } from '../analysis/AnalyzedTranslationPackage.js';
2
2
  import { Analyzer } from '../analysis/index.js';
3
3
  import { Localization } from '../analysis/Localization.js';
4
- import { ConstructorEntity, DestructorEntity, IndexerEntity, MethodEntity, MethodTypeEntity, OperatorEntity } from '../entities/index.js';
4
+ import { ConstructorEntity, DestructorEntity, FunctionEntity, FunctionTypeEntity, IndexerEntity, OperatorEntity } from '../entities/index.js';
5
5
  import * as types from '../types/index.js';
6
6
  export declare class EntityLocalizationHelper {
7
- static getLocalizedMethodSignature(method: MethodEntity, localization: Localization): LocalizedSubprogramSignature;
7
+ static getLocalizedFunctionSignature(func: FunctionEntity, localization: Localization): LocalizedSubprogramSignature;
8
8
  static getLocalizedOperatorSignature(operator: OperatorEntity, localization: Localization): LocalizedSubprogramSignature;
9
- static getLocalizedMethodTypeSignature(methodType: MethodTypeEntity, localization: Localization): LocalizedSubprogramSignature;
9
+ static getLocalizedFunctionTypeSignature(functionType: FunctionTypeEntity, localization: Localization): LocalizedSubprogramSignature;
10
10
  static getLocalizedConstructorSignature(constructor: ConstructorEntity, localization: Localization): LocalizedSubprogramSignature;
11
11
  static getLocalizedDestructorSignature(destructor: DestructorEntity, localization: Localization): LocalizedSubprogramSignature;
12
12
  static getLocalizedIndexerSignature(indexer: IndexerEntity, localization: Localization): LocalizedSubprogramSignature;
13
13
  static getLocalizedTypeHeader(type: TypeEntityWithHeaderLocalization, localization: Localization): LocalizedTypeHeader;
14
- static getLocalizedSignatureTypeOfMethod(analyzer: Analyzer, method: MethodEntity, signatureType: types.MethodType, localization: Localization): types.MethodType;
15
- static getLocalizedSignatureTypeOfOperator(analyzer: Analyzer, operator: OperatorEntity, signatureType: types.MethodType, localization: Localization): types.MethodType;
16
- static localizeMethodType(analyzer: Analyzer, type: types.MethodType, localizedSignature: LocalizedSubprogramSignature): types.MethodType;
14
+ static getLocalizedSignatureTypeOfFunction(analyzer: Analyzer, func: FunctionEntity, signatureType: types.FunctionType, localization: Localization): types.FunctionType;
15
+ static getLocalizedSignatureTypeOfOperator(analyzer: Analyzer, operator: OperatorEntity, signatureType: types.FunctionType, localization: Localization): types.FunctionType;
16
+ static localizeFunctionType(analyzer: Analyzer, type: types.FunctionType, localizedSignature: LocalizedSubprogramSignature): types.FunctionType;
17
17
  }
@@ -3,7 +3,7 @@ import { Diagnostic } from '../diagnostic/Diagnostic.js';
3
3
  import { NamedTypeEntity, PackageAliasEntity, VariableEntity } from '../entities/index.js';
4
4
  import * as tree from '../tree/index.js';
5
5
  import * as types from '../types/index.js';
6
- import { AccessedMethod } from './AccessedMethod.js';
6
+ import { AccessedFunction } from './AccessedFunction.js';
7
7
  import { FoundAnonymousDeclaration, FoundNamedDeclaration } from './FoundDeclaration.js';
8
8
  import { PackageNameTreeNode } from './ImportedPackageNameTree.js';
9
9
  import * as scope from './Scope.js';
@@ -17,8 +17,8 @@ export declare class Resolver {
17
17
  constructor(analyzer: Analyzer, node: tree.IdentifierExpression, targetTypeHint: TargetTypeHint | undefined);
18
18
  resolve(): ResolutionResult;
19
19
  private tryResolveOperatorAccessMeaning;
20
- private resolveMethodOverload;
21
- private createAccessedMethod;
20
+ private resolveFunctionOverload;
21
+ private createAccessedFunction;
22
22
  private convertSyntacticAccessKind;
23
23
  }
24
24
  export declare class ResolutionResult {
@@ -34,19 +34,19 @@ export declare class ResolutionResult {
34
34
  */
35
35
  dependsOnTargetType?: boolean);
36
36
  }
37
- export type Meaning = Meaning_variableAccess | Meaning_methodAccess | Meaning_operatorAccess | Meaning_packageNameSegmentAccess | Meaning_packageAliasAccess | Meaning_typeAccess | Meaning_mixedAmbiguousAccess | Meaning_unresolved;
37
+ export type Meaning = Meaning_variableAccess | Meaning_functionAccess | Meaning_operatorAccess | Meaning_packageNameSegmentAccess | Meaning_packageAliasAccess | Meaning_typeAccess | Meaning_mixedAmbiguousAccess | Meaning_unresolved;
38
38
  declare class Meaning_variableAccess {
39
39
  readonly variable: FoundNamedDeclaration<AccessedVariable>;
40
40
  readonly accessKind: AccessKind;
41
41
  readonly kind = "variable-access";
42
42
  constructor(variable: FoundNamedDeclaration<AccessedVariable>, accessKind: AccessKind);
43
43
  }
44
- declare class Meaning_methodAccess {
45
- readonly candidates: readonly FoundNamedDeclaration<AccessedMethod>[];
46
- readonly suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[];
47
- readonly kind = "method-access";
48
- get singleSuitableMethod(): FoundNamedDeclaration<AccessedMethod> | undefined;
49
- constructor(candidates: readonly FoundNamedDeclaration<AccessedMethod>[], suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[]);
44
+ declare class Meaning_functionAccess {
45
+ readonly candidates: readonly FoundNamedDeclaration<AccessedFunction>[];
46
+ readonly suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[];
47
+ readonly kind = "function-access";
48
+ get singleSuitableFunction(): FoundNamedDeclaration<AccessedFunction> | undefined;
49
+ constructor(candidates: readonly FoundNamedDeclaration<AccessedFunction>[], suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[]);
50
50
  }
51
51
  declare class Meaning_operatorAccess {
52
52
  readonly candidates: readonly FoundAnonymousDeclaration<types.Operator>[];
@@ -11,6 +11,7 @@ export declare class ImportedPackageNameTree {
11
11
  export interface PackageNameTreeNode {
12
12
  readonly name: Name;
13
13
  readonly package: ImportedPackage | undefined;
14
+ readonly parent: PackageNameTreeNode | undefined;
14
15
  getChild(name: Name): PackageNameTreeNode | undefined;
15
16
  hasChild(name: Name): boolean;
16
17
  getChildren(): Iterable<PackageNameTreeNode>;
@@ -1,5 +1,5 @@
1
1
  import { Name, PackageLocale } from '../common/index.js';
2
- import { AliasTypeEntity, MethodEntity, PackageAliasEntity, PackageEntity, PackageMethodTypeEntity, PackageStructuredTypeEntity, PackageVariantTypeEntity, TypeOrExtensionEntity, TypeParameterEntity, VariableEntity } from '../entities/index.js';
2
+ import { AliasTypeEntity, FunctionEntity, PackageAliasEntity, PackageEntity, PackageFunctionTypeEntity, PackageStructuredTypeEntity, PackageVariantTypeEntity, TypeOrExtensionEntity, TypeParameterEntity, VariableEntity } from '../entities/index.js';
3
3
  import { AnalyzedTranslationPackage, TranslatedTypeEntityMembers } from './AnalyzedTranslationPackage.js';
4
4
  export declare class LocalizationContext {
5
5
  readonly originalLocale: PackageLocale;
@@ -11,4 +11,4 @@ export declare class LocalizationContext {
11
11
  getTranslatedTypeOrExtensionEntityMembers(entity: TypeOrExtensionEntity): TranslatedTypeEntityMembers | undefined;
12
12
  getEntityName(entity: NamedEntity): Name;
13
13
  }
14
- export type NamedEntity = VariableEntity | PackageVariantTypeEntity | MethodEntity | TypeParameterEntity | PackageMethodTypeEntity | PackageStructuredTypeEntity | PackageAliasEntity | AliasTypeEntity;
14
+ export type NamedEntity = VariableEntity | PackageVariantTypeEntity | FunctionEntity | TypeParameterEntity | PackageFunctionTypeEntity | PackageStructuredTypeEntity | PackageAliasEntity | AliasTypeEntity;
@@ -1,11 +1,12 @@
1
1
  import { AccessKind } from '../common/index.js';
2
2
  import { Diagnostic } from '../diagnostic/Diagnostic.js';
3
- import { PackageTypeEntity, PackageVariableEntity } from '../entities/index.js';
3
+ import { Entity, PackageTypeEntity, PackageVariableEntity } from '../entities/index.js';
4
4
  import * as tree from '../tree/index.js';
5
5
  import * as types from '../types/index.js';
6
- import { AccessedMethod } from './AccessedMethod.js';
6
+ import { AccessedFunction } from './AccessedFunction.js';
7
7
  import { FoundAnonymousDeclaration, FoundNamedDeclaration } from './FoundDeclaration.js';
8
8
  import { PackageNameTreeNode } from './ImportedPackageNameTree.js';
9
+ import { WithLocalization } from './Localization.js';
9
10
  import { Analyzer, TargetTypeHint } from './index.js';
10
11
  export declare class Resolver {
11
12
  private readonly _semanticContext;
@@ -15,17 +16,17 @@ export declare class Resolver {
15
16
  private get propertySearchName();
16
17
  private get semanticContext();
17
18
  private get receiver();
18
- constructor(analyzer: Analyzer, node: tree.PropertyAccessExpression, targetTypeHint: TargetTypeHint | undefined);
19
+ constructor(analyzer: Analyzer, node: tree.MemberAccessExpression, targetTypeHint: TargetTypeHint | undefined);
19
20
  resolve(): ResolutionResult;
20
21
  private resolvePackageAliasMemberAccessMeaning;
21
22
  private resolvePackageMemberAccessMeaning;
22
23
  private resolvePackageNameSegmentAccessMeaning;
23
- private createAccessedMethodFromPackageMember;
24
+ private createAccessedFunctionFromPackageMember;
24
25
  private resolveStaticMemberOrVariantAccessMeaning;
25
- private createAccessedMethodFromTypeMember;
26
+ private createAccessedFunctionFromTypeMember;
26
27
  private resolveInstanceMemberAccessMeaning;
27
28
  private tryResolveInstanceOperatorAccessMeaning;
28
- private resolveMethodOverload;
29
+ private resolveFunctionOverload;
29
30
  private convertSyntacticAccessKind;
30
31
  }
31
32
  export declare class ResolutionResult {
@@ -41,19 +42,19 @@ export declare class ResolutionResult {
41
42
  */
42
43
  dependsOnTargetType?: boolean);
43
44
  }
44
- export type Meaning = Meaning_packageVariableAccess | Meaning_packageMethodAccess | Meaning_packageTypeAccess | Meaning_packageNameSegmentAccess | Meaning_staticVariableAccess | Meaning_staticMethodAccess | Meaning_instanceVariableAccess | Meaning_instanceMethodAccess | Meaning_operatorAccess | Meaning_unresolved;
45
+ export type Meaning = Meaning_packageVariableAccess | Meaning_packageFunctionAccess | Meaning_packageTypeAccess | Meaning_packageNameSegmentAccess | Meaning_staticVariableAccess | Meaning_staticMethodAccess | Meaning_instanceVariableAccess | Meaning_instanceMethodAccess | Meaning_operatorAccess | Meaning_mixedAmbiguousAccess | Meaning_unresolved;
45
46
  declare class Meaning_packageVariableAccess {
46
47
  readonly variable: FoundNamedDeclaration<PackageVariableEntity>;
47
48
  readonly accessKind: AccessKind;
48
49
  readonly kind = "package-variable-access";
49
50
  constructor(variable: FoundNamedDeclaration<PackageVariableEntity>, accessKind: AccessKind);
50
51
  }
51
- declare class Meaning_packageMethodAccess {
52
- readonly candidates: readonly FoundNamedDeclaration<AccessedMethod>[];
53
- readonly suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[];
54
- readonly kind = "package-method-access";
55
- get singleSuitableMethod(): FoundNamedDeclaration<AccessedMethod> | undefined;
56
- constructor(candidates: readonly FoundNamedDeclaration<AccessedMethod>[], suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[]);
52
+ declare class Meaning_packageFunctionAccess {
53
+ readonly candidates: readonly FoundNamedDeclaration<AccessedFunction>[];
54
+ readonly suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[];
55
+ readonly kind = "package-function-access";
56
+ get singleSuitableFunction(): FoundNamedDeclaration<AccessedFunction> | undefined;
57
+ constructor(candidates: readonly FoundNamedDeclaration<AccessedFunction>[], suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[]);
57
58
  }
58
59
  declare class Meaning_packageTypeAccess {
59
60
  readonly candidates: readonly FoundNamedDeclaration<PackageTypeEntity>[];
@@ -76,11 +77,11 @@ declare class Meaning_staticVariableAccess {
76
77
  }
77
78
  declare class Meaning_staticMethodAccess {
78
79
  readonly type: types.Type;
79
- readonly candidates: readonly FoundNamedDeclaration<AccessedMethod>[];
80
- readonly suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[];
80
+ readonly candidates: readonly FoundNamedDeclaration<AccessedFunction>[];
81
+ readonly suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[];
81
82
  readonly kind = "static-method-access";
82
- get singleSuitableMethod(): FoundNamedDeclaration<AccessedMethod> | undefined;
83
- constructor(type: types.Type, candidates: readonly FoundNamedDeclaration<AccessedMethod>[], suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[]);
83
+ get singleSuitableFunction(): FoundNamedDeclaration<AccessedFunction> | undefined;
84
+ constructor(type: types.Type, candidates: readonly FoundNamedDeclaration<AccessedFunction>[], suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[]);
84
85
  }
85
86
  declare class Meaning_instanceVariableAccess {
86
87
  readonly variable: FoundNamedDeclaration<types.Variable>;
@@ -89,11 +90,11 @@ declare class Meaning_instanceVariableAccess {
89
90
  constructor(variable: FoundNamedDeclaration<types.Variable>, accessKind: AccessKind);
90
91
  }
91
92
  declare class Meaning_instanceMethodAccess {
92
- readonly candidates: readonly FoundNamedDeclaration<AccessedMethod>[];
93
- readonly suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[];
93
+ readonly candidates: readonly FoundNamedDeclaration<AccessedFunction>[];
94
+ readonly suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[];
94
95
  readonly kind = "instance-method-access";
95
- get singleSuitableMethod(): FoundNamedDeclaration<AccessedMethod> | undefined;
96
- constructor(candidates: readonly FoundNamedDeclaration<AccessedMethod>[], suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[]);
96
+ get singleSuitableFunction(): FoundNamedDeclaration<AccessedFunction> | undefined;
97
+ constructor(candidates: readonly FoundNamedDeclaration<AccessedFunction>[], suitableFunctions: readonly FoundNamedDeclaration<AccessedFunction>[]);
97
98
  }
98
99
  declare class Meaning_operatorAccess {
99
100
  readonly candidates: readonly FoundAnonymousDeclaration<types.Operator>[];
@@ -102,6 +103,11 @@ declare class Meaning_operatorAccess {
102
103
  get singleSuitableOperator(): FoundAnonymousDeclaration<types.Operator> | undefined;
103
104
  constructor(candidates: readonly FoundAnonymousDeclaration<types.Operator>[], suitableOperators: readonly FoundAnonymousDeclaration<types.Operator>[]);
104
105
  }
106
+ declare class Meaning_mixedAmbiguousAccess {
107
+ readonly entities: readonly WithLocalization<Entity>[];
108
+ readonly kind = "mixed-ambiguous-access";
109
+ constructor(entities: readonly WithLocalization<Entity>[]);
110
+ }
105
111
  declare class Meaning_unresolved {
106
112
  readonly kind = "unresolved";
107
113
  }
@@ -4,6 +4,8 @@ import { QualifiedName } from '../tree/index.js';
4
4
  import { Analyzer } from './Analyzer.js';
5
5
  import { FoundNamedDeclaration } from './FoundDeclaration.js';
6
6
  import { PackageNameTreeNode } from './ImportedPackageNameTree.js';
7
+ import { WithLocalization } from './Localization.js';
8
+ import { EntityOrPackageNameTreeNode } from './Utils.js';
7
9
  export declare class NamedTypeResolver {
8
10
  private readonly _analyzer;
9
11
  private readonly _node;
@@ -16,12 +18,14 @@ export declare class NamedTypeResolver {
16
18
  private findTypesOrContainersWithTypesInPackageAccessedViaAlias;
17
19
  private findTypesOrContainersWithTypesInPackageNameSegment;
18
20
  private convertPackageMember;
21
+ private createAmbiguousAccessDiagnostic;
19
22
  }
20
23
  export declare class NamedTypeResolutionResult {
21
24
  readonly types: readonly FoundNamedDeclaration<NamedTypeEntity>[];
22
25
  readonly resolvedQualifiers: readonly ResolvedQualifier[];
23
26
  readonly diagnostics: readonly Diagnostic[];
24
- constructor(types: readonly FoundNamedDeclaration<NamedTypeEntity>[], resolvedQualifiers: readonly ResolvedQualifier[], diagnostics: readonly Diagnostic[]);
27
+ readonly ambiguousDeclarations: readonly WithLocalization<EntityOrPackageNameTreeNode>[] | undefined;
28
+ constructor(types: readonly FoundNamedDeclaration<NamedTypeEntity>[], resolvedQualifiers: readonly ResolvedQualifier[], diagnostics: readonly Diagnostic[], ambiguousDeclarations: readonly WithLocalization<EntityOrPackageNameTreeNode>[] | undefined);
25
29
  }
26
30
  export type ResolvedQualifier = ResolvedQualifier_packageNameSegment | ResolvedQualifier_packageAlias | ResolvedQualifier_type;
27
31
  export declare class ResolvedQualifier_packageNameSegment {
@@ -3,7 +3,9 @@ import { NamedTypeSpecifier } from '../tree/index.js';
3
3
  import * as types from '../types/index.js';
4
4
  import { Analyzer } from './Analyzer.js';
5
5
  import { FoundNamedDeclaration } from './FoundDeclaration.js';
6
+ import { WithLocalization } from './Localization.js';
6
7
  import { ResolvedQualifier } from './NamedTypeResolver.js';
8
+ import { EntityOrPackageNameTreeNode } from './Utils.js';
7
9
  export declare class NamedTypeSpecifierResolver {
8
10
  private readonly _analyzer;
9
11
  private readonly _node;
@@ -15,5 +17,6 @@ export declare class NamedTypeSpecifierResolutionResult {
15
17
  readonly type: FoundNamedDeclaration<types.Type> | undefined;
16
18
  readonly resolvedQualifiers: readonly ResolvedQualifier[];
17
19
  readonly diagnostics: readonly Diagnostic[];
18
- constructor(type: FoundNamedDeclaration<types.Type> | undefined, resolvedQualifiers: readonly ResolvedQualifier[], diagnostics: readonly Diagnostic[]);
20
+ readonly ambiguousDeclarations: readonly WithLocalization<EntityOrPackageNameTreeNode>[] | undefined;
21
+ constructor(type: FoundNamedDeclaration<types.Type> | undefined, resolvedQualifiers: readonly ResolvedQualifier[], diagnostics: readonly Diagnostic[], ambiguousDeclarations: readonly WithLocalization<EntityOrPackageNameTreeNode>[] | undefined);
19
22
  }
@@ -9,24 +9,24 @@ export declare class NodeTypeUtils {
9
9
  static isExpression(node: tree.Node): node is tree.Expression;
10
10
  static isStatement(node: tree.Node): node is tree.Statement;
11
11
  static isTypeSpecifier(node: tree.Node): node is tree.TypeSpecifier;
12
- static isMethodDeclaration(node: tree.Node): node is MethodDeclaration;
12
+ static isFunctionDeclaration(node: tree.Node): node is FunctionDeclaration;
13
13
  static isVariableDeclaration(node: tree.Node): node is VariableDeclaration;
14
14
  static isVariantTypeDeclaration(node: tree.Node): node is VariantTypeDeclaration;
15
15
  static isSubprogramDeclaration(node: tree.Node): node is SubprogramDeclaration;
16
16
  static isNoneLiteral(node: tree.Node): boolean;
17
17
  }
18
- export type PackageTypeDeclaration = tree.PackageAliasTypeDeclaration | tree.PackageMethodTypeDeclaration | tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration;
18
+ export type PackageTypeDeclaration = tree.PackageAliasTypeDeclaration | tree.PackageFunctionTypeDeclaration | tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration;
19
19
  export type StructuredTypeDeclaration = tree.PackageStructuredTypeDeclaration | tree.AnonymousStructuredTypeDeclaration;
20
20
  export type VariantTypeDeclaration = tree.PackageVariantTypeDeclaration | tree.AnonymousVariantTypeDeclaration;
21
- export type MethodTypeDeclaration = tree.PackageMethodTypeDeclaration | tree.AnonymousMethodTypeDeclaration;
22
- export type MethodDeclaration = tree.PackageMethodDeclaration | tree.NestedMethodDeclaration | tree.TypeMethodDeclaration;
23
- export type TypeDeclaration = StructuredTypeDeclaration | VariantTypeDeclaration | MethodTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.TypeParameterDeclaration;
24
- export type NamedTypeDeclaration = tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration | tree.PackageMethodTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.TypeParameterDeclaration;
25
- export type VariableDeclaration = tree.EnumerationVariableDeclaration | tree.PackageVariableDeclaration | tree.LocalVariableDeclaration | tree.ParameterDeclaration | tree.TypeVariableDeclaration | tree.VariantDeclaration;
26
- export type GetterDeclaration = tree.PackageVariableGetterDeclaration | tree.TypeVariableGetterDeclaration | tree.TypeIndexedGetterDeclaration | tree.TypeDereferencedVariableGetterDeclaration;
27
- export type SetterDeclaration = tree.PackageVariableSetterDeclaration | tree.TypeVariableSetterDeclaration | tree.TypeIndexedSetterDeclaration | tree.TypeDereferencedVariableSetterDeclaration;
21
+ export type FunctionTypeDeclaration = tree.PackageFunctionTypeDeclaration | tree.AnonymousFunctionTypeDeclaration;
22
+ export type FunctionDeclaration = tree.PackageFunctionDeclaration | tree.NestedFunctionDeclaration | tree.MethodDeclaration;
23
+ export type TypeDeclaration = StructuredTypeDeclaration | VariantTypeDeclaration | FunctionTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.TypeParameterDeclaration;
24
+ export type NamedTypeDeclaration = tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration | tree.PackageFunctionTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.TypeParameterDeclaration;
25
+ export type VariableDeclaration = tree.EnumerationVariableDeclaration | tree.PackageVariableDeclaration | tree.LocalVariableDeclaration | tree.ParameterDeclaration | tree.FieldDeclaration | tree.VariantDeclaration;
26
+ export type GetterDeclaration = tree.PackageVariableGetterDeclaration | tree.FieldGetterDeclaration | tree.IndexedElementGetterDeclaration | tree.DereferencedVariableGetterDeclaration;
27
+ export type SetterDeclaration = tree.PackageVariableSetterDeclaration | tree.FieldSetterDeclaration | tree.IndexedElementSetterDeclaration | tree.DereferencedVariableSetterDeclaration;
28
28
  export type PackageVariableAccessorDeclaration = tree.PackageVariableGetterDeclaration | tree.PackageVariableSetterDeclaration;
29
- export type TypeVariableAccessorDeclaration = tree.TypeVariableGetterDeclaration | tree.TypeVariableSetterDeclaration;
30
- export type TypeIndexedAccessorDeclaration = tree.TypeIndexedGetterDeclaration | tree.TypeIndexedSetterDeclaration;
31
- export type TypeDereferencedVariableAccessorDeclaration = tree.TypeDereferencedVariableGetterDeclaration | tree.TypeDereferencedVariableSetterDeclaration;
32
- export type SubprogramDeclaration = tree.FunctionBlockParent | tree.MethodLiteral | tree.MethodBlockLiteral;
29
+ export type FieldAccessorDeclaration = tree.FieldGetterDeclaration | tree.FieldSetterDeclaration;
30
+ export type IndexedElementAccessorDeclaration = tree.IndexedElementGetterDeclaration | tree.IndexedElementSetterDeclaration;
31
+ export type DereferencedVariableAccessorDeclaration = tree.DereferencedVariableGetterDeclaration | tree.DereferencedVariableSetterDeclaration;
32
+ export type SubprogramDeclaration = tree.FunctionBlockParent | tree.FunctionLiteral | tree.FunctionBlockLiteral;
@@ -6,7 +6,7 @@ export declare class Resolver<TCandidate extends ICandidate<TValueParameter>, TV
6
6
  private readonly _analyzer;
7
7
  constructor(_analyzer: Analyzer);
8
8
  resolveByCallExpression(candidates: readonly TCandidate[], node: CallExpression): readonly TCandidate[];
9
- resolveByTargetType(candidates: readonly TCandidate[], targetType: types.MethodType): readonly TCandidate[];
9
+ resolveByTargetType(candidates: readonly TCandidate[], targetType: types.FunctionType): readonly TCandidate[];
10
10
  }
11
11
  export interface ICandidate<TValueParameter extends IValueParameter> {
12
12
  getValueParameters(): readonly TValueParameter[];
@@ -1,5 +1,5 @@
1
1
  import { Name, PackageLocale, SearchName } from '../common/index.js';
2
- import { EntityHidingLevel, IEntityHidingMatcher, MethodEntity, NamedTypeEntity, OperatorKind, PackageAliasEntity, TypeEntity, TypeExtensionEntity, VariableEntity } from '../entities/index.js';
2
+ import { EntityHidingLevel, FunctionEntity, IEntityHidingMatcher, NamedTypeEntity, OperatorKind, PackageAliasEntity, TypeEntity, TypeExtensionEntity, VariableEntity } from '../entities/index.js';
3
3
  import * as tree from '../tree/index.js';
4
4
  import * as types from '../types/index.js';
5
5
  import { Analyzer } from './Analyzer.js';
@@ -17,40 +17,40 @@ export interface IScope {
17
17
  getTypeExtensionsByType(typeEntity: TypeEntity, hidingMatcher?: IEntityHidingMatcher): readonly TypeExtensionEntity[];
18
18
  }
19
19
  export type TypeOrContainerWithTypes = NamedDeclaration_type | NamedDeclaration_packageAlias | NamedDeclaration_packageNameSegment;
20
- export type NamedDeclaration = NamedDeclaration_method | NamedDeclaration_variable | NamedDeclaration_type | NamedDeclaration_packageAlias | NamedDeclaration_packageNameSegment;
21
- export declare class NamedDeclaration_method implements INamedDeclaration {
22
- readonly value: NamedDeclarationMethod;
23
- readonly kind = "method";
24
- constructor(value: NamedDeclarationMethod);
20
+ export type NamedDeclaration = NamedDeclaration_function | NamedDeclaration_variable | NamedDeclaration_type | NamedDeclaration_packageAlias | NamedDeclaration_packageNameSegment;
21
+ export declare class NamedDeclaration_function implements INamedDeclaration {
22
+ readonly value: NamedDeclarationFunction;
23
+ readonly kind = "function";
24
+ constructor(value: NamedDeclarationFunction);
25
25
  getName(): Name;
26
26
  isHidden(): EntityHidingLevel | undefined;
27
27
  }
28
- export type NamedDeclarationMethod = NamedDeclarationMethod_entity | NamedDeclarationMethod_typeMember;
29
- export declare class NamedDeclarationMethod_entity implements INamedDeclarationMethod {
28
+ export type NamedDeclarationFunction = NamedDeclarationFunction_entity | NamedDeclarationFunction_typeMember;
29
+ export declare class NamedDeclarationFunction_entity implements INamedDeclarationFunction {
30
30
  readonly kind = "entity";
31
31
  private readonly _valueParameters;
32
- readonly value: MethodEntity;
33
- constructor(value: MethodEntity);
32
+ readonly value: FunctionEntity;
33
+ constructor(value: FunctionEntity);
34
34
  getName(): Name;
35
- getEntity(): MethodEntity;
35
+ getEntity(): FunctionEntity;
36
36
  getTypeParameterArity(): number;
37
37
  isHidden(): EntityHidingLevel | undefined;
38
38
  getValueParameters(): readonly ValueParameter[];
39
39
  }
40
- export declare class NamedDeclarationMethod_typeMember implements INamedDeclarationMethod {
40
+ export declare class NamedDeclarationFunction_typeMember implements INamedDeclarationFunction {
41
41
  readonly kind = "type-member";
42
42
  private readonly _valueParameters;
43
43
  readonly value: types.Method;
44
44
  constructor(value: types.Method);
45
45
  getName(): Name;
46
- getEntity(): MethodEntity;
46
+ getEntity(): FunctionEntity;
47
47
  getTypeParameterArity(): number;
48
48
  isHidden(): EntityHidingLevel | undefined;
49
49
  getValueParameters(): readonly ValueParameter[];
50
50
  }
51
- interface INamedDeclarationMethod {
51
+ interface INamedDeclarationFunction {
52
52
  getName(): Name;
53
- getEntity(): MethodEntity;
53
+ getEntity(): FunctionEntity;
54
54
  getTypeParameterArity(): number;
55
55
  isHidden(): EntityHidingLevel | undefined;
56
56
  getValueParameters(): readonly ValueParameter[];
@@ -6,7 +6,7 @@ import * as types from '../types/index.js';
6
6
  import { Analyzer } from './Analyzer.js';
7
7
  import { LocalizationContext } from './LocalizationContext.js';
8
8
  import { Lookup, ScopeChain } from './Lookup.js';
9
- import { GetterDeclaration, MethodDeclaration, MethodTypeDeclaration, SetterDeclaration, StructuredTypeDeclaration, VariantTypeDeclaration } from './NodeTypeUtils.js';
9
+ import { FunctionDeclaration, FunctionTypeDeclaration, GetterDeclaration, SetterDeclaration, StructuredTypeDeclaration, VariantTypeDeclaration } from './NodeTypeUtils.js';
10
10
  /**
11
11
  * Позволяет получить информацию, общую для определённой области
12
12
  * исходного кода (блока инструкций, списка членов типа и др.) с учётом
@@ -27,13 +27,13 @@ export interface SemanticContext {
27
27
  getHidingMatcher(): IEntityHidingMatcher;
28
28
  isStatic(): boolean;
29
29
  }
30
- export type SubprogramInfo = SubprogramInfo.Method | SubprogramInfo.Operator | SubprogramInfo.Constructor | SubprogramInfo.Destructor | SubprogramInfo.Getter | SubprogramInfo.Setter | SubprogramInfo.PackageConstructor | SubprogramInfo.PackageEntryPoint | SubprogramInfo.MethodLiteral;
30
+ export type SubprogramInfo = SubprogramInfo.Function | SubprogramInfo.Operator | SubprogramInfo.Constructor | SubprogramInfo.Destructor | SubprogramInfo.Getter | SubprogramInfo.Setter | SubprogramInfo.PackageConstructor | SubprogramInfo.PackageEntryPoint | SubprogramInfo.FunctionLiteral;
31
31
  export declare namespace SubprogramInfo {
32
- export class Method implements ISubprogramInfo {
33
- readonly kind = "method";
32
+ export class Function implements ISubprogramInfo {
33
+ readonly kind = "function";
34
34
  private readonly _analyzer;
35
35
  private readonly _node;
36
- constructor(analyzer: Analyzer, node: MethodDeclaration);
36
+ constructor(analyzer: Analyzer, node: FunctionDeclaration);
37
37
  getReturnType(): types.Type | undefined;
38
38
  isGenerator(): boolean;
39
39
  allowsAsyncCalls(): boolean;
@@ -52,7 +52,7 @@ export declare namespace SubprogramInfo {
52
52
  readonly kind = "constructor";
53
53
  private readonly _analyzer;
54
54
  private readonly _node;
55
- constructor(analyzer: Analyzer, node: tree.TypeConstructorDeclaration);
55
+ constructor(analyzer: Analyzer, node: tree.ConstructorDeclaration);
56
56
  getReturnType(): types.Type | undefined;
57
57
  isGenerator(): boolean;
58
58
  allowsAsyncCalls(): boolean;
@@ -62,7 +62,7 @@ export declare namespace SubprogramInfo {
62
62
  readonly kind = "destructor";
63
63
  private readonly _analyzer;
64
64
  private readonly _node;
65
- constructor(analyzer: Analyzer, node: tree.TypeDestructorDeclaration);
65
+ constructor(analyzer: Analyzer, node: tree.DestructorDeclaration);
66
66
  getReturnType(): types.Type | undefined;
67
67
  isGenerator(): boolean;
68
68
  allowsAsyncCalls(): boolean;
@@ -105,11 +105,11 @@ export declare namespace SubprogramInfo {
105
105
  allowsAsyncCalls(): boolean;
106
106
  getPackageEntity(): PackageEntity;
107
107
  }
108
- export class MethodLiteral implements ISubprogramInfo {
109
- readonly kind = "method-literal";
108
+ export class FunctionLiteral implements ISubprogramInfo {
109
+ readonly kind = "function-literal";
110
110
  private readonly _analyzer;
111
111
  private readonly _node;
112
- constructor(analyzer: Analyzer, node: RegularOrBlockMethodLiteral);
112
+ constructor(analyzer: Analyzer, node: RegularOrBlockFunctionLiteral);
113
113
  getReturnType(): types.Type | undefined;
114
114
  isGenerator(): boolean;
115
115
  allowsAsyncCalls(): boolean;
@@ -181,7 +181,7 @@ export declare class SourceFileSemanticContext implements SemanticContext {
181
181
  getLocalizationContext(): LocalizationContext;
182
182
  isStatic(): boolean;
183
183
  }
184
- export type TypeDeclarationCreatingSemanticContext = StructuredTypeDeclaration | VariantTypeDeclaration | MethodTypeDeclaration | tree.PackageAliasTypeDeclaration;
184
+ export type TypeDeclarationCreatingSemanticContext = StructuredTypeDeclaration | VariantTypeDeclaration | FunctionTypeDeclaration | tree.PackageAliasTypeDeclaration;
185
185
  /**
186
186
  * Завершающий семантический контекст типа.
187
187
  * Поскольку контекст с параметрами типа является опциональным, необходим
@@ -198,7 +198,7 @@ export declare class LastSemanticContextOfType extends SemanticContextWithParent
198
198
  isStatic(): boolean;
199
199
  private getContainingType;
200
200
  }
201
- type TypeDeclarationWithTypeParameters = tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.PackageMethodTypeDeclaration;
201
+ type TypeDeclarationWithTypeParameters = tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.PackageFunctionTypeDeclaration;
202
202
  export declare class TypeParametersOfTypeSemanticContext extends SemanticContextWithParent {
203
203
  private readonly _analyzer;
204
204
  private readonly _node;
@@ -206,7 +206,7 @@ export declare class TypeParametersOfTypeSemanticContext extends SemanticContext
206
206
  constructor(analyzer: Analyzer, node: TypeDeclarationWithTypeParameters, parentContext: SemanticContext);
207
207
  getScopeChain(): ScopeChain;
208
208
  }
209
- export type TypeDeclarationBody = tree.StructuredTypeDeclarationBody | tree.VariantTypeDeclarationBody | tree.AliasTypeDeclarationBody | tree.MethodTypeDeclarationBody;
209
+ export type TypeDeclarationBody = tree.StructuredTypeDeclarationBody | tree.VariantTypeDeclarationBody | tree.AliasTypeDeclarationBody | tree.FunctionTypeDeclarationBody;
210
210
  export declare class TypeBodySemanticContext extends SemanticContextWithParent {
211
211
  private readonly _analyzer;
212
212
  private readonly _node;
@@ -223,32 +223,32 @@ export declare class TypeExtensionBodySemanticContext extends SemanticContextWit
223
223
  getContainingTypeOrTypeExtension(): TypeOrTypeExtension | undefined;
224
224
  }
225
225
  /**
226
- * Завершающий семантический контекст метода.
227
- * Поскольку контекст с параметрами типа метода является опциональным, необходим
226
+ * Завершающий семантический контекст функции.
227
+ * Поскольку контекст с параметрами типа функции является опциональным, необходим
228
228
  * ещё один контекст, который гарантированно переопределит метод `getContainingSubprogram`.
229
229
  */
230
- export declare class LastSemanticContextOfMethod extends SemanticContextWithParent {
230
+ export declare class LastSemanticContextOfFunction extends SemanticContextWithParent {
231
231
  private readonly _analyzer;
232
232
  private readonly _node;
233
233
  private readonly _subprogramInfo;
234
- constructor(analyzer: Analyzer, node: MethodDeclaration, parentContext: SemanticContext);
234
+ constructor(analyzer: Analyzer, node: FunctionDeclaration, parentContext: SemanticContext);
235
235
  getContainingSubprogram(): SubprogramInfo | undefined;
236
236
  isInTryStatement(): TryStatementClausesInfo | undefined;
237
237
  isInFinallyClause(): boolean;
238
238
  isStatic(): boolean;
239
239
  }
240
- export declare class MethodTypeParameterSemanticContext extends SemanticContextWithParent {
240
+ export declare class FunctionTypeParameterSemanticContext extends SemanticContextWithParent {
241
241
  private readonly _analyzer;
242
242
  private readonly _node;
243
243
  private readonly _scopeChain;
244
- constructor(analyzer: Analyzer, node: MethodDeclaration, parentContext: SemanticContext);
244
+ constructor(analyzer: Analyzer, node: FunctionDeclaration, parentContext: SemanticContext);
245
245
  getScopeChain(): ScopeChain;
246
246
  }
247
- export declare class MethodValueParameterSemanticContext extends SemanticContextWithParent {
247
+ export declare class FunctionValueParameterSemanticContext extends SemanticContextWithParent {
248
248
  private readonly _analyzer;
249
249
  private readonly _node;
250
250
  private readonly _scopeChain;
251
- constructor(analyzer: Analyzer, node: MethodDeclaration, parentContext: SemanticContext);
251
+ constructor(analyzer: Analyzer, node: FunctionDeclaration, parentContext: SemanticContext);
252
252
  getScopeChain(): ScopeChain;
253
253
  }
254
254
  export declare class PackageConstructorSemanticContext extends SemanticContextWithParent {
@@ -280,7 +280,7 @@ export declare class ConstructorSemanticContext extends SemanticContextWithParen
280
280
  private readonly _node;
281
281
  private readonly _scopeChain;
282
282
  private readonly _subprogramInfo;
283
- constructor(analyzer: Analyzer, node: tree.TypeConstructorDeclaration, parentContext: SemanticContext);
283
+ constructor(analyzer: Analyzer, node: tree.ConstructorDeclaration, parentContext: SemanticContext);
284
284
  getScopeChain(): ScopeChain;
285
285
  getContainingSubprogram(): SubprogramInfo | undefined;
286
286
  }
@@ -289,7 +289,7 @@ export declare class DestructorSemanticContext extends SemanticContextWithParent
289
289
  private readonly _node;
290
290
  private readonly _scopeChain;
291
291
  private readonly _subprogramInfo;
292
- constructor(analyzer: Analyzer, node: tree.TypeDestructorDeclaration, parentContext: SemanticContext);
292
+ constructor(analyzer: Analyzer, node: tree.DestructorDeclaration, parentContext: SemanticContext);
293
293
  getScopeChain(): ScopeChain;
294
294
  getContainingSubprogram(): SubprogramInfo | undefined;
295
295
  }
@@ -298,7 +298,7 @@ export declare class IndexerSemanticContext extends SemanticContextWithParent {
298
298
  private readonly _node;
299
299
  private readonly _scopeChain;
300
300
  private readonly _subprogramInfo;
301
- constructor(analyzer: Analyzer, node: tree.TypeIndexedGetterDeclaration | tree.TypeIndexedSetterDeclaration, parentContext: SemanticContext);
301
+ constructor(analyzer: Analyzer, node: tree.IndexedElementGetterDeclaration | tree.IndexedElementSetterDeclaration, parentContext: SemanticContext);
302
302
  getScopeChain(): ScopeChain;
303
303
  }
304
304
  export declare class GetterSemanticContext extends SemanticContextWithParent {
@@ -334,13 +334,13 @@ export declare class FunctionBlockSemanticContext extends SemanticContextWithPar
334
334
  constructor(analyzer: Analyzer, node: tree.FunctionBlock, parentContext: SemanticContext);
335
335
  getScopeChain(): ScopeChain;
336
336
  }
337
- export type RegularOrBlockMethodLiteral = tree.MethodLiteral | tree.MethodBlockLiteral;
338
- export declare class MethodLiteralSemanticContext extends SemanticContextWithParent {
337
+ export type RegularOrBlockFunctionLiteral = tree.FunctionLiteral | tree.FunctionBlockLiteral;
338
+ export declare class FunctionLiteralSemanticContext extends SemanticContextWithParent {
339
339
  private readonly _analyzer;
340
340
  private readonly _node;
341
341
  private readonly _scopeChain;
342
342
  private readonly _subprogramInfo;
343
- constructor(analyzer: Analyzer, node: RegularOrBlockMethodLiteral, parentContext: SemanticContext);
343
+ constructor(analyzer: Analyzer, node: RegularOrBlockFunctionLiteral, parentContext: SemanticContext);
344
344
  getScopeChain(): ScopeChain;
345
345
  getContainingSubprogram(): SubprogramInfo | undefined;
346
346
  }
@@ -358,10 +358,10 @@ export declare class CatchClauseSemanticContext extends SemanticContextWithParen
358
358
  constructor(analyzer: Analyzer, node: tree.CatchClause, parentContext: SemanticContext);
359
359
  getScopeChain(): ScopeChain;
360
360
  }
361
- export declare class TypeVariableWithInitializerSemanticContext extends SemanticContextWithParent {
361
+ export declare class FieldWithInitializerSemanticContext extends SemanticContextWithParent {
362
362
  private readonly _analyzer;
363
363
  private readonly _node;
364
- constructor(analyzer: Analyzer, node: tree.TypeVariableDeclaration, parentContext: SemanticContext);
364
+ constructor(analyzer: Analyzer, node: tree.FieldDeclaration, parentContext: SemanticContext);
365
365
  isStatic(): boolean;
366
366
  }
367
367
  export {};