@artel/artc 0.6.25254 → 0.6.25256

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 (108) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +18 -8
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +607 -389
  5. package/build/{chunk-JTDPRR7O.js → chunk-CTEZ5IHI.js} +2 -2
  6. package/build/{chunk-3JS4YG6N.js → chunk-ER3TEZSN.js} +14316 -16033
  7. package/build/{chunk-JV2EK6MS.js → chunk-IHZZGWNS.js} +1 -1
  8. package/build/types/analysis/AccessedFunction.d.ts +19 -6
  9. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +2 -1
  10. package/build/types/analysis/Analyzer.d.ts +119 -47
  11. package/build/types/analysis/ArgumentToParameterMatchResult.d.ts +1 -4
  12. package/build/types/analysis/ArgumentsToParametersMatcher.d.ts +9 -15
  13. package/build/types/analysis/AutotypeCallExpressionMeaning.d.ts +13 -7
  14. package/build/types/analysis/BaseExpressionMeaning.d.ts +43 -15
  15. package/build/types/analysis/CallExpressionMeaning.d.ts +41 -22
  16. package/build/types/analysis/ConstructorCallResolver.d.ts +22 -0
  17. package/build/types/analysis/DiagnosticArgumentFactory.d.ts +3 -1
  18. package/build/types/analysis/DiagnosticCollector.d.ts +5 -9
  19. package/build/types/analysis/DisplayableEntity.d.ts +12 -6
  20. package/build/types/analysis/FunctionAccessResolver.d.ts +15 -0
  21. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +56 -22
  22. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +3 -2
  23. package/build/types/analysis/MemberAccessExpressionMeaning.d.ts +76 -27
  24. package/build/types/analysis/NamedTypeSpecifierResolver.d.ts +0 -1
  25. package/build/types/analysis/NodeTypeUtils.d.ts +1 -0
  26. package/build/types/analysis/ObjectExpressionMeaning.d.ts +1 -0
  27. package/build/types/analysis/OperatorAccessResolver.d.ts +9 -0
  28. package/build/types/analysis/OverloadResolver.d.ts +91 -5
  29. package/build/types/analysis/ReturnTypeInferrer.d.ts +13 -0
  30. package/build/types/analysis/SourceFileMembers.d.ts +2 -0
  31. package/build/types/analysis/SubstitutedFunction.d.ts +22 -20
  32. package/build/types/analysis/TagMeaning.d.ts +16 -15
  33. package/build/types/analysis/TypeArgumentInferrer.d.ts +49 -0
  34. package/build/types/analysis/TypeNarrower.d.ts +6 -4
  35. package/build/types/analysis/TypeOverloadResolver.d.ts +4 -2
  36. package/build/types/analysis/UserDefinableBinaryOperatorResolver.d.ts +2 -6
  37. package/build/types/analysis/UserDefinableUnaryOperatorResolver.d.ts +2 -2
  38. package/build/types/analysis/Utils.d.ts +2 -0
  39. package/build/types/analysis/Visitor.d.ts +2 -2
  40. package/build/types/analysis/index.d.ts +0 -2
  41. package/build/types/analysis/semantic-context/Declarations.d.ts +4 -4
  42. package/build/types/analysis/semantic-context/SemanticContextBase.d.ts +4 -0
  43. package/build/types/analysis/semantic-context/SemanticContextBuilder.d.ts +1 -0
  44. package/build/types/api/Api.d.ts +0 -2
  45. package/build/types/common/ArrayUtils.d.ts +5 -2
  46. package/build/types/common/Cached.d.ts +4 -0
  47. package/build/types/common/Lazy.d.ts +2 -0
  48. package/build/types/common/Query.d.ts +1 -1
  49. package/build/types/common/TreeQuery.d.ts +14 -48
  50. package/build/types/common/TreeTraversal.d.ts +1 -1
  51. package/build/types/common/index.d.ts +0 -1
  52. package/build/types/diagnostic/Diagnostic.d.ts +7 -0
  53. package/build/types/diagnostic/DiagnosticCode.d.ts +180 -173
  54. package/build/types/entities/AliasTypeEntity.d.ts +1 -0
  55. package/build/types/entities/AliasedType.d.ts +2 -2
  56. package/build/types/entities/FunctionEntity.d.ts +6 -3
  57. package/build/types/entities/FunctionTypeEntity.d.ts +2 -1
  58. package/build/types/entities/PackageAliasEntity.d.ts +2 -2
  59. package/build/types/entities/PackageMembers.d.ts +1 -0
  60. package/build/types/entities/StructuredTypeEntity.d.ts +1 -0
  61. package/build/types/entities/TypeEntityMembers.d.ts +2 -0
  62. package/build/types/entities/TypeParameterEntity.d.ts +1 -0
  63. package/build/types/entities/VariableEntity.d.ts +23 -11
  64. package/build/types/entities/VariantTypeEntity.d.ts +1 -0
  65. package/build/types/entities/index.d.ts +3 -2
  66. package/build/types/parser/CharacterCodes.d.ts +0 -8
  67. package/build/types/parser/Parser.d.ts +2 -2
  68. package/build/types/parser/TriviaInterner.d.ts +8 -0
  69. package/build/types/services/AddPropertyAssignmentService.d.ts +0 -7
  70. package/build/types/services/DisplayService.d.ts +16 -10
  71. package/build/types/services/NodeSemanticInfo.d.ts +3 -1
  72. package/build/types/services/TreeUtils.d.ts +1 -1
  73. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +9 -1
  74. package/build/types/services/signature-help/TypeParameterSignatureHelpProvider.d.ts +1 -1
  75. package/build/types/services/source-generation/EntityToSyntax.d.ts +1 -1
  76. package/build/types/tree/BaseNode.d.ts +32 -0
  77. package/build/types/tree/{green/Nodes.d.ts → Nodes.d.ts} +411 -359
  78. package/build/types/tree/{green/SyntaxToCode.d.ts → SyntaxToCode.d.ts} +1 -1
  79. package/build/types/tree/{green/Token.d.ts → Token.d.ts} +26 -10
  80. package/build/types/tree/{red/Utils.d.ts → Utils.d.ts} +4 -3
  81. package/build/types/tree/index.d.ts +10 -1
  82. package/build/types/ts-interop/Entities.d.ts +14 -0
  83. package/build/types/types/AliasType.d.ts +2 -2
  84. package/build/types/types/FunctionType.d.ts +2 -2
  85. package/build/types/types/IntersectionType.d.ts +3 -3
  86. package/build/types/types/ParameterType.d.ts +2 -2
  87. package/build/types/types/StructuredType.d.ts +2 -2
  88. package/build/types/types/Substitutions.d.ts +18 -6
  89. package/build/types/types/Type.d.ts +3 -3
  90. package/build/types/types/TypeMembers.d.ts +2 -1
  91. package/build/types/types/UnionType.d.ts +3 -3
  92. package/build/types/types/UnresolvedType.d.ts +2 -2
  93. package/build/types/types/VariantType.d.ts +2 -2
  94. package/package.json +7 -1
  95. package/build/types/analysis/ConstructorOverloadResolver.d.ts +0 -31
  96. package/build/types/analysis/FunctionOverloadResolver.d.ts +0 -21
  97. package/build/types/analysis/TargetTypeHint.d.ts +0 -5
  98. package/build/types/common/Errors.d.ts +0 -2
  99. package/build/types/tree/green/BaseNode.d.ts +0 -14
  100. package/build/types/tree/green/Utils.d.ts +0 -2
  101. package/build/types/tree/green/index.d.ts +0 -8
  102. package/build/types/tree/red/BaseNode.d.ts +0 -16
  103. package/build/types/tree/red/Internal.d.ts +0 -2
  104. package/build/types/tree/red/Nodes.d.ts +0 -2271
  105. package/build/types/tree/red/Token.d.ts +0 -30
  106. package/build/types/tree/red/index.d.ts +0 -10
  107. /package/build/types/tree/{red/NodePath.d.ts → NodePath.d.ts} +0 -0
  108. /package/build/types/tree/{green/SyntaxFactory.d.ts → SyntaxFactory.d.ts} +0 -0
