@artel/artc 0.6.25210 → 0.6.25212

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 (71) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +26 -14
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +774 -526
  5. package/build/{chunk-3ORG7RXI.js → chunk-DYVLHEXS.js} +11186 -10587
  6. package/build/{chunk-CAQIZO5K.js → chunk-MRSDFDBD.js} +9 -8
  7. package/build/{chunk-HRQLSHI7.js → chunk-XGS3PSIF.js} +3 -3
  8. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +3 -1
  9. package/build/types/analysis/Analyzer.d.ts +33 -16
  10. package/build/types/analysis/BaseExpressionMeaning.d.ts +8 -2
  11. package/build/types/analysis/CallExpressionMeaning.d.ts +6 -1
  12. package/build/types/analysis/DiagnosticCollector.d.ts +1 -0
  13. package/build/types/analysis/EntityLocalizationHelper.d.ts +3 -1
  14. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +12 -4
  15. package/build/types/analysis/Lookup.d.ts +6 -2
  16. package/build/types/analysis/PrefixUnaryOperatorResolver.d.ts +1 -3
  17. package/build/types/analysis/PropertyAccessExpressionMeaning.d.ts +13 -4
  18. package/build/types/analysis/Scope.d.ts +17 -3
  19. package/build/types/analysis/SemanticContext.d.ts +18 -1
  20. package/build/types/analysis/SemanticContextBuilder.d.ts +2 -0
  21. package/build/types/analysis/StatementBlockScopeBuilder.d.ts +1 -0
  22. package/build/types/analysis/TypeMemberLookup.d.ts +3 -3
  23. package/build/types/analysis/UserDefinableBinaryOperatorResolver.d.ts +2 -2
  24. package/build/types/common/Cached.d.ts +1 -0
  25. package/build/types/common/Debug.d.ts +3 -0
  26. package/build/types/common/LocalizationHelper.d.ts +5 -2
  27. package/build/types/common/Logger.d.ts +1 -1
  28. package/build/types/common/Uri.d.ts +11 -2
  29. package/build/types/common/index.d.ts +0 -1
  30. package/build/types/diagnostic/DiagnosticCode.d.ts +126 -115
  31. package/build/types/emitter/EmitterGeneratedDeclarationKind.d.ts +7 -0
  32. package/build/types/emitter/Entities.d.ts +1 -0
  33. package/build/types/emitter/EntityMap.d.ts +1 -2
  34. package/build/types/emitter/IrBuilder.d.ts +2 -0
  35. package/build/types/emitter/StatementTransformationResult.d.ts +3 -1
  36. package/build/types/emitter/Transformer.d.ts +1 -1
  37. package/build/types/emitter/ir/Nodes.d.ts +38 -34
  38. package/build/types/entities/EntityHiding.d.ts +2 -2
  39. package/build/types/entities/OperatorEntity.d.ts +43 -0
  40. package/build/types/entities/OperatorKind.d.ts +56 -0
  41. package/build/types/entities/StructuredTypeEntity.d.ts +3 -3
  42. package/build/types/entities/TypeEntityMembers.d.ts +9 -14
  43. package/build/types/entities/TypeExtensionEntity.d.ts +0 -1
  44. package/build/types/entities/VariableEntity.d.ts +3 -13
  45. package/build/types/entities/index.d.ts +10 -12
  46. package/build/types/parser/Parser.d.ts +2 -2
  47. package/build/types/project/FileSystemTree.d.ts +1 -1
  48. package/build/types/services/CompletionService.d.ts +26 -20
  49. package/build/types/services/DisplayService.d.ts +47 -55
  50. package/build/types/services/NodeSemanticInfo.d.ts +6 -11
  51. package/build/types/services/SemanticTokensService.d.ts +4 -3
  52. package/build/types/tree/KeywordKind.d.ts +25 -29
  53. package/build/types/tree/NodeKind.d.ts +89 -92
  54. package/build/types/tree/OperatorKind.d.ts +40 -0
  55. package/build/types/tree/green/Nodes.d.ts +52 -85
  56. package/build/types/tree/green/SyntaxToCode.d.ts +1 -0
  57. package/build/types/tree/green/Token.d.ts +7 -5
  58. package/build/types/tree/green/index.d.ts +1 -0
  59. package/build/types/tree/index.d.ts +0 -3
  60. package/build/types/tree/red/Nodes.d.ts +44 -78
  61. package/build/types/tree/red/Token.d.ts +3 -2
  62. package/build/types/tree/red/index.d.ts +4 -0
  63. package/build/types/ts-interop/Entities.d.ts +0 -4
  64. package/build/types/types/TypeMembers.d.ts +20 -29
  65. package/package.json +6 -6
  66. package/build/types/analysis/BuiltInOperators.d.ts +0 -14
  67. package/build/types/common/UriTree.d.ts +0 -41
  68. package/build/types/emitter/IntrinsicEntities.d.ts +0 -118
  69. package/build/types/entities/BinaryOperatorEntity.d.ts +0 -51
  70. package/build/types/entities/UnaryOperatorEntity.d.ts +0 -36
  71. /package/build/types/emitter/{error-boundary.d.ts → ErrorBoundary.d.ts} +0 -0
@@ -31,32 +31,26 @@ export declare class AssertionExpression {
31
31
  }
