@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
@@ -4,7 +4,7 @@ import { SubstitutedMethod } from '../analysis/SubstitutedMethod.js';
4
4
  import { Analyzer } from '../analysis/index.js';
5
5
  import { HelperPhraseKind } from '../common/HelperPhrases.js';
6
6
  import { PackageDialect, PackageLocale } from '../common/index.js';
7
- import { AliasTypeEntity, BinaryOperatorEntity, BinaryOperatorKind, ConstructorEntity, DestructorEntity, Entity, GetterEntity, IndexerEntity, MethodEntity, MethodTypeEntity, NamedTypeEntity, PackageAliasEntity, PackageEntity, PackageMethodTypeEntity, PackageStructuredTypeEntity, PackageVariantTypeEntity, DereferenceOperatorEntity, SetterEntity, StructuredTypeEntity, TypeEntity, TypeExtensionEntity, TypeParameterEntity, UnaryOperatorEntity, UnaryOperatorKind, VariableEntity, VariantEntity, VariantTypeEntity } from '../entities/index.js';
7
+ import { AliasTypeEntity, ConstructorEntity, DereferenceOperatorEntity, DestructorEntity, Entity, GetterEntity, IndexerEntity, MethodEntity, MethodTypeEntity, NamedTypeEntity, OperatorEntity, OperatorKind, PackageAliasEntity, PackageEntity, PackageMethodTypeEntity, PackageStructuredTypeEntity, PackageVariantTypeEntity, SetterEntity, StructuredTypeEntity, TypeEntity, TypeExtensionEntity, TypeParameterEntity, VariableEntity, VariantEntity, VariantTypeEntity } from '../entities/index.js';
8
8
  import { KeywordKind } from '../tree/index.js';
9
9
  import * as types from '../types/index.js';
