@artel/artc 0.6.25191

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 (281) hide show
  1. package/build/Cli.js +20 -0
  2. package/build/api/Api.js +664 -0
  3. package/build/api/ApiNodeJS.js +20 -0
  4. package/build/api/ApiServices.js +12847 -0
  5. package/build/chunk-BQHCAH6D.js +588 -0
  6. package/build/chunk-O2JKESUU.js +63219 -0
  7. package/build/chunk-QRBDQKYM.js +94 -0
  8. package/build/types/Cli.d.ts +3 -0
  9. package/build/types/analysis/AccessedMethod.d.ts +53 -0
  10. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +191 -0
  11. package/build/types/analysis/Analyzer.d.ts +665 -0
  12. package/build/types/analysis/AutotypeCallExpressionMeaning.d.ts +25 -0
  13. package/build/types/analysis/BaseExpressionMeaning.d.ts +47 -0
  14. package/build/types/analysis/BuiltInOperators.d.ts +14 -0
  15. package/build/types/analysis/CallArgumentToParameterMatchResult.d.ts +30 -0
  16. package/build/types/analysis/CallArgumentsToParametersMatcher.d.ts +44 -0
  17. package/build/types/analysis/CallExpressionMeaning.d.ts +39 -0
  18. package/build/types/analysis/ConstructorOverloadResolver.d.ts +34 -0
  19. package/build/types/analysis/DeclarationsUsageCounter.d.ts +18 -0
  20. package/build/types/analysis/DereferenceExpressionMeaning.d.ts +23 -0
  21. package/build/types/analysis/DiagnosticCollector.d.ts +68 -0
  22. package/build/types/analysis/EntityLocalizationHelper.d.ts +15 -0
  23. package/build/types/analysis/FindModifier.d.ts +4 -0
  24. package/build/types/analysis/FoundDeclaration.d.ts +19 -0
  25. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +98 -0
  26. package/build/types/analysis/ImportedPackageNameTree.d.ts +22 -0
  27. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +26 -0
  28. package/build/types/analysis/IndexerAccess.d.ts +10 -0
  29. package/build/types/analysis/Localization.d.ts +54 -0
  30. package/build/types/analysis/LocalizationContext.d.ts +15 -0
  31. package/build/types/analysis/Lookup.d.ts +23 -0
  32. package/build/types/analysis/NamedTypeResolver.d.ts +42 -0
  33. package/build/types/analysis/NamedTypeSpecifierResolver.d.ts +20 -0
  34. package/build/types/analysis/NodeTypeUtils.d.ts +28 -0
  35. package/build/types/analysis/ObjectExpressionMeaning.d.ts +38 -0
  36. package/build/types/analysis/OperationOverloadResolver.d.ts +19 -0
  37. package/build/types/analysis/OverloadResolver.d.ts +12 -0
  38. package/build/types/analysis/PackageMemberLookup.d.ts +15 -0
  39. package/build/types/analysis/PrefixUnaryOperatorResolver.d.ts +27 -0
  40. package/build/types/analysis/PropertyAccessExpressionMeaning.d.ts +100 -0
  41. package/build/types/analysis/Scope.d.ts +309 -0
  42. package/build/types/analysis/SemanticContext.d.ts +320 -0
  43. package/build/types/analysis/SemanticContextBuilder.d.ts +54 -0
  44. package/build/types/analysis/SourceFileMembers.d.ts +92 -0
  45. package/build/types/analysis/SourcePackageDependencyGraph.d.ts +41 -0
  46. package/build/types/analysis/SourcePackageMembersCreator.d.ts +6 -0
  47. package/build/types/analysis/StatementBlockScopeBuilder.d.ts +22 -0
  48. package/build/types/analysis/SubstitutedMethod.d.ts +49 -0
  49. package/build/types/analysis/TagMeaning.d.ts +26 -0
  50. package/build/types/analysis/Tags.d.ts +29 -0
  51. package/build/types/analysis/TargetTypeHint.d.ts +5 -0
  52. package/build/types/analysis/TypeInferrer.d.ts +9 -0
  53. package/build/types/analysis/TypeMemberLookup.d.ts +27 -0
  54. package/build/types/analysis/TypeOverloadResolver.d.ts +7 -0
  55. package/build/types/analysis/UserDefinableBinaryOperatorResolver.d.ts +37 -0
  56. package/build/types/analysis/Utils.d.ts +17 -0
  57. package/build/types/analysis/VariableAccess.d.ts +10 -0
  58. package/build/types/analysis/VariantLookup.d.ts +20 -0
  59. package/build/types/analysis/Visitor.d.ts +7 -0
  60. package/build/types/analysis/WellKnownDeclarations.d.ts +34 -0
  61. package/build/types/analysis/index.d.ts +8 -0
  62. package/build/types/api/Api.d.ts +59 -0
  63. package/build/types/api/ApiNodeJS.d.ts +5 -0
  64. package/build/types/api/ApiServices.d.ts +3 -0
  65. package/build/types/common/AccessKind.d.ts +4 -0
  66. package/build/types/common/ArtelFileCheck.d.ts +2 -0
  67. package/build/types/common/Cached.d.ts +6 -0
  68. package/build/types/common/CancellationToken.d.ts +13 -0
  69. package/build/types/common/Constants.d.ts +19 -0
  70. package/build/types/common/Debug.d.ts +10 -0
  71. package/build/types/common/Delayed.d.ts +7 -0
  72. package/build/types/common/ErrorHandlingStrategy.d.ts +3 -0
  73. package/build/types/common/FormatString.d.ts +5 -0
  74. package/build/types/common/HelperPhrases.d.ts +11 -0
  75. package/build/types/common/Interner.d.ts +4 -0
  76. package/build/types/common/L10nConfig.d.ts +1 -0
  77. package/build/types/common/Lazy.d.ts +9 -0
  78. package/build/types/common/LocalizationHelper.d.ts +10 -0
  79. package/build/types/common/Logger.d.ts +10 -0
  80. package/build/types/common/Name.d.ts +83 -0
  81. package/build/types/common/NameFormatConversion.d.ts +12 -0
  82. package/build/types/common/NonEmptyArray.d.ts +8 -0
  83. package/build/types/common/Option.d.ts +28 -0
  84. package/build/types/common/PackageDialect.d.ts +5 -0
  85. package/build/types/common/PackageLocale.d.ts +15 -0
  86. package/build/types/common/PackageLocaleGuard.d.ts +1 -0
  87. package/build/types/common/Path.d.ts +8 -0
  88. package/build/types/common/PerformanceMeasurement.d.ts +20 -0
  89. package/build/types/common/Query.d.ts +39 -0
  90. package/build/types/common/Range.d.ts +10 -0
  91. package/build/types/common/Result.d.ts +13 -0
  92. package/build/types/common/SearchName.d.ts +13 -0
  93. package/build/types/common/ThrottledCancellationToken.d.ts +17 -0
  94. package/build/types/common/TreeQuery.d.ts +53 -0
  95. package/build/types/common/TreeTraversal.d.ts +13 -0
  96. package/build/types/common/Uri.d.ts +28 -0
  97. package/build/types/common/UriTree.d.ts +41 -0
  98. package/build/types/common/UserLocale.d.ts +2 -0
  99. package/build/types/common/WithDiagnostics.d.ts +19 -0
  100. package/build/types/common/YieldExecution.d.ts +1 -0
  101. package/build/types/common/index.d.ts +32 -0
  102. package/build/types/diagnostic/Diagnostic.d.ts +21 -0
  103. package/build/types/diagnostic/DiagnosticCode.d.ts +146 -0
  104. package/build/types/diagnostic/DiagnosticData.d.ts +20 -0
  105. package/build/types/diagnostic/DiagnosticFormatter.d.ts +8 -0
  106. package/build/types/diagnostic/RangeDiagnostic.d.ts +19 -0
  107. package/build/types/emitter/BlockStatementTransformationResult.d.ts +10 -0
  108. package/build/types/emitter/CustomModuleLoader.d.ts +1 -0
  109. package/build/types/emitter/DebugStack.d.ts +10 -0
  110. package/build/types/emitter/Emitter.d.ts +61 -0
  111. package/build/types/emitter/EmitterContext.d.ts +342 -0
  112. package/build/types/emitter/EmitterGeneratedDeclarationKind.d.ts +36 -0
  113. package/build/types/emitter/EmitterPackage.d.ts +60 -0
  114. package/build/types/emitter/EntityNameProviders.d.ts +33 -0
  115. package/build/types/emitter/ExpressionTransformationResult.d.ts +17 -0
  116. package/build/types/emitter/GeneralLowering.d.ts +72 -0
  117. package/build/types/emitter/Internal.d.ts +10 -0
  118. package/build/types/emitter/IntrinsicEntities.d.ts +118 -0
  119. package/build/types/emitter/IrBuilder.d.ts +108 -0
  120. package/build/types/emitter/IrToJs.d.ts +113 -0
  121. package/build/types/emitter/JavaScriptName.d.ts +1 -0
  122. package/build/types/emitter/PackageMemberDeclarationTransformationResult.d.ts +17 -0
  123. package/build/types/emitter/SimpleTransformationResult.d.ts +14 -0
  124. package/build/types/emitter/StatementTransformationResult.d.ts +16 -0
  125. package/build/types/emitter/StructuredTypeMemberDeclarationTransformationResult.d.ts +13 -0
  126. package/build/types/emitter/TransformationContinuationAction.d.ts +4 -0
  127. package/build/types/emitter/Transformer.d.ts +282 -0
  128. package/build/types/emitter/TypeAccessExpressionTransformationResult.d.ts +12 -0
  129. package/build/types/emitter/error-boundary.d.ts +10 -0
  130. package/build/types/emitter/index.d.ts +1 -0
  131. package/build/types/emitter/ir/AccessedEntities.d.ts +19 -0
  132. package/build/types/emitter/ir/LoweringOptions.d.ts +34 -0
  133. package/build/types/emitter/ir/Nodes.d.ts +1585 -0
  134. package/build/types/emitter/ir/SourceLocation.d.ts +10 -0
  135. package/build/types/emitter/ir/index.d.ts +5 -0
  136. package/build/types/emitter/ir/types.d.ts +10 -0
  137. package/build/types/entities/AliasTypeEntity.d.ts +84 -0
  138. package/build/types/entities/BinaryOperatorEntity.d.ts +48 -0
  139. package/build/types/entities/ConstructorEntity.d.ts +99 -0
  140. package/build/types/entities/DereferenceOperatorEntity.d.ts +40 -0
  141. package/build/types/entities/DestructorEntity.d.ts +31 -0
  142. package/build/types/entities/EntityHiding.d.ts +27 -0
  143. package/build/types/entities/EntityNaming.d.ts +12 -0
  144. package/build/types/entities/GetterEntity.d.ts +86 -0
  145. package/build/types/entities/IndexerEntity.d.ts +51 -0
  146. package/build/types/entities/MethodEntity.d.ts +174 -0
  147. package/build/types/entities/MethodTypeEntity.d.ts +98 -0
  148. package/build/types/entities/PackageAliasEntity.d.ts +30 -0
  149. package/build/types/entities/PackageEntity.d.ts +56 -0
  150. package/build/types/entities/PackageMembers.d.ts +98 -0
  151. package/build/types/entities/SetterEntity.d.ts +78 -0
  152. package/build/types/entities/StructuredTypeEntity.d.ts +199 -0
  153. package/build/types/entities/SubstitutionApplicationMode.d.ts +4 -0
  154. package/build/types/entities/TypeEntityMembers.d.ts +36 -0
  155. package/build/types/entities/TypeExtensionEntity.d.ts +33 -0
  156. package/build/types/entities/TypeMemberContainer.d.ts +23 -0
  157. package/build/types/entities/TypeParameterEntity.d.ts +94 -0
  158. package/build/types/entities/UnaryOperatorEntity.d.ts +33 -0
  159. package/build/types/entities/VariableEntity.d.ts +423 -0
  160. package/build/types/entities/VariantEntity.d.ts +31 -0
  161. package/build/types/entities/VariantTypeEntity.d.ts +83 -0
  162. package/build/types/entities/Variants.d.ts +10 -0
  163. package/build/types/entities/index.d.ts +87 -0
  164. package/build/types/executor/CommandLineCompiler.d.ts +8 -0
  165. package/build/types/executor/Compiler.d.ts +15 -0
  166. package/build/types/executor/FileSystemUri.d.ts +5 -0
  167. package/build/types/executor/NodeCompiler.d.ts +39 -0
  168. package/build/types/executor/PhysicalFileSystem.d.ts +12 -0
  169. package/build/types/executor/PhysicalTypeScriptLibrariesProvider.d.ts +12 -0
  170. package/build/types/generated/BuiltInSystemPackages.d.ts +3 -0
  171. package/build/types/old/Executor.d.ts +14 -0
  172. package/build/types/old/JavaScriptEmitter.d.ts +1 -0
  173. package/build/types/old/JavaScriptEmittingVisitor.d.ts +1 -0
  174. package/build/types/old/NzonParser.d.ts +1 -0
  175. package/build/types/old/NzonScanner.d.ts +1 -0
  176. package/build/types/old/NzonSyntax.d.ts +1 -0
  177. package/build/types/old/RemoteWorkspaceFileSystem.d.ts +1 -0
  178. package/build/types/parser/CharacterCodes.d.ts +21 -0
  179. package/build/types/parser/ConvertTokenKind.d.ts +3 -0
  180. package/build/types/parser/KeywordDictionary.d.ts +12 -0
  181. package/build/types/parser/ParseNumber.d.ts +5 -0
  182. package/build/types/parser/Parser.d.ts +7 -0
  183. package/build/types/parser/ParserDiagnostic.d.ts +7 -0
  184. package/build/types/parser/ReservedIdentifierDictionary.d.ts +12 -0
  185. package/build/types/parser/Scanner.d.ts +60 -0
  186. package/build/types/parser/TokenKind.d.ts +73 -0
  187. package/build/types/parser/UnescapeText.d.ts +2 -0
  188. package/build/types/project/Compilation.d.ts +21 -0
  189. package/build/types/project/CompilationLoader.d.ts +104 -0
  190. package/build/types/project/FileSystemTree.d.ts +70 -0
  191. package/build/types/project/PackageConfigurationSerializer.d.ts +1 -0
  192. package/build/types/project/Position.d.ts +5 -0
  193. package/build/types/project/SourceFile.d.ts +21 -0
  194. package/build/types/project/SourcePackage.d.ts +151 -0
  195. package/build/types/project/TextFile.d.ts +11 -0
  196. package/build/types/project/configuration/BuildPackageApi.d.ts +75 -0
  197. package/build/types/project/configuration/ConfigurationConverter.d.ts +25 -0
  198. package/build/types/project/configuration/ConfigurationFileParser.d.ts +26 -0
  199. package/build/types/project/configuration/PackageConfigurationInterpreter.d.ts +27 -0
  200. package/build/types/project/configuration/types/PackageConfigurationEn.d.ts +90 -0
  201. package/build/types/project/configuration/types/PackageConfigurationRu.d.ts +91 -0
  202. package/build/types/project/index.d.ts +12 -0
  203. package/build/types/services/AddPropertyAssignmentService.d.ts +15 -0
  204. package/build/types/services/CompletionService.d.ts +95 -0
  205. package/build/types/services/CustomCommand.d.ts +120 -0
  206. package/build/types/services/DefinitionService.d.ts +19 -0
  207. package/build/types/services/DisplayService.d.ts +830 -0
  208. package/build/types/services/DocumentHighlightsService.d.ts +18 -0
  209. package/build/types/services/EvaluatableExpressionService.d.ts +15 -0
  210. package/build/types/services/FileSystemTreeDisplayService.d.ts +7 -0
  211. package/build/types/services/HoverService.d.ts +17 -0
  212. package/build/types/services/LanguageServer.d.ts +125 -0
  213. package/build/types/services/NodeSemanticInfo.d.ts +132 -0
  214. package/build/types/services/ProjectItemsService.d.ts +6 -0
  215. package/build/types/services/ReferencesService.d.ts +30 -0
  216. package/build/types/services/RenameService.d.ts +16 -0
  217. package/build/types/services/SelectionRangeService.d.ts +12 -0
  218. package/build/types/services/SemanticTokensService.d.ts +40 -0
  219. package/build/types/services/SourceFileItemsService.d.ts +42 -0
  220. package/build/types/services/TranslationService.d.ts +23 -0
  221. package/build/types/services/TreeUtils.d.ts +58 -0
  222. package/build/types/services/TypeDefinitionService.d.ts +9 -0
  223. package/build/types/services/Types.d.ts +22 -0
  224. package/build/types/services/Utils.d.ts +5 -0
  225. package/build/types/services/signature-help/SignatureHelpService.d.ts +17 -0
  226. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +114 -0
  227. package/build/types/services/signature-help/TypeParameterSignatureHelpProvider.d.ts +20 -0
  228. package/build/types/services/signature-help/ValueParametersSignatureHelpProvider.d.ts +15 -0
  229. package/build/types/services/signature-help/utils.d.ts +9 -0
  230. package/build/types/services/source-generation/EntityToSyntax.d.ts +47 -0
  231. package/build/types/services/source-generation/SourceGenerationService.d.ts +22 -0
  232. package/build/types/services/workspace/ClientTrackedSourceFiles.d.ts +41 -0
  233. package/build/types/services/workspace/CompilationController.d.ts +108 -0
  234. package/build/types/services/workspace/FileSystemTreeProviderBasedOnWatchedFileSystem.d.ts +61 -0
  235. package/build/types/services/workspace/ManuallyUpdatedFileSystemTreeProvider.d.ts +21 -0
  236. package/build/types/services/workspace/Workspace.d.ts +59 -0
  237. package/build/types/services/workspace/WorkspaceFileSystem.d.ts +5 -0
  238. package/build/types/services/workspace/WorkspaceFiles.d.ts +35 -0
  239. package/build/types/services/workspace/index.d.ts +7 -0
  240. package/build/types/tree/KeywordKind.d.ts +64 -0
  241. package/build/types/tree/NodeKind.d.ts +163 -0
  242. package/build/types/tree/TokenKind.d.ts +132 -0
  243. package/build/types/tree/TriviaKind.d.ts +7 -0
  244. package/build/types/tree/green/BaseNode.d.ts +12 -0
  245. package/build/types/tree/green/Nodes.d.ts +2235 -0
  246. package/build/types/tree/green/SyntaxFactory.d.ts +67 -0
  247. package/build/types/tree/green/SyntaxToCode.d.ts +116 -0
  248. package/build/types/tree/green/Token.d.ts +37 -0
  249. package/build/types/tree/green/Utils.d.ts +2 -0
  250. package/build/types/tree/green/index.d.ts +7 -0
  251. package/build/types/tree/index.d.ts +4 -0
  252. package/build/types/tree/red/BaseNode.d.ts +15 -0
  253. package/build/types/tree/red/Internal.d.ts +2 -0
  254. package/build/types/tree/red/NodePath.d.ts +10 -0
  255. package/build/types/tree/red/Nodes.d.ts +2237 -0
  256. package/build/types/tree/red/Token.d.ts +29 -0
  257. package/build/types/tree/red/Utils.d.ts +6 -0
  258. package/build/types/tree/red/index.d.ts +6 -0
  259. package/build/types/ts-interop/Entities.d.ts +634 -0
  260. package/build/types/ts-interop/TsInteropContext.d.ts +179 -0
  261. package/build/types/ts-interop/TsLibrariesProvider.d.ts +12 -0
  262. package/build/types/ts-interop/TsPackageContents.d.ts +64 -0
  263. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +69 -0
  264. package/build/types/ts-interop/TsProgramLoader.d.ts +38 -0
  265. package/build/types/ts-interop/TsTypeMembersCreator.d.ts +45 -0
  266. package/build/types/ts-interop/Utils.d.ts +43 -0
  267. package/build/types/types/AliasType.d.ts +20 -0
  268. package/build/types/types/Internal.d.ts +1 -0
  269. package/build/types/types/MethodType.d.ts +23 -0
  270. package/build/types/types/ParameterType.d.ts +19 -0
  271. package/build/types/types/StandardTypes.d.ts +42 -0
  272. package/build/types/types/StructuredType.d.ts +25 -0
  273. package/build/types/types/Substitutions.d.ts +18 -0
  274. package/build/types/types/Type.d.ts +16 -0
  275. package/build/types/types/TypeFactory.d.ts +15 -0
  276. package/build/types/types/TypeMembers.d.ts +134 -0
  277. package/build/types/types/UnionType.d.ts +20 -0
  278. package/build/types/types/UnresolvedType.d.ts +16 -0
  279. package/build/types/types/VariantType.d.ts +19 -0
  280. package/build/types/types/index.d.ts +12 -0
  281. package/package.json +73 -0
