@artel/artc 0.6.25271 → 0.6.25273

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 (120) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +4 -2
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +188 -238
  5. package/build/{chunk-LD2OIYWC.js → chunk-7EXJHYWX.js} +17928 -17171
  6. package/build/{chunk-MMSDQCD5.js → chunk-GOQZ6DP3.js} +1 -1
  7. package/build/{chunk-NLPXNTAI.js → chunk-W3SQYLD5.js} +2 -2
  8. package/build/types/analysis/AnalyzedTextTranslationPackage.d.ts +3 -3
  9. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +2 -4
  10. package/build/types/analysis/Analyzer.d.ts +14 -4
  11. package/build/types/analysis/DiagnosticCollector.d.ts +7 -0
  12. package/build/types/analysis/ImportedPackageNameTree.d.ts +1 -1
  13. package/build/types/analysis/ReturnTypeInferrer.d.ts +2 -2
  14. package/build/types/analysis/SourcePackageMembersCreator.d.ts +1 -1
  15. package/build/types/analysis/TextIdentity.d.ts +9 -0
  16. package/build/types/analysis/TypeMemberConflictsValidator.d.ts +1 -1
  17. package/build/types/analysis/control-flow/NarrowableReference.d.ts +1 -1
  18. package/build/types/analysis/semantic-context/SemanticContextBasedEntityHidingMatcher.d.ts +1 -1
  19. package/build/types/analysis/semantic-context/SpecialLocalDeclarationsBuilder.d.ts +1 -1
  20. package/build/types/common/Constants.d.ts +1 -1
  21. package/build/types/common/PackageDialect.d.ts +2 -3
  22. package/build/types/common/Query.d.ts +4 -0
  23. package/build/types/diagnostic/DiagnosticCode.d.ts +98 -92
  24. package/build/types/emitter/EmitterContext.d.ts +50 -4
  25. package/build/types/emitter/IrBuilder.d.ts +0 -1
  26. package/build/types/emitter/IrToJs.d.ts +4 -0
  27. package/build/types/emitter/Transformer.d.ts +35 -15
  28. package/build/types/emitter/ir/types.d.ts +1 -1
  29. package/build/types/entities/BaseAspectTypes.d.ts +26 -1
  30. package/build/types/entities/BaseEntityHidingMatcher.d.ts +1 -1
  31. package/build/types/entities/BaseObjectType.d.ts +20 -1
  32. package/build/types/entities/Entity.d.ts +104 -0
  33. package/build/types/entities/EntityHiding.d.ts +1 -1
  34. package/build/types/entities/TypeEntityMembers.d.ts +5 -5
  35. package/build/types/entities/index.d.ts +5 -123
  36. package/build/types/entities/{AliasedType.d.ts → interfaces/AliasTypeEntity.d.ts} +44 -13
  37. package/build/types/entities/interfaces/ConstructorEntity.d.ts +44 -0
  38. package/build/types/entities/interfaces/DereferenceOperatorEntity.d.ts +30 -0
  39. package/build/types/entities/interfaces/DestructorEntity.d.ts +20 -0
  40. package/build/types/entities/interfaces/FunctionEntity.d.ts +56 -0
  41. package/build/types/entities/interfaces/FunctionTypeEntity.d.ts +52 -0
  42. package/build/types/entities/interfaces/GetterEntity.d.ts +26 -0
  43. package/build/types/entities/interfaces/IndexerEntity.d.ts +33 -0
  44. package/build/types/entities/interfaces/OperatorEntity.d.ts +27 -0
  45. package/build/types/entities/interfaces/PackageAliasEntity.d.ts +21 -0
  46. package/build/types/entities/{PackageEntity.d.ts → interfaces/PackageEntity.d.ts} +8 -35
  47. package/build/types/entities/interfaces/SetterEntity.d.ts +24 -0
  48. package/build/types/entities/interfaces/StructuredTypeEntity.d.ts +62 -0
  49. package/build/types/entities/interfaces/TextTranslationEntity.d.ts +18 -0
  50. package/build/types/entities/interfaces/TypeExtensionEntity.d.ts +22 -0
  51. package/build/types/entities/{TypeParameterEntity.d.ts → interfaces/TypeParameterEntity.d.ts} +6 -60
  52. package/build/types/entities/interfaces/VariableEntity.d.ts +102 -0
  53. package/build/types/entities/interfaces/VariantTypeEntity.d.ts +47 -0
  54. package/build/types/entities/interfaces/index.d.ts +18 -0
  55. package/build/types/entities/intrinsic/IntrinsicConstructorEntity.d.ts +56 -0
  56. package/build/types/entities/intrinsic/IntrinsicFunctionEntity.d.ts +77 -0
  57. package/build/types/entities/intrinsic/IntrinsicFunctionTypeEntity.d.ts +17 -0
  58. package/build/types/entities/intrinsic/IntrinsicGetterEntity.d.ts +25 -0
  59. package/build/types/entities/intrinsic/IntrinsicStructuredTypeEntity.d.ts +17 -0
  60. package/build/types/entities/intrinsic/IntrinsicTypeParameterEntity.d.ts +32 -0
  61. package/build/types/entities/intrinsic/IntrinsicVariableEntity.d.ts +123 -0
  62. package/build/types/entities/intrinsic/index.d.ts +7 -0
  63. package/build/types/entities/source/SourceAliasTypeEntity.d.ts +36 -0
  64. package/build/types/entities/source/SourceConstructorEntity.d.ts +30 -0
  65. package/build/types/entities/source/SourceDereferenceOperatorEntity.d.ts +37 -0
  66. package/build/types/entities/source/SourceDestructorEntity.d.ts +28 -0
  67. package/build/types/entities/source/SourceFunctionEntity.d.ts +101 -0
  68. package/build/types/entities/source/SourceFunctionTypeEntity.d.ts +77 -0
  69. package/build/types/entities/{GetterEntity.d.ts → source/SourceGetterEntity.d.ts} +7 -48
  70. package/build/types/entities/source/SourceIndexerEntity.d.ts +39 -0
  71. package/build/types/entities/source/SourceOperatorEntity.d.ts +38 -0
  72. package/build/types/entities/source/SourcePackageAliasEntity.d.ts +24 -0
  73. package/build/types/entities/source/SourcePackageEntity.d.ts +34 -0
  74. package/build/types/entities/{SetterEntity.d.ts → source/SourceSetterEntity.d.ts} +6 -27
  75. package/build/types/entities/source/SourceStructuredTypeEntity.d.ts +114 -0
  76. package/build/types/entities/source/SourceTextTranslationEntity.d.ts +30 -0
  77. package/build/types/entities/source/SourceTypeExtensionEntity.d.ts +28 -0
  78. package/build/types/entities/source/SourceTypeParameterEntity.d.ts +34 -0
  79. package/build/types/entities/{VariableEntity.d.ts → source/SourceVariableEntity.d.ts} +8 -220
  80. package/build/types/entities/source/SourceVariantTypeEntity.d.ts +69 -0
  81. package/build/types/entities/source/index.d.ts +18 -0
  82. package/build/types/entities/translated/TranslatedAliasTypeEntity.d.ts +4 -5
  83. package/build/types/entities/translated/TranslatedConstructorEntity.d.ts +2 -2
  84. package/build/types/entities/translated/TranslatedDereferenceOperatorEntity.d.ts +1 -1
  85. package/build/types/entities/translated/TranslatedDestructorEntity.d.ts +2 -2
  86. package/build/types/entities/translated/TranslatedFunctionEntity.d.ts +5 -5
  87. package/build/types/entities/translated/TranslatedFunctionTypeEntity.d.ts +5 -5
  88. package/build/types/entities/translated/TranslatedGetterEntity.d.ts +2 -2
  89. package/build/types/entities/translated/TranslatedIndexerEntity.d.ts +2 -2
  90. package/build/types/entities/translated/TranslatedOperatorEntity.d.ts +2 -2
  91. package/build/types/entities/translated/TranslatedPackageEntity.d.ts +2 -2
  92. package/build/types/entities/translated/TranslatedSetterEntity.d.ts +2 -2
  93. package/build/types/entities/translated/TranslatedStructuredTypeEntity.d.ts +5 -6
  94. package/build/types/entities/translated/TranslatedTypeExtensionEntity.d.ts +2 -2
  95. package/build/types/entities/translated/TranslatedTypeParameterEntity.d.ts +2 -2
  96. package/build/types/entities/translated/TranslatedVariableEntity.d.ts +5 -5
  97. package/build/types/entities/translated/TranslatedVariantTypeEntity.d.ts +4 -4
  98. package/build/types/entities/translated/index.d.ts +16 -0
  99. package/build/types/project/configuration/types/PackageConfigurationEn.d.ts +0 -1
  100. package/build/types/project/configuration/types/PackageConfigurationRu.d.ts +0 -1
  101. package/build/types/services/source-generation/EntityToSyntax.d.ts +1 -1
  102. package/build/types/tree/NodeKind.d.ts +58 -60
  103. package/build/types/tree/Nodes.d.ts +4 -30
  104. package/build/types/tree/SyntaxToCode.d.ts +0 -1
  105. package/build/types/ts-interop/Entities.d.ts +2 -4
  106. package/build/types/ts-interop/TsInteropContext.d.ts +1 -2
  107. package/package.json +1 -1
  108. package/build/types/entities/AliasTypeEntity.d.ts +0 -61
  109. package/build/types/entities/ConstructorEntity.d.ts +0 -118
  110. package/build/types/entities/DereferenceOperatorEntity.d.ts +0 -62
  111. package/build/types/entities/DestructorEntity.d.ts +0 -44
  112. package/build/types/entities/FunctionEntity.d.ts +0 -221
  113. package/build/types/entities/FunctionTypeEntity.d.ts +0 -131
  114. package/build/types/entities/IndexerEntity.d.ts +0 -67
  115. package/build/types/entities/OperatorEntity.d.ts +0 -60
  116. package/build/types/entities/PackageAliasEntity.d.ts +0 -41
  117. package/build/types/entities/StructuredTypeEntity.d.ts +0 -226
  118. package/build/types/entities/TextTranslationEntity.d.ts +0 -45
  119. package/build/types/entities/TypeExtensionEntity.d.ts +0 -45
  120. package/build/types/entities/VariantTypeEntity.d.ts +0 -108