@@ -5,7 +5,7 @@ import { Name } from '../common/index.js';
5
5
  import { MethodDeclaration, NestedFunctionDeclaration, PackageFunctionDeclaration } from '../tree/index.js';
6
6
  import * as types from '../types/index.js';
7
7
  import type { PackageEntity } from './index.js';
8
- import { DefinitionKind, Entity, EntityHidingLevel, EntityKind, ParameterVariableEntity, SubstitutionApplicationMode, TypeMemberEntityContainer, TypeParameterEntity } from './index.js';
8
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ParameterVariableEntity, SubstitutionApplicationMode, TypeMemberEntityContainer, TypeParameterEntity } from './index.js';
9
9
  export type FunctionEntity = PackageFunctionEntity | MethodEntity | NestedFunctionEntity;
10
10
  export interface PackageFunctionEntity extends IFunctionEntity {
11
11
  readonly subkind: 'package';
@@ -28,7 +28,7 @@ export interface MethodEntity extends IFunctionEntity {
28
28
  }
29
29
  export interface NestedFunctionEntity extends IFunctionEntity {
30
30
  readonly subkind: 'nested';
31
- getContainingEntity(): Entity;
31
+ getContainingPackage(): PackageEntity;
32
32
  getLocalization(): Localization;
33
33
  getOriginalEntity(): NestedFunctionEntity;
34
34
  }
@@ -58,6 +58,7 @@ export declare class PackageFunctionDeclarationEntity implements PackageFunction
58
58
  private readonly _node;
59
59
  readonly kind = EntityKind.Function;
60
60
  readonly subkind = "package";
61
+ private readonly _name;
61
62
  private readonly _typeParameters;
62
63
  private readonly _valueParameters;
63
64
  private readonly _returnType;
@@ -83,6 +84,7 @@ export declare class MethodDeclarationEntity implements MethodEntity {
83
84
  private readonly _node;
84
85
  readonly kind = EntityKind.Function;
85
86
  readonly subkind = "method";
87
+ private readonly _name;
86
88
  private readonly _typeParameters;
87
89
  private readonly _valueParameters;
88
90
  private readonly _returnType;
@@ -115,12 +117,13 @@ export declare class NestedFunctionDeclarationEntity implements NestedFunctionEn
115
117
  private readonly _node;
116
118
  readonly kind = EntityKind.Function;
117
119
  readonly subkind = "nested";
120
+ private readonly _name;
118
121
  private readonly _typeParameters;
119
122
  private readonly _valueParameters;
120
123
  private readonly _returnType;
121
124
  constructor(_analyzer: Analyzer, _node: NestedFunctionDeclaration);
122
125
  getName(): Name;
123
- getContainingEntity(): Entity;
126
+ getContainingPackage(): PackageEntity;
124
127
  getTypeParameters(): readonly TypeParameterEntity[];
125
128
  getValueParameters(): readonly ParameterVariableEntity[];
126
129
  getReturnType(): types.Type;
@@ -55,6 +55,7 @@ export declare class PackageFunctionTypeDeclarationEntity implements PackageFunc
55
55
  readonly kind = EntityKind.Type;
56
56
  readonly typeEntityKind = TypeEntityKind.Function;
57
57
  readonly subkind = "package";
58
+ private readonly _name;
58
59
  private readonly _typeParameters;
59
60
  private readonly _valueParameters;
60
61
  private readonly _returnType;
@@ -112,7 +113,7 @@ export declare class AnonymousFunctionTypeDeclarationEntity implements Anonymous
112
113
  export declare class UnfinishedIntrinsicAnonymousFunctionTypeEntity {
113
114
  private readonly _unfinishedValue;
114
115
  get unfinishedValue(): AnonymousFunctionTypeEntity;
115
- constructor(analyzer: Analyzer, returnType: types.Type, isAsync: boolean, substitutionApplicationMode: SubstitutionApplicationMode, containingPackage: PackageEntity, isHidden: EntityHidingLevel | undefined, context: EntityContext | undefined);
116
+ constructor(analyzer: Analyzer, returnType: types.Type, isAsync: boolean, containingPackage: PackageEntity, isHidden: EntityHidingLevel | undefined, context: EntityContext | undefined);
116
117
  finish(typeParameters: readonly TypeParameterEntity[], valueParameters: readonly ParameterVariableEntity[]): AnonymousFunctionTypeEntity;
117
118
  }
118
119
  export declare class UnfinishedIntrinsicPackageFunctionTypeEntity {
@@ -21,9 +21,9 @@ type PackageAliasEntityDefinition = {
21
21
  export declare class AliasedPackageImportEntity implements PackageAliasEntity {
22
22
  private readonly _analyzer;
23
23
  private readonly _node;
24
- private readonly _alias;
25
24
  readonly kind = EntityKind.PackageAlias;
26
- constructor(_analyzer: Analyzer, _node: PackageImport, _alias: Identifier);
25
+ private readonly _name;
26
+ constructor(_analyzer: Analyzer, _node: PackageImport, alias: Identifier);
27
27
  getName(): Name;
28
28
  getDefinition(): PackageAliasEntityDefinition;
29
29
  getPackage(): PackageEntity | undefined;
@@ -3,6 +3,7 @@ import { NamedPackageMemberEntity, TypeEntity, TypeExtensionEntity } from '../en
3
3
  export declare class PackageEntityMembers {
4
4
  private readonly _namedMembers;
5
5
  private readonly _typeExtensions;
6
+ private static readonly _emptyNamedMembers;
6
7
  private readonly _membersByNameKey;
7
8
  private get membersByNameKey();
8
9
  constructor(_namedMembers: readonly NamedPackageMemberEntity[], _typeExtensions: readonly TypeExtensionEntity[]);
@@ -193,6 +193,7 @@ export declare class SourcePackageStructuredTypeDeclarationData {
193
193
  private readonly _analyzer;
194
194
  private readonly _node;
195
195
  private readonly _entity;
196
+ private readonly _name;
196
197
  private readonly _typeParameters;
197
198
  private readonly _baseTypes;
198
199
  private readonly _members;
@@ -13,6 +13,8 @@ export declare class TypeEntityMembers {
13
13
  private readonly _destructors;
14
14
  private readonly _indexers;
15
15
  private readonly _dereferenceOperators;
16
+ private static readonly _emptyNamedMembers;
17
+ private static readonly _emptyOperators;
16
18
  private readonly _membersByNameKey;
17
19
  private readonly _operatorsByKind;
18
20
  private get membersByNameKey();
@@ -78,6 +78,7 @@ export declare class SourceTypeParameterEntity implements TypeParameterEntity {
78
78
  private readonly _node;
79
79
  readonly kind = EntityKind.Type;
80
80
  readonly typeEntityKind = TypeEntityKind.Parameter;
81
+ private readonly _name;
81
82
  private readonly _definition;
82
83
  private readonly _constraint;
83
84
  private readonly _default;
@@ -5,8 +5,8 @@ import { Analyzer } from '../analysis/index.js';
5
5
  import { Lazy, Name } from '../common/index.js';
6
6
  import * as tree from '../tree/index.js';
7
7
  import * as types from '../types/index.js';
8
- import type { Entity, IndexerEntity, PackageEntity } from './index.js';
9
- import { Entity as ActualEntity, ConstructorEntity, DefinitionKind, DestructorEntity, EntityHidingLevel, EntityKind, FunctionEntity, FunctionTypeEntity, GetterEntity, OperatorEntity, SetterEntity, TypeMemberEntityContainer } from './index.js';
8
+ import type { IndexerEntity, PackageEntity } from './index.js';
9
+ import { ConstructorEntity, DefinitionKind, DestructorEntity, EntityHidingLevel, EntityKind, FunctionEntity, FunctionTypeEntity, GetterEntity, OperatorEntity, SetterEntity, TypeMemberEntityContainer } from './index.js';
10
10
  export type VariableEntity = PackageVariableEntity | FieldEntity | ParameterVariableEntity | TextTemplateParameterVariableEntity | LocalVariableEntity;
11
11
  export interface PackageVariableEntity extends IVariableEntity {
12
12
  readonly subkind: 'package';
@@ -43,7 +43,7 @@ export interface TextTemplateParameterVariableEntity extends IVariableEntity {
43
43
  export interface LocalVariableEntity extends IVariableEntity {
44
44
  readonly subkind: 'local';
45
45
  getLocalVariableKind(): LocalVariableKind;
46
- getContainingEntity(): Entity;
46
+ getContainingPackage(): PackageEntity;
47
47
  getLocalization(): Localization;
48
48
  getOriginalEntity(): LocalVariableEntity;
49
49
  }
@@ -73,9 +73,9 @@ export declare namespace ParameterVariableEntityContainer {
73
73
  constructor(entity: EntityContainingValueParameter);
74
74
  }
75
75
  class FunctionLiteral {
76
- readonly entityContainingFunction: ActualEntity;
76
+ readonly containingPackage: PackageEntity;
77
77
  readonly kind = "function-literal";
78
- constructor(entityContainingFunction: ActualEntity);
78
+ constructor(containingPackage: PackageEntity);
79
79
  }
80
80
  }
81
81
  export type EntityContainingValueParameter = FunctionEntity | IndexerEntity | ConstructorEntity | DestructorEntity | FunctionTypeEntity | OperatorEntity;
@@ -128,6 +128,7 @@ export declare class PackageVariableDeclarationEntity implements PackageVariable
128
128
  private readonly _node;
129
129
  readonly kind = EntityKind.Variable;
130
130
  readonly subkind = "package";
131
+ private readonly _name;
131
132
  private readonly _typeInferrer;
132
133
  private _modifierFlags;
133
134
  private _hasReportedAllDiagnostics;
@@ -154,6 +155,7 @@ export declare class ComputedPackageVariableDeclarationEntity implements Package
154
155
  private readonly _getterDeclaration;
155
156
  private readonly _setterDeclaration;
156
157
  private readonly _getterOrSetterDeclaration;
158
+ private readonly _name;
157
159
  private _modifierFlags;
158
160
  private _hasReportedAllDiagnostics;
159
161
  private get modifierFlags();
@@ -177,6 +179,7 @@ export declare class FieldDeclarationEntity implements FieldEntity {
177
179
  readonly subkind = "field";
178
180
  private readonly _analyzer;
179
181
  private readonly _node;
182
+ private readonly _name;
180
183
  private readonly _typeInferrer;
181
184
  private _modifierFlags;
182
185
  private _hasReportedAllDiagnostics;
@@ -209,6 +212,7 @@ export declare class ComputedFieldDeclarationEntity implements FieldEntity {
209
212
  private readonly _getterDeclaration;
210
213
  private readonly _setterDeclaration;
211
214
  private readonly _getterOrSetterDeclaration;
215
+ private readonly _name;
212
216
  private _modifierFlags;
213
217
  private _hasReportedAllDiagnostics;
214
218
  private get modifierFlags();
@@ -239,6 +243,7 @@ export declare class VariantDeclarationEntity implements FieldEntity {
239
243
  private readonly _analyzer;
240
244
  private readonly _node;
241
245
  private readonly _variantTypeDeclaration;
246
+ private readonly _name;
242
247
  private readonly _type;
243
248
  constructor(analyzer: Analyzer, node: tree.VariantDeclaration);
244
249
  getName(): Name;
@@ -265,6 +270,7 @@ export declare class LocalVariableDeclarationEntity implements LocalVariableEnti
265
270
  private readonly _node;
266
271
  readonly kind = EntityKind.Variable;
267
272
  readonly subkind = "local";
273
+ private readonly _name;
268
274
  private readonly _typeInferrer;
269
275
  private _hasReportedAllDiagnostics;
270
276
  constructor(_analyzer: Analyzer, _node: tree.LocalVariableDeclaration);
@@ -278,7 +284,7 @@ export declare class LocalVariableDeclarationEntity implements LocalVariableEnti
278
284
  isSpecial(): SpecialVariableEntityInfo | undefined;
279
285
  getTags(): readonly Tag[];
280
286
  getLocalVariableKind(): LocalVariableKind;
281
- getContainingEntity(): Entity;
287
+ getContainingPackage(): PackageEntity;
282
288
  getLocalization(): Localization;
283
289
  getOriginalEntity(): LocalVariableEntity;
284
290
  ensureAllDiagnosticsReported(): void;
@@ -288,6 +294,7 @@ export declare class EnumerationVariableDeclarationEntity implements LocalVariab
288
294
  private readonly _node;
289
295
  readonly kind = EntityKind.Variable;
290
296
  readonly subkind = "local";
297
+ private readonly _name;
291
298
  private readonly _typeInferrer;
292
299
  private _hasReportedAllDiagnostics;
293
300
  constructor(_analyzer: Analyzer, _node: tree.EnumerationVariableDeclaration);
@@ -301,7 +308,7 @@ export declare class EnumerationVariableDeclarationEntity implements LocalVariab
301
308
  isSpecial(): SpecialVariableEntityInfo | undefined;
302
309
  getTags(): readonly Tag[];
303
310
  getLocalVariableKind(): LocalVariableKind;
304
- getContainingEntity(): Entity;
311
+ getContainingPackage(): PackageEntity;
305
312
  getLocalization(): Localization;
306
313
  getOriginalEntity(): LocalVariableEntity;
307
314
  ensureAllDiagnosticsReported(): void;
@@ -311,6 +318,7 @@ export declare class ErrorVariableDeclarationEntity implements LocalVariableEnti
311
318
  private readonly _node;
312
319
  readonly kind = EntityKind.Variable;
313
320
  readonly subkind = "local";
321
+ private readonly _name;
314
322
  private readonly _type;
315
323
  constructor(_analyzer: Analyzer, _node: tree.ErrorVariableDeclaration);
316
324
  getName(): Name;
@@ -323,7 +331,7 @@ export declare class ErrorVariableDeclarationEntity implements LocalVariableEnti
323
331
  isSpecial(): SpecialVariableEntityInfo | undefined;
324
332
  getTags(): readonly Tag[];
325
333
  getLocalVariableKind(): LocalVariableKind;
326
- getContainingEntity(): Entity;
334
+ getContainingPackage(): PackageEntity;
327
335
  getLocalization(): Localization;
328
336
  getOriginalEntity(): LocalVariableEntity;
329
337
  }
@@ -332,6 +340,7 @@ export declare class ParameterDeclarationEntity implements ParameterVariableEnti
332
340
  private readonly _node;
333
341
  readonly kind = EntityKind.Variable;
334
342
  readonly subkind = "parameter";
343
+ private readonly _name;
335
344
  private readonly _typeInferrer;
336
345
  private _hasReportedAllDiagnostics;
337
346
  constructor(_analyzer: Analyzer, _node: tree.ParameterDeclaration);
@@ -359,6 +368,7 @@ export declare class IndexParameterDeclarationEntity implements ParameterVariabl
359
368
  readonly kind = EntityKind.Variable;
360
369
  readonly subkind = "parameter";
361
370
  private readonly _getterOrSetterParameterDeclaration;
371
+ private readonly _name;
362
372
  private readonly _typeInferrer;
363
373
  private _hasReportedAllDiagnostics;
364
374
  constructor(_analyzer: Analyzer, _getterParameterDeclaration: tree.ParameterDeclaration | undefined, _setterParameterDeclaration: tree.ParameterDeclaration | undefined, _indexerEntity: IndexerEntity);
@@ -385,6 +395,7 @@ export declare class FunctionLiteralParameterDeclarationEntity implements Parame
385
395
  readonly kind = EntityKind.Variable;
386
396
  readonly subkind = "parameter";
387
397
  private readonly _parameterIndex;
398
+ private readonly _name;
388
399
  constructor(_analyzer: Analyzer, _node: tree.ParameterDeclaration, _functionLiteral: tree.FunctionLiteral);
389
400
  getName(): Name;
390
401
  getType(): types.Type;
@@ -489,11 +500,11 @@ export declare class IntrinsicLocalVariableEntity implements LocalVariableEntity
489
500
  private readonly _name;
490
501
  private readonly _type;
491
502
  private readonly _isConstant;
492
- private readonly _containingEntity;
503
+ private readonly _containingPackage;
493
504
  private readonly _isSpecial;
494
505
  readonly kind = EntityKind.Variable;
495
506
  readonly subkind = "local";
496
- constructor(_name: Name, _type: types.Type, _isConstant: boolean, _containingEntity: Entity, _isSpecial: SpecialVariableEntityInfo | undefined);
507
+ constructor(_name: Name, _type: types.Type, _isConstant: boolean, _containingPackage: PackageEntity, _isSpecial: SpecialVariableEntityInfo | undefined);
497
508
  getName(): Name;
498
509
  getType(): types.Type;
499
510
  getDefinition(): VariableEntityDefinition;
@@ -504,7 +515,7 @@ export declare class IntrinsicLocalVariableEntity implements LocalVariableEntity
504
515
  isSpecial(): SpecialVariableEntityInfo | undefined;
505
516
  getTags(): readonly Tag[];
506
517
  getLocalVariableKind(): LocalVariableKind;
507
- getContainingEntity(): Entity;
518
+ getContainingPackage(): PackageEntity;
508
519
  getLocalization(): Localization;
509
520
  getOriginalEntity(): LocalVariableEntity;
510
521
  }
@@ -513,6 +524,7 @@ export declare class TranslationTextTemplateParameterEntity implements TextTempl
513
524
  private readonly _node;
514
525
  readonly kind = EntityKind.Variable;
515
526
  readonly subkind = "text-template-parameter";
527
+ private readonly _name;
516
528
  constructor(_analyzer: Analyzer, _node: tree.TranslationTextTemplateParameter);
517
529
  getName(): Name;
518
530
  getContainer(): PackageEntity;
@@ -50,6 +50,7 @@ export declare class PackageVariantTypeDeclarationEntity implements PackageVaria
50
50
  readonly kind = EntityKind.Type;
51
51
  readonly typeEntityKind = TypeEntityKind.Variant;
52
52
  readonly subkind = "package";
53
+ private readonly _name;
53
54
  private readonly _typeParameters;
54
55
  private readonly _members;
55
56
  private readonly _underlyingType;
@@ -7,7 +7,7 @@ import { ConstructorEntity } from './ConstructorEntity.js';
7
7
  import { DereferenceOperatorEntity } from './DereferenceOperatorEntity.js';
8
8
  import { DestructorEntity } from './DestructorEntity.js';
9
9
  import { IEntityHidingMatcher } from './EntityHiding.js';
10
- import { FunctionEntity, MethodEntity, PackageFunctionEntity } from './FunctionEntity.js';
10
+ import { FunctionEntity, MethodEntity, NestedFunctionEntity, PackageFunctionEntity } from './FunctionEntity.js';
11
11
  import { FunctionTypeEntity, PackageFunctionTypeEntity } from './FunctionTypeEntity.js';
12
12
  import { GetterEntity } from './GetterEntity.js';
13
13
  import { IndexerEntity } from './IndexerEntity.js';
@@ -33,6 +33,7 @@ export * from './FunctionEntity.js';
33
33
  export * from './FunctionTypeEntity.js';
34
34
  export * from './GetterEntity.js';
35
35
  export * from './IndexerEntity.js';
36
+ export * from './LocalizableTextEntity.js';
36
37
  export * from './OperatorEntity.js';
37
38
  export * from './OperatorKind.js';
38
39
  export * from './PackageAliasEntity.js';
@@ -46,7 +47,6 @@ export * from './TypeMemberContainer.js';
46
47
  export * from './TypeParameterEntity.js';
47
48
  export * from './VariableEntity.js';
48
49
  export * from './VariantTypeEntity.js';
49
- export * from './LocalizableTextEntity.js';
50
50
  export declare const enum DefinitionKind {
51
51
  Source = 0,
52
52
  Intrinsic = 1,
@@ -111,6 +111,7 @@ export declare namespace TypeMemberEntity {
111
111
  }
112
112
  export type NamedTypeMemberEntity = FieldEntity | MethodEntity;
113
113
  export type NamedEntity = VariableEntity | PackageVariantTypeEntity | FunctionEntity | TypeParameterEntity | PackageFunctionTypeEntity | PackageStructuredTypeEntity | PackageAliasEntity | AliasTypeEntity;
114
+ export type PackageOrNestedFunctionEntity = PackageFunctionEntity | NestedFunctionEntity;
114
115
  export declare class EntityContext {
115
116
  readonly containingPackage: PackageEntity;
116
117
  readonly hidingMatcher: IEntityHidingMatcher;
@@ -13,17 +13,9 @@ export declare const enum CharacterCodes {
13
13
  Ё = 1025,
14
14
  ё = 1105,
15
15
  А = 1040,
16
- Б = 1041,
17
- Д = 1044,
18
16
  Е = 1045,
19
- Ф = 1060,
20
- Ц = 1062,
21
17
  Я = 1071,
22
18
  а = 1072,
23
- б = 1073,
24
- д = 1076,
25
19
  е = 1077,
26
- ф = 1092,
27
- ц = 1094,
28
20
  я = 1103
29
21
  }
@@ -1,7 +1,7 @@
1
1
  import { PackageDialect, PackageLocale } from '../common/index.js';
2
- import * as tree from '../tree/green/index.js';
2
+ import * as tree from '../tree/index.js';
3
3
  export declare class Parser {
4
- private readonly _parser;
4
+ private readonly parser_;
5
5
  constructor(text: string, locale?: PackageLocale, dialect?: PackageDialect);
6
6
  parse(): tree.SourceFile;
7
7
  }
@@ -0,0 +1,8 @@
1
+ import { Trivia } from '../tree/index.js';
2
+ export declare class TriviaInterner {
3
+ private readonly triviaCache_;
4
+ private readonly triviaArrayCache_;
5
+ private readonly emptyTriviaArray_;
6
+ internTrivia(trivia: Trivia): Trivia;
7
+ internTriviaArray(trivia: readonly Trivia[] | undefined): readonly Trivia[];
8
+ }
@@ -3,13 +3,6 @@ import * as tree from '../tree/index.js';
3
3
  import { SourceFileEdit } from './Types.js';
4
4
  export declare class AddPropertyAssignmentService {
5
5
  createEditWithAssignment(sourceFile: SourceFile, assignmentNode: tree.AssignmentStatement, value: string, propertyName: string | undefined): SourceFileEdit | undefined;
6
- /**
7
- * Метод определяет, где нужно расположить присваивание нового значение: сразу после присваивания предыдущего
8
- * значения, или в конце подпрограммы.
9
- * Если предыдущее присваивание не вложено ни в какие конструкции ветвления, присваивание нового значение можно
10
- * расположить сразу после. Иначе присваивание необходимо расположить в конце подпрограммы (после всех ветвлений).
11
- */
12
- private ifShouldBeAssignedAtTheEndOfSubprogramThenBody;
13
6
  private getContainingSubprogram;
14
7
  private detectNewLine;
15
8
  }
@@ -3,16 +3,19 @@ import { PackageNameTreeNode } from '../analysis/ImportedPackageNameTree.js';
3
3
  import { SubstitutedFunction } from '../analysis/SubstitutedFunction.js';
4
4
  import { Analyzer } from '../analysis/index.js';
5
5
  import { HelperPhraseKind } from '../common/HelperPhrases.js';
6
- import { PackageDialect, PackageLocale } from '../common/index.js';
6
+ import { Name, PackageDialect, PackageLocale } from '../common/index.js';
7
7
  import * as e from '../entities/index.js';
8
8
  import { NamedEntity } from '../entities/index.js';
9
+ import { SourceFile } from '../project/index.js';
9
10
  import { KeywordKind } from '../tree/index.js';
10
11
  import * as types from '../types/index.js';
11
12
  export declare class DisplayService {
12
13
  private readonly _analyzer;
13
14
  private readonly _locale;
14
- private readonly _dialect?;
15
- constructor(_analyzer: Analyzer | undefined, _locale: PackageLocale, _dialect?: PackageDialect | undefined);
15
+ private readonly _dialect;
16
+ private readonly _contextualSourceFile?;
17
+ private _packageNameShorteningMap;
18
+ constructor(_analyzer: Analyzer | undefined, _locale: PackageLocale, _dialect: PackageDialect, _contextualSourceFile?: SourceFile | undefined);
16
19
  displayVariableDeclaration(variable: VariableDeclaration): string;
17
20
  displayType(type: types.Type): string;
18
21
  getFunctionTypeBodyDisplayParts(type: types.FunctionType): FunctionTypeBodyDisplayParts;
@@ -48,7 +51,8 @@ export declare class DisplayService {
48
51
  displayTypeMember(member: types.TypeMember): string;
49
52
  displayKeyword(kind: KeywordKind): string;
50
53
  displayHelperPhrase(kind: HelperPhraseKind): string;
51
- displayEntityNameText(entity: NamedEntity): string;
54
+ displayEntityName(entity: NamedEntity): string;
55
+ displayName(name: Name): string;
52
56
  private displayTypeEntityAsUsage;
53
57
  private displayStructuredTypeUsage;
54
58
  private displayVariantTypeUsage;
@@ -61,6 +65,8 @@ export declare class DisplayService {
61
65
  private displayTypeUsageInternal;
62
66
  private displayUnionOrIntersectionTypeTypes;
63
67
  private displayDeclarationContainer;
68
+ private displayDeclarationContainerWithEndingDot;
69
+ private getPackageNameShorteningMap;
64
70
  }
65
71
  interface TypeDisplayOptions {
66
72
  readonly unionAndAliasTypeDisplayKind: UnionAndAliasTypeDisplayKind;
@@ -233,7 +239,7 @@ export declare class ValueParameterDeclaration_entity implements IValueParameter
233
239
  readonly value: e.VariableEntity;
234
240
  readonly kind = "entity";
235
241
  constructor(value: e.VariableEntity);
236
- getName(): string;
242
+ getName(): Name;
237
243
  getEntity(): e.VariableEntity;
238
244
  isOptional(): boolean;
239
245
  getType(): types.Type;
@@ -242,7 +248,7 @@ export declare class ValueParameterDeclaration_typeMember implements IValueParam
242
248
  readonly value: types.ValueParameter;
243
249
  readonly kind = "type-member";
244
250
  constructor(value: types.ValueParameter);
245
- getName(): string;
251
+ getName(): Name;
246
252
  getEntity(): e.VariableEntity;
247
253
  isOptional(): boolean;
248
254
  getType(): types.Type;
@@ -251,7 +257,7 @@ export declare class ValueParameterDeclaration_substitutedFunction implements IV
251
257
  readonly entity: e.VariableEntity;
252
258
  readonly type: types.Type;
253
259
  constructor(entity: e.VariableEntity, type: types.Type);
254
- getName(): string;
260
+ getName(): Name;
255
261
  getEntity(): e.VariableEntity;
256
262
  isOptional(): boolean;
257
263
  getType(): types.Type;
@@ -266,7 +272,7 @@ export declare class ValueParameterDeclaration_matchResultValueParameter impleme
266
272
  entity: e.VariableEntity;
267
273
  type: types.Type;
268
274
  });
269
- getName(): string;
275
+ getName(): Name;
270
276
  getEntity(): e.VariableEntity;
271
277
  isOptional(): boolean;
272
278
  getType(): types.Type;
@@ -275,13 +281,13 @@ export declare class ValueParameterDeclaration_universal implements IValueParame
275
281
  readonly entity: e.VariableEntity;
276
282
  readonly type: types.Type;
277
283
  constructor(entity: e.VariableEntity, type: types.Type);
278
- getName(): string;
284
+ getName(): Name;
279
285
  getEntity(): e.VariableEntity;
280
286
  isOptional(): boolean;
281
287
  getType(): types.Type;
282
288
  }
283
289
  interface IValueParameter {
284
- getName(): string;
290
+ getName(): Name;
285
291
  getEntity(): e.VariableEntity;
286
292
  isOptional(): boolean;
287
293
  getType(): types.Type;
@@ -30,10 +30,12 @@ export declare class NodeSemanticInfoService {
30
30
  static ofObjectExpression(analyzer: Analyzer, node: tree.ObjectExpression, options: NodeSemanticInfoServiceOptions): NodeSemanticInfo | undefined;
31
31
  static ofBaseExpression(analyzer: Analyzer, node: tree.BaseExpression, options: NodeSemanticInfoServiceOptions): NodeSemanticInfo | undefined;
32
32
  private static ofPackageNameSegmentAccess;
33
- private static ofMaybeConstructorCallExpression;
33
+ private static ofConstructorCallWithTypeAccess;
34
34
  private static getBetterReferenceTargetsOrPreserve;
35
35
  private static getBetterReferenceTarget;
36
36
  private static getContainingTranslationPackage;
37
+ private static ofAccessedFunctions;
38
+ private static ofConstructors;
37
39
  }
38
40
  export type NodeSemanticInfoServiceOptions = {
39
41
  readonly preferredTargetOfExplicitConstructorCall: 'type-declaration' | 'constructor-declaration';
@@ -54,5 +54,5 @@ interface ITokenOrKeywordsTouchingOffset {
54
54
  /**
55
55
  * Возвращает trivia, для которого `offset >= range.start` и `offset < range.end`.
56
56
  */
57
- export declare function getTriviaAtOffset(sourceFile: tree.SourceFile, offset: number): tree.Trivia | undefined;
57
+ export declare function getTriviaAtOffset(sourceFile: tree.SourceFile, offset: number): tree.TokenTrivia | undefined;
58
58
  export {};
@@ -17,6 +17,7 @@ export declare class SignatureForNode {
17
17
  static getSignaturesForAutotypeCallExpression(analyzer: Analyzer, node: tree.AutotypeCallExpression): SignaturesWithSingleSuitable | undefined;
18
18
  static getSignaturesForIndexedAccessExpression(analyzer: Analyzer, node: tree.IndexedAccessExpression): SignaturesWithSingleSuitable | undefined;
19
19
  static getSignaturesForTag(analyzer: Analyzer, node: tree.Tag): SignaturesWithSingleSuitable | undefined;
20
+ private static getSignaturesOfConstructors;
20
21
  }
21
22
  export declare class SimplifiedArgumentToParameterMatcher {
22
23
  static match(analyzer: Analyzer, arguments_: readonly ValueArgument[], signature: Signature): SimplifiedArgumentToParameterMatchResult;
@@ -48,7 +49,7 @@ export declare class MatchedSignature {
48
49
  readonly matchResult: SimplifiedArgumentToParameterMatchResult;
49
50
  constructor(value: Signature, matchResult: SimplifiedArgumentToParameterMatchResult);
50
51
  }
51
- export type Signature = AccessedFunctionSignature | FunctionTypeSignature | ConstructorSignature | IndexerSignature;
52
+ export type Signature = AccessedFunctionSignature | OperatorSignature | FunctionTypeSignature | ConstructorSignature | IndexerSignature;
52
53
  export declare class AccessedFunctionSignature implements ISignature {
53
54
  readonly kind = "accessed-function";
54
55
  readonly func: AccessedFunction;
@@ -56,6 +57,13 @@ export declare class AccessedFunctionSignature implements ISignature {
56
57
  constructor(func: AccessedFunction);
57
58
  getValueParameters(): readonly ValueParameter[];
58
59
  }
60
+ export declare class OperatorSignature implements ISignature {
61
+ readonly kind = "operator";
62
+ readonly operator: types.Operator;
63
+ private readonly _valueParameters;
64
+ constructor(operator: types.Operator);
65
+ getValueParameters(): readonly ValueParameter[];
66
+ }
59
67
  export declare class FunctionTypeSignature implements ISignature {
60
68
  readonly kind = "function-type";
61
69
  readonly functionType: types.FunctionType;
@@ -16,6 +16,6 @@ export declare class TypeParameterSignatureHelpProvider {
16
16
  private getSignaturesForNamedTypeSpecifier;
17
17
  private getSignaturesForTag;
18
18
  private getSignaturesForGenericSpecializationExpression;
19
- private getSignatureForSubstitutedFunction;
19
+ private getSignatureForAccessedFunction;
20
20
  private getSignatureForNamedType;
21
21
  }
@@ -1,6 +1,6 @@
1
1
  import { Analyzer } from '../../analysis/Analyzer.js';
2
2
  import { PackageEntity } from '../../entities/PackageEntity.js';
3
- import * as tree from '../../tree/green/index.js';
3
+ import * as tree from '../../tree/index.js';
4
4
  export declare class EntityToSyntax {
5
5
  private readonly _analyzer;
6
6
  private readonly _entity;
@@ -0,0 +1,32 @@
1
+ import { Range } from '../common/index.js';
2
+ import { Node } from './Nodes.js';
3
+ import { Token } from './Token.js';
4
+ export declare abstract class BaseNode {
5
+ protected static readonly emptyChildren_: [];
6
+ abstract readonly children: readonly (Node | undefined)[];
7
+ protected parent_: BaseNode | undefined;
8
+ protected rangeWithTrivia_: Range | undefined;
9
+ protected rangeWithoutTrivia_: Range | undefined;
10
+ protected abstract thisAsNode: Node;
11
+ constructor(rangeWithTrivia?: Range);
12
+ get parent(): Node | undefined;
13
+ get rangeWithTrivia(): Range;
14
+ get rangeWithoutTrivia(): Range;
15
+ get debuggerDisplay(): string;
16
+ /**
17
+ * Информация для оценки размера дерева при отладке.
18
+ */
19
+ get descendantCount(): number;
20
+ /**
21
+ * Информация для оценки размера дерева при отладке.
22
+ */
23
+ get tokenCount(): number;
24
+ findLeftmostToken(): Token | undefined;
25
+ findRightmostToken(): Token | undefined;
26
+ protected setParentForChildren(): void;
27
+ protected getLengthWithTrivia(): number;
28
+ protected getStartWithTrivia(): number;
29
+ private countDescendants;
30
+ private countTokens;
31
+ }
32
+ export declare function toSourceCode(node: Node, lengthLimit?: number, excludeTrivia?: boolean): string;