@artel/artc 0.6.25276 → 0.6.25278

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 (67) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +14 -10
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +286 -293
  5. package/build/{chunk-OS2SFHBZ.js → chunk-4C7CEJJF.js} +20 -24
  6. package/build/{chunk-LX6LUKPR.js → chunk-A2QTLTGI.js} +1935 -1176
  7. package/build/{chunk-MT6TPXET.js → chunk-L44WWCT7.js} +15 -15
  8. package/build/types/analysis/AccessedFunction.d.ts +3 -3
  9. package/build/types/analysis/AnalyzedTextTranslationPackage.d.ts +2 -2
  10. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +11 -8
  11. package/build/types/analysis/Analyzer.d.ts +21 -19
  12. package/build/types/analysis/DeclarationsUsageCounter.d.ts +2 -2
  13. package/build/types/analysis/{DiagnosticCollector.d.ts → SourceFileAnalyzer.d.ts} +4 -5
  14. package/build/types/analysis/SourcePackageDependencyGraph.d.ts +2 -2
  15. package/build/types/analysis/SubstitutedFunction.d.ts +3 -3
  16. package/build/types/analysis/TranslatedEntityNameConflictsValidator.d.ts +28 -0
  17. package/build/types/analysis/Translation.d.ts +1 -2
  18. package/build/types/analysis/index.d.ts +1 -1
  19. package/build/types/analysis/semantic-context/Declarations.d.ts +3 -3
  20. package/build/types/analysis/semantic-context/SemanticContextBase.d.ts +2 -2
  21. package/build/types/api/Api.d.ts +1 -1
  22. package/build/types/common/TaskController.d.ts +14 -0
  23. package/build/types/common/TreeTraversal.d.ts +10 -9
  24. package/build/types/common/index.d.ts +1 -2
  25. package/build/types/diagnostic/DiagnosticCode.d.ts +5 -1
  26. package/build/types/emitter/Emitter.d.ts +3 -3
  27. package/build/types/emitter/EmitterContext.d.ts +1 -1
  28. package/build/types/emitter/EntityMap.d.ts +1 -1
  29. package/build/types/entities/Entity.d.ts +3 -1
  30. package/build/types/entities/EntityNaming.d.ts +2 -0
  31. package/build/types/entities/interfaces/FunctionEntity.d.ts +19 -6
  32. package/build/types/entities/interfaces/TypeParameterEntity.d.ts +2 -2
  33. package/build/types/entities/intrinsic/IntrinsicFunctionEntity.d.ts +3 -1
  34. package/build/types/entities/source/SourceFunctionEntity.d.ts +86 -5
  35. package/build/types/entities/source/SourceVariableEntity.d.ts +3 -1
  36. package/build/types/entities/translated/TranslatedAliasTypeEntity.d.ts +0 -1
  37. package/build/types/entities/translated/TranslatedConstructorEntity.d.ts +1 -1
  38. package/build/types/entities/translated/TranslatedFunctionEntity.d.ts +29 -14
  39. package/build/types/entities/translated/TranslatedFunctionTypeEntity.d.ts +0 -1
  40. package/build/types/entities/translated/TranslatedIndexerEntity.d.ts +19 -9
  41. package/build/types/entities/translated/TranslatedOperatorEntity.d.ts +21 -10
  42. package/build/types/entities/translated/TranslatedPackageEntity.d.ts +0 -2
  43. package/build/types/entities/translated/TranslatedStructuredTypeEntity.d.ts +0 -1
  44. package/build/types/entities/translated/TranslatedVariantTypeEntity.d.ts +0 -1
  45. package/build/types/executor/Compiler.d.ts +6 -6
  46. package/build/types/executor/NodeCompiler.d.ts +6 -6
  47. package/build/types/project/CompilationLoader.d.ts +5 -5
  48. package/build/types/project/FileSystemTree.d.ts +1 -1
  49. package/build/types/project/PackageContentCreator.d.ts +2 -1
  50. package/build/types/services/DefinitionService.d.ts +2 -2
  51. package/build/types/services/DisplayService.d.ts +22 -7
  52. package/build/types/services/DocumentHighlightsService.d.ts +2 -2
  53. package/build/types/services/LanguageServer.d.ts +1 -1
  54. package/build/types/services/NodeSemanticInfo.d.ts +1 -6
  55. package/build/types/services/ReferencesService.d.ts +3 -3
  56. package/build/types/services/RenameService.d.ts +2 -2
  57. package/build/types/services/SemanticTokensService.d.ts +4 -4
  58. package/build/types/services/source-generation/SourceGenerationService.d.ts +3 -3
  59. package/build/types/services/workspace/CompilationController.d.ts +7 -5
  60. package/build/types/services/workspace/FileSystemTreeProviderBasedOnWatchedFileSystem.d.ts +2 -2
  61. package/build/types/services/workspace/ManuallyUpdatedFileSystemTreeProvider.d.ts +2 -2
  62. package/build/types/services/workspace/Workspace.d.ts +3 -5
  63. package/build/types/services/workspace/WorkspaceFiles.d.ts +3 -3
  64. package/build/types/ts-interop/Entities.d.ts +3 -0
  65. package/package.json +1 -1
  66. package/build/types/common/ThrottledCancellationToken.d.ts +0 -17
  67. package/build/types/common/YieldExecution.d.ts +0 -1
@@ -4,12 +4,12 @@ import { Name } from '../../common/index.js';
4
4
  import * as tree from '../../tree/index.js';
5
5
  import * as types from '../../types/index.js';
6
6
  import { IEntity } from '../IEntity.js';
