@artel/artc 0.6.25216 → 0.6.25218

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 +12 -50
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +1056 -1060
  5. package/build/{chunk-6RYP5SET.js → chunk-FI6LW2RD.js} +5 -4
  6. package/build/{chunk-TJG64G2K.js → chunk-SK7ZBC3X.js} +16737 -15766
  7. package/build/{chunk-O7AXOZXA.js → chunk-TQDMVKTN.js} +13 -5
  8. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +4 -26
  9. package/build/types/analysis/Analyzer.d.ts +162 -200
  10. package/build/types/analysis/{CallArgumentToParameterMatchResult.d.ts → ArgumentToParameterMatchResult.d.ts} +6 -7
  11. package/build/types/analysis/{CallArgumentsToParametersMatcher.d.ts → ArgumentsToParametersMatcher.d.ts} +14 -14
  12. package/build/types/analysis/ConstructorOverloadResolver.d.ts +1 -1
  13. package/build/types/analysis/DereferenceExpressionMeaning.d.ts +3 -3
  14. package/build/types/analysis/DiagnosticCollector.d.ts +3 -0
  15. package/build/types/analysis/FindModifier.d.ts +2 -0
  16. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +14 -12
  17. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +12 -7
  18. package/build/types/analysis/LocalizationContext.d.ts +4 -5
  19. package/build/types/analysis/Lookup.d.ts +8 -7
  20. package/build/types/analysis/ModifierFlags.d.ts +16 -0
  21. package/build/types/analysis/NamedTypeSpecifierResolver.d.ts +0 -1
  22. package/build/types/analysis/NodeTypeUtils.d.ts +1 -0
  23. package/build/types/analysis/OperationOverloadResolver.d.ts +2 -2
  24. package/build/types/analysis/OverloadResolver.d.ts +4 -4
  25. package/build/types/analysis/PackageMemberLookup.d.ts +5 -6
  26. package/build/types/analysis/PropertyAccessExpressionMeaning.d.ts +18 -16
  27. package/build/types/analysis/Scope.d.ts +21 -116
  28. package/build/types/analysis/SemanticContext.d.ts +16 -6
  29. package/build/types/analysis/SemanticContextBuilder.d.ts +1 -1
  30. package/build/types/analysis/SourceFileMembers.d.ts +12 -89
  31. package/build/types/analysis/TagMeaning.d.ts +57 -9
  32. package/build/types/analysis/Tags.d.ts +2 -2
  33. package/build/types/analysis/TypeMemberLookup.d.ts +15 -15
  34. package/build/types/analysis/TypeOverloadResolver.d.ts +1 -1
  35. package/build/types/analysis/WellKnownDeclarations.d.ts +1 -0
  36. package/build/types/analysis/index.d.ts +1 -1
  37. package/build/types/api/Api.d.ts +2 -6
  38. package/build/types/diagnostic/DiagnosticCode.d.ts +111 -103
  39. package/build/types/emitter/{EmitterGeneratedDeclarationKind.d.ts → EmitPhaseName.d.ts} +1 -44
  40. package/build/types/emitter/EmitterContext.d.ts +13 -1
  41. package/build/types/emitter/Entities.d.ts +58 -16
  42. package/build/types/emitter/EntityMap.d.ts +1 -3
  43. package/build/types/emitter/IrBuilder.d.ts +6 -2
  44. package/build/types/emitter/IrToJs.d.ts +5 -5
  45. package/build/types/emitter/Transformer.d.ts +20 -13
  46. package/build/types/emitter/ir/EmitOptions.d.ts +163 -0
  47. package/build/types/emitter/ir/Nodes.d.ts +213 -185
  48. package/build/types/emitter/ir/index.d.ts +1 -2
  49. package/build/types/emitter/ir/types.d.ts +4 -3
  50. package/build/types/entities/AliasTypeEntity.d.ts +9 -5
  51. package/build/types/entities/ConstructorEntity.d.ts +2 -0
  52. package/build/types/entities/DereferenceOperatorEntity.d.ts +9 -0
  53. package/build/types/entities/DestructorEntity.d.ts +2 -0
  54. package/build/types/entities/GetterEntity.d.ts +8 -0
  55. package/build/types/entities/IndexerEntity.d.ts +9 -0
  56. package/build/types/entities/MethodEntity.d.ts +9 -5
  57. package/build/types/entities/MethodTypeEntity.d.ts +18 -5
  58. package/build/types/entities/OperatorEntity.d.ts +5 -3
  59. package/build/types/entities/PackageEntity.d.ts +3 -3
  60. package/build/types/entities/PackageMembers.d.ts +4 -90
  61. package/build/types/entities/SetterEntity.d.ts +8 -0
  62. package/build/types/entities/StructuredTypeEntity.d.ts +22 -9
  63. package/build/types/entities/TypeEntity.d.ts +15 -0
  64. package/build/types/entities/TypeExtensionEntity.d.ts +2 -0
  65. package/build/types/entities/TypeParameterEntity.d.ts +12 -7
  66. package/build/types/entities/VariableEntity.d.ts +50 -41
  67. package/build/types/entities/VariantTypeEntity.d.ts +18 -11
  68. package/build/types/entities/index.d.ts +17 -25
  69. package/build/types/executor/Compiler.d.ts +1 -0
  70. package/build/types/executor/NodeCompiler.d.ts +1 -0
  71. package/build/types/parser/CharacterCodes.d.ts +8 -0
  72. package/build/types/parser/ReservedIdentifierDictionary.d.ts +1 -2
  73. package/build/types/parser/Scanner.d.ts +0 -6
  74. package/build/types/parser/UnescapeText.d.ts +1 -1
  75. package/build/types/project/FileSystemTree.d.ts +2 -2
  76. package/build/types/services/CompletionService.d.ts +4 -1
  77. package/build/types/services/DisplayService.d.ts +218 -163
  78. package/build/types/services/NodeSemanticInfo.d.ts +7 -5
  79. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +8 -24
  80. package/build/types/services/signature-help/TypeParameterSignatureHelpProvider.d.ts +1 -0
  81. package/build/types/services/source-generation/EntityToSyntax.d.ts +1 -1
  82. package/build/types/services/source-generation/SourceGenerationService.d.ts +2 -2
  83. package/build/types/services/workspace/ClientTrackedSourceFiles.d.ts +5 -5
  84. package/build/types/services/workspace/CompilationController.d.ts +3 -3
  85. package/build/types/services/workspace/FileSystemTreeProviderBasedOnWatchedFileSystem.d.ts +4 -4
  86. package/build/types/services/workspace/ManuallyUpdatedFileSystemTreeProvider.d.ts +4 -4
  87. package/build/types/services/workspace/Workspace.d.ts +3 -3
  88. package/build/types/services/workspace/WorkspaceFiles.d.ts +7 -7
  89. package/build/types/tree/KeywordKind.d.ts +37 -37
  90. package/build/types/tree/NodeKind.d.ts +37 -39
  91. package/build/types/tree/green/Nodes.d.ts +57 -80
  92. package/build/types/tree/green/SyntaxFactory.d.ts +4 -5
  93. package/build/types/tree/green/SyntaxToCode.d.ts +1 -2
  94. package/build/types/tree/red/Nodes.d.ts +65 -93
  95. package/build/types/ts-interop/Entities.d.ts +77 -34
  96. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +0 -1
  97. package/build/types/types/MethodType.d.ts +2 -2
  98. package/build/types/types/TypeMembers.d.ts +9 -0
  99. package/build/types/types/VariantType.d.ts +2 -2
  100. package/package.json +2 -2
  101. package/build/types/analysis/DereferencedVariableAccess.d.ts +0 -14
  102. package/build/types/analysis/IndexedAccess.d.ts +0 -14
  103. package/build/types/analysis/VariableAccess.d.ts +0 -14
  104. package/build/types/analysis/VariantLookup.d.ts +0 -20
  105. package/build/types/emitter/ir/LoweringOptions.d.ts +0 -34
  106. package/build/types/emitter/ir/LoweringState.d.ts +0 -25
  107. package/build/types/entities/VariantEntity.d.ts +0 -31
  108. package/build/types/entities/Variants.d.ts +0 -10