@@ -0,0 +1,56 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import { Name } from '../../common/index.js';
4
+ import * as tree from '../../tree/index.js';
5
+ import * as types from '../../types/index.js';
6
+ import { IEntity } from '../IEntity.js';
7
+ import type { PackageEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
8
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ParameterEntity, SubstitutionApplicationMode, TypeParameterEntity } from '../index.js';
9
+ export type FunctionEntity = PackageFunctionEntity | MethodEntity | NestedFunctionEntity;
10
+ interface IFunctionEntity extends IEntity {
11
+ readonly kind: EntityKind.Function;
12
+ getName(): Name;
13
+ getTypeParameters(): readonly TypeParameterEntity[];
14
+ getParameters(): readonly ParameterEntity[];
15
+ getReturnType(): types.Type;
16
+ getDefinition(): FunctionEntityDefinition;
17
+ isAsync(): boolean;
18
+ isHidden(): EntityHidingLevel | undefined;
19
+ getTags(): readonly Tag[];
20
+ getTypeParametersArity(): number;
21
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
22
+ }
23
+ export interface PackageFunctionEntity extends IFunctionEntity {
24
+ readonly subkind: 'package';
25
+ getContainingPackage(): PackageEntity;
26
+ getTranslation(): Translation | undefined;
27
+ getOriginalEntity(): PackageFunctionEntity;
28
+ }
29
+ export interface MethodEntity extends IFunctionEntity {
30
+ readonly subkind: 'method';
31
+ getContainingEntity(): TypeWithMembersOrExtensionEntity;
32
+ isStatic(): boolean;
33
+ isOverride(): boolean;
34
+ markedBasic(): boolean;
35
+ markedAbstract(): boolean;
36
+ isModifyingOwningPlainObject(): boolean;
37
+ isFunctionTypeInvokeMethod(): boolean;
38
+ getOverriddenMembers(): readonly types.Method[];
39
+ getTranslation(): Translation | undefined;
40
+ getOriginalEntity(): MethodEntity;
41
+ }
42
+ export interface NestedFunctionEntity extends IFunctionEntity {
43
+ readonly subkind: 'nested';
44
+ getContainingPackage(): PackageEntity;
45
+ getTranslation(): Translation | undefined;
46
+ getOriginalEntity(): NestedFunctionEntity;
47
+ }
48
+ export type FunctionEntityDefinition = {
49
+ kind: DefinitionKind.Source;
50
+ node: tree.PackageFunctionDeclaration | tree.MethodDeclaration | tree.NestedFunctionDeclaration;
51
+ } | {
52
+ kind: DefinitionKind.Intrinsic;
53
+ } | {
54
+ kind: DefinitionKind.TypeScript;
55
+ };
56
+ export {};
@@ -0,0 +1,52 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import { Name } from '../../common/index.js';
4
+ import * as tree from '../../tree/index.js';
5
+ import * as types from '../../types/index.js';
6
+ import { BaseObjectType } from '../BaseObjectType.js';
7
+ import { EntityNaming } from '../EntityNaming.js';
8
+ import { TypeEntityMembers } from '../TypeEntityMembers.js';
9
+ import type { PackageEntity } from '../index.js';
10
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ITypeEntity, ParameterEntity, SubstitutionApplicationMode, TypeEntityKind, TypeParameterEntity } from '../index.js';
11
+ export type FunctionTypeEntity = PackageFunctionTypeEntity | AnonymousFunctionTypeEntity;
12
+ interface IFunctionTypeEntity extends ITypeEntity {
13
+ readonly kind: EntityKind.Type;
14
+ readonly typeEntityKind: TypeEntityKind.Function;
15
+ getNaming(): EntityNaming;
16
+ getTypeParameters(): readonly TypeParameterEntity[];
17
+ getParameters(): readonly ParameterEntity[];
18
+ getReturnType(): types.Type;
19
+ getMembers(): TypeEntityMembers;
20
+ getDefinition(): FunctionTypeEntityDefinition;
21
+ isAsync(): boolean;
22
+ getArity(): number;
23
+ isHidden(): EntityHidingLevel | undefined;
24
+ getTags(): readonly Tag[];
25
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
26
+ /**
27
+ * При каждом вызове метод должен возвращать один и тот же экземпляр класса BaseObjectType.
28
+ */
29
+ getBaseObjectType(): BaseObjectType;
30
+ }
31
+ export interface PackageFunctionTypeEntity extends IFunctionTypeEntity {
32
+ readonly subkind: 'package';
33
+ getName(): Name;
34
+ getContainingPackage(): PackageEntity;
35
+ getTranslation(): Translation | undefined;
36
+ getOriginalEntity(): PackageFunctionTypeEntity;
37
+ }
38
+ export interface AnonymousFunctionTypeEntity extends IFunctionTypeEntity {
39
+ readonly subkind: 'anonymous';
40
+ getContainingPackage(): PackageEntity;
41
+ getTranslation(): Translation | undefined;
42
+ getOriginalEntity(): AnonymousFunctionTypeEntity;
43
+ }
44
+ export type FunctionTypeEntityDefinition = {
45
+ kind: DefinitionKind.Source;
46
+ node: tree.PackageFunctionTypeDeclaration | tree.AnonymousFunctionTypeDeclaration;
47
+ } | {
48
+ kind: DefinitionKind.Intrinsic;
49
+ } | {
50
+ kind: DefinitionKind.TypeScript;
51
+ };
52
+ export {};
@@ -0,0 +1,26 @@
1
+ import { GetterDeclaration } from '../../analysis/NodeTypeUtils.js';
2
+ import { Tag } from '../../analysis/Tag.js';
3
+ import { Translation } from '../../analysis/Translation.js';
4
+ import * as types from '../../types/index.js';
5
+ import { IEntity } from '../IEntity.js';
6
+ import { DefinitionKind, DereferenceOperatorEntity, EntityHidingLevel, EntityKind, FieldEntity, IndexerEntity, PackageVariableEntity } from '../index.js';
7
+ export interface GetterEntity extends IEntity {
8
+ readonly kind: EntityKind.Getter;
9
+ getReturnType(): types.Type;
10
+ getDefinition(): GetterEntityDefinition;
11
+ isModifyingOwningPlainObject(): boolean;
12
+ getOwningEntity(): EntityOwningGetter;
13
+ isHidden(): EntityHidingLevel | undefined;
14
+ getTags(): readonly Tag[];
15
+ getTranslation(): Translation | undefined;
16
+ getOriginalEntity(): GetterEntity;
17
+ }
18
+ export type GetterEntityDefinition = {
19
+ kind: DefinitionKind.Source;
20
+ node: GetterDeclaration;
21
+ } | {
22
+ kind: DefinitionKind.Intrinsic;
23
+ } | {
24
+ kind: DefinitionKind.TypeScript;
25
+ };
26
+ export type EntityOwningGetter = PackageVariableEntity | FieldEntity | IndexerEntity | DereferenceOperatorEntity;
@@ -0,0 +1,33 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import * as tree from '../../tree/index.js';
4
+ import * as types from '../../types/index.js';
5
+ import { IEntity } from '../IEntity.js';
6
+ import { DefinitionKind, EntityHidingLevel, EntityKind, GetterEntity, ParameterEntity, SetterEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
7
+ export interface IndexerEntity extends IEntity {
8
+ readonly kind: EntityKind.Indexer;
9
+ getParameters(): readonly ParameterEntity[];
10
+ getType(): types.Type;
11
+ getGetter(): GetterEntity | undefined;
12
+ getSetter(): SetterEntity | undefined;
13
+ getDefinition(): IndexerEntityDefinition;
14
+ getContainingEntity(): TypeWithMembersOrExtensionEntity;
15
+ isStatic(): boolean;
16
+ isHidden(): EntityHidingLevel | undefined;
17
+ isOverride(): boolean;
18
+ markedBasic(): boolean;
19
+ markedAbstract(): boolean;
20
+ getTags(): readonly Tag[];
21
+ getOverriddenMembers(): readonly types.Indexer[];
22
+ getTranslation(): Translation | undefined;
23
+ getOriginalEntity(): IndexerEntity;
24
+ ensureAllDiagnosticsReported?(): void;
25
+ }
26
+ export type IndexerEntityDefinition = {
27
+ kind: DefinitionKind.Source;
28
+ nodes: ReadonlyArray<tree.IndexedElementGetterDeclaration | tree.IndexedElementSetterDeclaration>;
29
+ } | {
30
+ kind: DefinitionKind.Intrinsic;
31
+ } | {
32
+ kind: DefinitionKind.TypeScript;
33
+ };
@@ -0,0 +1,27 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import * as tree from '../../tree/index.js';
4
+ import * as types from '../../types/index.js';
5
+ import { IEntity } from '../IEntity.js';
6
+ import { DefinitionKind, EntityHidingLevel, EntityKind, OperatorKind, ParameterEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
7
+ export interface OperatorEntity extends IEntity {
8
+ readonly kind: EntityKind.Operator;
9
+ getOperatorKind(): OperatorKind;
10
+ getParameters(): readonly ParameterEntity[];
11
+ getReturnType(): types.Type;
12
+ getDefinition(): OperatorEntityDefinition;
13
+ getContainingEntity(): TypeWithMembersOrExtensionEntity;
14
+ isStatic(): boolean;
15
+ isOverride(): boolean;
16
+ markedBasic(): boolean;
17
+ markedAbstract(): boolean;
18
+ isHidden(): EntityHidingLevel | undefined;
19
+ getTags(): readonly Tag[];
20
+ getOverriddenMembers(): readonly types.Operator[];
21
+ getTranslation(): Translation | undefined;
22
+ getOriginalEntity(): OperatorEntity;
23
+ }
24
+ export type OperatorEntityDefinition = {
25
+ kind: DefinitionKind.Source;
26
+ node: tree.OperatorDeclaration;
27
+ };
@@ -0,0 +1,21 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import { Name } from '../../common/index.js';
4
+ import * as tree from '../../tree/index.js';
5
+ import { IEntity } from '../IEntity.js';
6
+ import { DefinitionKind, EntityHidingLevel, EntityKind, PackageEntity } from '../index.js';
7
+ export interface PackageAliasEntity extends IEntity {
8
+ readonly kind: EntityKind.PackageAlias;
9
+ getName(): Name;
10
+ getDefinition(): PackageAliasEntityDefinition;
11
+ getPackage(): PackageEntity | undefined;
12
+ isHidden(): EntityHidingLevel | undefined;
13
+ getContainingPackage(): PackageEntity;
14
+ getTranslation(): Translation | undefined;
15
+ getOriginalEntity(): PackageAliasEntity;
16
+ getTags(): readonly Tag[];
17
+ }
18
+ export type PackageAliasEntityDefinition = {
19
+ kind: DefinitionKind.Source;
20
+ node: tree.PackageImport;
21
+ };
@@ -1,12 +1,11 @@
1
- import { Analyzer } from '../analysis/index.js';
2
- import { Tag } from '../analysis/Tag.js';
3
- import { Translation } from '../analysis/Translation.js';
4
- import { PackageDialect, PackageLocale } from '../common/index.js';
5
- import type { JavaScriptImplementationConfig, SourcePackage } from '../project/index.js';
6
- import { PackageName, PlatformKind } from '../project/index.js';
7
- import { IEntity } from './IEntity.js';
8
- import { DefinitionKind, EntityKind } from './index.js';
9
- import { PackageEntityMembers } from './PackageMembers.js';
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import { PackageDialect, PackageLocale } from '../../common/index.js';
4
+ import type { JavaScriptImplementationConfig, SourcePackage } from '../../project/index.js';
5
+ import { PackageName, PlatformKind } from '../../project/index.js';
6
+ import { IEntity } from '../IEntity.js';
7
+ import { DefinitionKind, EntityKind } from '../index.js';
8
+ import { PackageEntityMembers } from '../PackageMembers.js';
10
9
  export interface PackageEntity extends IEntity {
11
10
  readonly kind: EntityKind.Package;
12
11
  getName(): PackageName;
@@ -51,29 +50,3 @@ export declare class TextTranslationPackageEntityInfo {
51
50
  readonly targetPackage: PackageEntity | undefined;
52
51
  constructor(translationLocale: PackageLocale, targetPackage: PackageEntity | undefined);
53
52
  }
54
- export declare class SourcePackageEntity implements PackageEntity {
55
- private readonly analyzer;
56
- private readonly package_;
57
- readonly kind = EntityKind.Package;
58
- private readonly members;
59
- private readonly interfaceInfo;
60
- private readonly implementedInterfacePackage;
61
- private readonly textTranslationInfo;
62
- constructor(analyzer: Analyzer, package_: SourcePackage);
63
- getName(): PackageName;
64
- getLocale(): PackageLocale;
65
- getDialect(): PackageDialect;
66
- getMembers(): PackageEntityMembers;
67
- getInterfacePackageInfo(): InterfacePackageEntityInfo | undefined;
68
- getImplementedInterfacePackage(): PackageEntity | undefined;
69
- getSupportedPlatforms(): readonly PlatformKind[];
70
- getContainingPackage(): PackageEntity;
71
- getDefinition(): PackageEntityDefinition;
72
- getTranslation(): Translation | undefined;
73
- getOriginalEntity(): PackageEntity;
74
- getTags(): readonly Tag[];
75
- getTextTranslationPackageInfo(): TextTranslationPackageEntityInfo | undefined;
76
- private createPackageMembers;
77
- private createInterfacePackageInfo;
78
- private createTextTranslationInfo;
79
- }
@@ -0,0 +1,24 @@
1
+ import { SetterDeclaration } from '../../analysis/NodeTypeUtils.js';
2
+ import { Tag } from '../../analysis/Tag.js';
3
+ import { Translation } from '../../analysis/Translation.js';
4
+ import { IEntity } from '../IEntity.js';
5
+ import { DefinitionKind, DereferenceOperatorEntity, EntityHidingLevel, EntityKind, FieldEntity, IndexerEntity, PackageVariableEntity } from '../index.js';
6
+ export interface SetterEntity extends IEntity {
7
+ readonly kind: EntityKind.Setter;
8
+ getDefinition(): SetterEntityDefinition;
9
+ isModifyingOwningPlainObject(): boolean;
10
+ getOwningEntity(): EntityOwningSetter;
11
+ isHidden(): EntityHidingLevel | undefined;
12
+ getTags(): readonly Tag[];
13
+ getTranslation(): Translation | undefined;
14
+ getOriginalEntity(): SetterEntity;
15
+ }
16
+ export type SetterEntityDefinition = {
17
+ kind: DefinitionKind.Source;
18
+ node: SetterDeclaration;
19
+ } | {
20
+ kind: DefinitionKind.Intrinsic;
21
+ } | {
22
+ kind: DefinitionKind.TypeScript;
23
+ };
24
+ export type EntityOwningSetter = PackageVariableEntity | FieldEntity | IndexerEntity | DereferenceOperatorEntity;
@@ -0,0 +1,62 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import { Name } from '../../common/index.js';
4
+ import * as tree from '../../tree/index.js';
5
+ import { BaseAspectTypes } from '../BaseAspectTypes.js';
6
+ import { BaseObjectType } from '../BaseObjectType.js';
7
+ import { EntityNaming } from '../EntityNaming.js';
8
+ import { TypeEntityMembers } from '../TypeEntityMembers.js';
9
+ import type { PackageEntity } from '../index.js';
10
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ITypeEntity, SubstitutionApplicationMode, TypeEntityKind, TypeParameterEntity } from '../index.js';
11
+ export type StructuredTypeEntity = PackageStructuredTypeEntity | AnonymousStructuredTypeEntity;
12
+ interface IStructuredTypeEntity extends ITypeEntity {
13
+ readonly kind: EntityKind.Type;
14
+ readonly typeEntityKind: TypeEntityKind.Structured;
15
+ getNaming(): EntityNaming;
16
+ getTypeParameters(): readonly TypeParameterEntity[];
17
+ getMembers(): TypeEntityMembers;
18
+ getDefinition(): StructuredTypeEntityDefinition;
19
+ markedBasic(): boolean;
20
+ isAbstract(): boolean;
21
+ getStructuredTypeKind(): StructuredTypeKind;
22
+ getArity(): number;
23
+ /**
24
+ * При каждом вызове метод должен возвращать один и тот же экземпляр класса BaseObjectType.
25
+ */
26
+ getBaseObjectType(): BaseObjectType;
27
+ /**
28
+ * При каждом вызове метод должен возвращать один и тот же экземпляр класса BaseAspectTypes.
29
+ */
30
+ getBaseAspectTypes(): BaseAspectTypes;
31
+ isHidden(): EntityHidingLevel | undefined;
32
+ getTags(): readonly Tag[];
33
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
34
+ }
35
+ export interface PackageStructuredTypeEntity extends IStructuredTypeEntity {
36
+ readonly subkind: 'package';
37
+ getName(): Name;
38
+ getContainingPackage(): PackageEntity;
39
+ getTranslation(): Translation | undefined;
40
+ getOriginalEntity(): PackageStructuredTypeEntity;
41
+ }
42
+ export interface AnonymousStructuredTypeEntity extends IStructuredTypeEntity {
43
+ readonly subkind: 'anonymous';
44
+ getContainingPackage(): PackageEntity;
45
+ getTranslation(): Translation | undefined;
46
+ getOriginalEntity(): AnonymousStructuredTypeEntity;
47
+ }
48
+ export declare enum StructuredTypeKind {
49
+ RefObject = 0,
50
+ PlainObject = 1,
51
+ Aspect = 2
52
+ }
53
+ export type StructuredTypeEntityDefinition = {
54
+ kind: DefinitionKind.Source;
55
+ node: StructuredTypeEntityDefinitionNode;
56
+ } | {
57
+ kind: DefinitionKind.Intrinsic;
58
+ } | {
59
+ kind: DefinitionKind.TypeScript;
60
+ };
61
+ type StructuredTypeEntityDefinitionNode = tree.PackageStructuredTypeDeclaration | tree.AnonymousStructuredTypeDeclaration;
62
+ export {};
@@ -0,0 +1,18 @@
1
+ import { TextKey } from '../../analysis/TextIdentity.js';
2
+ import * as tree from '../../tree/index.js';
3
+ import { IEntity } from '../IEntity.js';
4
+ import { DefinitionKind, EntityKind, ParameterEntity } from '../index.js';
5
+ export interface TextTranslationEntity extends IEntity {
6
+ readonly kind: EntityKind.TextTranslation;
7
+ isTextTemplate(): boolean;
8
+ getKey(): TextKey;
9
+ getText(): string;
10
+ getTextFragments(): readonly string[];
11
+ getComment(): string | undefined;
12
+ getParameters(): readonly ParameterEntity[];
13
+ getDefinition(): TextTranslationEntityDefinition;
14
+ }
15
+ export type TextTranslationEntityDefinition = {
16
+ kind: DefinitionKind.Source;
17
+ node: tree.TextTranslationSource;
18
+ };
@@ -0,0 +1,22 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import * as tree from '../../tree/index.js';
4
+ import { IEntity } from '../IEntity.js';
5
+ import { TypeEntityMembers } from '../TypeEntityMembers.js';
6
+ import { DefinitionKind, EntityContext, EntityHidingLevel, EntityKind, NamedTypeEntity, PackageEntity } from '../index.js';
7
+ export interface TypeExtensionEntity extends IEntity {
8
+ readonly kind: EntityKind.TypeExtension;
9
+ getMembers(): TypeEntityMembers;
10
+ getContainingPackage(): PackageEntity;
11
+ getExtendedTypeEntity(): NamedTypeEntity | undefined;
12
+ getDefinition(): TypeExtensionEntityDefinition;
13
+ isHidden(): EntityHidingLevel | undefined;
14
+ getTags(): readonly Tag[];
15
+ getContext(): EntityContext;
16
+ getTranslation(): Translation | undefined;
17
+ getOriginalEntity(): TypeExtensionEntity;
18
+ }
19
+ export type TypeExtensionEntityDefinition = {
20
+ kind: DefinitionKind.Source;
21
+ node: tree.TypeExtensionDeclaration;
22
+ };
@@ -1,10 +1,8 @@
1
- import { Analyzer } from '../analysis/index.js';
2
- import { Tag } from '../analysis/Tag.js';
3
- import { Translation } from '../analysis/Translation.js';
4
- import { Name, PackageDialect, PackageLocale } from '../common/index.js';
5
- import { TypeParameterDeclaration } from '../tree/index.js';
6
- import * as types from '../types/index.js';
7
- import { AliasTypeEntity, DefinitionKind, EntityContext, EntityHidingLevel, EntityKind, FunctionEntity, FunctionTypeEntity, ITypeEntity, PackageEntity, StructuredTypeEntity, TypeEntityKind, VariantTypeEntity } from './index.js';
1
+ import { Translation } from '../../analysis/Translation.js';
2
+ import { Name } from '../../common/index.js';
3
+ import * as tree from '../../tree/index.js';
4
+ import * as types from '../../types/index.js';
5
+ import { AliasTypeEntity, DefinitionKind, EntityHidingLevel, EntityKind, FunctionEntity, FunctionTypeEntity, ITypeEntity, StructuredTypeEntity, TypeEntityKind, VariantTypeEntity } from '../index.js';
8
6
  export interface TypeParameterEntity extends ITypeEntity {
9
7
  readonly kind: EntityKind.Type;
10
8
  readonly typeEntityKind: TypeEntityKind.Parameter;
@@ -24,7 +22,7 @@ export interface TypeParameterEntity extends ITypeEntity {
24
22
  }
25
23
  export type TypeParameterEntityDefinition = {
26
24
  kind: DefinitionKind.Source;
27
- node: TypeParameterDeclaration;
25
+ node: tree.TypeParameterDeclaration;
28
26
  } | {
29
27
  kind: DefinitionKind.Intrinsic;
30
28
  } | {
@@ -74,55 +72,3 @@ export declare class CycleFreeConstraintResolutionResult {
74
72
  constructor(type: types.Type | undefined, causesCycle: boolean);
75
73
  }
76
74
  export declare const emptyTypeParameterEntities: readonly TypeParameterEntity[];
77
- export declare class SourceTypeParameterEntity implements TypeParameterEntity {
78
- private readonly analyzer;
79
- private readonly node;
80
- readonly kind = EntityKind.Type;
81
- readonly typeEntityKind = TypeEntityKind.Parameter;
82
- private readonly name;
83
- private readonly definition;
84
- private readonly constraint;
85
- private readonly default;
86
- constructor(analyzer: Analyzer, node: TypeParameterDeclaration);
87
- getName(): Name;
88
- getConstraint(): TypeParameterConstraint;
89
- getDefaultType(): types.Type | undefined;
90
- getDefinition(): TypeParameterEntityDefinition;
91
- getArity(): number;
92
- getTypeParameters(): readonly TypeParameterEntity[];
93
- getContainingEntity(): EntityContainingTypeParameter;
94
- getContainingPackage(): PackageEntity;
95
- isHidden(): EntityHidingLevel | undefined;
96
- getTags(): readonly Tag[];
97
- getContext(): EntityContext;
98
- getTranslation(): Translation | undefined;
99
- getLocale(): PackageLocale;
100
- getDialect(): PackageDialect;
101
- getOriginalEntity(): TypeParameterEntity;
102
- }
103
- export declare class IntrinsicTypeParameterEntity implements TypeParameterEntity {
104
- private readonly name;
105
- private readonly constraint;
106
- private readonly defaultValue;
107
- private readonly containingEntity;
108
- readonly kind = EntityKind.Type;
109
- readonly typeEntityKind = TypeEntityKind.Parameter;
110
- private readonly typeParameterConstraint;
111
- private readonly context;
112
- constructor(name: Name, constraint: types.Type | undefined, defaultValue: types.Type | undefined, containingEntity: EntityContainingTypeParameter, context: EntityContext | undefined);
113
- getName(): Name;
114
- getConstraint(): TypeParameterConstraint;
115
- getDefaultType(): types.Type | undefined;
116
- getDefinition(): TypeParameterEntityDefinition;
117
- getArity(): number;
118
- getTypeParameters(): readonly TypeParameterEntity[];
119
- getContainingEntity(): EntityContainingTypeParameter;
120
- getContainingPackage(): PackageEntity;
121
- isHidden(): EntityHidingLevel | undefined;
122
- getTags(): readonly Tag[];
123
- getContext(): EntityContext;
124
- getTranslation(): Translation | undefined;
125
- getLocale(): PackageLocale;
126
- getDialect(): PackageDialect;
127
- getOriginalEntity(): TypeParameterEntity;
128
- }
@@ -0,0 +1,102 @@
1
+ import { SetterDeclaration, SubprogramDeclarationOrLiteral } from '../../analysis/NodeTypeUtils.js';
2
+ import { Tag } from '../../analysis/Tag.js';
3
+ import { Translation } from '../../analysis/Translation.js';
4
+ import { Name } from '../../common/index.js';
5
+ import * as tree from '../../tree/index.js';
6
+ import * as types from '../../types/index.js';
7
+ import { IEntity } from '../IEntity.js';
8
+ import type { IndexerEntity, PackageEntity, TypeWithMembersOrExtensionEntity } from '../index.js';
9
+ import { ConstructorEntity, DefinitionKind, DestructorEntity, EntityHidingLevel, EntityKind, FunctionEntity, FunctionTypeEntity, GetterEntity, OperatorEntity, SetterEntity } from '../index.js';
10
+ export type VariableEntity = PackageVariableEntity | FieldEntity | ParameterEntity | LocalVariableEntity;
11
+ interface IVariableEntity extends IEntity {
12
+ readonly kind: EntityKind.Variable;
13
+ getName(): Name;
14
+ getType(): types.Type;
15
+ getDefinition(): VariableEntityDefinition;
16
+ getGetter(): GetterEntity | undefined;
17
+ getSetter(): SetterEntity | undefined;
18
+ isConstant(): boolean;
19
+ isHidden(): EntityHidingLevel | undefined;
20
+ isSpecial(): SpecialVariableEntityInfo | undefined;
21
+ getTags(): readonly Tag[];
22
+ ensureAllDiagnosticsReported?(): void;
23
+ }
24
+ export interface PackageVariableEntity extends IVariableEntity {
25
+ readonly subkind: 'package';
26
+ getContainingPackage(): PackageEntity;
27
+ getTranslation(): Translation | undefined;
28
+ getOriginalEntity(): PackageVariableEntity;
29
+ }
30
+ export interface FieldEntity extends IVariableEntity {
31
+ readonly subkind: 'field';
32
+ getContainingEntity(): TypeWithMembersOrExtensionEntity;
33
+ isStatic(): boolean;
34
+ isOverride(): boolean;
35
+ markedBasic(): boolean;
36
+ markedAbstract(): boolean;
37
+ getOverriddenMembers(): readonly types.Field[];
38
+ isVariant(): boolean;
39
+ getTranslation(): Translation | undefined;
40
+ getOriginalEntity(): FieldEntity;
41
+ }
42
+ export interface ParameterEntity extends IVariableEntity {
43
+ readonly subkind: 'parameter';
44
+ getContainingEntity(): EntityContainingParameter;
45
+ isOptional(): boolean;
46
+ isVariadic(): boolean;
47
+ getTranslation(): Translation | undefined;
48
+ getOriginalEntity(): ParameterEntity;
49
+ }
50
+ export interface LocalVariableEntity extends IVariableEntity {
51
+ readonly subkind: 'local';
52
+ getLocalVariableKind(): LocalVariableKind;
53
+ getContainingPackage(): PackageEntity;
54
+ getTranslation(): Translation | undefined;
55
+ getOriginalEntity(): LocalVariableEntity;
56
+ }
57
+ export declare enum LocalVariableKind {
58
+ Regular = 0,
59
+ Enumeration = 1,
60
+ Error = 2
61
+ }
62
+ export type EntityContainingParameter = FunctionEntity | IndexerEntity | ConstructorEntity | DestructorEntity | FunctionTypeEntity | OperatorEntity | PackageEntity;
63
+ export type VariableEntityDefinition = {
64
+ kind: DefinitionKind.Source;
65
+ value: SourceVariableEntityDefinition;
66
+ } | {
67
+ kind: DefinitionKind.Intrinsic;
68
+ } | {
69
+ kind: DefinitionKind.TypeScript;
70
+ };
71
+ export type SourceVariableEntityDefinition = SingleSourceVariableEntityDefinition | MultiSourceVariableEntityDefinition;
72
+ export type SingleSourceVariableEntityDefinition = {
73
+ kind: 'single';
74
+ node: tree.PackageVariableDeclaration | tree.FieldDeclaration | tree.LocalVariableDeclaration | tree.ForStatementVariableDeclaration | tree.ErrorVariableDeclaration | tree.ParameterDeclaration | tree.VariantDeclaration | tree.TranslationTextTemplateParameter;
75
+ };
76
+ export type MultiSourceVariableEntityDefinition = {
77
+ kind: 'multi';
78
+ nodes: ReadonlyArray<tree.PackageVariableGetterDeclaration | tree.PackageVariableSetterDeclaration | tree.FieldGetterDeclaration | tree.FieldSetterDeclaration | tree.ParameterDeclaration>;
79
+ };
80
+ export type SpecialVariableEntityInfo = ResultSpecialVariableEntityInfo | ValueSpecialVariableEntityInfo | BackingSpecialVariableEntityInfo | ImplicitFunctionBlockParameterSpecialVariableEntityInfo;
81
+ export declare class ResultSpecialVariableEntityInfo {
82
+ readonly subprogramNode: SubprogramDeclarationOrLiteral;
83
+ readonly kind = "result";
84
+ constructor(subprogramNode: SubprogramDeclarationOrLiteral);
85
+ }
86
+ export declare class ValueSpecialVariableEntityInfo {
87
+ readonly setterDeclaration: SetterDeclaration;
88
+ readonly kind = "value";
89
+ constructor(setterDeclaration: SetterDeclaration);
90
+ }
91
+ export declare class BackingSpecialVariableEntityInfo {
92
+ readonly computedVariable: PackageVariableEntity | FieldEntity;
93
+ readonly kind = "backing";
94
+ constructor(computedVariable: PackageVariableEntity | FieldEntity);
95
+ }
96
+ export declare class ImplicitFunctionBlockParameterSpecialVariableEntityInfo {
97
+ readonly targetTypeParameter: types.Parameter;
98
+ readonly functionBlockLiteral: tree.FunctionBlockLiteral;
99
+ readonly kind = "implicit-function-block-parameter";
100
+ constructor(targetTypeParameter: types.Parameter, functionBlockLiteral: tree.FunctionBlockLiteral);
101
+ }
102
+ export {};
@@ -0,0 +1,47 @@
1
+ import { Tag } from '../../analysis/Tag.js';
2
+ import { Translation } from '../../analysis/Translation.js';
3
+ import { Name } from '../../common/index.js';
4
+ import * as tree from '../../tree/index.js';
5
+ import * as types from '../../types/index.js';
6
+ import { BaseObjectType } from '../BaseObjectType.js';
7
+ import { EntityNaming } from '../EntityNaming.js';
8
+ import { TypeEntityMembers } from '../TypeEntityMembers.js';
9
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ITypeEntity, PackageEntity, SubstitutionApplicationMode, TypeEntityKind, TypeParameterEntity } from '../index.js';
10
+ export type VariantTypeEntity = PackageVariantTypeEntity | AnonymousVariantTypeEntity;
11
+ interface IVariantTypeEntity extends ITypeEntity {
12
+ readonly kind: EntityKind.Type;
13
+ readonly typeEntityKind: TypeEntityKind.Variant;
14
+ getMembers(): TypeEntityMembers;
15
+ getUnderlyingType(): types.Type;
16
+ getDefinition(): VariantTypeEntityDefinition;
17
+ getNaming(): EntityNaming;
18
+ getArity(): number;
19
+ getTypeParameters(): readonly TypeParameterEntity[];
20
+ isHidden(): EntityHidingLevel | undefined;
21
+ getTags(): readonly Tag[];
22
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
23
+ /**
24
+ * При каждом вызове метод должен возвращать один и тот же экземпляр класса BaseObjectType.
25
+ */
26
+ getBaseObjectType(): BaseObjectType;
27
+ }
28
+ export interface PackageVariantTypeEntity extends IVariantTypeEntity {
29
+ readonly subkind: 'package';
30
+ getName(): Name;
31
+ getContainingPackage(): PackageEntity;
32
+ getTranslation(): Translation | undefined;
33
+ getOriginalEntity(): PackageVariantTypeEntity;
34
+ }
35
+ export interface AnonymousVariantTypeEntity extends IVariantTypeEntity {
36
+ readonly subkind: 'anonymous';
37
+ getContainingPackage(): PackageEntity;
38
+ getTranslation(): Translation | undefined;
39
+ getOriginalEntity(): AnonymousVariantTypeEntity;
40
+ }
41
+ export type VariantTypeEntityDefinition = {
42
+ kind: DefinitionKind.Source;
43
+ node: tree.PackageVariantTypeDeclaration | tree.AnonymousVariantTypeDeclaration;
44
+ } | {
45
+ kind: DefinitionKind.TypeScript;
46
+ };
47
+ export {};
@@ -0,0 +1,18 @@
1
+ export * from './AliasTypeEntity.js';
2
+ export * from './ConstructorEntity.js';
3
+ export * from './DereferenceOperatorEntity.js';
4
+ export * from './DestructorEntity.js';
5
+ export * from './FunctionEntity.js';
6
+ export * from './FunctionTypeEntity.js';
7
+ export * from './GetterEntity.js';
8
+ export * from './IndexerEntity.js';
9
+ export * from './OperatorEntity.js';
10
+ export * from './PackageAliasEntity.js';
11
+ export * from './PackageEntity.js';
12
+ export * from './SetterEntity.js';
13
+ export * from './StructuredTypeEntity.js';
14
+ export * from './TextTranslationEntity.js';
15
+ export * from './TypeExtensionEntity.js';
16
+ export * from './TypeParameterEntity.js';
17
+ export * from './VariableEntity.js';
18
+ export * from './VariantTypeEntity.js';