32
32
  export declare class AssignmentExpression {
33
33
  left: LValueExpression;
34
- operator: AssignmentOperator;
34
+ operatorKind: AssignmentOperatorKind;
35
35
  right: Expression;
36
+ operator: AccessedMethod | undefined;
36
37
  sourceLocation: SourceLocation | undefined;
37
38
  loweringOptions: AssignmentLoweringOptions;
38
39
  readonly kind = NodeKind.AssignmentExpression;
39
- constructor(left: LValueExpression, operator: AssignmentOperator, right: Expression, sourceLocation: SourceLocation | undefined, loweringOptions?: AssignmentLoweringOptions);
40
+ constructor(left: LValueExpression, operatorKind: AssignmentOperatorKind, right: Expression, operator: AccessedMethod | undefined, sourceLocation: SourceLocation | undefined, loweringOptions?: AssignmentLoweringOptions);
40
41
  clone(): AssignmentExpression;
41
42
  }
42
43
  export declare class AssignmentStatement {
43
44
  left: LValueExpression;
44
- operator: AssignmentOperator;
45
+ operatorKind: AssignmentOperatorKind;
45
46
  right: Expression;
47
+ operator: AccessedMethod | undefined;
46
48
  sourceLocation: SourceLocation | undefined;
47
49
  loweringOptions: AssignmentLoweringOptions;
48
50
  readonly kind = NodeKind.AssignmentStatement;
49
- constructor(left: LValueExpression, operator: AssignmentOperator, right: Expression, sourceLocation: SourceLocation | undefined, loweringOptions?: AssignmentLoweringOptions);
51
+ constructor(left: LValueExpression, operatorKind: AssignmentOperatorKind, right: Expression, operator: AccessedMethod | undefined, sourceLocation: SourceLocation | undefined, loweringOptions?: AssignmentLoweringOptions);
50
52
  clone(): AssignmentStatement;
51
53
  }