@@ -0,0 +1,42 @@
1
+ import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
+ import { NamedTypeEntity, PackageAliasEntity } from '../entities/index.js';
3
+ import { QualifiedName } from '../tree/index.js';
4
+ import { Analyzer } from './Analyzer.js';
5
+ import { FoundNamedDeclaration } from './FoundDeclaration.js';
6
+ import { PackageNameTreeNode } from './ImportedPackageNameTree.js';
7
+ export declare class NamedTypeResolver {
8
+ private readonly _analyzer;
9
+ private readonly _node;
10
+ private readonly _semanticContext;
11
+ private get semanticContext();
12
+ constructor(analyzer: Analyzer, node: QualifiedName);
13
+ resolve(): NamedTypeResolutionResult;
14
+ private lookupTypeOrContainerWithTypes;
15
+ private findTypesOrContainersWithTypesInResolvedQualifier;
16
+ private findTypesOrContainersWithTypesInPackageAccessedViaAlias;
17
+ private findTypesOrContainersWithTypesInPackageNameSegment;
18
+ private convertPackageMember;
19
+ }
20
+ export declare class NamedTypeResolutionResult {
21
+ readonly types: readonly FoundNamedDeclaration<NamedTypeEntity>[];
22
+ readonly resolvedQualifiers: readonly ResolvedQualifier[];
23
+ readonly diagnostics: readonly Diagnostic[];
24
+ constructor(types: readonly FoundNamedDeclaration<NamedTypeEntity>[], resolvedQualifiers: readonly ResolvedQualifier[], diagnostics: readonly Diagnostic[]);
25
+ }
26
+ export type ResolvedQualifier = ResolvedQualifier_packageNameSegment | ResolvedQualifier_packageAlias | ResolvedQualifier_type;
27
+ export declare class ResolvedQualifier_packageNameSegment {
28
+ readonly packageTreeNode: PackageNameTreeNode;
29
+ readonly kind = "package-name-segment";
30
+ constructor(packageTreeNode: PackageNameTreeNode);
31
+ }
32
+ export declare class ResolvedQualifier_packageAlias {
33
+ readonly packageAlias: PackageAliasEntity;
34
+ readonly kind = "package-alias";
35
+ constructor(packageAlias: PackageAliasEntity);
36
+ }
37
+ export declare class ResolvedQualifier_type {
38
+ readonly candidates: readonly FoundNamedDeclaration<NamedTypeEntity>[];
39
+ readonly suitableTypes: readonly FoundNamedDeclaration<NamedTypeEntity>[];
40
+ readonly kind = "type";
41
+ constructor(candidates: readonly FoundNamedDeclaration<NamedTypeEntity>[], suitableTypes: readonly FoundNamedDeclaration<NamedTypeEntity>[]);
42
+ }
@@ -0,0 +1,20 @@
1
+ import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
+ import { NamedTypeSpecifier } from '../tree/index.js';
3
+ import * as types from '../types/index.js';
4
+ import { Analyzer } from './Analyzer.js';
5
+ import { FoundNamedDeclaration } from './FoundDeclaration.js';
6
+ import { ResolvedQualifier } from './NamedTypeResolver.js';
7
+ export declare class NamedTypeSpecifierResolver {
8
+ private readonly _analyzer;
9
+ private readonly _node;
10
+ constructor(_analyzer: Analyzer, _node: NamedTypeSpecifier);
11
+ resolve(): NamedTypeSpecifierResolutionResult;
12
+ private convertNamedTypeToTypeDeclaration;
13
+ private resolveTypeOverload;
14
+ }
15
+ export declare class NamedTypeSpecifierResolutionResult {
16
+ readonly type: FoundNamedDeclaration<types.Type> | undefined;
17
+ readonly resolvedQualifiers: readonly ResolvedQualifier[];
18
+ readonly diagnostics: readonly Diagnostic[];
19
+ constructor(type: FoundNamedDeclaration<types.Type> | undefined, resolvedQualifiers: readonly ResolvedQualifier[], diagnostics: readonly Diagnostic[]);
20
+ }
@@ -0,0 +1,28 @@
1
+ import * as tree from '../tree/index.js';
2
+ export declare class NodeTypeUtils {
3
+ static isTypeDeclaration(node: tree.Node): node is TypeDeclaration;
4
+ static isNamedTypeDeclaration(node: tree.Node): node is NamedTypeDeclaration;
5
+ static isPackageTypeDeclaration(node: tree.Node): node is PackageTypeDeclaration;
6
+ static isStructuredTypeDeclaration(node: tree.Node): node is StructuredTypeDeclaration;
7
+ static isTypeMemberDeclaration(node: tree.Node): node is tree.TypeMemberDeclaration;
8
+ static isPackageMemberDeclaration(node: tree.Node): node is tree.PackageMemberDeclaration;
9
+ static isExpression(node: tree.Node): node is tree.Expression;
10
+ static isStatement(node: tree.Node): node is tree.Statement;
11
+ static isTypeSpecifier(node: tree.Node): node is tree.TypeSpecifier;
12
+ static isMethodDeclaration(node: tree.Node): node is MethodDeclaration;
13
+ static isVariableDeclaration(node: tree.Node): node is VariableDeclaration;
14
+ }
15
+ export type PackageTypeDeclaration = tree.PackageAliasTypeDeclaration | tree.PackageMethodTypeDeclaration | tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration;
16
+ export type StructuredTypeDeclaration = tree.PackageStructuredTypeDeclaration | tree.AnonymousStructuredTypeDeclaration;
17
+ export type VariantTypeDeclaration = tree.PackageVariantTypeDeclaration | tree.AnonymousVariantTypeDeclaration;
18
+ export type MethodTypeDeclaration = tree.PackageMethodTypeDeclaration | tree.AnonymousMethodTypeDeclaration;
19
+ export type MethodDeclaration = tree.PackageMethodDeclaration | tree.NestedMethodDeclaration | tree.TypeMethodDeclaration;
20
+ export type TypeDeclaration = StructuredTypeDeclaration | VariantTypeDeclaration | MethodTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.TypeParameterDeclaration;
21
+ export type NamedTypeDeclaration = tree.PackageStructuredTypeDeclaration | tree.PackageVariantTypeDeclaration | tree.PackageMethodTypeDeclaration | tree.PackageAliasTypeDeclaration | tree.TypeParameterDeclaration;
22
+ export type VariableDeclaration = tree.EnumerationVariableDeclaration | tree.PackageVariableDeclaration | tree.LocalVariableDeclaration | tree.ParameterDeclaration | tree.TypeVariableDeclaration | tree.VariantDeclaration;
23
+ export type GetterDeclaration = tree.PackageVariableGetterDeclaration | tree.TypeVariableGetterDeclaration | tree.TypeIndexedGetterDeclaration | tree.TypeDereferencedVariableGetterDeclaration;
24
+ export type SetterDeclaration = tree.PackageVariableSetterDeclaration | tree.TypeVariableSetterDeclaration | tree.TypeIndexedSetterDeclaration | tree.TypeDereferencedVariableSetterDeclaration;
25
+ export type PackageVariableAccessorDeclaration = tree.PackageVariableGetterDeclaration | tree.PackageVariableSetterDeclaration;
26
+ export type TypeVariableAccessorDeclaration = tree.TypeVariableGetterDeclaration | tree.TypeVariableSetterDeclaration;
27
+ export type TypeIndexedAccessorDeclaration = tree.TypeIndexedGetterDeclaration | tree.TypeIndexedSetterDeclaration;
28
+ export type TypeDereferencedVariableAccessorDeclaration = tree.TypeDereferencedVariableGetterDeclaration | tree.TypeDereferencedVariableSetterDeclaration;
@@ -0,0 +1,38 @@
1
+ import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
+ import * as tree from '../tree/index.js';
3
+ import * as types from '../types/index.js';
4
+ import { Analyzer } from './Analyzer.js';
5
+ import { FoundAnonymousDeclaration } from './FoundDeclaration.js';
6
+ /**
7
+ * "объект" может использоваться только в следующих конструкциях:
8
+ * 1. объект() - в конструкторе для вызова другого собственного конструктора.
9
+ * 2. объект - в любом выражении в контексте типа.
10
+ */
11
+ export declare class Resolver {
12
+ private readonly _analyzer;
13
+ private readonly _node;
14
+ constructor(analyzer: Analyzer, node: tree.ObjectExpression);
15
+ resolve(): Meaning;
16
+ private resolveOwnConstructorAccess;
17
+ private resolveContextAccess;
18
+ private invalidContextMeaning;
19
+ private findContainingConstructor;
20
+ }
21
+ export type Meaning = Meaning_ownConstructorAccess | Meaning_objectAccess | Meaning_unresolved;
22
+ declare class Meaning_ownConstructorAccess {
23
+ readonly candidates: readonly FoundAnonymousDeclaration<types.Constructor>[];
24
+ readonly suitableConstructors: readonly FoundAnonymousDeclaration<types.Constructor>[];
25
+ readonly kind = "own-constructor-access";
26
+ constructor(candidates: readonly FoundAnonymousDeclaration<types.Constructor>[], suitableConstructors: readonly FoundAnonymousDeclaration<types.Constructor>[]);
27
+ }
28
+ declare class Meaning_objectAccess {
29
+ readonly type: types.Type;
30
+ readonly kind = "object-access";
31
+ constructor(type: types.Type);
32
+ }
33
+ declare class Meaning_unresolved {
34
+ readonly diagnostic: Diagnostic;
35
+ readonly kind = "unresolved";
36
+ constructor(diagnostic: Diagnostic);
37
+ }
38
+ export {};
@@ -0,0 +1,19 @@
1
+ import { Name } from '../common/index.js';
2
+ import { CallExpression } from '../tree/index.js';
3
+ import * as types from '../types/index.js';
4
+ import { Analyzer } from './Analyzer.js';
5
+ export declare class Resolver<TCandidate extends ICandidate<TValueParameter>, TValueParameter extends IValueParameter> {
6
+ private readonly _analyzer;
7
+ constructor(_analyzer: Analyzer);
8
+ resolveByCallExpression(candidates: Iterable<TCandidate>, node: CallExpression): Iterable<TCandidate>;
9
+ resolveByTargetType(candidates: Iterable<TCandidate>, targetType: types.MethodType): Iterable<TCandidate>;
10
+ }
11
+ export interface ICandidate<TValueParameter extends IValueParameter> {
12
+ getValueParameters(): readonly TValueParameter[];
13
+ getSignatureType(): types.Type;
14
+ }
15
+ export interface IValueParameter {
16
+ getName(): Name | undefined;
17
+ getType(): types.Type;
18
+ isOptional(): boolean;
19
+ }
@@ -0,0 +1,12 @@
1
+ import { Analyzer } from '../analysis/index.js';
2
+ import * as matcher from './CallArgumentsToParametersMatcher.js';
3
+ export declare class OverloadResolver<TSignature extends matcher.ISignature<TParameter>, TParameter extends matcher.ISignatureParameter, TCallArgument extends matcher.ICallArgument> {
4
+ private readonly _analyzer;
5
+ private readonly _signatures;
6
+ private readonly _callArguments;
7
+ constructor(_analyzer: Analyzer, _signatures: readonly TSignature[], _callArguments: readonly TCallArgument[]);
8
+ resolveOverload(): TSignature[];
9
+ private tryChooseBestSignature;
10
+ private chooseBetterTargetType;
11
+ private getDistanceBetweenTypesInHierarchy;
12
+ }
@@ -0,0 +1,15 @@
1
+ import { Query, SearchName } from '../common/index.js';
2
+ import { NamedMember } from '../entities/PackageMembers.js';
3
+ import { IEntityHidingMatcher, PackageEntity, TypeEntity, TypeExtensionEntity } from '../entities/index.js';
4
+ import { FoundNamedDeclaration } from './FoundDeclaration.js';
5
+ import { LocalizationContext } from './LocalizationContext.js';
6
+ export declare class PackageMemberLookup {
7
+ private readonly _package;
8
+ private readonly _localizationContext;
9
+ private readonly _translatedMembers;
10
+ private get translatedMembers();
11
+ constructor(_package: PackageEntity, _localizationContext: LocalizationContext | undefined);
12
+ getNamedMembers(hidingMatcher?: IEntityHidingMatcher): Query<FoundNamedDeclaration<NamedMember>>;
13
+ getNamedMembersByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): Query<FoundNamedDeclaration<NamedMember>>;
14
+ getTypeExtensions(type: TypeEntity, hidingMatcher?: IEntityHidingMatcher): Query<TypeExtensionEntity>;
15
+ }
@@ -0,0 +1,27 @@
1
+ import { WithDiagnostics } from '../common/index.js';
2
+ import { NotExpression, PrefixUnaryExpression } from '../tree/index.js';
3
+ import * as types from '../types/index.js';
4
+ import { FoundAnonymousDeclaration } from './FoundDeclaration.js';
5
+ import { Analyzer } from './index.js';
6
+ /**
7
+ * Определяет подходящую одноместную операцию, определённую пользователем (+, -, не).
8
+ *
9
+ * Алгоритм:
10
+ *
11
+ * 1. Определить тип операнда.
12
+ * 2. Найти в типе операторы необходимого вида.
13
+ * 3. Если найден один оператор - проверить, совместим ли тип выражения с типом операнда.
14
+ * Если подошло несколько операторов - ошибка неоднозначного доступа.
15
+ * Если не подошёл ни один - алгоритм завершается с соответствующим сообщением об ошибке.
16
+ */
17
+ export declare class PrefixUnaryOperatorResolver {
18
+ private readonly _analyzer;
19
+ private readonly _node;
20
+ private readonly _operandType;
21
+ private get operandType();
22
+ private get operand();
23
+ private get operatorNode();
24
+ private get operatorKind();
25
+ constructor(_analyzer: Analyzer, _node: PrefixUnaryExpression | NotExpression);
26
+ resolve(): WithDiagnostics<FoundAnonymousDeclaration<types.UnaryOperator>>;
27
+ }
@@ -0,0 +1,100 @@
1
+ import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
+ import { PackageTypeEntity, PackageVariableEntity, VariantEntity } from '../entities/index.js';
3
+ import { PropertyAccessExpression } from '../tree/index.js';
4
+ import * as types from '../types/index.js';
5
+ import { AccessedMethod } from './AccessedMethod.js';
6
+ import { FoundNamedDeclaration } from './FoundDeclaration.js';
7
+ import { PackageNameTreeNode } from './ImportedPackageNameTree.js';
8
+ import * as variableAccess from './VariableAccess.js';
9
+ import { Analyzer, TargetTypeHint } from './index.js';
10
+ export declare class Resolver {
11
+ private readonly _propertySearchName;
12
+ private readonly _accessKind;
13
+ private readonly _semanticContext;
14
+ private readonly _analyzer;
15
+ private readonly _node;
16
+ private readonly _targetTypeHint;
17
+ constructor(analyzer: Analyzer, node: PropertyAccessExpression, targetTypeHint: TargetTypeHint | undefined);
18
+ private get propertySearchName();
19
+ private get accessKind();
20
+ private get semanticContext();
21
+ private get receiver();
22
+ resolve(): ResolutionResult;
23
+ private resolvePackageAliasMemberAccessMeaning;
24
+ private resolvePackageMemberAccessMeaning;
25
+ private resolvePackageNameSegmentAccessMeaning;
26
+ private createAccessedMethodFromPackageMember;
27
+ private resolveStaticMemberOrVariantAccessMeaning;
28
+ private createAccessedMethodFromTypeMember;
29
+ private resolveInstanceMemberAccessMeaning;
30
+ private resolveMethodOverload;
31
+ }
32
+ export declare class ResolutionResult {
33
+ readonly meaning: Meaning;
34
+ readonly diagnostic?: Diagnostic | undefined;
35
+ constructor(meaning: Meaning, diagnostic?: Diagnostic | undefined);
36
+ }
37
+ export type Meaning = Meaning_packageVariableAccess | Meaning_packageMethodAccess | Meaning_packageTypeAccess | Meaning_packageNameSegmentAccess | Meaning_variantAccess | Meaning_staticVariableAccess | Meaning_staticMethodAccess | Meaning_instanceVariableAccess | Meaning_instanceMethodAccess | Meaning_unresolved;
38
+ declare class Meaning_packageVariableAccess {
39
+ readonly variable: FoundNamedDeclaration<PackageVariableEntity>;
40
+ readonly access: variableAccess.VariableAccess;
41
+ readonly kind = "package-variable-access";
42
+ constructor(variable: FoundNamedDeclaration<PackageVariableEntity>, access: variableAccess.VariableAccess);
43
+ }
44
+ declare class Meaning_packageMethodAccess {
45
+ readonly candidates: readonly FoundNamedDeclaration<AccessedMethod>[];
46
+ readonly suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[];
47
+ readonly kind = "package-method-access";
48
+ get singleSuitableMethod(): FoundNamedDeclaration<AccessedMethod> | undefined;
49
+ constructor(candidates: readonly FoundNamedDeclaration<AccessedMethod>[], suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[]);
50
+ }
51
+ declare class Meaning_packageTypeAccess {
52
+ readonly candidates: readonly FoundNamedDeclaration<PackageTypeEntity>[];
53
+ readonly suitableTypes: readonly FoundNamedDeclaration<types.Type>[];
54
+ readonly kind = "package-type-access";
55
+ get singleSuitableType(): FoundNamedDeclaration<types.Type> | undefined;
56
+ constructor(candidates: readonly FoundNamedDeclaration<PackageTypeEntity>[], suitableTypes: readonly FoundNamedDeclaration<types.Type>[]);
57
+ }
58
+ declare class Meaning_packageNameSegmentAccess {
59
+ readonly packageTreeNode: PackageNameTreeNode;
60
+ readonly kind = "package-name-segment-access";
61
+ constructor(packageTreeNode: PackageNameTreeNode);
62
+ }
63
+ declare class Meaning_variantAccess {
64
+ readonly type: types.VariantType;
65
+ readonly variant: FoundNamedDeclaration<VariantEntity>;
66
+ readonly kind = "variant-access";
67
+ constructor(type: types.VariantType, variant: FoundNamedDeclaration<VariantEntity>);
68
+ }
69
+ declare class Meaning_staticVariableAccess {
70
+ readonly type: types.Type;
71
+ readonly variable: FoundNamedDeclaration<types.Variable>;
72
+ readonly access: variableAccess.VariableAccess;
73
+ readonly kind = "static-variable-access";
74
+ constructor(type: types.Type, variable: FoundNamedDeclaration<types.Variable>, access: variableAccess.VariableAccess);
75
+ }
76
+ declare class Meaning_staticMethodAccess {
77
+ readonly type: types.Type;
78
+ readonly candidates: readonly FoundNamedDeclaration<AccessedMethod>[];
79
+ readonly suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[];
80
+ readonly kind = "static-method-access";
81
+ get singleSuitableMethod(): FoundNamedDeclaration<AccessedMethod> | undefined;
82
+ constructor(type: types.Type, candidates: readonly FoundNamedDeclaration<AccessedMethod>[], suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[]);
83
+ }
84
+ declare class Meaning_instanceVariableAccess {
85
+ readonly variable: FoundNamedDeclaration<types.Variable>;
86
+ readonly access: variableAccess.VariableAccess;
87
+ readonly kind = "instance-variable-access";
88
+ constructor(variable: FoundNamedDeclaration<types.Variable>, access: variableAccess.VariableAccess);
89
+ }
90
+ declare class Meaning_instanceMethodAccess {
91
+ readonly candidates: readonly FoundNamedDeclaration<AccessedMethod>[];
92
+ readonly suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[];
93
+ readonly kind = "instance-method-access";
94
+ get singleSuitableMethod(): FoundNamedDeclaration<AccessedMethod> | undefined;
95
+ constructor(candidates: readonly FoundNamedDeclaration<AccessedMethod>[], suitableMethods: readonly FoundNamedDeclaration<AccessedMethod>[]);
96
+ }
97
+ declare class Meaning_unresolved {
98
+ readonly kind = "unresolved";
99
+ }
100
+ export {};
@@ -0,0 +1,309 @@
1
+ import { Name, PackageLocale, SearchName } from '../common/index.js';
2
+ import { AliasTypeEntity, EntityHidingLevel, IEntityHidingMatcher, MethodEntity, NamedTypeEntity, PackageAliasEntity, PackageMethodTypeEntity, PackageStructuredTypeEntity, PackageVariantTypeEntity, TypeEntity, TypeExtensionEntity, TypeParameterEntity, VariableEntity, VariantEntity } from '../entities/index.js';
3
+ import * as tree from '../tree/index.js';
4
+ import * as types from '../types/index.js';
5
+ import { Analyzer } from './Analyzer.js';
6
+ import { FoundNamedDeclaration } from './FoundDeclaration.js';
7
+ import { PackageNameTreeNode } from './ImportedPackageNameTree.js';
8
+ import { Lookup } from './Lookup.js';
9
+ import { TypeMemberLookup } from './TypeMemberLookup.js';
10
+ export interface IScope {
11
+ getTypesOrContainersWithTypes(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
12
+ getTypesOrContainersWithTypesByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
13
+ getNamedDeclarations(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
14
+ getNamedDeclarationsByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
15
+ getTypeExtensionsByType(typeEntity: TypeEntity, hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
16
+ }
17
+ export type TypeOrContainerWithTypes = TypeOrContainerWithTypes_type | TypeOrContainerWithTypes_packageAlias | TypeOrContainerWithTypes_packageNameSegment;
18
+ export declare class TypeOrContainerWithTypes_type implements ITypeOrContainerWithTypes {
19
+ readonly value: TypeDeclaration;
20
+ readonly kind = "type";
21
+ constructor(value: TypeDeclaration);
22
+ getName(): Name;
23
+ isHidden(): EntityHidingLevel | undefined;
24
+ }
25
+ export declare class TypeOrContainerWithTypes_packageAlias implements ITypeOrContainerWithTypes {
26
+ readonly value: PackageAliasEntity;
27
+ readonly kind = "package-alias";
28
+ constructor(value: PackageAliasEntity);
29
+ getName(): Name;
30
+ isHidden(): EntityHidingLevel | undefined;
31
+ }
32
+ export declare class TypeOrContainerWithTypes_packageNameSegment implements ITypeOrContainerWithTypes {
33
+ readonly value: PackageNameTreeNode;
34
+ readonly kind = "package-name-segment";
35
+ constructor(value: PackageNameTreeNode);
36
+ getName(): Name;
37
+ isHidden(): EntityHidingLevel | undefined;
38
+ }
39
+ interface ITypeOrContainerWithTypes {
40
+ getName(): Name;
41
+ isHidden(): EntityHidingLevel | undefined;
42
+ }
43
+ export type TypeDeclaration = TypeDeclaration_structured | TypeDeclaration_variant | TypeDeclaration_method | TypeDeclaration_parameter | TypeDeclaration_alias;
44
+ export declare class TypeDeclaration_structured implements ITypeDeclaration {
45
+ readonly value: PackageStructuredTypeEntity;
46
+ readonly kind = "structured";
47
+ constructor(value: PackageStructuredTypeEntity);
48
+ getArity(): number;
49
+ getTypeParameters(): readonly TypeParameterEntity[];
50
+ getName(): Name;
51
+ getEntity(): NamedTypeEntity;
52
+ isHidden(): EntityHidingLevel | undefined;
53
+ instantiate(analyzer: Analyzer, typeArguments: readonly types.Type[]): types.Type;
54
+ }
55
+ export declare class TypeDeclaration_variant implements ITypeDeclaration {
56
+ readonly value: PackageVariantTypeEntity;
57
+ readonly kind = "variant";
58
+ constructor(value: PackageVariantTypeEntity);
59
+ getArity(): number;
60
+ getTypeParameters(): readonly TypeParameterEntity[];
61
+ getName(): Name;
62
+ getEntity(): NamedTypeEntity;
63
+ isHidden(): EntityHidingLevel | undefined;
64
+ instantiate(analyzer: Analyzer, typeArguments: readonly types.Type[]): types.Type;
65
+ }
66
+ export declare class TypeDeclaration_method implements ITypeDeclaration {
67
+ readonly value: PackageMethodTypeEntity;
68
+ readonly kind = "method";
69
+ constructor(value: PackageMethodTypeEntity);
70
+ getArity(): number;
71
+ getTypeParameters(): readonly TypeParameterEntity[];
72
+ getName(): Name;
73
+ getEntity(): NamedTypeEntity;
74
+ isHidden(): EntityHidingLevel | undefined;
75
+ instantiate(analyzer: Analyzer, typeArguments: readonly types.Type[]): types.Type;
76
+ }
77
+ export declare class TypeDeclaration_parameter implements ITypeDeclaration {
78
+ readonly value: TypeParameterEntity;
79
+ readonly kind = "parameter";
80
+ constructor(value: TypeParameterEntity);
81
+ getArity(): number;
82
+ getTypeParameters(): readonly TypeParameterEntity[];
83
+ getName(): Name;
84
+ getEntity(): NamedTypeEntity;
85
+ isHidden(): EntityHidingLevel | undefined;
86
+ instantiate(analyzer: Analyzer, _typeArguments: readonly types.Type[]): types.Type;
87
+ }
88
+ export declare class TypeDeclaration_alias implements ITypeDeclaration {
89
+ readonly value: AliasTypeEntity;
90
+ readonly kind = "alias";
91
+ constructor(value: AliasTypeEntity);
92
+ getArity(): number;
93
+ getTypeParameters(): readonly TypeParameterEntity[];
94
+ getName(): Name;
95
+ getEntity(): NamedTypeEntity;
96
+ isHidden(): EntityHidingLevel | undefined;
97
+ instantiate(analyzer: Analyzer, typeArguments: readonly types.Type[]): types.Type;
98
+ }
99
+ interface ITypeDeclaration {
100
+ getArity(): number;
101
+ getTypeParameters(): readonly TypeParameterEntity[];
102
+ getName(): Name;
103
+ getEntity(): NamedTypeEntity;
104
+ isHidden(): EntityHidingLevel | undefined;
105
+ instantiate(analyzer: Analyzer, typeArguments: readonly types.Type[]): types.Type;
106
+ }
107
+ export type NamedDeclaration = NamedDeclaration_method | NamedDeclaration_variable | NamedDeclaration_type | NamedDeclaration_variant | NamedDeclaration_packageAlias | NamedDeclaration_packageNameSegment;
108
+ export declare class NamedDeclaration_method implements INamedDeclaration {
109
+ readonly value: NamedDeclarationMethod;
110
+ readonly kind = "method";
111
+ constructor(value: NamedDeclarationMethod);
112
+ getName(): Name;
113
+ isHidden(): EntityHidingLevel | undefined;
114
+ }
115
+ export type NamedDeclarationMethod = NamedDeclarationMethod_entity | NamedDeclarationMethod_typeMember;
116
+ export declare class NamedDeclarationMethod_entity implements INamedDeclarationMethod {
117
+ readonly kind = "entity";
118
+ private readonly _valueParameters;
119
+ readonly value: MethodEntity;
120
+ constructor(value: MethodEntity);
121
+ getName(): Name;
122
+ getEntity(): MethodEntity;
123
+ getTypeParameterArity(): number;
124
+ isHidden(): EntityHidingLevel | undefined;
125
+ getValueParameters(): readonly ValueParameter[];
126
+ }
127
+ export declare class NamedDeclarationMethod_typeMember implements INamedDeclarationMethod {
128
+ readonly kind = "type-member";
129
+ private readonly _valueParameters;
130
+ readonly value: types.Method;
131
+ constructor(value: types.Method);
132
+ getName(): Name;
133
+ getEntity(): MethodEntity;
134
+ getTypeParameterArity(): number;
135
+ isHidden(): EntityHidingLevel | undefined;
136
+ getValueParameters(): readonly ValueParameter[];
137
+ }
138
+ interface INamedDeclarationMethod {
139
+ getName(): Name;
140
+ getEntity(): MethodEntity;
141
+ getTypeParameterArity(): number;
142
+ isHidden(): EntityHidingLevel | undefined;
143
+ getValueParameters(): readonly ValueParameter[];
144
+ }
145
+ export type ValueParameter = ValueParameter_entity | ValueParameter_typeMember;
146
+ export declare class ValueParameter_entity implements IValueParameter {
147
+ readonly value: VariableEntity;
148
+ readonly kind = "entity";
149
+ constructor(value: VariableEntity);
150
+ getName(): Name;
151
+ getType(): types.Type;
152
+ }
153
+ export declare class ValueParameter_typeMember implements IValueParameter {
154
+ readonly value: types.ValueParameter;
155
+ readonly kind = "type-member";
156
+ constructor(value: types.ValueParameter);
157
+ getName(): Name;
158
+ getType(): types.Type;
159
+ }
160
+ interface IValueParameter {
161
+ getName(): Name;
162
+ getType(): types.Type;
163
+ }
164
+ export declare class NamedDeclaration_variable implements INamedDeclaration {
165
+ readonly value: NamedDeclarationVariable;
166
+ readonly kind = "variable";
167
+ constructor(value: NamedDeclarationVariable);
168
+ getName(): Name;
169
+ isHidden(): EntityHidingLevel | undefined;
170
+ }
171
+ export type NamedDeclarationVariable = NamedDeclarationVariable_entity | NamedDeclarationVariable_typeMember;
172
+ export declare class NamedDeclarationVariable_entity implements INamedDeclarationVariable {
173
+ readonly value: VariableEntity;
174
+ readonly kind = "entity";
175
+ constructor(value: VariableEntity);
176
+ getName(): Name;
177
+ getEntity(): VariableEntity;
178
+ isHidden(): EntityHidingLevel | undefined;
179
+ }
180
+ export declare class NamedDeclarationVariable_typeMember implements INamedDeclarationVariable {
181
+ readonly value: types.Variable;
182
+ readonly kind = "type-member";
183
+ constructor(value: types.Variable);
184
+ getName(): Name;
185
+ getEntity(): VariableEntity;
186
+ isHidden(): EntityHidingLevel | undefined;
187
+ }
188
+ interface INamedDeclarationVariable {
189
+ getName(): Name;
190
+ getEntity(): VariableEntity;
191
+ isHidden(): EntityHidingLevel | undefined;
192
+ }
193
+ export declare class NamedDeclaration_type implements INamedDeclaration {
194
+ readonly value: TypeDeclaration;
195
+ readonly kind = "type";
196
+ constructor(value: TypeDeclaration);
197
+ getName(): Name;
198
+ isHidden(): EntityHidingLevel | undefined;
199
+ }
200
+ export declare class NamedDeclaration_variant implements INamedDeclaration {
201
+ readonly value: VariantEntity;
202
+ readonly kind = "variant";
203
+ constructor(value: VariantEntity);
204
+ getName(): Name;
205
+ isHidden(): EntityHidingLevel | undefined;
206
+ }
207
+ export declare class NamedDeclaration_packageAlias implements INamedDeclaration {
208
+ readonly value: PackageAliasEntity;
209
+ readonly kind = "package-alias";
210
+ constructor(value: PackageAliasEntity);
211
+ getName(): Name;
212
+ isHidden(): EntityHidingLevel | undefined;
213
+ }
214
+ export declare class NamedDeclaration_packageNameSegment implements INamedDeclaration {
215
+ readonly value: PackageNameTreeNode;
216
+ readonly kind = "package-name-segment";
217
+ constructor(value: PackageNameTreeNode);
218
+ getName(): Name;
219
+ isHidden(): EntityHidingLevel | undefined;
220
+ }
221
+ interface INamedDeclaration {
222
+ getName(): Name;
223
+ isHidden(): EntityHidingLevel | undefined;
224
+ }
225
+ export declare class SourceFileScope implements IScope {
226
+ private readonly _sourceFileMembers;
227
+ private readonly _containingPackageMemberLookup;
228
+ private readonly _importedPackageMemberLookups;
229
+ private readonly _packageNameSegments;
230
+ private readonly _locale;
231
+ constructor(analyzer: Analyzer, node: tree.SourceFile);
232
+ getTypesOrContainersWithTypes(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
233
+ getTypesOrContainersWithTypesByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
234
+ getNamedDeclarations(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
235
+ getNamedDeclarationsByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
236
+ getTypeExtensionsByType(type: TypeEntity, hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
237
+ private convertPackageMembersTypeDeclaration;
238
+ private convertPackageMemberToNamedDeclaration;
239
+ private convertPackageAliasToTypeOrContainerWithTypes;
240
+ private convertPackageMemberToTypeOrContainerWithTypes;
241
+ private convertPackageAliasToNamedDeclaration;
242
+ private checkTypeOrContainerWithTypesShadowing;
243
+ private checkNamedDeclarationShadowing;
244
+ }
245
+ export declare class GenericScope implements IScope {
246
+ private readonly _typeOrContainerWithTypes;
247
+ private readonly _namedDeclarations;
248
+ private readonly _typeExtensionEntities;
249
+ private readonly _locale;
250
+ private readonly _namedDeclarationsByName;
251
+ private readonly _typesOrContainerWithTypesByName;
252
+ private get namedDeclarationsByName();
253
+ private get typesOrContainerWithTypesByName();
254
+ constructor(typeOrContainerWithTypes: readonly TypeOrContainerWithTypes[], namedDeclarations: readonly NamedDeclaration[], typeExtensionEntities: readonly TypeExtensionEntity[], locale: PackageLocale);
255
+ getTypesOrContainersWithTypes(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
256
+ getTypesOrContainersWithTypesByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
257
+ getNamedDeclarations(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
258
+ getNamedDeclarationsByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
259
+ getTypeExtensionsByType(typeEntity: TypeEntity, hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
260
+ private checkHiding;
261
+ }
262
+ export declare class ParameterDeclarationsScope implements IScope {
263
+ private readonly _analyzer;
264
+ private readonly _node;
265
+ private readonly _namedDeclarations;
266
+ private readonly _namedDeclarationsByName;
267
+ private _locale;
268
+ private get namedDeclarations();
269
+ private get namedDeclarationsByName();
270
+ private get locale();
271
+ constructor(analyzer: Analyzer, node: tree.ParameterList);
272
+ getTypesOrContainersWithTypes(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
273
+ getTypesOrContainersWithTypesByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
274
+ getNamedDeclarations(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
275
+ getNamedDeclarationsByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
276
+ getTypeExtensionsByType(typeEntity: TypeEntity, hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
277
+ private checkHiding;
278
+ }
279
+ export declare class StructuredTypeBodyScope implements IScope {
280
+ private readonly _memberLookup;
281
+ private readonly _typeExtensionsLookup;
282
+ constructor(_memberLookup: TypeMemberLookup, _typeExtensionsLookup: Lookup);
283
+ getTypesOrContainersWithTypes(_hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
284
+ getTypesOrContainersWithTypesByName(_name: SearchName, _hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
285
+ getNamedDeclarations(hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
286
+ getNamedDeclarationsByName(name: SearchName, hidingMatcher: IEntityHidingMatcher | undefined): FoundNamedDeclaration<NamedDeclaration>[];
287
+ getTypeExtensionsByType(_typeEntity: TypeEntity, _hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
288
+ private convertNamedMember;
289
+ }
290
+ export declare class TypeExtensionBodyScope implements IScope {
291
+ private readonly _analyzer;
292
+ private readonly _extendedTypeMemberLookup;
293
+ private readonly _extendedType;
294
+ private readonly _typeExtensionEntity;
295
+ private readonly _typeExtensionsLookup;
296
+ private readonly _locale;
297
+ private readonly _substitutions;
298
+ private get substitutions();
299
+ constructor(_analyzer: Analyzer, _extendedTypeMemberLookup: TypeMemberLookup | undefined, _extendedType: NamedTypeEntity | undefined, _typeExtensionEntity: TypeExtensionEntity, _typeExtensionsLookup: Lookup, _locale: PackageLocale);
300
+ getTypesOrContainersWithTypes(_hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
301
+ getTypesOrContainersWithTypesByName(_name: SearchName, _hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<TypeOrContainerWithTypes>[];
302
+ getNamedDeclarations(hidingMatcher: IEntityHidingMatcher | undefined): FoundNamedDeclaration<NamedDeclaration>[];
303
+ getNamedDeclarationsByName(name: SearchName, hidingMatcher?: IEntityHidingMatcher): FoundNamedDeclaration<NamedDeclaration>[];
304
+ getTypeExtensionsByType(_typeEntity: TypeEntity, _hidingMatcher?: IEntityHidingMatcher): TypeExtensionEntity[];
305
+ private convertTypeExtensionMember;
306
+ private convertExtendedTypeMember;
307
+ private checkNamedDeclarationShadowing;
308
+ }
309
+ export {};