7
- import type { PackageEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
7
+ import type { EntityNaming, PackageEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
8
8
  import { DefinitionKind, EntityHidingLevel, EntityKind, ParameterEntity, SubstitutionApplicationMode, TypeParameterEntity } from '../index.js';
9
- export type FunctionEntity = PackageFunctionEntity | MethodEntity | NestedFunctionEntity;
9
+ export type FunctionEntity = PackageFunctionEntity | MethodEntity | NestedFunctionEntity | AnonymousFunctionEntity;
10
10
  interface IFunctionEntity extends IEntity {
11
11
  readonly kind: EntityKind.Function;
12
- getName(): Name;
12
+ getNaming(): EntityNaming;
13
13
  getTypeParameters(): readonly TypeParameterEntity[];
14
14
  getParameters(): readonly ParameterEntity[];
15
15
  getReturnType(): types.Type;
@@ -19,15 +19,18 @@ interface IFunctionEntity extends IEntity {
19
19
  getTags(): readonly Tag[];
20
20
  getTypeParametersArity(): number;
21
21
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
22
+ getTranslation(): Translation | undefined;
22
23
  }
23
24
  export interface PackageFunctionEntity extends IFunctionEntity {
24
25
  readonly subkind: 'package';
26
+ getName(): Name;
25
27
  getContainingPackage(): PackageEntity;
26
28
  getTranslation(): Translation | undefined;
27
29
  getOriginalEntity(): PackageFunctionEntity;
28
30
  }
29
31
  export interface MethodEntity extends IFunctionEntity {
30
32
  readonly subkind: 'method';
33
+ getName(): Name;
31
34
  getContainingEntity(): TypeWithMembersOrExtensionEntity;
32
35
  isStatic(): boolean;
33
36
  isOverride(): boolean;
@@ -36,18 +39,28 @@ export interface MethodEntity extends IFunctionEntity {
36
39
  isModifyingOwningPlainObject(): boolean;
37
40
  isFunctionTypeInvokeMethod(): boolean;
38
41
  getOverriddenMembers(): readonly types.Method[];
39
- getTranslation(): Translation | undefined;
40
42
  getOriginalEntity(): MethodEntity;
41
43
  }
42
44
  export interface NestedFunctionEntity extends IFunctionEntity {
43
45
  readonly subkind: 'nested';
46
+ getName(): Name;
44
47
  getContainingPackage(): PackageEntity;
45
- getTranslation(): Translation | undefined;
46
48
  getOriginalEntity(): NestedFunctionEntity;
47
49
  }
50
+ export interface NestedFunctionEntity extends IFunctionEntity {
51
+ readonly subkind: 'nested';
52
+ getName(): Name;
53
+ getContainingPackage(): PackageEntity;
54
+ getOriginalEntity(): NestedFunctionEntity;
55
+ }
56
+ export interface AnonymousFunctionEntity extends IFunctionEntity {
57
+ readonly subkind: 'anonymous';
58
+ getContainingPackage(): PackageEntity;
59
+ getOriginalEntity(): AnonymousFunctionEntity;
60
+ }
48
61
  export type FunctionEntityDefinition = {
49
62
  kind: DefinitionKind.Source;
50
- node: tree.PackageFunctionDeclaration | tree.MethodDeclaration | tree.NestedFunctionDeclaration;
63
+ node: tree.PackageFunctionDeclaration | tree.MethodDeclaration | tree.NestedFunctionDeclaration | tree.FunctionLiteral | tree.FunctionBlockLiteral;
51
64
  } | {
52
65
  kind: DefinitionKind.Intrinsic;
53
66
  } | {
@@ -2,7 +2,7 @@ import { Translation } from '../../analysis/Translation.js';
2
2
  import { Name } from '../../common/index.js';
3
3
  import * as tree from '../../tree/index.js';
4
4
  import * as types from '../../types/index.js';
5
- import { AliasTypeEntity, DefinitionKind, EntityHidingLevel, EntityKind, FunctionEntity, FunctionTypeEntity, ITypeEntity, StructuredTypeEntity, TypeEntityKind, VariantTypeEntity } from '../index.js';
5
+ import { AliasTypeEntity, DefinitionKind, EntityHidingLevel, EntityKind, FunctionTypeEntity, ITypeEntity, NamedFunctionEntity, StructuredTypeEntity, TypeEntityKind, VariantTypeEntity } from '../index.js';
6
6
  export interface TypeParameterEntity extends ITypeEntity {
7
7
  readonly kind: EntityKind.Type;
8
8
  readonly typeEntityKind: TypeEntityKind.Parameter;
@@ -28,7 +28,7 @@ export type TypeParameterEntityDefinition = {
28
28
  } | {
29
29
  kind: DefinitionKind.TypeScript;
30
30
  };
31
- export type EntityContainingTypeParameter = VariantTypeEntity | FunctionEntity | FunctionTypeEntity | StructuredTypeEntity | AliasTypeEntity;
31
+ export type EntityContainingTypeParameter = VariantTypeEntity | NamedFunctionEntity | FunctionTypeEntity | StructuredTypeEntity | AliasTypeEntity;
32
32
  /**
33
33
  * Класс позволяет работать с ограничением параметра шаблона, исключая циклы.
34
34
  *
@@ -2,7 +2,7 @@ import { Tag } from '../../analysis/Tag.js';
2
2
  import { Translation } from '../../analysis/Translation.js';
3
3
  import { Name, PackageDialect, PackageLocale } from '../../common/index.js';
4
4
  import * as types from '../../types/index.js';
5
- import type { FunctionEntityDefinition, MethodEntity, PackageEntity, PackageFunctionEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
5
+ import type { EntityNaming, FunctionEntityDefinition, MethodEntity, PackageEntity, PackageFunctionEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
6
6
  import { EntityHidingLevel, EntityKind, ParameterEntity, SubstitutionApplicationMode, TypeParameterEntity } from '../index.js';
7
7
  export declare class IntrinsicPackageFunctionEntity implements PackageFunctionEntity {
8
8
  private readonly name;
@@ -17,6 +17,7 @@ export declare class IntrinsicPackageFunctionEntity implements PackageFunctionEn
17
17
  readonly subkind = "package";
18
18
  constructor(name: Name, typeParameters: readonly TypeParameterEntity[], parameters: readonly ParameterEntity[], returnType: types.Type, isAsync_: boolean, isHidden_: EntityHidingLevel | undefined, tags: readonly Tag[], containingPackage: PackageEntity);
19
19
  getName(): Name;
20
+ getNaming(): EntityNaming;
20
21
  getContainingPackage(): PackageEntity;
21
22
  getTypeParameters(): readonly TypeParameterEntity[];
22
23
  getParameters(): readonly ParameterEntity[];
@@ -52,6 +53,7 @@ export declare class IntrinsicMethodEntity implements MethodEntity {
52
53
  readonly subkind = "method";
53
54
  constructor(name: Name, typeParameters: readonly TypeParameterEntity[], parameters: readonly ParameterEntity[], returnType: types.Type, isAsync_: boolean, isHidden_: EntityHidingLevel | undefined, tags: readonly Tag[], isFunctionTypeInvokeMethod_: boolean, containingEntity: TypeWithMembersOrExtensionEntity, isStatic_: boolean, isBasic_: boolean, isOverride_: boolean, isAbstract_: boolean, isModifyingOwningPlainObject_: boolean, overriddenMembers: readonly types.Method[]);
54
55
  getName(): Name;
56
+ getNaming(): EntityNaming;
55
57
  getTypeParameters(): readonly TypeParameterEntity[];
56
58
  getParameters(): readonly ParameterEntity[];
57
59
  getReturnType(): types.Type;
@@ -2,9 +2,9 @@ import { Tag } from '../../analysis/Tag.js';
2
2
  import { Translation } from '../../analysis/Translation.js';
3
3
  import { Analyzer } from '../../analysis/index.js';
4
4
  import { Name, PackageDialect, PackageLocale } from '../../common/index.js';
5
- import { MethodDeclaration, NestedFunctionDeclaration, PackageFunctionDeclaration } from '../../tree/index.js';
5
+ import * as tree from '../../tree/index.js';
6
6
  import * as types from '../../types/index.js';
7
- import type { FunctionEntityDefinition, MethodEntity, NestedFunctionEntity, PackageEntity, PackageFunctionEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
7
+ import type { AnonymousFunctionEntity, EntityNaming, FunctionEntityDefinition, FunctionLiteralParameterDeclarationEntity, MethodEntity, NestedFunctionEntity, PackageEntity, PackageFunctionEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
8
8
  import { EntityHidingLevel, EntityKind, ParameterEntity, SubstitutionApplicationMode, TypeParameterEntity } from '../index.js';
9
9
  export declare class PackageFunctionDeclarationEntity implements PackageFunctionEntity {
10
10
  private readonly analyzer;
@@ -18,8 +18,9 @@ export declare class PackageFunctionDeclarationEntity implements PackageFunction
18
18
  private readonly hiding;
19
19
  private modifierFlags_;
20
20
  private get modifierFlags();
21
- constructor(analyzer: Analyzer, node: PackageFunctionDeclaration);
21
+ constructor(analyzer: Analyzer, node: tree.PackageFunctionDeclaration);
22
22
  getName(): Name;
23
+ getNaming(): EntityNaming;
23
24
  getContainingPackage(): PackageEntity;
24
25
  getTypeParameters(): readonly TypeParameterEntity[];
25
26
  getParameters(): readonly ParameterEntity[];
@@ -48,8 +49,9 @@ export declare class MethodDeclarationEntity implements MethodEntity {
48
49
  private containingEntity;
49
50
  private modifierFlags_;
50
51
  private get modifierFlags();
51
- constructor(analyzer: Analyzer, node: MethodDeclaration);
52
+ constructor(analyzer: Analyzer, node: tree.MethodDeclaration);
52
53
  getName(): Name;
54
+ getNaming(): EntityNaming;
53
55
  getTypeParameters(): readonly TypeParameterEntity[];
54
56
  getParameters(): readonly ParameterEntity[];
55
57
  getReturnType(): types.Type;
@@ -82,8 +84,9 @@ export declare class NestedFunctionDeclarationEntity implements NestedFunctionEn
82
84
  private readonly typeParameters;
83
85
  private readonly parameters;
84
86
  private readonly returnType;
85
- constructor(analyzer: Analyzer, node: NestedFunctionDeclaration);
87
+ constructor(analyzer: Analyzer, node: tree.NestedFunctionDeclaration);
86
88
  getName(): Name;
89
+ getNaming(): EntityNaming;
87
90
  getContainingPackage(): PackageEntity;
88
91
  getTypeParameters(): readonly TypeParameterEntity[];
89
92
  getParameters(): readonly ParameterEntity[];
@@ -99,3 +102,81 @@ export declare class NestedFunctionDeclarationEntity implements NestedFunctionEn
99
102
  getDialect(): PackageDialect;
100
103
  getOriginalEntity(): NestedFunctionEntity;
101
104
  }
105
+ export declare class FunctionLiteralEntity implements AnonymousFunctionEntity, RegularOrBlockFunctionLiteralEntity {
106
+ private readonly analyzer;
107
+ private readonly node;
108
+ readonly kind = EntityKind.Function;
109
+ readonly subkind = "anonymous";
110
+ get isInferringReturnType(): boolean;
111
+ get isInferringIsAsync(): boolean;
112
+ private isTargetTypeSet;
113
+ private targetType;
114
+ private areParameterTypesSet;
115
+ private readonly parameters;
116
+ private returnType;
117
+ private isInferringReturnType_;
118
+ constructor(analyzer: Analyzer, node: tree.FunctionLiteral);
119
+ setTargetFunctionType(type: types.FunctionType | undefined): void;
120
+ dependsOnTargetType(): boolean;
121
+ getNaming(): EntityNaming;
122
+ getContainingPackage(): PackageEntity;
123
+ getTypeParameters(): readonly TypeParameterEntity[];
124
+ getParameters(): readonly FunctionLiteralParameterDeclarationEntity[];
125
+ getReturnType(): types.Type;
126
+ getDefinition(): FunctionEntityDefinition;
127
+ isAsync(): boolean;
128
+ isHidden(): EntityHidingLevel | undefined;
129
+ getTags(): readonly Tag[];
130
+ getTypeParametersArity(): number;
131
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
132
+ getTranslation(): Translation | undefined;
133
+ getLocale(): PackageLocale;
134
+ getDialect(): PackageDialect;
135
+ getOriginalEntity(): AnonymousFunctionEntity;
136
+ ensureParameterTypesAreSet(): void;
137
+ private ensureTargetTypeIsSet;
138
+ private setParameterTypes;
139
+ }
140
+ export declare class FunctionBlockLiteralEntity implements AnonymousFunctionEntity, RegularOrBlockFunctionLiteralEntity {
141
+ private readonly analyzer;
142
+ private readonly node;
143
+ readonly kind = EntityKind.Function;
144
+ readonly subkind = "anonymous";
145
+ get isInferringReturnType(): boolean;
146
+ get isInferringIsAsync(): boolean;
147
+ private parameters;
148
+ private isTargetTypeSet;
149
+ private targetType;
150
+ private returnType;
151
+ private isAsync_;
152
+ private isInferringReturnType_;
153
+ private isInferringIsAsync_;
154
+ constructor(analyzer: Analyzer, node: tree.FunctionBlockLiteral);
155
+ setTargetFunctionType(type: types.FunctionType | undefined): void;
156
+ dependsOnTargetType(): boolean;
157
+ getNaming(): EntityNaming;
158
+ getContainingPackage(): PackageEntity;
159
+ getTypeParameters(): readonly TypeParameterEntity[];
160
+ getParameters(): readonly ParameterEntity[];
161
+ getReturnType(): types.Type;
162
+ getDefinition(): FunctionEntityDefinition;
163
+ isAsync(): boolean;
164
+ isHidden(): EntityHidingLevel | undefined;
165
+ getTags(): readonly Tag[];
166
+ getTypeParametersArity(): number;
167
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
168
+ getTranslation(): Translation | undefined;
169
+ getLocale(): PackageLocale;
170
+ getDialect(): PackageDialect;
171
+ getOriginalEntity(): AnonymousFunctionEntity;
172
+ private ensureParametersAreCreated;
173
+ private ensureTargetTypeIsSet;
174
+ private createParameters;
175
+ }
176
+ interface RegularOrBlockFunctionLiteralEntity {
177
+ readonly isInferringReturnType: boolean;
178
+ readonly isInferringIsAsync: boolean;
179
+ setTargetFunctionType(type: types.FunctionType | undefined): void;
180
+ dependsOnTargetType(): boolean;
181
+ }
182
+ export {};
@@ -332,8 +332,9 @@ export declare class FunctionLiteralParameterDeclarationEntity implements Parame
332
332
  readonly subkind = "parameter";
333
333
  private readonly parameterIndex;
334
334
  private readonly name;
335
- private readonly type;
335
+ private type;
336
336
  constructor(analyzer: Analyzer, node: tree.ParameterDeclaration, functionLiteral: tree.FunctionLiteral);
337
+ setTypeIfHasNoTypeSpecifier(type: types.Type): void;
337
338
  getName(): Name;
338
339
  getType(): types.Type;
339
340
  getDefinition(): VariableEntityDefinition;
@@ -351,6 +352,7 @@ export declare class FunctionLiteralParameterDeclarationEntity implements Parame
351
352
  getLocale(): PackageLocale;
352
353
  getDialect(): PackageDialect;
353
354
  getOriginalEntity(): ParameterEntity;
355
+ private getContainingFunctionLiteralEntity;
354
356
  }
355
357
  export declare class TranslationTextTemplateParameterEntity implements ParameterEntity {
356
358
  private readonly analyzer;
@@ -43,7 +43,6 @@ export declare class TranslatedAliasTypeEntity implements AliasTypeEntity {
43
43
  getTags(): readonly Tag[];
44
44
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
45
45
  getContext(): EntityContext;
46
- ensureAllDiagnosticsReported(): void;
47
46
  }
48
47
  export declare class LocalizedAliasedType extends AliasedType {
49
48
  private readonly original;
@@ -12,7 +12,7 @@ export declare abstract class TranslatedConstructorEntity implements Constructor
12
12
  protected readonly originalEntity: ConstructorEntity;
13
13
  protected readonly translation: Translation;
14
14
  protected readonly translationPackage: AnalyzedTranslationPackage;
15
- private readonly containingEntity;
15
+ protected readonly containingEntity: TypeWithMembersOrExtensionEntity;
16
16
  constructor(originalEntity: ConstructorEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity);
17
17
  abstract getParameters(): readonly ParameterEntity[];
18
18
  getContainingEntity(): TypeWithMembersOrExtensionEntity;
@@ -6,7 +6,7 @@ import { Name, PackageDialect, PackageLocale } from '../../common/index.js';
6
6
  import * as tree from '../../tree/index.js';
7
7
  import * as types from '../../types/index.js';
8
8
  import { EntityHidingLevel } from '../EntityHiding.js';
9
- import { EntityKind, TypeWithMembersOrExtensionEntity } from '../index.js';
9
+ import { EntityKind, EntityNaming, TypeWithMembersOrExtensionEntity } from '../index.js';
10
10
  import type { MethodEntity, PackageFunctionEntity } from '../interfaces/FunctionEntity.js';
11
11
  import { FunctionEntityDefinition } from '../interfaces/FunctionEntity.js';
12
12
  import { PackageEntity } from '../interfaces/PackageEntity.js';
@@ -31,6 +31,7 @@ export declare class TranslatedPackageFunctionEntity implements PackageFunctionE
31
31
  getDialect(): PackageDialect;
32
32
  getOriginalEntity(): PackageFunctionEntity;
33
33
  getName(): Name;
34
+ getNaming(): EntityNaming;
34
35
  getTypeParameters(): readonly TypeParameterEntity[];
35
36
  getParameters(): readonly ParameterEntity[];
36
37
  getReturnType(): types.Type;
@@ -41,21 +42,20 @@ export declare class TranslatedPackageFunctionEntity implements PackageFunctionE
41
42
  getTypeParametersArity(): number;
42
43
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
43
44
  }
44
- export declare class TranslatedMethodEntity implements MethodEntity {
45
+ export declare abstract class TranslatedMethodEntity implements MethodEntity {
45
46
  readonly kind = EntityKind.Function;
46
47
  readonly subkind = "method";
47
- private readonly analyzer;
48
- private readonly originalEntity;
49
- private readonly translation;
50
- private readonly name;
51
- private readonly translationPackage;
52
- private readonly containingEntity;
53
- private readonly node;
54
- private readonly typeParameters;
55
- private readonly parameters;
48
+ protected readonly analyzer: Analyzer;
49
+ protected readonly originalEntity: MethodEntity;
50
+ protected readonly translation: Translation;
51
+ protected readonly name: Name;
52
+ protected readonly translationPackage: AnalyzedTranslationPackage;
53
+ protected readonly containingEntity: TypeWithMembersOrExtensionEntity;
56
54
  private readonly returnType;
57
55
  private readonly overriddenMembers;
58
- constructor(analyzer: Analyzer, originalEntity: MethodEntity, translation: Translation, name: Name, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity, node: tree.MethodTranslation | undefined);
56
+ constructor(analyzer: Analyzer, originalEntity: MethodEntity, translation: Translation, name: Name, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity);
57
+ abstract getTypeParameters(): readonly TypeParameterEntity[];
58
+ abstract getParameters(): readonly ParameterEntity[];
59
59
  getContainingEntity(): TypeWithMembersOrExtensionEntity;
60
60
  getContainingPackage(): PackageEntity;
61
61
  getTranslation(): Translation | undefined;
@@ -63,8 +63,7 @@ export declare class TranslatedMethodEntity implements MethodEntity {
63
63
  getDialect(): PackageDialect;
64
64
  getOriginalEntity(): MethodEntity;
65
65
  getName(): Name;
66
- getTypeParameters(): readonly TypeParameterEntity[];
67
- getParameters(): readonly ParameterEntity[];
66
+ getNaming(): EntityNaming;
68
67
  getReturnType(): types.Type;
69
68
  getDefinition(): FunctionEntityDefinition;
70
69
  isStatic(): boolean;
@@ -80,3 +79,19 @@ export declare class TranslatedMethodEntity implements MethodEntity {
80
79
  getTypeParametersArity(): number;
81
80
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
82
81
  }
82
+ export declare class SourceTranslatedMethodEntity extends TranslatedMethodEntity {
83
+ readonly kind = EntityKind.Function;
84
+ readonly subkind = "method";
85
+ private readonly node;
86
+ private readonly typeParameters;
87
+ private readonly parameters;
88
+ constructor(analyzer: Analyzer, originalEntity: MethodEntity, translation: Translation, name: Name, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity, node: tree.MethodTranslation | undefined);
89
+ getTypeParameters(): readonly TypeParameterEntity[];
90
+ getParameters(): readonly ParameterEntity[];
91
+ }
92
+ export declare class UnfinishedIntrinsicTranslatedMethodEntity {
93
+ private readonly unfinishedValue_;
94
+ get unfinishedValue(): MethodEntity;
95
+ constructor(analyzer: Analyzer, originalEntity: MethodEntity, translation: Translation, name: Name, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity);
96
+ finish(typeParameters: readonly TypeParameterEntity[], parameters: readonly ParameterEntity[]): MethodEntity;
97
+ }
@@ -51,7 +51,6 @@ export declare class TranslatedPackageFunctionTypeEntity implements PackageFunct
51
51
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
52
52
  getBaseObjectType(): BaseObjectType;
53
53
  getContext(): EntityContext;
54
- ensureAllDiagnosticsReported(): void;
55
54
  }
56
55
  export declare class TranslatedAnonymousFunctionTypeEntity implements AnonymousFunctionTypeEntity {
57
56
  readonly kind = EntityKind.Type;
@@ -8,26 +8,24 @@ import { EntityHidingLevel } from '../EntityHiding.js';
8
8
  import { EntityKind, GetterEntity, PackageEntity, SetterEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
9
9
  import type { IndexerEntity, IndexerEntityDefinition } from '../interfaces/IndexerEntity.js';
10
10
  import { ParameterEntity } from '../interfaces/VariableEntity.js';
11
- export declare class TranslatedIndexerEntity implements IndexerEntity {
11
+ export declare abstract class TranslatedIndexerEntity implements IndexerEntity {
12
12
  readonly kind = EntityKind.Indexer;
13
- private readonly originalEntity;
14
- private readonly translation;
15
- private readonly translationPackage;
16
- private readonly containingEntity;
17
- private readonly node;
18
- private readonly parameters;
13
+ protected readonly originalEntity: IndexerEntity;
14
+ protected readonly translation: Translation;
15
+ protected readonly translationPackage: AnalyzedTranslationPackage;
16
+ protected readonly containingEntity: TypeWithMembersOrExtensionEntity;
19
17
  private readonly type;
20
18
  private readonly getter;
21
19
  private readonly setter;
22
20
  private readonly overriddenMembers;
23
- constructor(originalEntity: IndexerEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity, node: tree.IndexerTranslation | undefined);
21
+ constructor(originalEntity: IndexerEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity);
22
+ abstract getParameters(): readonly ParameterEntity[];
24
23
  getContainingEntity(): TypeWithMembersOrExtensionEntity;
25
24
  getContainingPackage(): PackageEntity;
26
25
  getTranslation(): Translation | undefined;
27
26
  getLocale(): PackageLocale;
28
27
  getDialect(): PackageDialect;
29
28
  getOriginalEntity(): IndexerEntity;
30
- getParameters(): readonly ParameterEntity[];
31
29
  getDefinition(): IndexerEntityDefinition;
32
30
  isHidden(): EntityHidingLevel | undefined;
33
31
  markedAbstract(): boolean;
@@ -41,3 +39,15 @@ export declare class TranslatedIndexerEntity implements IndexerEntity {
41
39
  ensureAllDiagnosticsReported?(): void;
42
40
  getTags(): readonly Tag[];
43
41
  }
42
+ export declare class SourceTranslatedIndexerEntity extends TranslatedIndexerEntity {
43
+ private readonly node;
44
+ private readonly parameters;
45
+ constructor(originalEntity: IndexerEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity, node: tree.IndexerTranslation | undefined);
46
+ getParameters(): readonly ParameterEntity[];
47
+ }
48
+ export declare class UnfinishedIntrinsicTranslatedIndexerEntity {
49
+ private readonly unfinishedValue_;
50
+ get unfinishedValue(): IndexerEntity;
51
+ constructor(originalEntity: IndexerEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity);
52
+ finish(parameters: readonly ParameterEntity[]): IndexerEntity;
53
+ }
@@ -9,18 +9,17 @@ import { EntityHidingLevel } from '../EntityHiding.js';
9
9
  import { EntityKind, OperatorKind, PackageEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
10
10
  import type { OperatorEntity, OperatorEntityDefinition } from '../interfaces/OperatorEntity.js';
11
11
  import { ParameterEntity } from '../interfaces/VariableEntity.js';
12
- export declare class TranslatedOperatorEntity implements OperatorEntity {
12
+ export declare abstract class TranslatedOperatorEntity implements OperatorEntity {
13
13
  readonly kind = EntityKind.Operator;
14
- private readonly analyzer;
15
- private readonly originalEntity;
16
- private readonly translation;
17
- private readonly translationPackage;
18
- private readonly node;
19
- private readonly containingEntity;
20
- private readonly parameters;
14
+ protected readonly analyzer: Analyzer;
15
+ protected readonly originalEntity: OperatorEntity;
16
+ protected readonly translation: Translation;
17
+ protected readonly translationPackage: AnalyzedTranslationPackage;
18
+ protected readonly containingEntity: TypeWithMembersOrExtensionEntity;
21
19
  private readonly returnType;
22
20
  private readonly overriddenMembers;
23
- constructor(analyzer: Analyzer, originalEntity: OperatorEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity, node: tree.MethodTranslation | undefined);
21
+ constructor(analyzer: Analyzer, originalEntity: OperatorEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity);
22
+ abstract getParameters(): readonly ParameterEntity[];
24
23
  getContainingEntity(): TypeWithMembersOrExtensionEntity;
25
24
  getContainingPackage(): PackageEntity;
26
25
  getTranslation(): Translation | undefined;
@@ -28,7 +27,6 @@ export declare class TranslatedOperatorEntity implements OperatorEntity {
28
27
  getDialect(): PackageDialect;
29
28
  getOriginalEntity(): OperatorEntity;
30
29
  getOperatorKind(): OperatorKind;
31
- getParameters(): readonly ParameterEntity[];
32
30
  getReturnType(): types.Type;
33
31
  getDefinition(): OperatorEntityDefinition;
34
32
  isStatic(): boolean;
@@ -39,3 +37,16 @@ export declare class TranslatedOperatorEntity implements OperatorEntity {
39
37
  isHidden(): EntityHidingLevel | undefined;
40
38
  getTags(): readonly Tag[];
41
39
  }
40
+ export declare class SourceTranslatedOperatorEntity extends TranslatedOperatorEntity {
41
+ readonly kind = EntityKind.Operator;
42
+ private readonly node;
43
+ private readonly parameters;
44
+ constructor(analyzer: Analyzer, originalEntity: OperatorEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity, node: tree.MethodTranslation | undefined);
45
+ getParameters(): readonly ParameterEntity[];
46
+ }
47
+ export declare class UnfinishedIntrinsicTranslatedOperatorEntity {
48
+ private readonly unfinishedValue_;
49
+ get unfinishedValue(): OperatorEntity;
50
+ constructor(analyzer: Analyzer, originalEntity: OperatorEntity, translation: Translation, translationPackage: AnalyzedTranslationPackage, translatedContainingEntity: TypeWithMembersOrExtensionEntity);
51
+ finish(parameters: readonly ParameterEntity[]): OperatorEntity;
52
+ }
@@ -14,7 +14,6 @@ export declare class TranslatedPackageEntity implements PackageEntity {
14
14
  private readonly translation;
15
15
  private readonly name;
16
16
  private readonly translationPackage;
17
- private readonly members;
18
17
  constructor(originalEntity: PackageEntity, translation: Translation, name: PackageName, translationPackage: AnalyzedTranslationPackage);
19
18
  getName(): PackageName;
20
19
  getLocale(): PackageLocale;
@@ -29,5 +28,4 @@ export declare class TranslatedPackageEntity implements PackageEntity {
29
28
  getOriginalEntity(): PackageEntity;
30
29
  getTags(): readonly Tag[];
31
30
  getTextTranslationPackageInfo(): TextTranslationPackageEntityInfo | undefined;
32
- ensureAllDiagnosticsReported(): void;
33
31
  }
@@ -51,7 +51,6 @@ export declare class TranslatedPackageStructuredTypeEntity implements PackageStr
51
51
  getTags(): readonly Tag[];
52
52
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
53
53
  getContext(): EntityContext;
54
- ensureAllDiagnosticsReported(): void;
55
54
  }
56
55
  export declare class TranslatedAnonymousStructuredTypeEntity implements AnonymousStructuredTypeEntity {
57
56
  readonly kind = EntityKind.Type;
@@ -47,7 +47,6 @@ export declare class TranslatedPackageVariantTypeEntity implements PackageVarian
47
47
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
48
48
  getBaseObjectType(): BaseObjectType;
49
49
  getContext(): EntityContext;
50
- ensureAllDiagnosticsReported(): void;
51
50
  }
52
51
  export declare class TranslatedAnonymousVariantTypeEntity implements AnonymousVariantTypeEntity {
53
52
  readonly kind = EntityKind.Type;
@@ -1,5 +1,5 @@
1
1
  import { Analyzer } from '../analysis/Analyzer.js';
2
- import { CancellationToken, Uri } from '../common/index.js';
2
+ import { TaskController, Uri } from '../common/index.js';
3
3
  import { DiagnosticAcceptor } from '../diagnostic/Diagnostic.js';
4
4
  import { EmitOptions, OutputAcceptor } from '../emitter/index.js';
5
5
  import { Compilation } from '../project/Compilation.js';
@@ -7,11 +7,11 @@ import { SourcesProvider } from '../project/CompilationLoader.js';
7
7
  import { TypeScriptLibrariesProvider } from '../ts-interop/TsLibrariesProvider.js';
8
8
  export type LaunchUri = Uri;
9
9
  export declare class Compiler {
10
- static loadCompilation(projectUri: Uri, sourcesProvider: SourcesProvider, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, options?: LoadCompilationOptions, cancellationToken?: CancellationToken): Promise<Compilation | undefined>;
11
- static createAnalyzer(compilation: Compilation, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, _cancellationToken?: CancellationToken): Promise<Analyzer | undefined>;
12
- static analyze(analyzer: Analyzer, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<boolean>;
13
- static emit(analyzer: Analyzer, outputUri: Uri, outputAcceptor: OutputAcceptor, _diagnostics: DiagnosticAcceptor | undefined, emitOptions?: EmitOptions, cancellationToken?: CancellationToken): Promise<LaunchUri | undefined>;
14
- static emitToString(analyzer: Analyzer, _diagnostics: DiagnosticAcceptor | undefined, emitOptions?: EmitOptions, cancellationToken?: CancellationToken): Promise<string>;
10
+ static loadCompilation(projectUri: Uri, sourcesProvider: SourcesProvider, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController, options?: LoadCompilationOptions): Promise<Compilation | undefined>;
11
+ static createAnalyzer(compilation: Compilation, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, _taskController: TaskController): Promise<Analyzer | undefined>;
12
+ static analyze(analyzer: Analyzer, diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController): Promise<boolean>;
13
+ static emit(analyzer: Analyzer, outputUri: Uri, outputAcceptor: OutputAcceptor, diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController, emitOptions?: EmitOptions): Promise<LaunchUri | undefined>;
14
+ static emitToString(analyzer: Analyzer, _diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController, emitOptions?: EmitOptions): Promise<string>;
15
15
  }
16
16
  export interface LoadCompilationOptions {
17
17
  workspaceUri?: Uri;
@@ -1,5 +1,5 @@
1
1
  import { Analyzer } from '../analysis/index.js';
2
- import { CancellationToken, Uri } from '../common/index.js';
2
+ import { TaskController, Uri } from '../common/index.js';
3
3
  import { Diagnostic, DiagnosticAcceptor } from '../diagnostic/Diagnostic.js';
4
4
  import { EmitOptions } from '../emitter/index.js';
5
5
  import { Compilation } from '../project/index.js';
@@ -10,10 +10,10 @@ export declare class NodeCompiler {
10
10
  private static get fileSystem();
11
11
  static findStandardTypeScriptLibrary(nodeModulesSearchPaths: readonly string[], defaultTsLibraryPath?: string): Promise<Uri | undefined>;
12
12
  static createTypeScriptLibrariesProvider(nodeModulesSearchPaths: readonly string[], defaultTsLibraryPath: string | undefined, diagnostics: DiagnosticAcceptor | undefined): Promise<TypeScriptLibrariesProvider | undefined>;
13
- static loadCompilation(projectPath: string, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, options?: NodeCompilerLoadCompilationOptions, cancellationToken?: CancellationToken): Promise<Compilation | undefined>;
14
- static createAnalyzer(compilation: Compilation, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<Analyzer | undefined>;
15
- static analyze(analyzer: Analyzer, diagnostics: DiagnosticAcceptor | undefined, cancellationToken?: CancellationToken): Promise<boolean>;
16
- static emit(analyzer: Analyzer, outputPath: string, diagnostics: DiagnosticAcceptor | undefined, emitOptions?: EmitOptions, cancellationToken?: CancellationToken): Promise<LaunchPath | undefined>;
13
+ static loadCompilation(projectPath: string, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController, options?: NodeCompilerLoadCompilationOptions): Promise<Compilation | undefined>;
14
+ static createAnalyzer(compilation: Compilation, tsLibrariesProvider: TypeScriptLibrariesProvider, diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController): Promise<Analyzer | undefined>;
15
+ static analyze(analyzer: Analyzer, diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController): Promise<boolean>;
16
+ static emit(analyzer: Analyzer, outputPath: string, diagnostics: DiagnosticAcceptor | undefined, taskController: TaskController, emitOptions?: EmitOptions): Promise<LaunchPath | undefined>;
17
17
  static compile(task: NodeCompilerTask): Promise<LaunchPath | undefined>;
18
18
  }
19
19
  export interface NodeCompilerLoadCompilationOptions {
@@ -30,7 +30,7 @@ export interface NodeCompilerTask {
30
30
  loadCompilationOptions?: NodeCompilerLoadCompilationOptions;
31
31
  defaultTsLibraryPath?: string;
32
32
  emitOptions?: EmitOptions;
33
- cancellationToken?: CancellationToken;
33
+ controller: TaskController;
34
34
  }
35
35
  export declare class PrintingDiagnosticAcceptor implements DiagnosticAcceptor {
36
36
  private readonly noWarnings;
@@ -1,4 +1,4 @@
1
- import { CancellationToken, Uri } from '../common/index.js';
1
+ import { TaskController, Uri } from '../common/index.js';
2
2
  import { Diagnostic, DiagnosticAcceptor } from '../diagnostic/Diagnostic.js';
3
3
  import { Compilation } from './Compilation.js';
4
4
  import { ConvertedConfiguration } from './configuration/ConfigurationConverter.js';
@@ -10,15 +10,15 @@ export declare class CompilationLoader {
10
10
  private readonly source;
11
11
  private readonly config;
12
12
  private readonly diagnostics;
13
- private readonly cancellationToken;
13
+ private readonly taskController;
14
14
  private configurationsByPackageOrGroupUri;
15
15
  private constructor();
16
- static loadUsingSourcesProvider(uri: Uri, sourcesProvider: SourcesProvider, options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor, workspaceUri?: Uri, namesOfDirectoriesToIgnore?: readonly string[], cancellationToken?: CancellationToken): Promise<{
16
+ static loadUsingSourcesProvider(uri: Uri, sourcesProvider: SourcesProvider, taskController: TaskController, options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor, workspaceUri?: Uri, namesOfDirectoriesToIgnore?: readonly string[]): Promise<{
17
17
  loadResult: CompilationLoadResult;
18
18
  fileSystemTree: fsTree.FileSystemTree;
19
19
  }>;
20
- static loadFromFileSystemTree(rootDirectory: fsTree.Directory, fileSystemTree: fsTree.ReadonlyFileSystemTree, options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor, cancellationToken?: CancellationToken): Promise<CompilationLoadResult>;
21
- static loadFromPackageContents(contents: readonly packageContent.PackageContent[], options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor, cancellationToken?: CancellationToken): Promise<CompilationLoadResult>;
20
+ static loadFromFileSystemTree(rootDirectory: fsTree.Directory, fileSystemTree: fsTree.ReadonlyFileSystemTree, taskController: TaskController, options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor): Promise<CompilationLoadResult>;
21
+ static loadFromPackageContents(contents: readonly packageContent.PackageContent[], taskController: TaskController, options?: CompilationLoaderOptions, diagnostics?: DiagnosticAcceptor): Promise<CompilationLoadResult>;
22
22
  /**
23
23
  * Ищет папку с конфигурацией (папку '.артель') в переданной папке.
24
24
  */
@@ -60,7 +60,7 @@ export interface Directory extends IFileOrDirectory {
60
60
  readonly isDisposed: boolean;
61
61
  getChildren(): Iterable<FileOrDirectory>;
62
62
  getChild(name: string): FileOrDirectory | undefined;
63
- enumerateDescendants(): Iterable<FileOrDirectory>;
63
+ getFlatChildren(): Iterable<FileOrDirectory>;
64
64
  }
65
65
  interface IFileOrDirectory {
66
66
  readonly uri: Uri;
@@ -1,3 +1,4 @@
1
+ import { TaskController } from '../common/index.js';
1
2
  import { Directory, ReadonlyFileSystemTree } from './FileSystemTree.js';
2
3
  import { PackageContent } from './PackageContent.js';
3
- export declare function createPackageContentsFromFSTree(rootDirectory: Directory, fileSystemTree: ReadonlyFileSystemTree): Promise<PackageContent[]>;
4
+ export declare function createPackageContentsFromFSTree(rootDirectory: Directory, fileSystemTree: ReadonlyFileSystemTree, taskController: TaskController): Promise<PackageContent[]>;
@@ -1,12 +1,12 @@
1
1
  import { Analyzer } from '../analysis/index.js';
2
- import { CancellationToken, Range } from '../common/index.js';
2
+ import { Range, TaskController } from '../common/index.js';
3
3
  import { SourceFile } from '../project/index.js';
4
4
  import { SourceGenerationService } from './source-generation/SourceGenerationService.js';
5
5
  import { SourceLocation } from './Types.js';
6
6
  export declare class DefinitionService {
7
7
  private readonly sourceGenerationService;
8
8
  constructor(sourceGenerationService: SourceGenerationService | undefined);
9
- getDefinition(analyzer: Analyzer, sourceFile: SourceFile, offset: number, cancellationToken: CancellationToken | undefined): Promise<DefinitionsAndReferenceInfo | undefined>;
9
+ getDefinition(analyzer: Analyzer, sourceFile: SourceFile, offset: number, taskController: TaskController): Promise<DefinitionsAndReferenceInfo | undefined>;
10
10
  private getDefinitionOfReference;
11
11
  private getReferenceTargetSourceLocation;
12
12
  private getReferenceTargetEntity;