10
10
  export declare class DisplayService {
@@ -23,6 +23,9 @@ export declare class DisplayService {
23
23
  getValueParameterDeclarationDisplayParts(parameter: ValueParameterDeclaration, typeDisplayOptions?: TypeDisplayOptions): ValueParameterDeclarationDisplayParts;
24
24
  displayMethodDeclaration(method: MethodDeclaration): string;
25
25
  getMethodDeclarationDisplayParts(method: MethodDeclaration): MethodDeclarationDisplayParts;
26
+ displayOperatorDeclaration(operator: OperatorDeclaration): string;
27
+ getOperatorDeclarationDisplayParts(operator: OperatorDeclaration): OperatorDeclarationDisplayParts;
28
+ displayOperatorKind(kind: OperatorKind, locale: PackageLocale): string;
26
29
  displayConstructorDeclaration(constructor: ConstructorDeclaration): string;
27
30
  getConstructorDeclarationDisplayParts(constructor: ConstructorDeclaration): ConstructorDeclarationDisplayParts;
28
31
  displayDestructorDeclaration(constructor: DestructorDeclaration): string;
@@ -35,10 +38,6 @@ export declare class DisplayService {
35
38
  getTypeDeclarationDisplayParts(type: TypeDeclaration): TypeDeclarationDisplayParts;
36
39
  getTypeDeclarationEntityDisplayParts(entity: TypeEntity, localization: Localization): TypeDeclarationDisplayParts;
37
40
  displayTypeParameterValue(value: TypeParameterValue): string;
38
- displayUnaryOperatorDeclaration(operator: UnaryOperatorDeclaration): string;
39
- displayBinaryOperatorDeclaration(operator: BinaryOperatorDeclaration): string;
40
- displayBinaryOperatorKind(operatorKind: BinaryOperatorKind): string;
41
- displayUnaryOperatorKind(operatorKind: UnaryOperatorKind): string;
42
41
  displayGetterEntity(entity: GetterEntity): string;
43
42
  displaySetterEntity(entity: SetterEntity): string;
44
43
  displayTypeExtensionEntity(entity: TypeExtensionEntity): string;
@@ -556,57 +555,36 @@ interface INamedType {
556
555
  getEntity(): NamedTypeEntity;
557
556
  getTypeParameters(): readonly TypeParameterEntity[];
558
557
  }
559
- export type UnaryOperatorDeclaration = UnaryOperatorDeclaration_entity | UnaryOperatorDeclaration_typeMember;
560
- export declare class UnaryOperatorDeclaration_entity implements IUnaryOperatorDeclaration {
561
- readonly operator: UnaryOperatorEntity;
562
- readonly kind = "entity";
563
- constructor(operator: UnaryOperatorEntity);
564
- getOperatorKind(): UnaryOperatorKind;
565
- getOperandType(): types.Type;
566
- getResultType(): types.Type;
567
- getTypeMemberContainer(): TypeMemberContainer | undefined;
568
- }
569
- export declare class UnaryOperatorDeclaration_typeMember implements IUnaryOperatorDeclaration {
570
- readonly operator: types.UnaryOperator;
571
- readonly kind = "typeMember";
572
- constructor(operator: types.UnaryOperator);
573
- getOperatorKind(): UnaryOperatorKind;
574
- getOperandType(): types.Type;
575
- getResultType(): types.Type;
576
- getTypeMemberContainer(analyzer: Analyzer | undefined): TypeMemberContainer | undefined;
577
- }
578
- interface IUnaryOperatorDeclaration {
579
- getOperatorKind(): UnaryOperatorKind;
580
- getOperandType(): types.Type;
581
- getResultType(): types.Type;
582
- getTypeMemberContainer(analyzer: Analyzer | undefined): TypeMemberContainer | undefined;
583
- }
584
- export type BinaryOperatorDeclaration = BinaryOperatorDeclaration_entity | BinaryOperatorDeclaration_typeMember;
585
- export declare class BinaryOperatorDeclaration_entity implements IBinaryOperatorDeclaration {
586
- readonly operator: BinaryOperatorEntity;
558
+ export type OperatorDeclaration = OperatorDeclaration_entity | OperatorDeclaration_typeMember;
559
+ export declare class OperatorDeclaration_entity implements IOperatorDeclaration {
560
+ readonly operator: OperatorEntity;
561
+ readonly localization: Localization;
587
562
  readonly kind = "entity";
588
- constructor(operator: BinaryOperatorEntity);
589
- getOperatorKind(): BinaryOperatorKind;
590
- getLeftOperandType(): types.Type;
591
- getRightOperandType(): types.Type;
592
- getResultType(): types.Type;
563
+ private readonly _valueParameters;
564
+ constructor(operator: OperatorEntity, localization: Localization);
565
+ getLocalization(): Localization;
566
+ getOperatorKind(): OperatorKind;
567
+ getValueParameters(): readonly ValueParameterDeclaration[];
568
+ getReturnType(): types.Type;
593
569
  getTypeMemberContainer(): TypeMemberContainer | undefined;
594
570
  }
595
- export declare class BinaryOperatorDeclaration_typeMember implements IBinaryOperatorDeclaration {
596
- readonly operator: types.BinaryOperator;
571
+ export declare class OperatorDeclaration_typeMember implements IOperatorDeclaration {
572
+ readonly operator: types.Operator;
573
+ readonly localization: Localization;
597
574
  readonly kind = "type-member";
598
- constructor(operator: types.BinaryOperator);
599
- getOperatorKind(): BinaryOperatorKind;
600
- getLeftOperandType(): types.Type;
601
- getRightOperandType(): types.Type;
602
- getResultType(): types.Type;
575
+ private readonly _valueParameters;
576
+ constructor(operator: types.Operator, localization: Localization);
577
+ getLocalization(): Localization;
578
+ getOperatorKind(): OperatorKind;
579
+ getValueParameters(): readonly ValueParameterDeclaration[];
580
+ getReturnType(): types.Type;
603
581
  getTypeMemberContainer(analyzer: Analyzer | undefined): TypeMemberContainer | undefined;
604
582
  }
605
- interface IBinaryOperatorDeclaration {
606
- getOperatorKind(): BinaryOperatorKind;
607
- getLeftOperandType(): types.Type;
608
- getRightOperandType(): types.Type;
609
- getResultType(): types.Type;
583
+ interface IOperatorDeclaration {
584
+ getLocalization(): Localization;
585
+ getOperatorKind(): OperatorKind;
586
+ getValueParameters(): readonly ValueParameterDeclaration[];
587
+ getReturnType(): types.Type;
610
588
  getTypeMemberContainer(analyzer: Analyzer | undefined): TypeMemberContainer | undefined;
611
589
  }
612
590
  export type TypeUsage = StructuredTypeUsage | VariantTypeUsage | MethodTypeUsage | AliasTypeUsage | ParameterTypeUsage | UnionTypeUsage | UnresolvedTypeUsage;
@@ -741,8 +719,8 @@ declare class TypeMemberContainer {
741
719
  }
742
720
  export declare class MethodDeclarationDisplayParts {
743
721
  readonly asyncKeywordWithWhitespace: string;
744
- readonly operationKeyword: string;
745
- readonly whitespaceAfterOperationKeyword: string;
722
+ readonly functionKeyword: string;
723
+ readonly whitespaceAfterFunctionKeyword: string;
746
724
  readonly container: string;
747
725
  readonly name: string;
748
726
  readonly typeParametersStart: string;
@@ -755,7 +733,21 @@ export declare class MethodDeclarationDisplayParts {
755
733
  readonly valueParametersEnd: string;
756
734
  readonly returnTypeAnnotationColon: string;
757
735
  readonly returnType: string;
758
- constructor(asyncKeywordWithWhitespace: string, operationKeyword: string, whitespaceAfterOperationKeyword: string, container: string, name: string, typeParametersStart: string, typeParameters: readonly string[], typeParameterSeparator: string, typeParametersEnd: string, valueParametersStart: string, valueParameters: readonly ValueParameterDeclarationDisplayParts[], valueParameterSeparator: string, valueParametersEnd: string, returnTypeAnnotationColon: string, returnType: string);
736
+ constructor(asyncKeywordWithWhitespace: string, functionKeyword: string, whitespaceAfterFunctionKeyword: string, container: string, name: string, typeParametersStart: string, typeParameters: readonly string[], typeParameterSeparator: string, typeParametersEnd: string, valueParametersStart: string, valueParameters: readonly ValueParameterDeclarationDisplayParts[], valueParameterSeparator: string, valueParametersEnd: string, returnTypeAnnotationColon: string, returnType: string);
737
+ toString(): string;
738
+ }
739
+ export declare class OperatorDeclarationDisplayParts {
740
+ readonly functionKeyword: string;
741
+ readonly whitespaceAfterFunctionKeyword: string;
742
+ readonly container: string;
743
+ readonly name: string;
744
+ readonly valueParametersStart: string;
745
+ readonly valueParameters: readonly ValueParameterDeclarationDisplayParts[];
746
+ readonly valueParameterSeparator: string;
747
+ readonly valueParametersEnd: string;
748
+ readonly returnTypeAnnotationColon: string;
749
+ readonly returnType: string;
750
+ constructor(functionKeyword: string, whitespaceAfterFunctionKeyword: string, container: string, name: string, valueParametersStart: string, valueParameters: readonly ValueParameterDeclarationDisplayParts[], valueParameterSeparator: string, valueParametersEnd: string, returnTypeAnnotationColon: string, returnType: string);
759
751
  toString(): string;
760
752
  }
761
753
  export declare class ValueParameterDeclarationDisplayParts {
@@ -817,14 +809,14 @@ export declare class NamedTypeDisplayParts {
817
809
  }
818
810
  export declare class MethodTypeBodyDisplayParts {
819
811
  readonly asyncKeywordWithWhitespace: string;
820
- readonly operationKeyword: string;
812
+ readonly functionKeyword: string;
821
813
  readonly valueParametersStart: string;
822
814
  readonly valueParameters: readonly ValueParameterDeclarationDisplayParts[];
823
815
  readonly valueParameterSeparator: string;
824
816
  readonly valueParametersEnd: string;
825
817
  readonly returnTypeAnnotationColon: string;
826
818
  readonly returnType: string;
827
- constructor(asyncKeywordWithWhitespace: string, operationKeyword: string, valueParametersStart: string, valueParameters: readonly ValueParameterDeclarationDisplayParts[], valueParameterSeparator: string, valueParametersEnd: string, returnTypeAnnotationColon: string, returnType: string);
819
+ constructor(asyncKeywordWithWhitespace: string, functionKeyword: string, valueParametersStart: string, valueParameters: readonly ValueParameterDeclarationDisplayParts[], valueParameterSeparator: string, valueParametersEnd: string, returnTypeAnnotationColon: string, returnType: string);
828
820
  toString(): string;
829
821
  }
830
822
  export {};
@@ -52,7 +52,7 @@ export declare class ReferenceNodeSemanticInfo {
52
52
  get firstBetterTargetWithFallback(): WithLocalization<ReferenceTarget>;
53
53
  constructor(targets: ReadonlyNonEmptyArray<WithLocalization<ReferenceTarget>>, isAmbiguous: boolean, betterTargets?: ReadonlyNonEmptyArray<WithLocalization<ReferenceTarget>> | undefined);
54
54
  }
55
- export type ReferenceTarget = EntityReferenceTarget | TypeVariableReferenceTarget | TypeValueParameterReferenceTarget | TypeConstructorReferenceTarget | TypeUnaryOperatorReferenceTarget | TypeBinaryOperatorReferenceTarget | TypeDereferenceOperatorReferenceTarget | AccessedMethodReferenceTarget | TypeIndexerReferenceTarget | MatchResultValueParameterReferenceTarget | PackageReferenceTarget | TypeContextReferenceTarget;
55
+ export type ReferenceTarget = EntityReferenceTarget | TypeVariableReferenceTarget | TypeValueParameterReferenceTarget | TypeConstructorReferenceTarget | OperatorReferenceTarget | TypeDereferenceOperatorReferenceTarget | AccessedMethodReferenceTarget | TypeIndexerReferenceTarget | MatchResultValueParameterReferenceTarget | PackageReferenceTarget | TypeContextReferenceTarget;
56
56
  export declare class EntityReferenceTarget {
57
57
  readonly entity: ReferencedEntity;
58
58
  readonly accessKind: AccessKind;
@@ -77,16 +77,6 @@ export declare class TypeConstructorReferenceTarget {
77
77
  readonly kind = "type-constructor";
78
78
  constructor(constructor_: types.Constructor);
79
79
  }
80
- export declare class TypeUnaryOperatorReferenceTarget {
81
- readonly operator: types.UnaryOperator;
82
- readonly kind = "type-unary-operator";
83
- constructor(operator: types.UnaryOperator);
84
- }
85
- export declare class TypeBinaryOperatorReferenceTarget {
86
- readonly operator: types.BinaryOperator;
87
- readonly kind = "type-binary-operator";
88
- constructor(operator: types.BinaryOperator);
89
- }
90
80
  export declare class TypeDereferenceOperatorReferenceTarget {
91
81
  readonly operator: types.DereferenceOperator;
92
82
  readonly accessKind: AccessKind;
@@ -98,6 +88,11 @@ export declare class AccessedMethodReferenceTarget {
98
88
  readonly kind = "accessed-method";
99
89
  constructor(method: AccessedMethod);
100
90
  }
91
+ export declare class OperatorReferenceTarget {
92
+ readonly operator: types.Operator;
93
+ readonly kind = "operator";
94
+ constructor(operator: types.Operator);
95
+ }
101
96
  export declare class MatchResultValueParameterReferenceTarget {
102
97
  readonly parameter: MatchResultValueParameter;
103
98
  readonly accessKind: AccessKind;
@@ -29,12 +29,13 @@ export declare const enum SemanticTokenKind {
29
29
  Variant = 3,
30
30
  PackageMethod = 4,
31
31
  NestedMethod = 5,
32
- TypeMethod = 6
32
+ TypeMethod = 6,
33
+ Operator = 7
33
34
  }
34
- export declare const supportedSemanticTokens: SemanticTokenKind[];
35
+ export declare const supportedSemanticTokens: readonly [SemanticTokenKind.MethodBlockLiteralParameter, SemanticTokenKind.SpecialVariable, SemanticTokenKind.SpecialMethod, SemanticTokenKind.Variant, SemanticTokenKind.PackageMethod, SemanticTokenKind.NestedMethod, SemanticTokenKind.TypeMethod, SemanticTokenKind.Operator];
35
36
  export declare const enum SemanticTokenModifierFlag {
36
37
  Const = 1,
37
38
  Declaration = 2,
38
39
  Capitalized = 4
39
40
  }
40
- export declare const supportedSemanticTokenModifiers: SemanticTokenModifierFlag[];
41
+ export declare const supportedSemanticTokenModifiers: readonly [SemanticTokenModifierFlag.Const, SemanticTokenModifierFlag.Declaration, SemanticTokenModifierFlag.Capitalized];
@@ -10,7 +10,7 @@ export declare enum KeywordKind {
10
10
  From = 8,
11
11
  Else = 9,
12
12
  ElseIf = 10,
13
- Operation = 11,
13
+ Function = 11,
14
14
  If = 12,
15
15
  Is = 13,
16
16
  Return = 14,
@@ -34,32 +34,28 @@ export declare enum KeywordKind {
34
34
  For = 32,
35
35
  Const = 33,
36
36
  Hidden = 34,
37
- Observable = 35,
38
- Consistent = 36,
39
- Abstract = 37,
40
- Redefinable = 38,
41
- Redefined = 39,
42
- Transactional = 40,
43
- Unobservable = 41,
44
- Async = 42,
45
- Static = 43,
46
- As = 44,
47
- Not = 45,
48
- Switch = 46,
49
- Case = 47,
50
- Await = 48,
51
- Dispose = 49,
52
- Destruction = 50,
53
- InHierarchy = 51,
54
- InFile = 52,
55
- InPackage = 53,
56
- InType = 54,
57
- Yes = 55,
58
- No = 56,
59
- Reference = 57,
60
- Translations = 58,
61
- Base = 59,
62
- None = 60,
63
- Get = 61,
64
- Set = 62
37
+ Abstract = 35,
38
+ Redefinable = 36,
39
+ Redefined = 37,
40
+ Async = 38,
41
+ Static = 39,
42
+ As = 40,
43
+ Not = 41,
44
+ Switch = 42,
45
+ Case = 43,
46
+ Await = 44,
47
+ Dispose = 45,
48
+ Destruction = 46,
49
+ InHierarchy = 47,
50
+ InFile = 48,
51
+ InPackage = 49,
52
+ InType = 50,
53
+ Yes = 51,
54
+ No = 52,
55
+ Reference = 53,
56
+ Translations = 54,
57
+ Base = 55,
58
+ None = 56,
59
+ Get = 57,
60
+ Set = 58
65
61
  }
@@ -52,28 +52,28 @@ export declare enum NodeKind {
52
52
  TypeDereferencedVariableGetterDeclaration = 50,
53
53
  TypeDereferencedVariableSetterDeclaration = 51,
54
54
  TypeMethodDeclaration = 52,
55
- TypeVariableDeclaration = 53,
56
- TypeVariableGetterDeclaration = 54,
57
- TypeVariableSetterDeclaration = 55,
58
- InvalidTypeMemberDeclaration = 56,
59
- NestedMethodDeclaration = 57,
60
- LocalVariableDeclaration = 58,
61
- EnumerationVariableDeclaration = 59,
62
- ArrayLiteral = 60,
63
- ArrayLiteralElementList = 61,
64
- AssertionExpression = 62,
65
- AssumptionExpression = 63,
66
- AsExpression = 64,
67
- BinaryExpression = 65,
68
- MethodBlockLiteral = 66,
69
- CallArgumentList = 67,
70
- CallExpression = 68,
71
- AutotypeCallExpression = 69,
72
- IndexedAccessArgumentList = 70,
73
- IndexedAccessExpression = 71,
74
- InvalidExpression = 72,
75
- IsExpression = 73,
76
- UnobservableExpression = 74,
55
+ OperatorDeclaration = 53,
56
+ TypeVariableDeclaration = 54,
57
+ TypeVariableGetterDeclaration = 55,
58
+ TypeVariableSetterDeclaration = 56,
59
+ InvalidTypeMemberDeclaration = 57,
60
+ NestedMethodDeclaration = 58,
61
+ LocalVariableDeclaration = 59,
62
+ EnumerationVariableDeclaration = 60,
63
+ ArrayLiteral = 61,
64
+ ArrayLiteralElementList = 62,
65
+ AssertionExpression = 63,
66
+ AssumptionExpression = 64,
67
+ AsExpression = 65,
68
+ BinaryExpression = 66,
69
+ MethodBlockLiteral = 67,
70
+ CallArgumentList = 68,
71
+ CallExpression = 69,
72
+ AutotypeCallExpression = 70,
73
+ IndexedAccessArgumentList = 71,
74
+ IndexedAccessExpression = 72,
75
+ InvalidExpression = 73,
76
+ IsExpression = 74,
77
77
  NotExpression = 75,
78
78
  MethodLiteral = 76,
79
79
  ParenthesizedExpression = 77,
@@ -90,74 +90,71 @@ export declare enum NodeKind {
90
90
  ObjectExpression = 88,
91
91
  BaseExpression = 89,
92
92
  IdentifierExpression = 90,
93
- TransactionalExpression = 91,
94
- GenericSpecializationExpression = 92,
95
- DefaultMatchExpression = 93,
96
- AssignmentStatement = 94,
97
- StatementList = 95,
98
- StatementBlock = 96,
99
- BreakLoopStatement = 97,
100
- ContinueLoopStatement = 98,
101
- DisposeStatement = 99,
102
- RunStatementClauseList = 100,
103
- RunStatement = 101,
104
- OnErrorClause = 102,
105
- ErrorVariableDeclaration = 103,
106
- FinallyClause = 104,
107
- EmptyStatement = 105,
108
- ErrorStatement = 106,
109
- ExpressionStatement = 107,
110
- EnumerationVariableList = 108,
111
- ForStatement = 109,
112
- IfStatement = 110,
113
- ElseIfClauseList = 111,
114
- ElseIfClause = 112,
115
- InvalidStatement = 113,
116
- NestedMethodDeclarationStatement = 114,
117
- LocalVariableDeclarationStatement = 115,
118
- UnobservableStatement = 116,
119
- LoopStatement = 117,
120
- ReturnStatement = 118,
121
- CaseClauseList = 119,
122
- SwitchStatement = 120,
123
- MatchExpressionList = 121,
124
- SwitchStatementCaseClause = 122,
125
- TransactionalStatement = 123,
126
- WhileStatement = 124,
127
- YieldStatement = 125,
128
- TranslationParameterList = 126,
129
- TranslationParameterClause = 127,
130
- ConstructorTranslation = 128,
131
- IndexerTranslationParameterClause = 129,
132
- IndexerTranslation = 130,
133
- TranslationTypeParameterList = 131,
134
- TranslationTypeParameterClause = 132,
135
- PackageMethodTranslation = 133,
136
- TypeMethodTranslation = 134,
137
- MethodTypeTranslation = 135,
138
- PackageImportTranslation = 136,
139
- QualifiedName = 137,
140
- PackageVariableTranslation = 138,
141
- TypeVariableOrVariantTranslation = 139,
142
- TypeMemberTranslationList = 140,
143
- TypeTranslation = 141,
144
- TextLiteralTranslation = 142,
145
- TextTemplateLiteralTranslation = 143,
146
- VariantDeclaration = 144,
147
- TypeParameterDeclaration = 145,
148
- ParameterDeclaration = 146,
149
- CallArgument = 147,
150
- TagList = 148,
151
- Tag = 149,
152
- ModifierList = 150,
153
- Modifier = 151,
154
- ParameterClause = 152,
155
- ParameterList = 153,
156
- SetterParameterClause = 154,
157
- SetterParameterDeclaration = 155,
158
- TypeArgumentClause = 156,
159
- TypeArgumentList = 157,
160
- TypeParameterClause = 158,
161
- TypeParameterList = 159,
162
- TypeAnnotation = 160
93
+ GenericSpecializationExpression = 91,
94
+ DefaultMatchExpression = 92,
95
+ AssignmentStatement = 93,
96
+ StatementList = 94,
97
+ StatementBlock = 95,
98
+ BreakLoopStatement = 96,
99
+ ContinueLoopStatement = 97,
100
+ DisposeStatement = 98,
101
+ RunStatementClauseList = 99,
102
+ RunStatement = 100,
103
+ OnErrorClause = 101,
104
+ ErrorVariableDeclaration = 102,
105
+ FinallyClause = 103,
106
+ EmptyStatement = 104,
107
+ ErrorStatement = 105,
108
+ ExpressionStatement = 106,
109
+ EnumerationVariableList = 107,
110
+ ForStatement = 108,
111
+ IfStatement = 109,
112
+ ElseIfClauseList = 110,
113
+ ElseIfClause = 111,
114
+ InvalidStatement = 112,
115
+ NestedMethodDeclarationStatement = 113,
116
+ LocalVariableDeclarationStatement = 114,
117
+ LoopStatement = 115,
118
+ ReturnStatement = 116,
119
+ CaseClauseList = 117,
120
+ SwitchStatement = 118,
121
+ MatchExpressionList = 119,
122
+ SwitchStatementCaseClause = 120,
123
+ WhileStatement = 121,
124
+ YieldStatement = 122,
125
+ TranslationParameterList = 123,
126
+ TranslationParameterClause = 124,
127
+ ConstructorTranslation = 125,
128
+ IndexerTranslationParameterClause = 126,
129
+ IndexerTranslation = 127,
130
+ TranslationTypeParameterList = 128,
131
+ TranslationTypeParameterClause = 129,
132
+ PackageMethodTranslation = 130,
133
+ TypeMethodTranslation = 131,
134
+ MethodTypeTranslation = 132,
135
+ PackageImportTranslation = 133,
136
+ QualifiedName = 134,
137
+ PackageVariableTranslation = 135,
138
+ TypeVariableOrVariantTranslation = 136,
139
+ TypeMemberTranslationList = 137,
140
+ TypeTranslation = 138,
141
+ TextLiteralTranslation = 139,
142
+ TextTemplateLiteralTranslation = 140,
143
+ VariantDeclaration = 141,
144
+ TypeParameterDeclaration = 142,
145
+ ParameterDeclaration = 143,
146
+ CallArgument = 144,
147
+ TagList = 145,
148
+ Tag = 146,
149
+ ModifierList = 147,
150
+ Modifier = 148,
151
+ ParameterClause = 149,
152
+ ParameterList = 150,
153
+ SetterParameterClause = 151,
154
+ SetterParameterDeclaration = 152,
155
+ TypeArgumentClause = 153,
156
+ TypeArgumentList = 154,
157
+ TypeParameterClause = 155,
158
+ TypeParameterList = 156,
159
+ TypeAnnotation = 157
163
160
  }
@@ -0,0 +1,40 @@
1
+ import { KeywordKind } from './KeywordKind.js';
2
+ export declare enum OperatorKind {
3
+ Plus = 0,// Одноместный или двухместный.
4
+ Minus = 1,// Одноместный или двухместный.
5
+ Not = 2,
6
+ BitwiseNot = 3,
7
+ Multiply = 4,
8
+ Divide = 5,
9
+ IntegerDivide = 6,
10
+ Modulo = 7,
11
+ LessThan = 8,
12
+ GreaterThan = 9,
13
+ LessThanEquals = 10,
14
+ GreaterThanEquals = 11,
15
+ Or = 12,
16
+ And = 13,
17
+ Xor = 14,
18
+ BitwiseAnd = 15,
19
+ BitwiseOr = 16,
20
+ BitwiseXor = 17
21
+ }
22
+ export declare const operatorKinds: readonly [OperatorKind.Plus, OperatorKind.Minus, OperatorKind.Not, OperatorKind.BitwiseNot, 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];
23
+ /**
24
+ * Виды операторов, задаваемых токенами (`+`, `-`, `*=` и др.).
25
+ */
26
+ export type KindOfOperatorDefinedByToken = OperatorKind.BitwiseNot | OperatorKind.Plus | OperatorKind.Minus | OperatorKind.Multiply | OperatorKind.Divide | OperatorKind.IntegerDivide | OperatorKind.Modulo | OperatorKind.LessThan | OperatorKind.GreaterThan | OperatorKind.LessThanEquals | OperatorKind.GreaterThanEquals | OperatorKind.BitwiseAnd | OperatorKind.BitwiseOr | OperatorKind.BitwiseXor;
27
+ export declare function isOperatorDefinedByToken(kind: OperatorKind): kind is KindOfOperatorDefinedByToken;
28
+ /**
29
+ * Виды операторов, задаваемых ключевыми словами (`и`, `или`, `не` и др.)
30
+ */
31
+ export type KindOfOperatorDefinedByKeyword = OperatorKind.Not | OperatorKind.Or | OperatorKind.And | OperatorKind.Xor;
32
+ export declare function isOperatorDefinedByKeyword(kind: OperatorKind): kind is KindOfOperatorDefinedByKeyword;
33
+ export declare const tokenTextByOperatorKind: {
34
+ [T in KindOfOperatorDefinedByToken]: string;
35
+ };
36
+ export declare const operatorKindByTokenText: Record<string, KindOfOperatorDefinedByToken | undefined>;
37
+ export declare const keywordKindByOperatorKind: {
38
+ [T in KindOfOperatorDefinedByKeyword]: KeywordKind;
39
+ };
40
+ export declare const operatorKindByKeywordKind: Record<number, KindOfOperatorDefinedByKeyword | undefined>;