52
- export declare const enum AssignmentOperator {
53
- Equals = 0,
54
- AddEquals = 1,
55
- SubtractEquals = 2,
56
- MultiplyEquals = 3,
57
- DivideEquals = 4,
58
- IntegerDivideEquals = 5
59
- }
60
54
  export declare class AssumptionExpression {
61
55
  expression: Expression;
62
56
  sourceLocation: SourceLocation | undefined;
@@ -81,12 +75,13 @@ export declare class BaseExpression {
81
75
  }
82
76
  export declare class BinaryExpression {
83
77
  left: Expression;
84
- operator: BinaryExpressionOperator;
78
+ operatorKind: BinaryExpressionOperatorKind;
85
79
  right: Expression;
86
80
  type: Type;
81
+ operator: AccessedMethod | undefined;
87
82
  sourceLocation: SourceLocation | undefined;
88
83
  readonly kind = NodeKind.BinaryExpression;
89
- constructor(left: Expression, operator: BinaryExpressionOperator, right: Expression, type: Type, sourceLocation: SourceLocation | undefined);
84
+ constructor(left: Expression, operatorKind: BinaryExpressionOperatorKind, right: Expression, type: Type, operator: AccessedMethod | undefined, sourceLocation: SourceLocation | undefined);
90
85
  clone(): BinaryExpression;
91
86
  }
92
87
  export declare class BlockStatement {
@@ -256,9 +251,6 @@ export declare class IfStatement {
256
251
  constructor(condition: Expression, thenStatement: BlockStatement, elseStatement: BlockStatement | undefined, sourceLocation: SourceLocation | undefined);
257
252
  clone(): IfStatement;
258
253
  }
259
- export declare const enum ImplicitConversionKind {
260
- TextTemplateToText = 0
261
- }
262
254
  export declare class IndexedAccessExpression {
263
255
  expression: Expression;
264
256
  isOptionalChaining: boolean;
@@ -490,9 +482,10 @@ export declare class NoneLiteral {
490
482
  }
491
483
  export declare class NotExpression {
492
484
  expression: Expression;
485
+ operator: AccessedMethod | undefined;
493
486
  sourceLocation: SourceLocation | undefined;
494
487
  readonly kind = NodeKind.NotExpression;
495
- constructor(expression: Expression, sourceLocation: SourceLocation | undefined);
488
+ constructor(expression: Expression, operator: AccessedMethod | undefined, sourceLocation: SourceLocation | undefined);
496
489
  clone(): NotExpression;
497
490
  }
498
491
  export declare class NumericLiteral {
@@ -592,11 +585,12 @@ export declare class VariantDeclaration {
592
585
  clone(): VariantDeclaration;
593
586
  }
594
587
  export declare class PrefixUnaryExpression {
595
- operator: PrefixUnaryExpressionOperator;
588
+ operatorKind: PrefixUnaryExpressionOperatorKind;
596
589
  expression: Expression;
590
+ operator: AccessedMethod | undefined;
597
591
  sourceLocation: SourceLocation | undefined;
598
592
  readonly kind = NodeKind.PrefixUnaryExpression;
599
- constructor(operator: PrefixUnaryExpressionOperator, expression: Expression, sourceLocation: SourceLocation | undefined);
593
+ constructor(operatorKind: PrefixUnaryExpressionOperatorKind, expression: Expression, operator: AccessedMethod | undefined, sourceLocation: SourceLocation | undefined);
600
594
  clone(): PrefixUnaryExpression;
601
595
  }
602
596
  export declare class ReferenceExpression {
@@ -973,21 +967,28 @@ export declare const enum NodeKind {
973
967
  JsFunctionLiteral = 85,
974
968
  JsTypeOfExpression = 86,
975
969
  JsInstanceOfExpression = 87,
976
- TransactionalExpression = 88,
977
- UnobservableExpression = 89,
978
- JsIdentifierExpression = 90,
979
- DereferenceExpression = 91,
980
- BaseExpression = 92,
981
- OwnConstructorCallExpression = 93,
982
- TypeDereferencedVariableGetterDeclaration = 94,
983
- TypeDereferencedVariableSetterDeclaration = 95,
984
- JsNamespaceDestructuringStatement = 96
985
- }
986
- export declare const enum PrefixUnaryExpressionOperator {
970
+ JsIdentifierExpression = 88,
971
+ DereferenceExpression = 89,
972
+ BaseExpression = 90,
973
+ OwnConstructorCallExpression = 91,
974
+ TypeDereferencedVariableGetterDeclaration = 92,
975
+ TypeDereferencedVariableSetterDeclaration = 93,
976
+ JsNamespaceDestructuringStatement = 94
977
+ }
978
+ export declare const enum AssignmentOperatorKind {
979
+ Equals = 0,
980
+ AddEquals = 1,
981
+ SubtractEquals = 2,
982
+ MultiplyEquals = 3,
983
+ DivideEquals = 4,
984
+ IntegerDivideEquals = 5
985
+ }
986
+ export declare const enum PrefixUnaryExpressionOperatorKind {
987
987
  Plus = 0,
988
- Minus = 1
988
+ Minus = 1,
989
+ BitwiseNot = 2
989
990
  }
990
- export declare const enum BinaryExpressionOperator {
991
+ export declare const enum BinaryExpressionOperatorKind {
991
992
  Add = 0,
992
993
  Subtract = 1,
993
994
  Multiply = 2,
@@ -1003,5 +1004,8 @@ export declare const enum BinaryExpressionOperator {
1003
1004
  And = 12,
1004
1005
  Xor = 13,
1005
1006
  QuestionQuestion = 14,
1006
- Modulo = 15
1007
+ Modulo = 15,
1008
+ BitwiseAnd = 16,
1009
+ BitwiseOr = 17,
1010
+ BitwiseXor = 18
1007
1011
  }
@@ -1,13 +1,13 @@
1
1
  import { SourceFile } from '../project/index.js';
2
2
  import { PackageEntity } from './PackageEntity.js';
3
3
  import { TypeEntity } from './index.js';
4
- export type EntityHidingLevel = EntityHidingLevel_type | EntityHidingLevel_typeFamily | EntityHidingLevel_file | EntityHidingLevel_package;
4
+ export type EntityHidingLevel = EntityHidingLevel_type | EntityHidingLevel_typeHierarchy | EntityHidingLevel_file | EntityHidingLevel_package;
5
5
  export declare class EntityHidingLevel_type {
6
6
  readonly typeEntity: TypeEntity;
7
7
  readonly kind = "type";
8
8
  constructor(typeEntity: TypeEntity);
9
9
  }
10
- export declare class EntityHidingLevel_typeFamily {
10
+ export declare class EntityHidingLevel_typeHierarchy {
11
11
  readonly baseTypeEntity: TypeEntity;
12
12
  readonly kind = "type-hierarchy";
13
13
  constructor(baseTypeEntity: TypeEntity);
@@ -0,0 +1,43 @@
1
+ import { Analyzer } from '../analysis/index.js';
2
+ import { Tag } from '../analysis/Tags.js';
3
+ import * as tree from '../tree/index.js';
4
+ import * as types from '../types/index.js';
5
+ import { DefinitionKind, EntityHidingLevel, EntityKind, OperatorKind, ParameterVariableEntity, TypeMemberEntityContainer } from './index.js';
6
+ export interface OperatorEntity {
7
+ readonly kind: EntityKind.Operator;
8
+ getOperatorKind(): OperatorKind;
9
+ getValueParameters(): readonly ParameterVariableEntity[];
10
+ getReturnType(): types.Type;
11
+ getDefinition(): OperatorDefinition;
12
+ getContainer(): TypeMemberEntityContainer;
13
+ isStatic(): boolean;
14
+ isRedefinable(): boolean;
15
+ isRedefined(): boolean;
16
+ isAbstract(): boolean;
17
+ isHidden(): EntityHidingLevel | undefined;
18
+ getTags(): readonly Tag[];
19
+ }
20
+ export type OperatorDefinition = {
21
+ kind: DefinitionKind.Source;
22
+ node: tree.OperatorDeclaration;
23
+ };
24
+ export declare class OperatorDeclarationEntity implements OperatorEntity {
25
+ private readonly _analyzer;
26
+ private readonly _node;
27
+ readonly kind = EntityKind.Operator;
28
+ private readonly _operatorKind;
29
+ private readonly _valueParameters;
30
+ constructor(_analyzer: Analyzer, _node: tree.OperatorDeclaration);
31
+ getOperatorKind(): OperatorKind;
32
+ getValueParameters(): readonly ParameterVariableEntity[];
33
+ getReturnType(): types.Type;
34
+ getDefinition(): OperatorDefinition;
35
+ getContainer(): TypeMemberEntityContainer;
36
+ isStatic(): boolean;
37
+ isRedefinable(): boolean;
38
+ isRedefined(): boolean;
39
+ isAbstract(): boolean;
40
+ isHidden(): EntityHidingLevel | undefined;
41
+ getTags(): readonly Tag[];
42
+ private convertSyntaxOperatorKind;
43
+ }
@@ -0,0 +1,56 @@
1
+ import * as tree from '../tree/index.js';
2
+ export declare enum OperatorKind {
3
+ UnaryPlus = 0,
4
+ UnaryMinus = 1,
5
+ Not = 2,
6
+ BitwiseNot = 3,
7
+ Add = 4,
8
+ Subtract = 5,
9
+ Multiply = 6,
10
+ Divide = 7,
11
+ IntegerDivide = 8,
12
+ Modulo = 9,
13
+ LessThan = 10,
14
+ GreaterThan = 11,
15
+ LessThanEquals = 12,
16
+ GreaterThanEquals = 13,
17
+ Or = 14,
18
+ And = 15,
19
+ Xor = 16,
20
+ BitwiseAnd = 17,
21
+ BitwiseOr = 18,
22
+ BitwiseXor = 19
23
+ }
24
+ /**
25
+ * Виды операторов, задаваемых токенами (`+`, `-`, `*=` и др.).
26
+ */
27
+ export type KindOfOperatorDefinedByToken = OperatorKind.BitwiseNot | OperatorKind.UnaryPlus | OperatorKind.UnaryMinus | OperatorKind.Add | OperatorKind.Subtract | OperatorKind.Multiply | OperatorKind.Divide | OperatorKind.IntegerDivide | OperatorKind.Modulo | OperatorKind.LessThan | OperatorKind.GreaterThan | OperatorKind.LessThanEquals | OperatorKind.GreaterThanEquals | OperatorKind.BitwiseAnd | OperatorKind.BitwiseOr | OperatorKind.BitwiseXor;
28
+ export declare function isOperatorDefinedByToken(kind: OperatorKind): kind is KindOfOperatorDefinedByToken;
29
+ /**
30
+ * Виды операторов, задаваемых ключевыми словами (`и`, `или`, `не` и др.)
31
+ */
32
+ export type KindOfOperatorDefinedByKeyword = OperatorKind.Not | OperatorKind.Or | OperatorKind.And | OperatorKind.Xor;
33
+ export declare function isOperatorDefinedByKeyword(kind: OperatorKind): kind is KindOfOperatorDefinedByKeyword;
34
+ /**
35
+ * Виды одноместных операторов. Объявление одноместного оператора не должно содержать ни одного параметра.
36
+ */
37
+ export type UnaryOperatorKind = OperatorKind.UnaryPlus | OperatorKind.UnaryMinus | OperatorKind.Not | OperatorKind.BitwiseNot;
38
+ export declare function isUnaryOperator(kind: OperatorKind): kind is UnaryOperatorKind;
39
+ /**
40
+ * Виды двухместных операторов. Объявление двухместного оператора должно содержать один параметр.
41
+ */
42
+ export type BinaryOperatorKind = OperatorKind.Add | OperatorKind.Subtract | OperatorKind.Multiply | OperatorKind.Divide | OperatorKind.IntegerDivide | OperatorKind.Modulo | OperatorKind.LessThan | OperatorKind.GreaterThan | OperatorKind.LessThanEquals | OperatorKind.GreaterThanEquals | OperatorKind.Or | OperatorKind.And | OperatorKind.Xor | OperatorKind.BitwiseAnd | OperatorKind.BitwiseOr | OperatorKind.BitwiseXor;
43
+ export declare function isBinaryOperator(kind: OperatorKind): kind is BinaryOperatorKind;
44
+ export type KindOfUnaryOperatorDefinedByToken = UnaryOperatorKind & KindOfOperatorDefinedByToken;
45
+ export type KindOfUnaryOperatorDefinedByKeyword = UnaryOperatorKind & KindOfOperatorDefinedByKeyword;
46
+ export type KindOfBinaryOperatorDefinedByToken = BinaryOperatorKind & KindOfOperatorDefinedByToken;
47
+ export type KindOfBinaryOperatorDefinedByKeyword = BinaryOperatorKind & KindOfOperatorDefinedByKeyword;
48
+ export declare const tokenTextByOperatorKind: {
49
+ [T in KindOfOperatorDefinedByToken]: string;
50
+ };
51
+ export declare const keywordKindByOperatorKind: {
52
+ [T in KindOfOperatorDefinedByKeyword]: tree.KeywordKind;
53
+ };
54
+ export declare const operatorKindsBySyntacticalOperatorKind: {
55
+ [T in tree.OperatorKind]: readonly OperatorKind[];
56
+ };
@@ -5,7 +5,7 @@ import { AnonymousStructuredTypeDeclaration, PackageStructuredTypeDeclaration }
5
5
  import * as types from '../types/index.js';
6
6
  import { EntityNaming } from './EntityNaming.js';
7
7
  import { NamedTypeMemberEntity, OriginalTypeEntityMembers } from './TypeEntityMembers.js';
8
- import type { DereferenceOperatorEntity, PackageEntity } from './index.js';
8
+ import type { DereferenceOperatorEntity, OperatorEntity, PackageEntity } from './index.js';
9
9
  import { ConstructorEntity, DefinitionKind, DestructorEntity, EntityHidingLevel, EntityKind, IndexerEntity, SubstitutionApplicationMode, TypeParameterEntity } from './index.js';
10
10
  export type StructuredTypeEntity = PackageStructuredTypeEntity | AnonymousStructuredTypeEntity;
11
11
  export interface PackageStructuredTypeEntity extends IStructuredTypeEntity {
@@ -188,12 +188,12 @@ export declare class UnfinishedIntrinsicPackageStructuredTypeEntity {
188
188
  private readonly _unfinishedValue;
189
189
  get unfinishedValue(): PackageStructuredTypeEntity;
190
190
  constructor(analyzer: Analyzer, name: Name, containingPackage: PackageEntity, typeParameters: readonly TypeParameterEntity[], isAspect: boolean, isRefObject: boolean, baseObjectType: types.StructuredType | undefined, baseAspectTypes: readonly types.StructuredType[], isHidden: EntityHidingLevel | undefined, substitutionApplicationMode: SubstitutionApplicationMode);
191
- finish(ownNamedMembers: readonly NamedTypeMemberEntity[], ownConstructors: readonly ConstructorEntity[], ownDestructors: readonly DestructorEntity[], ownIndexers: readonly IndexerEntity[], ownDereferenceOperators: readonly DereferenceOperatorEntity[]): PackageStructuredTypeEntity;
191
+ finish(ownNamedMembers: readonly NamedTypeMemberEntity[], ownOperators: readonly OperatorEntity[], ownConstructors: readonly ConstructorEntity[], ownDestructors: readonly DestructorEntity[], ownIndexers: readonly IndexerEntity[], ownDereferenceOperators: readonly DereferenceOperatorEntity[]): PackageStructuredTypeEntity;
192
192
  }
193
193
  export declare class UnfinishedIntrinsicAnonymousStructuredTypeEntity {
194
194
  private readonly _unfinishedValue;
195
195
  get unfinishedValue(): AnonymousStructuredTypeEntity;
196
196
  constructor(analyzer: Analyzer, typeParameters: readonly TypeParameterEntity[], isAspect: boolean, isRefObject: boolean, baseObjectType: types.StructuredType | undefined, baseAspectTypes: readonly types.StructuredType[], isHidden: EntityHidingLevel | undefined, substitutionApplicationMode: SubstitutionApplicationMode, containingPackage: PackageEntity);
197
- finish(ownNamedMembers: readonly NamedTypeMemberEntity[], ownConstructors: readonly ConstructorEntity[], ownDestructors: readonly DestructorEntity[], ownIndexers: readonly IndexerEntity[], ownDereferenceOperators: readonly DereferenceOperatorEntity[]): AnonymousStructuredTypeEntity;
197
+ finish(ownNamedMembers: readonly NamedTypeMemberEntity[], ownOperators: readonly OperatorEntity[], ownConstructors: readonly ConstructorEntity[], ownDestructors: readonly DestructorEntity[], ownIndexers: readonly IndexerEntity[], ownDereferenceOperators: readonly DereferenceOperatorEntity[]): AnonymousStructuredTypeEntity;
198
198
  }
199
199
  export {};
@@ -1,36 +1,31 @@
1
1
  import { Name } from '../common/index.js';
2
- import { BinaryOperatorEntity, BinaryOperatorKind } from './BinaryOperatorEntity.js';
3
2
  import { ConstructorEntity } from './ConstructorEntity.js';
3
+ import { DereferenceOperatorEntity } from './DereferenceOperatorEntity.js';
4
4
  import { DestructorEntity } from './DestructorEntity.js';
5
5
  import { IndexerEntity } from './IndexerEntity.js';
6
6
  import { TypeMethodEntity } from './MethodEntity.js';
7
- import { DereferenceOperatorEntity } from './DereferenceOperatorEntity.js';
8
- import { UnaryOperatorEntity, UnaryOperatorKind } from './UnaryOperatorEntity.js';
7
+ import { OperatorEntity } from './OperatorEntity.js';
8
+ import { OperatorKind } from './OperatorKind.js';
9
9
  import { TypeVariableEntity } from './VariableEntity.js';
10
10
  export declare class OriginalTypeEntityMembers {
11
11
  private readonly _namedMembers;
12
+ private readonly _operators;
12
13
  private readonly _constructors;
13
14
  private readonly _destructors;
14
15
  private readonly _indexers;
15
16
  private readonly _referenceOperators;
16
- private readonly _unaryOperators;
17
- private readonly _binaryOperators;
18
17
  private readonly _membersByNameKey;
19
- private readonly _unaryOperatorsByKind;
20
- private readonly _binaryOperatorsByKind;
18
+ private readonly _operatorsByKind;
21
19
  private get membersByNameKey();
22
- private get unaryOperatorByKind();
23
- private get binaryOperatorByKind();
24
- constructor(_namedMembers: readonly NamedTypeMemberEntity[], _constructors: readonly ConstructorEntity[], _destructors: readonly DestructorEntity[], _indexers: readonly IndexerEntity[], _referenceOperators: readonly DereferenceOperatorEntity[], _unaryOperators: readonly UnaryOperatorEntity[], _binaryOperators: readonly BinaryOperatorEntity[]);
20
+ private get operatorByKind();
21
+ constructor(_namedMembers: readonly NamedTypeMemberEntity[], _operators: readonly OperatorEntity[], _constructors: readonly ConstructorEntity[], _destructors: readonly DestructorEntity[], _indexers: readonly IndexerEntity[], _referenceOperators: readonly DereferenceOperatorEntity[]);
25
22
  getNamedMembers(): readonly NamedTypeMemberEntity[];
26
23
  getNamedMembersByName(name: Name): readonly NamedTypeMemberEntity[];
24
+ getOperators(): readonly OperatorEntity[];
25
+ getOperatorsByKind(kind: OperatorKind): readonly OperatorEntity[];
27
26
  getIndexers(): readonly IndexerEntity[];
28
27
  getDereferenceOperators(): readonly DereferenceOperatorEntity[];
29
28
  getConstructors(): readonly ConstructorEntity[];
30
29
  getDestructors(): readonly DestructorEntity[];
31
- getUnaryOperators(): readonly UnaryOperatorEntity[];
32
- getUnaryOperatorsByKind(kind: UnaryOperatorKind): readonly UnaryOperatorEntity[];
33
- getBinaryOperators(): readonly BinaryOperatorEntity[];
34
- getBinaryOperatorsByKind(kind: BinaryOperatorKind): readonly BinaryOperatorEntity[];
35
30
  }
36
31
  export type NamedTypeMemberEntity = TypeVariableEntity | TypeMethodEntity;
@@ -28,6 +28,5 @@ export declare class SourceTypeExtensionEntity implements TypeExtensionEntity {
28
28
  getDefinition(): TypeExtensionEntityDefinition;
29
29
  isHidden(): EntityHidingLevel | undefined;
30
30
  getTags(): readonly Tag[];
31
- private enumerateOwnMembers;
32
31
  }
33
32
  export {};
@@ -3,7 +3,7 @@ import { Analyzer } from '../analysis/index.js';
3
3
  import { Lazy, Name } from '../common/index.js';
4
4
  import { EnumerationVariableDeclaration, ErrorVariableDeclaration, LocalVariableDeclaration, MethodLiteral, PackageVariableDeclaration, PackageVariableGetterDeclaration, PackageVariableSetterDeclaration, ParameterDeclaration, SetterParameterDeclaration, TypeVariableDeclaration, TypeVariableGetterDeclaration, TypeVariableSetterDeclaration } from '../tree/index.js';
5
5
  import * as types from '../types/index.js';
6
- import type { Entity, IndexerEntity, PackageEntity } from './index.js';
6
+ import type { Entity, IndexerEntity, OperatorEntity, PackageEntity } from './index.js';
7
7
  import { Entity as ActualEntity, ConstructorEntity, DefinitionKind, DestructorEntity, EntityHidingLevel, EntityKind, GetterEntity, MethodEntity, MethodTypeEntity, SetterEntity, TypeMemberEntityContainer } from './index.js';
8
8
  export type VariableEntity = PackageVariableEntity | TypeVariableEntity | ParameterVariableEntity | LocalVariableEntity;
9
9
  export interface PackageVariableEntity extends IVariableEntity {
@@ -17,8 +17,6 @@ export interface TypeVariableEntity extends IVariableEntity {
17
17
  isRedefinable(): boolean;
18
18
  isRedefined(): boolean;
19
19
  isAbstract(): boolean;
20
- isConsistent(): boolean;
21
- isObservable(): boolean;
22
20
  }
23
21
  export interface ParameterVariableEntity extends IVariableEntity {
24
22
  readonly subkind: 'parameter';
@@ -55,7 +53,7 @@ export declare namespace ParameterVariableEntityContainer {
55
53
  constructor(entityContainingMethod: ActualEntity);
56
54
  }
57
55
  }
58
- export type EntityContainingValueParameter = MethodEntity | IndexerEntity | ConstructorEntity | DestructorEntity | MethodTypeEntity | SetterEntity;
56
+ export type EntityContainingValueParameter = MethodEntity | IndexerEntity | ConstructorEntity | DestructorEntity | MethodTypeEntity | SetterEntity | OperatorEntity;
59
57
  export declare function isEntityContainingValueParameter(entity: Entity): entity is EntityContainingValueParameter;
60
58
  export type VariableEntityDefinition = {
61
59
  kind: DefinitionKind.Source;
@@ -157,8 +155,6 @@ export declare class TypeVariableDeclarationEntity implements TypeVariableEntity
157
155
  isRedefinable(): boolean;
158
156
  isRedefined(): boolean;
159
157
  isAbstract(): boolean;
160
- isConsistent(): boolean;
161
- isObservable(): boolean;
162
158
  }
163
159
  export declare class ComputedTypeVariableDeclarationEntity implements TypeVariableEntity {
164
160
  readonly kind = EntityKind.Variable;
@@ -177,8 +173,6 @@ export declare class ComputedTypeVariableDeclarationEntity implements TypeVariab
177
173
  isRedefinable(): boolean;
178
174
  isRedefined(): boolean;
179
175
  isAbstract(): boolean;
180
- isConsistent(): boolean;
181
- isObservable(): boolean;
182
176
  getDefinition(): VariableEntityDefinition;
183
177
  getGetter(): GetterEntity | undefined;
184
178
  getSetter(): SetterEntity | undefined;
@@ -351,15 +345,13 @@ export declare class IntrinsicTypeVariableEntity implements TypeVariableEntity {
351
345
  private readonly _isRedefinable;
352
346
  private readonly _isRedefined;
353
347
  private readonly _isAbstract;
354
- private readonly _isConsistent;
355
- private readonly _isObservable;
356
348
  private readonly _isSpecial;
357
349
  private readonly _isHidden;
358
350
  private readonly _getter;
359
351
  private readonly _setter;
360
352
  readonly kind = EntityKind.Variable;
361
353
  readonly subkind = "type";
362
- constructor(_name: Name, _type: types.Type, _container: TypeMemberEntityContainer, _isStatic: boolean, _isRedefinable: boolean, _isRedefined: boolean, _isAbstract: boolean, _isConsistent: boolean, _isObservable: boolean, _isSpecial: SpecialVariableEntityInfo | undefined, _isHidden: EntityHidingLevel | undefined, _getter: GetterEntity | undefined, _setter: SetterEntity | undefined);
354
+ constructor(_name: Name, _type: types.Type, _container: TypeMemberEntityContainer, _isStatic: boolean, _isRedefinable: boolean, _isRedefined: boolean, _isAbstract: boolean, _isSpecial: SpecialVariableEntityInfo | undefined, _isHidden: EntityHidingLevel | undefined, _getter: GetterEntity | undefined, _setter: SetterEntity | undefined);
363
355
  getName(): Name;
364
356
  getType(): types.Type;
365
357
  getDefinition(): VariableEntityDefinition;
@@ -374,8 +366,6 @@ export declare class IntrinsicTypeVariableEntity implements TypeVariableEntity {
374
366
  isRedefinable(): boolean;
375
367
  isRedefined(): boolean;
376
368
  isAbstract(): boolean;
377
- isConsistent(): boolean;
378
- isObservable(): boolean;
379
369
  }
380
370
  export declare class IntrinsicParameterVariableEntity implements ParameterVariableEntity {
381
371
  private readonly _name;
@@ -1,33 +1,33 @@
1
1
  import { AliasTypeEntity } from './AliasTypeEntity.js';
2
2
  import { ConstructorEntity } from './ConstructorEntity.js';
3
+ import { DereferenceOperatorEntity } from './DereferenceOperatorEntity.js';
3
4
  import { DestructorEntity } from './DestructorEntity.js';
4
5
  import { GetterEntity } from './GetterEntity.js';
5
6
  import { IndexerEntity } from './IndexerEntity.js';
6
- import { DereferenceOperatorEntity } from './DereferenceOperatorEntity.js';
7
7
  import { MethodEntity, PackageMethodEntity, TypeMethodEntity } from './MethodEntity.js';
8
8
  import { AnonymousMethodTypeEntity, MethodTypeEntity, PackageMethodTypeEntity } from './MethodTypeEntity.js';
9
+ import { OperatorEntity } from './OperatorEntity.js';
9
10
  import { PackageAliasEntity } from './PackageAliasEntity.js';
10
11
  import { PackageEntity } from './PackageEntity.js';
11
12
  import { SetterEntity } from './SetterEntity.js';
12
13
  import { AnonymousStructuredTypeEntity, PackageStructuredTypeEntity, StructuredTypeEntity } from './StructuredTypeEntity.js';
13
14
  import { TypeExtensionEntity } from './TypeExtensionEntity.js';
14
15
  import { TypeParameterEntity } from './TypeParameterEntity.js';
15
- import { UnaryOperatorEntity } from './UnaryOperatorEntity.js';
16
16
  import { PackageVariableEntity, TypeVariableEntity, VariableEntity } from './VariableEntity.js';
17
17
  import { VariantEntity } from './VariantEntity.js';
18
18
  import { AnonymousVariantTypeEntity, PackageVariantTypeEntity, VariantTypeEntity } from './VariantTypeEntity.js';
19
- import { BinaryOperatorEntity } from './index.js';
20
19
  export * from './AliasTypeEntity.js';
21
- export * from './BinaryOperatorEntity.js';
22
20
  export * from './ConstructorEntity.js';
21
+ export * from './DereferenceOperatorEntity.js';
23
22
  export * from './DestructorEntity.js';
24
23
  export * from './EntityHiding.js';
25
24
  export * from './EntityNaming.js';
26
25
  export * from './GetterEntity.js';
27
26
  export * from './IndexerEntity.js';
28
- export * from './DereferenceOperatorEntity.js';
29
27
  export * from './MethodEntity.js';
30
28
  export * from './MethodTypeEntity.js';
29
+ export * from './OperatorEntity.js';
30
+ export * from './OperatorKind.js';
31
31
  export * from './PackageAliasEntity.js';
32
32
  export * from './PackageEntity.js';
33
33
  export * from './SetterEntity.js';
@@ -36,7 +36,6 @@ export * from './SubstitutionApplicationMode.js';
36
36
  export * from './TypeExtensionEntity.js';
37
37
  export * from './TypeMemberContainer.js';
38
38
  export * from './TypeParameterEntity.js';
39
- export * from './UnaryOperatorEntity.js';
40
39
  export * from './VariableEntity.js';
41
40
  export * from './VariantEntity.js';
42
41
  export * from './VariantTypeEntity.js';
@@ -61,12 +60,11 @@ export declare const enum EntityKind {
61
60
  StructuredType = 12,
62
61
  PackageAlias = 13,
63
62
  AliasType = 14,
64
- UnaryOperator = 15,
65
- BinaryOperator = 16,
66
- Package = 17,
67
- TypeExtension = 18
63
+ Operator = 15,
64
+ Package = 16,
65
+ TypeExtension = 17
68
66
  }
69
- export type Entity = PackageEntity | VariableEntity | VariantEntity | VariantTypeEntity | GetterEntity | SetterEntity | MethodEntity | TypeParameterEntity | IndexerEntity | DereferenceOperatorEntity | ConstructorEntity | DestructorEntity | MethodTypeEntity | StructuredTypeEntity | PackageAliasEntity | AliasTypeEntity | TypeExtensionEntity | UnaryOperatorEntity | BinaryOperatorEntity;
67
+ export type Entity = PackageEntity | VariableEntity | VariantEntity | VariantTypeEntity | GetterEntity | SetterEntity | MethodEntity | TypeParameterEntity | OperatorEntity | IndexerEntity | DereferenceOperatorEntity | ConstructorEntity | DestructorEntity | MethodTypeEntity | StructuredTypeEntity | PackageAliasEntity | AliasTypeEntity | TypeExtensionEntity;
70
68
  export type TypeEntity = MethodTypeEntity | StructuredTypeEntity | TypeParameterEntity | VariantTypeEntity | AliasTypeEntity;
71
69
  export type PackageTypeEntity = PackageMethodTypeEntity | PackageStructuredTypeEntity | PackageVariantTypeEntity | AliasTypeEntity;
72
70
  export declare function isPackageTypeEntity(entity: TypeEntity): entity is PackageTypeEntity;
@@ -80,7 +78,7 @@ export declare function isPackageMemberEntity(entity: Entity): entity is Package
80
78
  export type NamedPackageMemberEntity = PackageVariableEntity | PackageMethodEntity | PackageTypeEntity;
81
79
  export type EntityWithTags = AliasTypeEntity | ConstructorEntity | DestructorEntity | IndexerEntity | DereferenceOperatorEntity | MethodEntity | MethodTypeEntity | StructuredTypeEntity | VariableEntity | VariantEntity | VariantTypeEntity | GetterEntity | SetterEntity;
82
80
  export declare function isEntityWithTags(entity: Entity): entity is EntityWithTags;
83
- export type TypeMemberEntity = TypeVariableEntity | TypeMethodEntity | ConstructorEntity | DestructorEntity | IndexerEntity | DereferenceOperatorEntity | UnaryOperatorEntity | BinaryOperatorEntity;
81
+ export type TypeMemberEntity = TypeVariableEntity | TypeMethodEntity | OperatorEntity | ConstructorEntity | DestructorEntity | IndexerEntity | DereferenceOperatorEntity;
84
82
  export declare function isTypeMemberEntity(entity: Entity): entity is TypeMemberEntity;
85
83
  export type AnonymousTypeEntity = AnonymousStructuredTypeEntity | AnonymousMethodTypeEntity | AnonymousVariantTypeEntity;
86
84
  export declare function isAnonymousTypeEntity(entity: Entity): entity is AnonymousTypeEntity;
@@ -1,7 +1,7 @@
1
- import { PackageLocale } from '../common/index.js';
1
+ import { PackageDialect, PackageLocale } from '../common/index.js';
2
2
  import * as tree from '../tree/green/index.js';
3
3
  export declare class Parser {
4
4
  private readonly _parser;
5
- constructor(text: string, locale?: PackageLocale);
5
+ constructor(text: string, locale?: PackageLocale, dialect?: PackageDialect);
6
6
  parse(): tree.SourceFile;
7
7
  }
@@ -3,7 +3,7 @@ import { Uri } from '../common/index.js';
3
3
  export declare class FileSystemTree extends ObservableObject implements ReadonlyFileSystemTree {
4
4
  private readonly _handleInconsistentRequestsWithoutErrors;
5
5
  private readonly _deleteEmptyDirectories;
6
- private readonly _rootByScheme;
6
+ private readonly _rootsByScheme;
7
7
  private _version;
8
8
  private _createdDirectoriesVersion;
9
9
  private _deletedDirectoriesVersion;
@@ -1,4 +1,5 @@
1
1
  import { Analyzer } from '../analysis/index.js';
2
+ import { Range } from '../common/index.js';
2
3
  import { SourceFile } from '../project/index.js';
3
4
  export declare class CompletionService {
4
5
  private readonly _cache;
@@ -45,6 +46,7 @@ export declare class CompletionService {
45
46
  private getPackageImportCompletionItemInfos;
46
47
  private getTopLevelAliasListCompletionItemInfos;
47
48
  private getTypeAliasMemberListItemInfos;
49
+ private getOperatorNameItemInfos;
48
50
  private mergeOverloadedMethods;
49
51
  private removeCompletionItemsWithDuplicateLabels;
50
52
  private convertCompletionItemInfos;
@@ -55,40 +57,44 @@ export declare class CompletionItem {
55
57
  readonly kind: CompletionItemKind;
56
58
  readonly details: string | undefined;
57
59
  readonly insertText: string | undefined;
60
+ readonly editRange: Range | undefined;
58
61
  readonly sortText: string | undefined;
59
62
  readonly cacheId: number;
60
63
  readonly indexInCache: number;
61
- constructor(label: string, kind: CompletionItemKind, details: string | undefined, insertText: string | undefined, sortText: string | undefined, cacheId: number, indexInCache: number);
64
+ constructor(label: string, kind: CompletionItemKind, details: string | undefined, insertText: string | undefined, editRange: Range | undefined, sortText: string | undefined, cacheId: number, indexInCache: number);
62
65
  }
63
66
  export declare const enum CompletionItemKind {
64
67
  PackageNameSegment = 0,
65
68
  PackageAlias = 1,
66
69
  TypeVariable = 2,
67
70
  TypeMethod = 3,
68
- TypeIndexer = 4,
69
- TypeConstructor = 5,
70
- PackageVariable = 6,
71
- PackageMethod = 7,
72
- LocalVariable = 8,
73
- ParameterVariable = 9,
74
- NestedMethod = 10,
75
- Variant = 11,
76
- RefObjectType = 12,
77
- PlainObjectType = 13,
78
- AspectType = 14,
79
- VariantType = 15,
80
- TypeParameter = 16,
81
- MethodType = 17,
82
- AliasType = 18,
83
- InvalidType = 19,
84
- Keyword = 20,
85
- TargetSignatureParameter = 21
71
+ Operator = 4,
72
+ TypeIndexer = 5,
73
+ TypeConstructor = 6,
74
+ PackageVariable = 7,
75
+ PackageMethod = 8,
76
+ LocalVariable = 9,
77
+ ParameterVariable = 10,
78
+ NestedMethod = 11,
79
+ Variant = 12,
80
+ RefObjectType = 13,
81
+ PlainObjectType = 14,
82
+ AspectType = 15,
83
+ VariantType = 16,
84
+ TypeParameter = 17,
85
+ MethodType = 18,
86
+ AliasType = 19,
87
+ InvalidType = 20,
88
+ Keyword = 21,
89
+ TargetSignatureParameter = 22,
90
+ OperatorName = 23
86
91
  }
87
92
  export type ResolutionResult = ResolutionResult_item | ResolutionResult_notInCache;
88
93
  export declare class ResolutionResult_item {
89
94
  readonly value: CompletionItem;
95
+ readonly sourceFile: SourceFile;
90
96
  readonly kind = "item";
91
- constructor(value: CompletionItem);
97
+ constructor(value: CompletionItem, sourceFile: SourceFile);
92
98
  }
93
99
  export declare class ResolutionResult_notInCache {
94
100
  readonly kind = "not-in-cache";