@@ -5,9 +5,8 @@ import type { PackageEntity } from '../entities/PackageEntity.js';
5
5
  import { PackageEntityDefinition } from '../entities/PackageEntity.js';
6
6
  import { OriginalPackageMembers } from '../entities/PackageMembers.js';
7
7
  import { OriginalTypeEntityMembers } from '../entities/TypeEntityMembers.js';
8
- import { OriginalVariants } from '../entities/Variants.js';
9
8
  import type { EntityContainingTypeParameter, EntityContainingValueParameter, EntityOwningGetter, TypeEntityWithMembers, VariantTypeEntity } from '../entities/index.js';
10
- import { AliasTypeEntity, AliasTypeEntityDefinition, AliasedType, AnonymousMethodTypeEntity, AnonymousStructuredTypeEntity, BaseAspectTypes, BaseObjectType, ConstructorEntity, ConstructorEntityDefinition, DefaultConstructorEntityInfo, EntityHidingLevel, EntityKind, EntityNaming, EntityOwningSetter, GetterEntity, GetterEntityDefinition, IndexerEntity, IndexerEntityDefinition, InterfacePackageEntityInfo, MethodEntityDefinition, MethodTypeEntityDefinition, PackageMethodEntity, PackageMethodTypeEntity, PackageStructuredTypeEntity, PackageVariableEntity, PackageVariantTypeEntity, ParameterVariableEntity, ParameterVariableEntityContainer, SetterEntity, SetterEntityDefinition, SpecialVariableEntityInfo, StructuredTypeEntityDefinition, SubstitutionApplicationMode, TypeMemberEntityContainer, TypeMethodEntity, TypeParameterConstraint, TypeParameterEntity, TypeParameterEntityDefinition, TypeVariableEntity, VariableEntityDefinition, VariantEntity, VariantEntityDefinition, VariantTypeEntityDefinition } from '../entities/index.js';
9
+ import { AliasTypeEntity, AliasTypeEntityDefinition, AliasedType, AnonymousMethodTypeEntity, AnonymousStructuredTypeEntity, BaseAspectTypes, BaseObjectType, ConstructorEntity, ConstructorEntityDefinition, DefaultConstructorEntityInfo, EntityHidingLevel, EntityKind, EntityNaming, EntityOwningSetter, GetterEntity, GetterEntityDefinition, IndexerEntity, IndexerEntityDefinition, InterfacePackageEntityInfo, MethodEntityDefinition, MethodTypeEntityDefinition, PackageMethodEntity, PackageMethodTypeEntity, PackageStructuredTypeEntity, PackageVariableEntity, PackageVariantTypeEntity, ParameterVariableEntity, ParameterVariableEntityContainer, SetterEntity, SetterEntityDefinition, SpecialVariableEntityInfo, StructuredTypeEntityDefinition, SubstitutionApplicationMode, TypeEntityKind, TypeMemberEntityContainer, TypeMethodEntity, TypeParameterConstraint, TypeParameterEntity, TypeParameterEntityDefinition, TypeVariableEntity, VariableEntityDefinition, VariantTypeEntityDefinition } from '../entities/index.js';
11
10
  import { JavaScriptImplementationConfig, PackageName, PlatformKind, ProgramPackage } from '../project/index.js';
12
11
  import * as tree from '../tree/index.js';
13
12
  import * as types from '../types/index.js';
@@ -59,7 +58,6 @@ export declare class TsGlobalVariableEntity implements PackageVariableEntity {
59
58
  readonly kind = EntityKind.Variable;
60
59
  readonly subkind = "package";
61
60
  private readonly _type;
62
- private get declaration();
63
61
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _isDefaultExport: boolean, _containingPackage: PackageEntity, _forceHiddenInPackage: boolean);
64
62
  getName(): Name;
65
63
  getContainingPackage(): PackageEntity;
@@ -71,6 +69,7 @@ export declare class TsGlobalVariableEntity implements PackageVariableEntity {
71
69
  isHidden(): EntityHidingLevel | undefined;
72
70
  isSpecial(): SpecialVariableEntityInfo | undefined;
73
71
  getTags(): readonly Tag[];
72
+ private getDeclaration;
74
73
  }
75
74
  export declare class TsGlobalFunctionEntity implements PackageMethodEntity {
76
75
  private readonly _tsctx;
@@ -142,13 +141,13 @@ export declare class TsGlobalClassOrInterfaceEntity implements PackageStructured
142
141
  private readonly _isDefaultExport;
143
142
  private readonly _containingPackage;
144
143
  private readonly _forceHiddenInPackage;
145
- readonly kind = EntityKind.StructuredType;
144
+ readonly kind = EntityKind.Type;
145
+ readonly typeEntityKind = TypeEntityKind.Structured;
146
146
  readonly subkind = "package";
147
147
  private readonly _typeParameters;
148
148
  private readonly _members;
149
149
  private readonly _baseObjectType;
150
150
  private readonly _baseAspectTypes;
151
- private get declaration();
152
151
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _isDefaultExport: boolean, _containingPackage: PackageEntity, _forceHiddenInPackage: boolean);
153
152
  getNaming(): EntityNaming;
154
153
  getName(): Name;
@@ -156,6 +155,8 @@ export declare class TsGlobalClassOrInterfaceEntity implements PackageStructured
156
155
  getTypeParameters(): readonly TypeParameterEntity[];
157
156
  getMembers(): OriginalTypeEntityMembers;
158
157
  getDefinition(): StructuredTypeEntityDefinition;
158
+ isBasic(): boolean;
159
+ isAbstract(): boolean;
159
160
  isAspect(): boolean;
160
161
  isRefObject(): boolean;
161
162
  isPlainObject(): boolean;
@@ -165,6 +166,7 @@ export declare class TsGlobalClassOrInterfaceEntity implements PackageStructured
165
166
  isHidden(): EntityHidingLevel | undefined;
166
167
  getTags(): readonly Tag[];
167
168
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
169
+ private getDeclaration;
168
170
  private isClassOrInterfaceAndVariableMerge;
169
171
  }
170
172
  export declare class SourceAndTsGlobalClassOrInterfaceMergeEntity implements PackageStructuredTypeEntity {
@@ -172,7 +174,8 @@ export declare class SourceAndTsGlobalClassOrInterfaceMergeEntity implements Pac
172
174
  private readonly _symbol;
173
175
  private readonly _isDefaultExport;
174
176
  private readonly _node;
175
- readonly kind = EntityKind.StructuredType;
177
+ readonly kind = EntityKind.Type;
178
+ readonly typeEntityKind = TypeEntityKind.Structured;
176
179
  readonly subkind = "package";
177
180
  private readonly _sourceData;
178
181
  private readonly _members;
@@ -183,6 +186,8 @@ export declare class SourceAndTsGlobalClassOrInterfaceMergeEntity implements Pac
183
186
  getTypeParameters(): readonly TypeParameterEntity[];
184
187
  getMembers(): OriginalTypeEntityMembers;
185
188
  getDefinition(): StructuredTypeEntityDefinition;
189
+ isBasic(): boolean;
190
+ isAbstract(): boolean;
186
191
  isAspect(): boolean;
187
192
  isRefObject(): boolean;
188
193
  isPlainObject(): boolean;
@@ -197,7 +202,8 @@ export declare class TsTypeLiteralEntity implements AnonymousStructuredTypeEntit
197
202
  private readonly _tsctx;
198
203
  private readonly _symbol;
199
204
  private readonly _containingPackage;
200
- readonly kind = EntityKind.StructuredType;
205
+ readonly kind = EntityKind.Type;
206
+ readonly typeEntityKind = TypeEntityKind.Structured;
201
207
  readonly subkind = "anonymous";
202
208
  private readonly _baseObjectType;
203
209
  private readonly _baseAspectTypes;
@@ -207,6 +213,8 @@ export declare class TsTypeLiteralEntity implements AnonymousStructuredTypeEntit
207
213
  getTypeParameters(): readonly TypeParameterEntity[];
208
214
  getMembers(): OriginalTypeEntityMembers;
209
215
  getDefinition(): StructuredTypeEntityDefinition;
216
+ isBasic(): boolean;
217
+ isAbstract(): boolean;
210
218
  isAspect(): boolean;
211
219
  isRefObject(): boolean;
212
220
  isPlainObject(): boolean;
@@ -226,7 +234,8 @@ export declare class TsNamedTypeLiteralEntity implements PackageStructuredTypeEn
226
234
  private readonly _owningDeclarationWithTypeParameters;
227
235
  private readonly _containingPackage;
228
236
  private readonly _forceHiddenInPackage;
229
- readonly kind = EntityKind.StructuredType;
237
+ readonly kind = EntityKind.Type;
238
+ readonly typeEntityKind = TypeEntityKind.Structured;
230
239
  readonly subkind = "package";
231
240
  private readonly _typeParameters;
232
241
  private readonly _baseObjectType;
@@ -239,6 +248,8 @@ export declare class TsNamedTypeLiteralEntity implements PackageStructuredTypeEn
239
248
  getTypeParameters(): readonly TypeParameterEntity[];
240
249
  getMembers(): OriginalTypeEntityMembers;
241
250
  getDefinition(): StructuredTypeEntityDefinition;
251
+ isBasic(): boolean;
252
+ isAbstract(): boolean;
242
253
  isAspect(): boolean;
243
254
  isRefObject(): boolean;
244
255
  isPlainObject(): boolean;
@@ -254,7 +265,8 @@ export declare class SourceAndTsNamedTypeLiteralMergeEntity implements PackageSt
254
265
  private readonly _symbol;
255
266
  private readonly _isDefaultExport;
256
267
  private readonly _node;
257
- readonly kind = EntityKind.StructuredType;
268
+ readonly kind = EntityKind.Type;
269
+ readonly typeEntityKind = TypeEntityKind.Structured;
258
270
  readonly subkind = "package";
259
271
  private readonly _sourceData;
260
272
  private readonly _members;
@@ -265,6 +277,8 @@ export declare class SourceAndTsNamedTypeLiteralMergeEntity implements PackageSt
265
277
  getTypeParameters(): readonly TypeParameterEntity[];
266
278
  getMembers(): OriginalTypeEntityMembers;
267
279
  getDefinition(): StructuredTypeEntityDefinition;
280
+ isBasic(): boolean;
281
+ isAbstract(): boolean;
268
282
  isAspect(): boolean;
269
283
  isRefObject(): boolean;
270
284
  isPlainObject(): boolean;
@@ -283,8 +297,7 @@ export declare class TsPropertyEntity implements TypeVariableEntity {
283
297
  readonly kind = EntityKind.Variable;
284
298
  readonly subkind = "type";
285
299
  private readonly _type;
286
- private readonly _overriddenMember;
287
- private get declaration();
300
+ private readonly _overriddenMembers;
288
301
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _containingType: TypeEntityWithMembers, _forceStatic: boolean);
289
302
  getName(): Name;
290
303
  getType(): types.Type;
@@ -300,7 +313,9 @@ export declare class TsPropertyEntity implements TypeVariableEntity {
300
313
  isRedefinable(): boolean;
301
314
  isRedefined(): boolean;
302
315
  isAbstract(): boolean;
303
- getOverriddenMember(): types.Variable | undefined;
316
+ getOverriddenMembers(): readonly types.Variable[];
317
+ isVariant(): boolean;
318
+ private getDeclaration;
304
319
  }
305
320
  export declare class TsAccessorEntity implements TypeVariableEntity {
306
321
  private readonly _tsctx;
@@ -312,8 +327,7 @@ export declare class TsAccessorEntity implements TypeVariableEntity {
312
327
  private readonly _type;
313
328
  private readonly _getter;
314
329
  private readonly _setter;
315
- private readonly _overriddenMember;
316
- private get getAccessorDeclaration();
330
+ private readonly _overriddenMembers;
317
331
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _containingType: TypeEntityWithMembers, _forceStatic: boolean);
318
332
  getName(): Name;
319
333
  getType(): types.Type;
@@ -329,7 +343,9 @@ export declare class TsAccessorEntity implements TypeVariableEntity {
329
343
  isRedefinable(): boolean;
330
344
  isRedefined(): boolean;
331
345
  isAbstract(): boolean;
332
- getOverriddenMember(): types.Variable | undefined;
346
+ getOverriddenMembers(): readonly types.Variable[];
347
+ isVariant(): boolean;
348
+ private getGetAccessorDeclaration;
333
349
  }
334
350
  export declare class TsGetAccessorEntity implements GetterEntity {
335
351
  private readonly _tsctx;
@@ -370,7 +386,7 @@ export declare class TsMethodEntity implements TypeMethodEntity {
370
386
  private readonly _typeParameters;
371
387
  private readonly _valueParameters;
372
388
  private readonly _returnType;
373
- private readonly _overriddenMember;
389
+ private readonly _overriddenMembers;
374
390
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _declaration: ts.MethodDeclaration | ts.MethodSignature, _containingType: TypeEntityWithMembers, _forceStatic: boolean);
375
391
  getName(): Name;
376
392
  getTypeParameters(): readonly TypeParameterEntity[];
@@ -389,7 +405,7 @@ export declare class TsMethodEntity implements TypeMethodEntity {
389
405
  getTypeParametersArity(): number;
390
406
  isMethodTypeInvokeMethod(): boolean;
391
407
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
392
- getOverriddenMember(): types.Method | undefined;
408
+ getOverriddenMembers(): readonly types.Method[];
393
409
  }
394
410
  export declare class TsIteratorMethodEntity implements TypeMethodEntity {
395
411
  private readonly _tsctx;
@@ -398,8 +414,7 @@ export declare class TsIteratorMethodEntity implements TypeMethodEntity {
398
414
  readonly kind = EntityKind.Method;
399
415
  readonly subkind = "type";
400
416
  private readonly _returnType;
401
- private readonly _overriddenMethod;
402
- private get firstDeclaration();
417
+ private readonly _overriddenMembers;
403
418
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _containingType: TypeEntityWithMembers);
404
419
  getName(): Name;
405
420
  getTypeParameters(): readonly TypeParameterEntity[];
@@ -418,7 +433,8 @@ export declare class TsIteratorMethodEntity implements TypeMethodEntity {
418
433
  getTypeParametersArity(): number;
419
434
  isMethodTypeInvokeMethod(): boolean;
420
435
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
421
- getOverriddenMember(): types.Method | undefined;
436
+ getOverriddenMembers(): readonly types.Method[];
437
+ private getFirstDeclaration;
422
438
  }
423
439
  export declare class TsParameterEntity implements ParameterVariableEntity {
424
440
  private readonly _tsctx;
@@ -427,7 +443,6 @@ export declare class TsParameterEntity implements ParameterVariableEntity {
427
443
  readonly kind = EntityKind.Variable;
428
444
  readonly subkind = "parameter";
429
445
  private readonly _type;
430
- private get declaration();
431
446
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _containingEntity: EntityContainingValueParameter);
432
447
  getName(): Name;
433
448
  getType(): types.Type;
@@ -441,15 +456,16 @@ export declare class TsParameterEntity implements ParameterVariableEntity {
441
456
  getContainer(): ParameterVariableEntityContainer;
442
457
  isOptional(): boolean;
443
458
  isVariadic(): boolean;
459
+ private getDeclaration;
444
460
  }
445
461
  export declare class TsTypeParameterEntity implements TypeParameterEntity {
446
462
  private readonly _tsctx;
447
463
  private readonly _symbol;
448
464
  private readonly _containingEntity;
449
- readonly kind = EntityKind.TypeParameter;
465
+ readonly kind = EntityKind.Type;
466
+ readonly typeEntityKind = TypeEntityKind.Parameter;
450
467
  private readonly _constraint;
451
468
  private readonly _defaultType;
452
- get declaration(): ts.TypeParameterDeclaration | undefined;
453
469
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _containingEntity: EntityContainingTypeParameter);
454
470
  getName(): Name;
455
471
  getConstraint(): TypeParameterConstraint;
@@ -459,6 +475,8 @@ export declare class TsTypeParameterEntity implements TypeParameterEntity {
459
475
  getTypeParameters(): readonly TypeParameterEntity[];
460
476
  getContainingEntity(): EntityContainingTypeParameter;
461
477
  isHidden(): EntityHidingLevel | undefined;
478
+ getTags(): readonly Tag[];
479
+ private getDeclaration;
462
480
  }
463
481
  export declare class TsIndexSignatureEntity implements IndexerEntity {
464
482
  private readonly _tsctx;
@@ -471,6 +489,7 @@ export declare class TsIndexSignatureEntity implements IndexerEntity {
471
489
  private readonly _type;
472
490
  private readonly _getter;
473
491
  private readonly _setter;
492
+ private readonly _overriddenMembers;
474
493
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _declaration: ts.IndexSignatureDeclaration, _containingType: TypeEntityWithMembers, _forceStatic: boolean);
475
494
  getValueParameters(): readonly ParameterVariableEntity[];
476
495
  getType(): types.Type;
@@ -480,8 +499,11 @@ export declare class TsIndexSignatureEntity implements IndexerEntity {
480
499
  getContainer(): TypeMemberEntityContainer;
481
500
  isStatic(): boolean;
482
501
  isHidden(): EntityHidingLevel | undefined;
502
+ isRedefinable(): boolean;
503
+ isRedefined(): boolean;
483
504
  isAbstract(): boolean;
484
505
  getTags(): readonly Tag[];
506
+ getOverriddenMembers(): readonly types.Indexer[];
485
507
  }
486
508
  export declare class TsConstructorEntity implements ConstructorEntity {
487
509
  private readonly _tsctx;
@@ -519,16 +541,16 @@ export declare class TsEnumEntity implements PackageVariantTypeEntity {
519
541
  private readonly _symbol;
520
542
  private readonly _isDefaultExport;
521
543
  private readonly _containingPackage;
522
- readonly kind = EntityKind.VariantType;
544
+ readonly kind = EntityKind.Type;
545
+ readonly typeEntityKind = TypeEntityKind.Variant;
523
546
  readonly subkind = "package";
524
- private readonly _variants;
525
547
  private readonly _members;
526
548
  private readonly _underlyingType;
549
+ private readonly _baseObjectType;
527
550
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _isDefaultExport: boolean, _containingPackage: PackageEntity);
528
551
  getNaming(): EntityNaming;
529
552
  getName(): Name;
530
553
  getContainingPackage(): PackageEntity;
531
- getVariants(): OriginalVariants;
532
554
  getMembers(): OriginalTypeEntityMembers;
533
555
  getUnderlyingType(): types.Type;
534
556
  getDefinition(): VariantTypeEntityDefinition;
@@ -537,16 +559,30 @@ export declare class TsEnumEntity implements PackageVariantTypeEntity {
537
559
  isHidden(): EntityHidingLevel | undefined;
538
560
  getTags(): readonly Tag[];
539
561
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
562
+ getBaseObjectType(): BaseObjectType;
540
563
  }
541
- export declare class TsEnumMemberEntity implements VariantEntity {
564
+ export declare class TsEnumMemberEntity implements TypeVariableEntity {
542
565
  private readonly _tsctx;
543
566
  private readonly _symbol;
544
567
  private readonly _variantTypeEntity;
545
- readonly kind = EntityKind.Variant;
568
+ readonly kind = EntityKind.Variable;
569
+ readonly subkind = "type";
570
+ private readonly _type;
546
571
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _variantTypeEntity: VariantTypeEntity);
572
+ getContainer(): TypeMemberEntityContainer;
573
+ isStatic(): boolean;
574
+ isRedefinable(): boolean;
575
+ isRedefined(): boolean;
576
+ isAbstract(): boolean;
577
+ getOverriddenMembers(): readonly types.Variable[];
578
+ isVariant(): boolean;
579
+ getType(): types.Type;
580
+ getGetter(): GetterEntity | undefined;
581
+ getSetter(): SetterEntity | undefined;
582
+ isConstant(): boolean;
583
+ isSpecial(): SpecialVariableEntityInfo | undefined;
547
584
  getName(): Name;
548
- getDefinition(): VariantEntityDefinition;
549
- getContainingEntity(): VariantTypeEntity;
585
+ getDefinition(): VariableEntityDefinition;
550
586
  isHidden(): EntityHidingLevel | undefined;
551
587
  getTags(): readonly Tag[];
552
588
  }
@@ -555,10 +591,10 @@ export declare class TsTypeAliasEntity implements AliasTypeEntity {
555
591
  private readonly _symbol;
556
592
  private readonly _isDefaultExport;
557
593
  private readonly _containingPackage;
558
- readonly kind = EntityKind.AliasType;
594
+ readonly kind = EntityKind.Type;
595
+ readonly typeEntityKind = TypeEntityKind.Alias;
559
596
  private readonly _aliasedType;
560
597
  private readonly _typeParameters;
561
- private get declaration();
562
598
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _isDefaultExport: boolean, _containingPackage: PackageEntity);
563
599
  getName(): Name;
564
600
  getContainingPackage(): PackageEntity;
@@ -570,17 +606,20 @@ export declare class TsTypeAliasEntity implements AliasTypeEntity {
570
606
  isHidden(): EntityHidingLevel | undefined;
571
607
  getTags(): readonly Tag[];
572
608
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
609
+ private getDeclaration;
573
610
  }
574
611
  export declare class TsAnonymousFunctionTypeEntity implements AnonymousMethodTypeEntity {
575
612
  private readonly _tsctx;
576
613
  private readonly _symbol;
577
614
  private readonly _declaration;
578
615
  private readonly _containingPackage;
579
- readonly kind = EntityKind.MethodType;
616
+ readonly kind = EntityKind.Type;
617
+ readonly typeEntityKind = TypeEntityKind.Method;
580
618
  readonly subkind = "anonymous";
581
619
  private readonly _valueParameters;
582
620
  private readonly _returnType;
583
621
  private readonly _members;
622
+ private readonly _baseObjectType;
584
623
  constructor(_tsctx: TsInteropContext, _symbol: ts.Symbol, _declaration: ts.FunctionTypeNode, _containingPackage: PackageEntity);
585
624
  getNaming(): EntityNaming;
586
625
  getTypeParameters(): readonly TypeParameterEntity[];
@@ -594,6 +633,7 @@ export declare class TsAnonymousFunctionTypeEntity implements AnonymousMethodTyp
594
633
  getTags(): readonly Tag[];
595
634
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
596
635
  getContainingPackage(): PackageEntity;
636
+ getBaseObjectType(): BaseObjectType;
597
637
  }
598
638
  /**
599
639
  * Представляет объявления следующего вида:
@@ -615,12 +655,14 @@ export declare class TsNamedFunctionTypeEntity implements PackageMethodTypeEntit
615
655
  private readonly _owningDeclarationWithTypeParameters;
616
656
  private readonly _containingPackage;
617
657
  private readonly _forceHiddenInPackage;
618
- readonly kind = EntityKind.MethodType;
658
+ readonly kind = EntityKind.Type;
659
+ readonly typeEntityKind = TypeEntityKind.Method;
619
660
  readonly subkind = "package";
620
661
  private readonly _typeParameters;
621
662
  private readonly _valueParameters;
622
663
  private readonly _members;
623
664
  private readonly _returnType;
665
+ private readonly _baseObjectType;
624
666
  constructor(_tsctx: TsInteropContext, _signatureSymbol: ts.Symbol, _signatureDeclaration: ts.CallSignatureDeclaration | ts.FunctionTypeNode, _owningNamedSymbol: ts.Symbol, _isDefaultExport: boolean, _owningDeclarationWithTypeParameters: ts.DeclarationWithTypeParameterChildren, _containingPackage: PackageEntity, _forceHiddenInPackage: boolean);
625
667
  getNaming(): EntityNaming;
626
668
  getName(): Name;
@@ -635,4 +677,5 @@ export declare class TsNamedFunctionTypeEntity implements PackageMethodTypeEntit
635
677
  isHidden(): EntityHidingLevel | undefined;
636
678
  getTags(): readonly Tag[];
637
679
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
680
+ getBaseObjectType(): BaseObjectType;
638
681
  }
@@ -56,7 +56,6 @@ export declare class TsPackageMembersCreator {
56
56
  private createFunctionEntityNoReplacement;
57
57
  private registerTypeParameters;
58
58
  private getTypeDeclarationsToMergeWith;
59
- private convertPackageMemberEntityToPackageMember;
60
59
  private createReplacementSourceEntities;
61
60
  private getSourceEntity;
62
61
  }
@@ -1,6 +1,6 @@
1
1
  import { Analyzer } from '../analysis/index.js';
2
2
  import { MethodTypeEntity, TypeParameterEntity } from '../entities/index.js';
3
- import { IType, StructuredType, SubstitutionMap, Substitutions, Type, ValueParameter } from './index.js';
3
+ import { IType, SubstitutionMap, Substitutions, Type, ValueParameter } from './index.js';
4
4
  export declare class MethodType implements IType {
5
5
  private readonly _analyzer;
6
6
  private readonly _entity;
@@ -17,7 +17,7 @@ export declare class MethodType implements IType {
17
17
  isAsync(): boolean;
18
18
  getReturnType(): Type;
19
19
  getValueParameters(): readonly ValueParameter[];
20
- getBaseType(): StructuredType;
20
+ getBaseType(): Type | undefined;
21
21
  getBaseObjectTypeOrAliasedType(): Type | undefined;
22
22
  toString(): string;
23
23
  }
@@ -26,6 +26,7 @@ export declare class Method implements ITypeMember {
26
26
  isStatic(): boolean;
27
27
  applySubstitutions(substitutions: Substitutions): Method;
28
28
  getTypeParametersArity(): number;
29
+ equals(other: TypeMember): boolean;
29
30
  }
30
31
  export declare class ValueParameter {
31
32
  private readonly _entity;
@@ -50,7 +51,9 @@ export declare class Variable implements ITypeMember {
50
51
  isConstant(): boolean;
51
52
  isHidden(): EntityHidingLevel | undefined;
52
53
  isStatic(): boolean;
54
+ isVariant(): boolean;
53
55
  applySubstitutions(substitutions: Substitutions): Variable;
56
+ equals(other: TypeMember): boolean;
54
57
  }
55
58
  export declare class Operator implements ITypeMember {
56
59
  private readonly _analyzer;
@@ -69,6 +72,7 @@ export declare class Operator implements ITypeMember {
69
72
  isHidden(): EntityHidingLevel | undefined;
70
73
  isStatic(): boolean;
71
74
  applySubstitutions(substitutions: Substitutions): Operator;
75
+ equals(other: TypeMember): boolean;
72
76
  }
73
77
  export declare class Constructor implements ITypeMember {
74
78
  private readonly _entity;
@@ -82,6 +86,7 @@ export declare class Constructor implements ITypeMember {
82
86
  getEntity(): ConstructorEntity;
83
87
  getSubstitutions(): Substitutions;
84
88
  isHidden(): EntityHidingLevel | undefined;
89
+ equals(other: TypeMember): boolean;
85
90
  }
86
91
  export declare class Destructor implements ITypeMember {
87
92
  private readonly _entity;
@@ -94,6 +99,7 @@ export declare class Destructor implements ITypeMember {
94
99
  getSubstitutions(): Substitutions;
95
100
  isHidden(): EntityHidingLevel | undefined;
96
101
  applySubstitutions(substitutions: Substitutions): Destructor;
102
+ equals(other: TypeMember): boolean;
97
103
  }
98
104
  export declare class Indexer implements ITypeMember {
99
105
  private readonly _entity;
@@ -107,6 +113,7 @@ export declare class Indexer implements ITypeMember {
107
113
  getSubstitutions(): Substitutions;
108
114
  isHidden(): EntityHidingLevel | undefined;
109
115
  applySubstitutions(substitutions: Substitutions): Indexer;
116
+ equals(other: TypeMember): boolean;
110
117
  }
111
118
  export declare class DereferenceOperator implements ITypeMember {
112
119
  private readonly _entity;
@@ -118,8 +125,10 @@ export declare class DereferenceOperator implements ITypeMember {
118
125
  getSubstitutions(): Substitutions;
119
126
  isHidden(): EntityHidingLevel | undefined;
120
127
  applySubstitutions(substitutions: Substitutions): DereferenceOperator;
128
+ equals(other: TypeMember): boolean;
121
129
  }
122
130
  export interface ITypeMember {
123
131
  isHidden(): EntityHidingLevel | undefined;
124
132
  getSubstitutions(): Substitutions;
133
+ equals(other: TypeMember): boolean;
125
134
  }
@@ -1,6 +1,6 @@
1
1
  import { Analyzer } from '../analysis/index.js';
2
2
  import { VariantTypeEntity } from '../entities/index.js';
3
- import { IType, StructuredType, SubstitutionMap, Substitutions, Type } from './index.js';
3
+ import { IType, SubstitutionMap, Substitutions, Type } from './index.js';
4
4
  export declare class VariantType implements IType {
5
5
  private readonly _analyzer;
6
6
  private readonly _entity;
@@ -13,7 +13,7 @@ export declare class VariantType implements IType {
13
13
  getEntity(): VariantTypeEntity;
14
14
  equals(other: Type): boolean;
15
15
  getUnderlyingType(): Type;
16
- getBaseType(): StructuredType;
16
+ getBaseType(): Type | undefined;
17
17
  getBaseObjectTypeOrAliasedType(): Type | undefined;
18
18
  toString(): string;
19
19
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artel/artc",
3
- "version": "0.6.25216",
3
+ "version": "0.6.25218",
4
4
  "description": "Артель Компилятор | Artel Compiler",
5
5
  "author": "Nezaboodka Team <contact@nezaboodka.com>",
6
6
  "license": "LGPL-3.0-or-later",
@@ -41,7 +41,7 @@
41
41
  "@babel/types": "7.23.0",
42
42
  "@vscode/l10n": "0.0.18",
43
43
  "jsonc-parser": "3.3.1",
44
- "reactronic": "^0.92.25013",
44
+ "reactronic": "^0.93.25025",
45
45
  "typescript": "5.8.2",
46
46
  "vscode-json-languageservice": "5.4.2",
47
47
  "vscode-languageserver": "9.0.1",
@@ -1,14 +0,0 @@
1
- import { AccessKind } from '../common/index.js';
2
- import { DereferenceOperatorEntity, GetterEntity, SetterEntity } from '../entities/index.js';
3
- export type DereferencedVariableAccess = {
4
- kind: AccessKind.Get;
5
- getAccessor: GetterEntity | undefined;
6
- } | {
7
- kind: AccessKind.Set;
8
- setAccessor: SetterEntity | undefined;
9
- } | {
10
- kind: AccessKind.GetSet;
11
- getAccessor: GetterEntity | undefined;
12
- setAccessor: SetterEntity | undefined;
13
- };
14
- export declare function create(indexerEntity: DereferenceOperatorEntity, accessKind: AccessKind): DereferencedVariableAccess;
@@ -1,14 +0,0 @@
1
- import { AccessKind } from '../common/index.js';
2
- import { GetterEntity, IndexerEntity, SetterEntity } from '../entities/index.js';
3
- export type IndexedAccess = {
4
- kind: AccessKind.Get;
5
- getAccessor: GetterEntity | undefined;
6
- } | {
7
- kind: AccessKind.Set;
8
- setAccessor: SetterEntity | undefined;
9
- } | {
10
- kind: AccessKind.GetSet;
11
- getAccessor: GetterEntity | undefined;
12
- setAccessor: SetterEntity | undefined;
13
- };
14
- export declare function create(indexerEntity: IndexerEntity, accessKind: AccessKind): IndexedAccess;
@@ -1,14 +0,0 @@
1
- import { AccessKind } from '../common/index.js';
2
- import { GetterEntity, SetterEntity, VariableEntity } from '../entities/index.js';
3
- export type VariableAccess = {
4
- kind: AccessKind.Get;
5
- getAccessor: GetterEntity | undefined;
6
- } | {
7
- kind: AccessKind.Set;
8
- setAccessor: SetterEntity | undefined;
9
- } | {
10
- kind: AccessKind.GetSet;
11
- getAccessor: GetterEntity | undefined;
12
- setAccessor: SetterEntity | undefined;
13
- };
14
- export declare function create(entity: VariableEntity, accessKind: AccessKind): VariableAccess;
@@ -1,20 +0,0 @@
1
- import { PackageLocale, Query, SearchName } from '../common/index.js';
2
- import { VariantEntity } from '../entities/VariantEntity.js';
3
- import { VariantTypeEntity } from '../entities/VariantTypeEntity.js';
4
- import { FoundNamedDeclaration } from './FoundDeclaration.js';
5
- import { LocalizationContext } from './LocalizationContext.js';
6
- export declare class VariantLookup {
7
- private readonly _variantTypeEntity;
8
- private readonly _localizationContext;
9
- private readonly _searchLocale;
10
- private _translatedVariants;
11
- /**
12
- * Язык, на котором будет осуществляться поиск вариантов.
13
- */
14
- get searchLocale(): PackageLocale;
15
- private get translatedVariants();
16
- constructor(_variantTypeEntity: VariantTypeEntity, _localizationContext: LocalizationContext | undefined);
17
- get(): Query<FoundNamedDeclaration<VariantEntity>>;
18
- getByName(name: SearchName): Query<FoundNamedDeclaration<VariantEntity>>;
19
- private getLocaleOfTypeEntity;
20
- }
@@ -1,34 +0,0 @@
1
- export declare class AssignmentLoweringOptions {
2
- readonly incrementReferenceCountIfRequired: boolean;
3
- readonly performCopyIfRequired: boolean;
4
- readonly decrementReferenceCountIfRequired: boolean;
5
- constructor(incrementReferenceCountIfRequired: boolean, performCopyIfRequired: boolean, decrementReferenceCountIfRequired: boolean);
6
- setIncrementReferenceCountIfRequired(value: boolean): AssignmentLoweringOptions;
7
- setPerformCopyIfRequired(value: boolean): AssignmentLoweringOptions;
8
- setDecrementReferenceCountIfRequired(value: boolean): AssignmentLoweringOptions;
9
- }
10
- export declare class DeclarationWithInitializerLoweringOptions {
11
- readonly incrementReferenceCountIfRequired: boolean;
12
- constructor(incrementReferenceCountIfRequired: boolean);
13
- setIncrementReferenceCountIfRequired(value: boolean): DeclarationWithInitializerLoweringOptions;
14
- }
15
- export declare class CallExpressionLoweringOptions {
16
- readonly lowerModifyingMethodCallIfRequired: boolean;
17
- constructor(lowerModifyingMethodCallIfRequired: boolean);
18
- setLowerModifyingMethodCallIfRequired(value: boolean): CallExpressionLoweringOptions;
19
- }
20
- export declare class ConstructorCallExpressionLoweringOptions {
21
- readonly lowerPlainObjectConstructionIfRequired: boolean;
22
- constructor(lowerPlainObjectConstructionIfRequired: boolean);
23
- setLowerPlainObjectConstructionIfRequired(value: boolean): ConstructorCallExpressionLoweringOptions;
24
- }
25
- export declare class MethodAccessLoweringOptions {
26
- readonly bindIfNotCallee: boolean;
27
- constructor(bindIfNotCallee: boolean);
28
- setBindIfNotCallee(value: boolean): MethodAccessLoweringOptions;
29
- }
30
- export declare class TextTemplateLiteralLoweringOptions {
31
- readonly createTextTemplateInstance: boolean;
32
- constructor(createTextTemplateInstance: boolean);
33
- setCreateTextTemplateInstance(value: boolean): TextTemplateLiteralLoweringOptions;
34
- }
@@ -1,25 +0,0 @@
1
- export declare class CallExpressionLoweringState {
2
- private flags;
3
- constructor(flags?: MethodCallExpressionLoweringFlags);
4
- get isAliasOrExtensionMethodCallLowered(): boolean;
5
- set isAliasOrExtensionMethodCallLowered(value: boolean);
6
- setIsAliasOrExtensionMethodCallLowered(value: boolean): this;
7
- clone(): CallExpressionLoweringState;
8
- }
9
- declare const enum MethodCallExpressionLoweringFlags {
10
- None = 0,
11
- AliasOrExtensionMethodCallLowered = 1
12
- }
13
- export declare class ConstructorCallExpressionLoweringState {
14
- private flags;
15
- constructor(flags?: ConstructorCallExpressionLoweringFlags);
16
- get isPlainObjectConstructorCallLowered(): boolean;
17
- set isPlainObjectConstructorCallLowered(value: boolean);
18
- setIsPlainObjectConstructorCallLowered(value: boolean): this;
19
- clone(): ConstructorCallExpressionLoweringState;
20
- }
21
- declare const enum ConstructorCallExpressionLoweringFlags {
22
- None = 0,
23
- PlainObjectConstructorCallLowered = 1
24
- }
25
- export {};
@@ -1,31 +0,0 @@
1
- import { Tag } from '../analysis/Tags.js';
2
- import { Analyzer } from '../analysis/index.js';
3
- import { Name } from '../common/index.js';
4
- import { VariantDeclaration } from '../tree/index.js';
5
- import { DefinitionKind, EntityHidingLevel, EntityKind, VariantTypeEntity } from './index.js';
6
- export interface VariantEntity {
7
- readonly kind: EntityKind.Variant;
8
- getName(): Name;
9
- getDefinition(): VariantEntityDefinition;
10
- getContainingEntity(): VariantTypeEntity;
11
- isHidden(): EntityHidingLevel | undefined;
12
- getTags(): readonly Tag[];
13
- }
14
- export type VariantEntityDefinition = {
15
- kind: DefinitionKind.Source;
16
- node: VariantDeclaration;
17
- } | {
18
- kind: DefinitionKind.TypeScript;
19
- };
20
- export declare class VariantDeclarationEntity implements VariantEntity {
21
- private readonly _analyzer;
22
- private readonly _node;
23
- readonly kind = EntityKind.Variant;
24
- private readonly _variantTypeDeclaration;
25
- constructor(_analyzer: Analyzer, _node: VariantDeclaration);
26
- getName(): Name;
27
- getDefinition(): VariantEntityDefinition;
28
- getContainingEntity(): VariantTypeEntity;
29
- isHidden(): EntityHidingLevel | undefined;
30
- getTags(): readonly Tag[];
31
- }