@zzzen/pyright-internal 1.2.0-dev.20260621 → 1.2.0-dev.20260705
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.
- package/dist/analyzer/binder.js +51 -5
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.js +12 -2
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +6 -0
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/dataClasses.js +7 -0
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/docStringUtils.d.ts +1 -0
- package/dist/analyzer/docStringUtils.js +78 -0
- package/dist/analyzer/docStringUtils.js.map +1 -1
- package/dist/analyzer/importResolver.js +69 -4
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/importStatementUtils.js +19 -1
- package/dist/analyzer/importStatementUtils.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.js +8 -0
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/patternMatching.js +44 -0
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.js +6 -1
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/pythonPathUtils.js +2 -2
- package/dist/analyzer/pythonPathUtils.js.map +1 -1
- package/dist/analyzer/staticExpressions.js +91 -19
- package/dist/analyzer/staticExpressions.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +53 -61
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +1 -0
- package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
- package/dist/analyzer/typeGuards.js +52 -4
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typeUtils.js +10 -4
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/common/docStringService.d.ts +2 -0
- package/dist/common/docStringService.js +5 -1
- package/dist/common/docStringService.js.map +1 -1
- package/dist/common/fullAccessHost.d.ts +2 -1
- package/dist/common/fullAccessHost.js +43 -9
- package/dist/common/fullAccessHost.js.map +1 -1
- package/dist/common/host.d.ts +2 -2
- package/dist/common/host.js +1 -1
- package/dist/common/host.js.map +1 -1
- package/dist/common/uri/fileUri.d.ts +1 -0
- package/dist/common/uri/fileUri.js +20 -0
- package/dist/common/uri/fileUri.js.map +1 -1
- package/dist/common/uri/memoization.js +5 -1
- package/dist/common/uri/memoization.js.map +1 -1
- package/dist/common/uri/uriUtils.d.ts +2 -0
- package/dist/common/uri/uriUtils.js +22 -0
- package/dist/common/uri/uriUtils.js.map +1 -1
- package/dist/languageServerBase.js +6 -1
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +6 -0
- package/dist/languageService/completionProvider.js +194 -46
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.d.ts +2 -0
- package/dist/languageService/completionProviderUtils.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.d.ts +15 -1
- package/dist/languageService/documentSymbolCollector.js +64 -41
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/hoverProvider.js +22 -0
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/importStatementCandidates.d.ts +16 -0
- package/dist/languageService/importStatementCandidates.js +100 -0
- package/dist/languageService/importStatementCandidates.js.map +1 -0
- package/dist/languageService/referencesProvider.d.ts +16 -9
- package/dist/languageService/referencesProvider.js +188 -32
- package/dist/languageService/referencesProvider.js.map +1 -1
- package/dist/languageService/renameProvider.d.ts +7 -2
- package/dist/languageService/renameProvider.js +45 -17
- package/dist/languageService/renameProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +9 -0
- package/dist/localization/localize.js +5 -0
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +4 -0
- package/dist/parser/parser.js +9 -0
- package/dist/parser/parser.js.map +1 -1
- package/dist/readonlyAugmentedFileSystem.js +13 -6
- package/dist/readonlyAugmentedFileSystem.js.map +1 -1
- package/dist/tests/checker.test.js +4 -0
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/completions.test.js +118 -9
- package/dist/tests/completions.test.js.map +1 -1
- package/dist/tests/docStringReturnExtraction.test.d.ts +1 -0
- package/dist/tests/docStringReturnExtraction.test.js +125 -0
- package/dist/tests/docStringReturnExtraction.test.js.map +1 -0
- package/dist/tests/fourslash/completions.call.unpackedGenericTypedDict.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/completions.call.unpackedGenericTypedDict.fourslash.js +35 -0
- package/dist/tests/fourslash/completions.call.unpackedGenericTypedDict.fourslash.js.map +1 -0
- package/dist/tests/fourslash/completions.keywords.expressionContext.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/completions.keywords.expressionContext.fourslash.js +86 -0
- package/dist/tests/fourslash/completions.keywords.expressionContext.fourslash.js.map +1 -0
- package/dist/tests/fourslash/completions.qualname.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/completions.qualname.fourslash.js +34 -0
- package/dist/tests/fourslash/completions.qualname.fourslash.js.map +1 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.compiledModule.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.compiledModule.fourslash.js +122 -0
- package/dist/tests/fourslash/diagnostics.missingModuleSource.compiledModule.fourslash.js.map +1 -0
- package/dist/tests/fourslash/import.multipartModuleClassShadow.fourslash.d.ts +1 -0
- package/dist/tests/fourslash/import.multipartModuleClassShadow.fourslash.js +39 -0
- package/dist/tests/fourslash/import.multipartModuleClassShadow.fourslash.js.map +1 -0
- package/dist/tests/harness/testAccessHost.d.ts +1 -1
- package/dist/tests/harness/testAccessHost.js +1 -1
- package/dist/tests/harness/testAccessHost.js.map +1 -1
- package/dist/tests/importResolver.test.js +33 -0
- package/dist/tests/importResolver.test.js.map +1 -1
- package/dist/tests/importStatementUtils.test.js +92 -0
- package/dist/tests/importStatementUtils.test.js.map +1 -1
- package/dist/tests/lsp/languageServerTestUtils.d.ts +1 -1
- package/dist/tests/lsp/languageServerTestUtils.js +1 -1
- package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
- package/dist/tests/parser.test.js +18 -0
- package/dist/tests/parser.test.js.map +1 -1
- package/dist/tests/pyrightFileSystem.test.js +25 -0
- package/dist/tests/pyrightFileSystem.test.js.map +1 -1
- package/dist/tests/signatureHelp.test.js +73 -0
- package/dist/tests/signatureHelp.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +4 -0
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +6 -0
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +1 -1
- package/dist/tests/typeEvaluator4.test.js +23 -1
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/tests/typeEvaluator6.test.js +20 -0
- package/dist/tests/typeEvaluator6.test.js.map +1 -1
- package/dist/tests/typeEvaluator8.test.js +23 -21
- package/dist/tests/typeEvaluator8.test.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/package.json +4 -4
|
@@ -42,7 +42,8 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
42
42
|
};
|
|
43
43
|
})();
|
|
44
44
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
-
exports.DocumentSymbolCollector = exports.AliasResolver =
|
|
45
|
+
exports.DocumentSymbolCollector = exports.AliasResolver = void 0;
|
|
46
|
+
exports.getResultRangeKey = getResultRangeKey;
|
|
46
47
|
exports.getDeclarationsForNameNode = getDeclarationsForNameNode;
|
|
47
48
|
exports.addDeclarationIfUnique = addDeclarationIfUnique;
|
|
48
49
|
const AnalyzerNodeInfo = __importStar(require("../analyzer/analyzerNodeInfo"));
|
|
@@ -60,11 +61,6 @@ const core_1 = require("../common/core");
|
|
|
60
61
|
const debug_1 = require("../common/debug");
|
|
61
62
|
const extensibility_1 = require("../common/extensibility");
|
|
62
63
|
const serviceKeys_1 = require("../common/serviceKeys");
|
|
63
|
-
// Upper bound on transitive seed-discovery passes (see `DocumentSymbolCollector.collect` and
|
|
64
|
-
// `AsyncDocumentSymbolCollector.collectAsync`). This is a safety net against pathological inputs;
|
|
65
|
-
// realistic protocol/inheritance bridging converges in one or two passes. Shared by both the sync
|
|
66
|
-
// and async collectors so the bound stays in lockstep.
|
|
67
|
-
exports.maxSeedDiscoveryPasses = 16;
|
|
68
64
|
// 99% of time, `find all references` is looking for a symbol imported from the other file to this file.
|
|
69
65
|
// By caching the result of `resolveAlias` we only need to resolve it once per a file.
|
|
70
66
|
const withLocalNamesCacheIndex = 0;
|
|
@@ -89,6 +85,13 @@ class AliasResolver {
|
|
|
89
85
|
}
|
|
90
86
|
}
|
|
91
87
|
exports.AliasResolver = AliasResolver;
|
|
88
|
+
// Stable per-file identity for a result range, shared between the collector and the references provider
|
|
89
|
+
// so the provider's delta-merge keys exactly match the collector's skip checks. Offsets are deterministic
|
|
90
|
+
// for a given source, so this keys the previous-result set even if the parse tree is dropped and
|
|
91
|
+
// re-parsed between passes.
|
|
92
|
+
function getResultRangeKey(range) {
|
|
93
|
+
return `${range.start}:${range.length}`;
|
|
94
|
+
}
|
|
92
95
|
// This walker looks for symbols that are semantically equivalent
|
|
93
96
|
// to the requested symbol.
|
|
94
97
|
class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
|
|
@@ -109,6 +112,7 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
|
|
|
109
112
|
this._treatModuleInImportAndFromImportSame = options?.treatModuleInImportAndFromImportSame ?? false;
|
|
110
113
|
this._skipUnreachableCode = options?.skipUnreachableCode ?? true;
|
|
111
114
|
this._useCase = options?.useCase ?? extensibility_1.ReferenceUseCase.References;
|
|
115
|
+
this._previousResultRanges = options?.previousResultRanges;
|
|
112
116
|
this._usageProviders =
|
|
113
117
|
options?.providers ??
|
|
114
118
|
(this._program.serviceProvider.tryGet(serviceKeys_1.ServiceKeys.symbolUsageProviderFactory) ?? [])
|
|
@@ -213,36 +217,24 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
|
|
|
213
217
|
return (0, parseTreeUtils_1.getEvaluationScopeNode)(decl.node).node.nodeType === 36 /* ParseNodeType.Module */;
|
|
214
218
|
}
|
|
215
219
|
}
|
|
220
|
+
// Returns the seed declarations after collection (the original seed plus any declarations this
|
|
221
|
+
// single walk discovered through seed-usage providers). The workspace-wide closure loop in
|
|
222
|
+
// ReferencesProvider harvests these and re-walks files to propagate discoveries to a fixpoint.
|
|
223
|
+
getSeedDeclarations() {
|
|
224
|
+
return this._declarations;
|
|
225
|
+
}
|
|
216
226
|
collect() {
|
|
217
|
-
// Fast path: no provider needs transitive discovery, so a single pass is exact.
|
|
218
|
-
if (!this._hasSeedProviders) {
|
|
219
|
-
this.walk(this._startingNode);
|
|
220
|
-
return this._results;
|
|
221
|
-
}
|
|
222
|
-
// Fixpoint: a matched usage can reveal additional seed declarations (e.g. a class that
|
|
223
|
-
// bridges two disjoint protocol co-bases). Re-walk with the grown seed until no new
|
|
224
|
-
// declarations are discovered. Clearing results each pass keeps the final pass complete
|
|
225
|
-
// and duplicate-free. Passes are bounded as a safety net against pathological inputs.
|
|
226
|
-
//
|
|
227
|
-
// NOTE: keep this loop's observable behavior in lockstep with
|
|
228
|
-
// AsyncDocumentSymbolCollector.collectAsync. The two paths are intentionally structured
|
|
229
|
-
// differently (sync clears `_results` and re-walks the whole tree each pass; async keeps
|
|
230
|
-
// `_results` and re-runs only the monotonic match phase), but must converge on the same set.
|
|
231
|
-
for (let pass = 0; pass < exports.maxSeedDiscoveryPasses; pass++) {
|
|
232
|
-
(0, cancellationUtils_1.throwIfCancellationRequested)(this._cancellationToken);
|
|
233
|
-
this._results.length = 0;
|
|
234
|
-
this._pendingSeedDeclarations.length = 0;
|
|
235
|
-
this.walk(this._startingNode);
|
|
236
|
-
if (!this._mergePendingSeedDeclarations()) {
|
|
237
|
-
// Converged: no new seed declarations, so `_results` reflects the final seed.
|
|
238
|
-
return this._results;
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
// Pass budget exhausted while the seed was still growing. The last merge added declarations
|
|
242
|
-
// after the final walk, so `_results` may lag the seed. Re-walk once more so results match
|
|
243
|
-
// the final seed set; this keeps rename edit sets complete even for pathological inputs.
|
|
244
|
-
this._results.length = 0;
|
|
245
227
|
this.walk(this._startingNode);
|
|
228
|
+
// When seed-usage providers are active (rename only), a matched usage can reveal additional
|
|
229
|
+
// seed declarations (e.g. a class that bridges two disjoint protocol co-bases, or a union
|
|
230
|
+
// sibling key). We deliberately do NOT close that transitively inside this single file: the
|
|
231
|
+
// workspace-wide loop in `ReferencesProvider.collectWorkspaceReferences` re-walks every file
|
|
232
|
+
// as the seed grows, so exposing the freshly discovered declarations through
|
|
233
|
+
// `getSeedDeclarations` is enough for the next workspace pass to pick up their usages.
|
|
234
|
+
// Keeping the per-file collector single-pass avoids redundant re-walks here.
|
|
235
|
+
if (this._hasSeedProviders) {
|
|
236
|
+
this._mergePendingSeedDeclarations();
|
|
237
|
+
}
|
|
246
238
|
return this._results;
|
|
247
239
|
}
|
|
248
240
|
walk(node) {
|
|
@@ -256,18 +248,27 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
|
|
|
256
248
|
if (!this._symbolNames.has(node.d.value)) {
|
|
257
249
|
return false;
|
|
258
250
|
}
|
|
251
|
+
// Delta collection: a range already in the caller's previous result matched on an earlier walk
|
|
252
|
+
// (seed growth is monotonic) and is therefore not part of this file's delta. The previous result is
|
|
253
|
+
// READ-ONLY here -- the references provider owns merging the returned delta back in for the next
|
|
254
|
+
// pass. Gating here both skips the expensive declaration resolution and excludes the duplicate
|
|
255
|
+
// result, so `_addResult` can stay a pure push.
|
|
256
|
+
const range = this._resultRange(node);
|
|
257
|
+
if (this._isAlreadyCollected(range)) {
|
|
258
|
+
return false;
|
|
259
|
+
}
|
|
259
260
|
if (this._declarations.length > 0) {
|
|
260
261
|
const declarations = getDeclarationsForNameNode(this._evaluator, node, this._skipUnreachableCode);
|
|
261
262
|
if (declarations && declarations.length > 0) {
|
|
262
263
|
// Does this name share a declaration with the symbol of interest?
|
|
263
264
|
if (this._resultsContainsDeclaration(node, declarations)) {
|
|
264
|
-
this._addResult(node);
|
|
265
|
+
this._addResult(node, range);
|
|
265
266
|
}
|
|
266
267
|
}
|
|
267
268
|
}
|
|
268
269
|
else {
|
|
269
270
|
// There were no declarations
|
|
270
|
-
this._addResult(node);
|
|
271
|
+
this._addResult(node, range);
|
|
271
272
|
}
|
|
272
273
|
return false;
|
|
273
274
|
}
|
|
@@ -277,7 +278,11 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
|
|
|
277
278
|
// Then the matching string should be included
|
|
278
279
|
const matching = node.d.strings.find((s) => this._symbolNames.has(s.d.value));
|
|
279
280
|
if (matching && matching.nodeType === 49 /* ParseNodeType.String */) {
|
|
280
|
-
|
|
281
|
+
// Delta collection: skip already-collected ranges (see visitName).
|
|
282
|
+
const range = this._resultRange(matching);
|
|
283
|
+
if (!this._isAlreadyCollected(range)) {
|
|
284
|
+
this._addResult(matching, range);
|
|
285
|
+
}
|
|
281
286
|
}
|
|
282
287
|
}
|
|
283
288
|
return super.visitStringList(node);
|
|
@@ -285,15 +290,24 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
|
|
|
285
290
|
visitString(node) {
|
|
286
291
|
(0, cancellationUtils_1.throwIfCancellationRequested)(this._cancellationToken);
|
|
287
292
|
if (this._dunderAllNameNodes.has(node)) {
|
|
288
|
-
|
|
293
|
+
// Delta collection: skip already-collected ranges (see visitName).
|
|
294
|
+
const range = this._resultRange(node);
|
|
295
|
+
if (!this._isAlreadyCollected(range)) {
|
|
296
|
+
this._addResult(node, range);
|
|
297
|
+
}
|
|
289
298
|
return false;
|
|
290
299
|
}
|
|
291
300
|
// Allow symbol usage providers to contribute declarations for string literals that
|
|
292
301
|
// encode type names (e.g. Annotated["T", ...]) without special-casing StringList
|
|
293
302
|
// traversal logic.
|
|
294
303
|
if (this._symbolNames.has(node.d.value) && this._declarations.length > 0) {
|
|
304
|
+
// Delta collection: skip already-collected ranges (see visitName).
|
|
305
|
+
const range = this._resultRange(node);
|
|
306
|
+
if (this._isAlreadyCollected(range)) {
|
|
307
|
+
return false;
|
|
308
|
+
}
|
|
295
309
|
if (!this._results.some((r) => r.node === node) && this._resultsContainsDeclaration(node, [])) {
|
|
296
|
-
this._addResult(node);
|
|
310
|
+
this._addResult(node, range);
|
|
297
311
|
}
|
|
298
312
|
}
|
|
299
313
|
return false;
|
|
@@ -301,8 +315,17 @@ class DocumentSymbolCollector extends parseTreeWalker_1.ParseTreeWalker {
|
|
|
301
315
|
get _evaluator() {
|
|
302
316
|
return this._program.evaluator;
|
|
303
317
|
}
|
|
304
|
-
|
|
305
|
-
|
|
318
|
+
_resultRange(node) {
|
|
319
|
+
return node.nodeType === 38 /* ParseNodeType.Name */ ? node.d.token : (0, parseTreeUtils_1.getStringNodeValueRange)(node);
|
|
320
|
+
}
|
|
321
|
+
// Delta collection: true when `range` is in the caller's read-only previous result, i.e. it was reported
|
|
322
|
+
// on an earlier walk and is not part of this file's delta. `_previousResultRanges` never changes during a
|
|
323
|
+
// walk, so a single check per candidate is enough -- callers gate before doing expensive work and pass
|
|
324
|
+
// the range to `_addResult`, which then stays a pure push.
|
|
325
|
+
_isAlreadyCollected(range) {
|
|
326
|
+
return this._previousResultRanges?.has(getResultRangeKey(range)) ?? false;
|
|
327
|
+
}
|
|
328
|
+
_addResult(node, range) {
|
|
306
329
|
this._results.push({ node, range });
|
|
307
330
|
}
|
|
308
331
|
_isDeclarationAllowed(resolvedDecl) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documentSymbolCollector.js","sourceRoot":"","sources":["../../../../../src/languageService/documentSymbolCollector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"documentSymbolCollector.js","sourceRoot":"","sources":["../../../../../src/languageService/documentSymbolCollector.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkGH,8CAEC;AAocD,gEAQC;AAED,wDAeC;AA7jBD,+EAAiE;AACjE,yDAA6G;AAC7G,mEAIsC;AACtC,+DAA4G;AAC5G,iEAA8D;AAE9D,mEAAqD;AACrD,uDAAqD;AACrD,yEAAyE;AACzE,2DAAsD;AAItD,mEAA2E;AAC3E,+DAAwD;AACxD,yCAA2C;AAC3C,2CAAyC;AACzC,2DAA6F;AAC7F,uDAAoD;AAqCpD,wGAAwG;AACxG,sFAAsF;AACtF,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACnC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAItC,MAAa,aAAa;IAGtB,YAA6B,UAAyB;QAAzB,eAAU,GAAV,UAAU,CAAe;QAFrC,YAAO,GAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAG5D,QAAQ;IACZ,CAAC;IAED,OAAO,CAAC,WAAwB,EAAE,iBAA0B;QACxD,MAAM,KAAK,GAAG,iBAAiB,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,2BAA2B,CAAC;QAEzF,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAE,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YACvE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAE,CAAC,QAAQ,CAAC;QACzC,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,WAAW,EAAE,iBAAiB,EAAE;YACrF,2BAA2B,EAAE,IAAI;YACjC,mBAAmB,EAAE,IAAI;SAC5B,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QAC1D,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ;AAtBD,sCAsBC;AAED,wGAAwG;AACxG,0GAA0G;AAC1G,iGAAiG;AACjG,4BAA4B;AAC5B,SAAgB,iBAAiB,CAAC,KAAgB;IAC9C,OAAO,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;AAC5C,CAAC;AAED,iEAAiE;AACjE,2BAA2B;AAC3B,MAAa,uBAAwB,SAAQ,iCAAe;IA6BxD,YACqB,QAAqB,EACtC,WAAqB,EACrB,YAA2B,EACV,aAAwB,EACxB,kBAAqC,EACtD,OAAwC;QAExC,KAAK,EAAE,CAAC;QAPS,aAAQ,GAAR,QAAQ,CAAa;QAGrB,kBAAa,GAAb,aAAa,CAAW;QACxB,uBAAkB,GAAlB,kBAAkB,CAAmB;QAjCzC,aAAQ,GAAuB,EAAE,CAAC;QAClC,wBAAmB,GAAG,IAAI,GAAG,EAAc,CAAC;QAC5C,iBAAY,GAAgB,IAAI,GAAG,EAAU,CAAC;QAC9C,kBAAa,GAAkB,EAAE,CAAC;QAiBlC,6BAAwB,GAAkB,EAAE,CAAC;QAkB1D,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAU,CAAC,CAAC;QAElE,mCAAmC;QACnC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QAEzC,IAAI,CAAC,qCAAqC,GAAG,OAAO,EAAE,oCAAoC,IAAI,KAAK,CAAC;QACpG,IAAI,CAAC,oBAAoB,GAAG,OAAO,EAAE,mBAAmB,IAAI,IAAI,CAAC;QACjE,IAAI,CAAC,QAAQ,GAAG,OAAO,EAAE,OAAO,IAAI,gCAAgB,CAAC,UAAU,CAAC;QAChE,IAAI,CAAC,qBAAqB,GAAG,OAAO,EAAE,oBAAoB,CAAC;QAE3D,IAAI,CAAC,eAAe;YAChB,OAAO,EAAE,SAAS;gBAClB,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,yBAAW,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC;qBAC/E,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;qBACrF,MAAM,CAAC,gBAAS,CAAC,CAAC;QAE3B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,wBAAwB,KAAK,SAAS,CAAC,CAAC;QAEpG,IAAI,OAAO,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;YACnC,kEAAkE;YAClE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC/B,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACzC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;QACP,CAAC;QAED,wDAAwD;QACxD,+CAA+C;QAC/C,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,eAAe,CAClB,OAAoB,EACpB,IAAc,EACd,iBAAoC,EACpC,YAAwB,EACxB,OAAwC;QAExC,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhH,YAAY,GAAG,YAAY,IAAI,IAAA,8BAAa,EAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,uBAAuB,CACzC,OAAO,EACP,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EACd,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,OAAO,CACV,CAAC;QAEF,OAAO,SAAS,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,sBAAsB,CACzB,OAAoB,EACpB,IAAc,EACd,KAAwB,EACxB,OAGC;QAED,IAAA,gDAA4B,EAAC,KAAK,CAAC,CAAC;QAEpC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAG,0BAA0B,CAAC,SAAS,EAAE,IAAI,EAAE,yBAAyB,CAAC,KAAK,CAAC,CAAC;QAClG,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QAEjC,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,IAAI,IAAI,CAAC;QAC7D,MAAM,mBAAmB,GAAG,OAAO,EAAE,mBAAmB,IAAI,IAAI,CAAC;QAEjE,MAAM,oBAAoB,GAAkB,EAAE,CAAC;QAC/C,MAAM,YAAY,GAAG,mBAAmB,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/F,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1B,MAAM,YAAY,GAAG,SAAS,CAAC,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;YAChF,IAAI,YAAY,EAAE,CAAC;gBACf,sBAAsB,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;gBAC3D,IAAI,YAAY,IAAI,IAAA,yBAAU,EAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/C,MAAM,SAAS,GAAG,YAAY,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBAC9D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;wBAC/B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;4BACtC,sBAAsB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;wBAC3D,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC1D,6EAA6E;QAC7E,8EAA8E;QAC9E,2EAA2E;QAC3E,mCAAmC;QACnC,IACI,cAAc;YACd,cAAc,CAAC,WAAW,KAAK,wBAAW,CAAC,QAAQ;YACnD,gCAAgC,CAAC,oBAAoB,CAAC,EACxD,CAAC;YACC,6CAA6C;YAC7C,IAAI,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;YAC3C,OAAO,aAAa,IAAI,aAAa,CAAC,IAAI,6BAAqB,EAAE,CAAC;gBAC9D,MAAM,MAAM,GAAG,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACzD,wBAAwB,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;gBACvD,aAAa,GAAG,aAAa,EAAE,MAAM,CAAC;YAC1C,CAAC;YAED,sEAAsE;YACtE,MAAM,oBAAoB,GAAG,IAAA,4CAAsB,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAC7E,oBAAoB,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;gBAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,SAAS,CAAC;gBACtF,IAAI,SAAS,EAAE,CAAC;oBACZ,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACnD,MAAM,MAAM,GAAG,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACjD,wBAAwB,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;gBAC3D,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,oBAAoB,CAAC;QAE5B,SAAS,wBAAwB,CAAC,MAA0B,EAAE,YAA2B;YACrF,MAAM;gBACF,EAAE,eAAe,EAAE;iBAClB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,gCAAkB,EAAC,CAAC,CAAC,CAAC;iBACrC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACd,MAAM,YAAY,GAAG,SAAU,CAAC,uBAAuB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;gBACjF,IAAI,YAAY,EAAE,CAAC;oBACf,sBAAsB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;gBACvD,CAAC;YACL,CAAC,CAAC,CAAC;QACX,CAAC;QAED,SAAS,gCAAgC,CAAC,YAAoC;YAC1E,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/E,CAAC;QAED,SAAS,gCAAgC,CAAC,IAAiB;YACvD,0EAA0E;YAC1E,oEAAoE;YACpE,8DAA8D;YAC9D,IAAI,IAAI,CAAC,IAAI,kCAA0B,IAAI,IAAI,CAAC,IAAI,sCAA8B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC/F,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,OAAO,IAAA,uCAAsB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,kCAAyB,CAAC;QACpF,CAAC;IACL,CAAC;IAED,+FAA+F;IAC/F,2FAA2F;IAC3F,+FAA+F;IAC/F,mBAAmB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,OAAO;QACH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAE9B,4FAA4F;QAC5F,0FAA0F;QAC1F,4FAA4F;QAC5F,6FAA6F;QAC7F,6EAA6E;QAC7E,uFAAuF;QACvF,6EAA6E;QAC7E,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACzC,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAEQ,IAAI,CAAC,IAAe;QACzB,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACL,CAAC;IAEQ,SAAS,CAAC,IAAc;QAC7B,IAAA,gDAA4B,EAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEtD,gEAAgE;QAChE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,+FAA+F;QAC/F,oGAAoG;QACpG,iGAAiG;QACjG,+FAA+F;QAC/F,gDAAgD;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,YAAY,GAAG,0BAA0B,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAClG,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,kEAAkE;gBAClE,IAAI,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC;oBACvD,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACjC,CAAC;YACL,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,6BAA6B;YAC7B,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAEQ,eAAe,CAAC,IAAoB;QACzC,mDAAmD;QACnD,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACzD,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9E,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,kCAAyB,EAAE,CAAC;gBACzD,mEAAmE;gBACnE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC1C,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACnC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACrC,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAEQ,WAAW,CAAC,IAAgB;QACjC,IAAA,gDAA4B,EAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,mEAAmE;YACnE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,mFAAmF;QACnF,iFAAiF;QACjF,mBAAmB;QACnB,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvE,mEAAmE;YACnE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClC,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,2BAA2B,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;gBAC5F,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAY,UAAU;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAU,CAAC;IACpC,CAAC;IAEO,YAAY,CAAC,IAA2B;QAC5C,OAAO,IAAI,CAAC,QAAQ,gCAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,wCAAuB,EAAC,IAAI,CAAC,CAAC;IAC/F,CAAC;IAED,yGAAyG;IACzG,0GAA0G;IAC1G,uGAAuG;IACvG,2DAA2D;IACnD,mBAAmB,CAAC,KAAgB;QACxC,OAAO,IAAI,CAAC,qBAAqB,EAAE,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC;IAC9E,CAAC;IAEO,UAAU,CAAC,IAA2B,EAAE,KAAgB;QAC5D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACxC,CAAC;IAEO,qBAAqB,CAAC,YAAyB;QACnD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACpC,IAAA,sCAAmB,EACf,IAAI,EACJ,YAAY,EACZ,IAAI,CAAC,qCAAqC;QAC1C,yBAAyB,CAAC,IAAI,CACjC,CACJ,CAAC;IACN,CAAC;IAEO,6BAA6B;QACjC,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC/C,qFAAqF;YACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;YACrG,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;YACzC,sBAAsB,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;YACrD,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvC,KAAK,GAAG,IAAI,CAAC;YACjB,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAEO,2BAA2B,CAAC,KAAgB,EAAE,YAAoC;QACtF,MAAM,OAAO,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;YACzC,2BAA2B;YAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAC7F,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,uEAAuE;YACvE,gDAAgD;YAChD,IAAI,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC3C,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,4EAA4E;YAC5E,yCAAyC;YACzC,MAAM,oBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAAC,YAAY,CAAC,CAAC;YAC5E,IAAI,CAAC,oBAAoB,IAAI,oBAAoB,KAAK,YAAY,EAAE,CAAC;gBACjE,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,OAAO,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,qFAAqF;QACrF,gFAAgF;QAChF,IAAI,OAAO,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACpC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/B,CAAC,CAAC,wBAAwB,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,CAAC,wBAAwB,CAAC,CACnF,CAAC;QACN,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,2BAA2B,CAAC,WAAwB;QACxD,8FAA8F;QAC9F,6EAA6E;QAC7E,oDAAoD;QACpD,IAAI,gCAAgC,CAAC,WAAW,CAAC,EAAE,CAAC;YAChD,OAAO,IAAA,0DAAuC,EAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC5F,OAAO,gCAAgC,CAAC,YAAY,CAAC;YACjD,CAAC,CAAC,IAAA,0DAAuC,EAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,CAAC,CAAC,YAAY,CAAC;QAEnB,SAAS,gCAAgC,CAAC,IAAkB;YACxD,OAAO,CACH,CAAC,CAAC,IAAI;gBACN,IAAI,CAAC,IAAI,kCAA0B;gBACnC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,aAAa;gBAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,oCAA2B,CAChD,CAAC;QACN,CAAC;IACL,CAAC;IAEO,kBAAkB,CAAC,IAAe;QACtC,IAAI,IAAI,CAAC,QAAQ,kCAAyB,EAAE,CAAC;YACzC,OAAO;QACX,CAAC;QAED,MAAM,aAAa,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,OAAO;QACX,CAAC;QAED,MAAM,WAAW,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO;QACX,CAAC;QAED,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YAC7C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7C,OAAO;YACX,CAAC;YAED,MAAM,aAAa,GAAG,WAAW,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjB,OAAO;YACX,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC;gBACxF,OAAO;YACX,CAAC;YAED,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AA9bD,0DA8bC;AAED,SAAgB,0BAA0B,CAAC,SAAwB,EAAE,IAAc,EAAE,mBAAmB,GAAG,IAAI;IAC3G,kHAAkH;IAClH,0GAA0G;IAC1G,IAAI,IAAI,CAAC,MAAM,EAAE,QAAQ,sCAA6B,EAAE,CAAC;QACrD,OAAO,oCAAoC,CAAC,SAAS,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACtF,CAAC;IAED,OAAO,iCAAiC,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED,SAAgB,sBAAsB,CAAC,YAA2B,EAAE,SAAsB;IACtF,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC7B,IACI,IAAA,sCAAmB,EACf,GAAG,EACH,SAAS;QACT,0CAA0C,CAAC,KAAK;QAChD,yBAAyB,CAAC,IAAI,CACjC,EACH,CAAC;YACC,OAAO;QACX,CAAC;IACL,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,oCAAoC,CACzC,SAAwB,EACxB,IAAc,EACd,mBAAmB,GAAG,IAAI;IAE1B,IAAA,cAAM,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,sCAA6B,CAAC,CAAC;IAE3D,IAAI,KAAK,GAAG,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,mBAAmB,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IACrF,IAAI,IAAI,CAAC,MAAM,EAAE,QAAQ,wCAA+B,EAAE,CAAC;QACvD,sEAAsE;QACtE,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,mEAAmE;IACnE,2FAA2F;IAC3F,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,IAAI,EAAE,QAAQ,gCAAwB,EAAE,CAAC;YACzC,kCAAkC;YAClC,OAAO,CAAC,IAAA,6CAA0B,EAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;IAED,iFAAiF;IACjF,wFAAwF;IACxF,yDAAyD;IACzD,sFAAsF;IACtF,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gCAAkB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC3F,MAAM,UAAU,GAAI,SAA8B,CAAC,IAAI,CAAC;QACxD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,SAAS;QACb,CAAC;QAED,IAAI,UAAU,CAAC,QAAQ,wCAA+B,EAAE,CAAC;YACrD,uEAAuE;YACvE,SAAS;QACb,CAAC;QAED,IAAA,6BAAW,EACP,KAAK,EACL,SAAS,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,EAAE,KAAK,IAAI,EAAE,CACzG,CAAC;IACN,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,iCAAiC,CAAC,SAAwB,EAAE,IAAc;IAC/E,IAAA,cAAM,EAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,sCAA6B,CAAC,CAAC;IAE3D,8EAA8E;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,oBAAoB;IACpB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;IAC/B,IACI,UAAU,CAAC,MAAM,EAAE,QAAQ,oCAA2B;QACtD,UAAU,CAAC,MAAM,EAAE,QAAQ,sCAA6B,EAC1D,CAAC;QACC,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAElE,wCAAwC;QACxC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YACd,mCAAmC;YACnC,MAAM,KAAK,GAAkB,EAAE,CAAC;YAEhC,kFAAkF;YAClF,uDAAuD;YACvD,IAAA,6BAAW,EACP,KAAK,EACL,SAAS;iBACJ,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAClD,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gCAAkB,EAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAC1D,CAAC;YAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,QAAQ,oCAA2B,EAAE,CAAC;gBAC9E,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,yEAAyE;YACzE,uFAAuF;YACvF,uBAAuB;YACvB,oBAAoB;YACpB,MAAM,mBAAmB,GACrB,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;gBACnC,UAAU,CAAC,MAAM,CAAC,QAAQ,oCAA2B;gBACrD,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;YAEhC,sEAAsE;YACtE,MAAM,UAAU,GAAG,mBAAmB;gBAClC,CAAC,CAAE,UAAU,CAAC,MAAuB,CAAC,CAAC,CAAC,KAAM,CAAC,CAAC,CAAC,KAAK;gBACtD,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAExC,8DAA8D;YAC9D,+EAA+E;YAC/E,2DAA2D;YAC3D,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAC5F,IAAI,eAAe,IAAI,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzD,IAAI,eAAe,GAAkB,EAAE,CAAC;gBAExC,IAAA,6BAAW,EACP,eAAe,EACf,eAAe,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,gCAAkB,EAAC,CAAC,CAAC,CAAC,CAChF,CAAC;gBAEF,8EAA8E;gBAC9E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;wBAC3C,CAAC,GAAG,CAAqB,CAAC;wBAE1B,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;4BAChC,wEAAwE;4BACxE,oEAAoE;4BACpE,6EAA6E;4BAC7E,iFAAiF;4BACjF,OAAO,CAAC,CAAC,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;wBACjE,CAAC;wBAED,OAAO,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,MAAM,CAAC;oBACxC,CAAC,CAAC,CAAC;gBACP,CAAC;gBAED,oBAAoB;gBACpB,qFAAqF;gBACrF,IAAI,mBAAmB,EAAE,CAAC;oBACtB,eAAe,GAAG,IAAA,0DAAuC,EAAC,eAAe,CAAC,CAAC;gBAC/E,CAAC;gBAED,IAAA,6BAAW,EAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YACxC,CAAC;YAED,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,wCAAwC;YACxC,wEAAwE;YACxE,0FAA0F;YAC1F,qEAAqE;YACrE,6EAA6E;YAC7E,0CAA0C;YAC1C,OAAO,SAAS,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;QACxF,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,EAAE,CAAC;AACd,CAAC"}
|
|
@@ -121,6 +121,21 @@ function addParameterResultsPart(serviceProvider, paramNameNode, resolvedDecl, f
|
|
|
121
121
|
text: docString,
|
|
122
122
|
});
|
|
123
123
|
}
|
|
124
|
+
function addReturnResultsPart(serviceProvider, functionNode, format, parts) {
|
|
125
|
+
// See if we have a docstring for the function whose return arrow is being hovered.
|
|
126
|
+
const docString = ParseTreeUtils.getDocString(functionNode.d.suite?.d.statements ?? []);
|
|
127
|
+
if (!docString) {
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
const returnDoc = serviceProvider.docStringService().extractReturnDocumentation(docString, format);
|
|
131
|
+
if (!returnDoc) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
parts.push({
|
|
135
|
+
python: false,
|
|
136
|
+
text: returnDoc,
|
|
137
|
+
});
|
|
138
|
+
}
|
|
124
139
|
function addDocumentationResultsPart(serviceProvider, docString, format, parts, resolvedDecl, forceLiteralOverride) {
|
|
125
140
|
if (!docString) {
|
|
126
141
|
return;
|
|
@@ -281,6 +296,13 @@ class HoverProvider {
|
|
|
281
296
|
this._tryAddPartsForTypedDictKey(node, type, results.parts);
|
|
282
297
|
}
|
|
283
298
|
}
|
|
299
|
+
else if (node.nodeType === 31 /* ParseNodeType.Function */) {
|
|
300
|
+
// Hovering over the `->` return-type arrow shows the function's return documentation.
|
|
301
|
+
const token = ParseTreeUtils.getTokenOverlapping(this._parseResults.tokenizerOutput.tokens, offset);
|
|
302
|
+
if (token?.type === 21 /* TokenType.Arrow */) {
|
|
303
|
+
addReturnResultsPart(this._program.serviceProvider, node, this._format, results.parts);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
284
306
|
return results.parts.length > 0 ? results : null;
|
|
285
307
|
}
|
|
286
308
|
_addResultsForDeclaration(parts, declaration, node) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hoverProvider.js","sourceRoot":"","sources":["../../../../../src/languageService/hoverProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hoverProvider.js","sourceRoot":"","sources":["../../../../../src/languageService/hoverProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ImportedModuleDescriptor, ImportResolver } from '../analyzer/importResolver';
|
|
2
|
+
import { ImplicitImport, ImportResult } from '../analyzer/importResult';
|
|
3
|
+
import { SymbolTable } from '../analyzer/symbol';
|
|
4
|
+
import { ExecutionEnvironment } from '../common/configOptions';
|
|
5
|
+
import { ProgramView } from '../common/extensibility';
|
|
6
|
+
import { Uri } from '../common/uri/uri';
|
|
7
|
+
import { ImportFromNode, ModuleNameNode } from '../parser/parseNodes';
|
|
8
|
+
export declare function createModuleNameCompletionDescriptor(moduleNode: ModuleNameNode, enumerateAll?: boolean): ImportedModuleDescriptor;
|
|
9
|
+
export declare function getModuleNameCompletionSuggestions(importResolver: ImportResolver, fileUri: Uri, execEnv: ExecutionEnvironment, moduleNode: ModuleNameNode, enumerateAll?: boolean): Map<string, Uri>;
|
|
10
|
+
export declare function getImportFromTarget(program: ProgramView, importFromNode: ImportFromNode): ImportFromTarget;
|
|
11
|
+
export interface ImportFromTarget {
|
|
12
|
+
importInfo?: ImportResult;
|
|
13
|
+
hasParseResults: boolean;
|
|
14
|
+
symbolTable?: SymbolTable;
|
|
15
|
+
implicitImports?: Map<string, ImplicitImport>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* importStatementCandidates.ts
|
|
4
|
+
* Copyright (c) Microsoft Corporation.
|
|
5
|
+
* Licensed under the MIT license.
|
|
6
|
+
*
|
|
7
|
+
* Shared helpers that enumerate the candidate names valid at an import-statement
|
|
8
|
+
* position. These are the same candidate sources the completion provider uses,
|
|
9
|
+
* extracted so that the change-spelling code action can offer near-name
|
|
10
|
+
* replacements from the identical corpus instead of the auto-import index.
|
|
11
|
+
*/
|
|
12
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
15
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
16
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
17
|
+
}
|
|
18
|
+
Object.defineProperty(o, k2, desc);
|
|
19
|
+
}) : (function(o, m, k, k2) {
|
|
20
|
+
if (k2 === undefined) k2 = k;
|
|
21
|
+
o[k2] = m[k];
|
|
22
|
+
}));
|
|
23
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
24
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
25
|
+
}) : function(o, v) {
|
|
26
|
+
o["default"] = v;
|
|
27
|
+
});
|
|
28
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
29
|
+
var ownKeys = function(o) {
|
|
30
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
31
|
+
var ar = [];
|
|
32
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
33
|
+
return ar;
|
|
34
|
+
};
|
|
35
|
+
return ownKeys(o);
|
|
36
|
+
};
|
|
37
|
+
return function (mod) {
|
|
38
|
+
if (mod && mod.__esModule) return mod;
|
|
39
|
+
var result = {};
|
|
40
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
41
|
+
__setModuleDefault(result, mod);
|
|
42
|
+
return result;
|
|
43
|
+
};
|
|
44
|
+
})();
|
|
45
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.createModuleNameCompletionDescriptor = createModuleNameCompletionDescriptor;
|
|
47
|
+
exports.getModuleNameCompletionSuggestions = getModuleNameCompletionSuggestions;
|
|
48
|
+
exports.getImportFromTarget = getImportFromTarget;
|
|
49
|
+
const AnalyzerNodeInfo = __importStar(require("../analyzer/analyzerNodeInfo"));
|
|
50
|
+
const uri_1 = require("../common/uri/uri");
|
|
51
|
+
// Builds the module descriptor used to enumerate module-name completion candidates
|
|
52
|
+
// for the module-name position (`import X`, `from X import ...`).
|
|
53
|
+
//
|
|
54
|
+
// When `enumerateAll` is true, the final (typed) name segment is dropped so the
|
|
55
|
+
// resolver returns the full set of siblings under the parent package. This is
|
|
56
|
+
// used by the change-spelling code action, where the typed segment is a
|
|
57
|
+
// misspelling rather than a prefix and must be matched by edit distance. When
|
|
58
|
+
// false (completion), the typed segment is kept and used as a prefix filter.
|
|
59
|
+
function createModuleNameCompletionDescriptor(moduleNode, enumerateAll = false) {
|
|
60
|
+
const nameParts = moduleNode.d.nameParts.map((part) => part.d.value);
|
|
61
|
+
let hasTrailingDot = moduleNode.d.hasTrailingDot || false;
|
|
62
|
+
if (enumerateAll && !hasTrailingDot && nameParts.length > 0) {
|
|
63
|
+
// Drop the misspelled final segment and enumerate everything under its
|
|
64
|
+
// parent so edit-distance matching has the full sibling corpus.
|
|
65
|
+
nameParts.pop();
|
|
66
|
+
hasTrailingDot = nameParts.length > 0 || moduleNode.d.leadingDots > 0;
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
leadingDots: moduleNode.d.leadingDots,
|
|
70
|
+
hasTrailingDot,
|
|
71
|
+
nameParts,
|
|
72
|
+
importedSymbols: new Set(),
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
// Enumerates module-name completion candidates for the module-name position
|
|
76
|
+
// (`import X`, `from X import ...`). See `createModuleNameCompletionDescriptor`
|
|
77
|
+
// for the meaning of `enumerateAll`.
|
|
78
|
+
function getModuleNameCompletionSuggestions(importResolver, fileUri, execEnv, moduleNode, enumerateAll = false) {
|
|
79
|
+
const moduleDescriptor = createModuleNameCompletionDescriptor(moduleNode, enumerateAll);
|
|
80
|
+
return importResolver.getCompletionSuggestions(fileUri, execEnv, moduleDescriptor);
|
|
81
|
+
}
|
|
82
|
+
// Resolves the target module of a `from X import ...` statement and returns its
|
|
83
|
+
// top-level (module-scope) symbol table and implicit submodule imports. The symbol
|
|
84
|
+
// table is the raw module scope: it can include non-exported / underscore-private
|
|
85
|
+
// names and is not filtered by `__all__` or visibility. Callers that need
|
|
86
|
+
// completion-style filtering must apply it themselves.
|
|
87
|
+
function getImportFromTarget(program, importFromNode) {
|
|
88
|
+
const importInfo = AnalyzerNodeInfo.getImportInfo(importFromNode.d.module);
|
|
89
|
+
if (!importInfo) {
|
|
90
|
+
return { hasParseResults: false };
|
|
91
|
+
}
|
|
92
|
+
const resolvedPath = importInfo.resolvedUris.length > 0 ? importInfo.resolvedUris[importInfo.resolvedUris.length - 1] : uri_1.Uri.empty();
|
|
93
|
+
const parseResults = program.getParseResults(resolvedPath);
|
|
94
|
+
if (!parseResults) {
|
|
95
|
+
return { importInfo, hasParseResults: false, implicitImports: importInfo.implicitImports };
|
|
96
|
+
}
|
|
97
|
+
const symbolTable = AnalyzerNodeInfo.getScope(parseResults.parserOutput.parseTree)?.symbolTable;
|
|
98
|
+
return { importInfo, hasParseResults: true, symbolTable, implicitImports: importInfo.implicitImports };
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=importStatementCandidates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"importStatementCandidates.js","sourceRoot":"","sources":["../../../../../src/languageService/importStatementCandidates.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBH,oFAoBC;AAKD,gFASC;AAOD,kDAgBC;AA1ED,+EAAiE;AAMjE,2CAAwC;AAGxC,mFAAmF;AACnF,kEAAkE;AAClE,EAAE;AACF,gFAAgF;AAChF,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAC9E,6EAA6E;AAC7E,SAAgB,oCAAoC,CAChD,UAA0B,EAC1B,YAAY,GAAG,KAAK;IAEpB,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrE,IAAI,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,cAAc,IAAI,KAAK,CAAC;IAE1D,IAAI,YAAY,IAAI,CAAC,cAAc,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,uEAAuE;QACvE,gEAAgE;QAChE,SAAS,CAAC,GAAG,EAAE,CAAC;QAChB,cAAc,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO;QACH,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW;QACrC,cAAc;QACd,SAAS;QACT,eAAe,EAAE,IAAI,GAAG,EAAU;KACrC,CAAC;AACN,CAAC;AAED,4EAA4E;AAC5E,gFAAgF;AAChF,qCAAqC;AACrC,SAAgB,kCAAkC,CAC9C,cAA8B,EAC9B,OAAY,EACZ,OAA6B,EAC7B,UAA0B,EAC1B,YAAY,GAAG,KAAK;IAEpB,MAAM,gBAAgB,GAAG,oCAAoC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACxF,OAAO,cAAc,CAAC,wBAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACvF,CAAC;AAED,gFAAgF;AAChF,mFAAmF;AACnF,kFAAkF;AAClF,0EAA0E;AAC1E,uDAAuD;AACvD,SAAgB,mBAAmB,CAAC,OAAoB,EAAE,cAA8B;IACpF,MAAM,UAAU,GAAG,gBAAgB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3E,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;IACtC,CAAC;IAED,MAAM,YAAY,GACd,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAG,CAAC,KAAK,EAAE,CAAC;IAEnH,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC3D,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,eAAe,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC;IAC/F,CAAC;IAED,MAAM,WAAW,GAAG,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;IAChG,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC;AAC3G,CAAC"}
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
import { CancellationToken, Location, ResultProgressReporter } from 'vscode-languageserver';
|
|
2
2
|
import { Declaration } from '../analyzer/declaration';
|
|
3
3
|
import { DocumentRange } from '../common/docRange';
|
|
4
|
-
import { ProgramView, ReferenceUseCase, SymbolUsageProvider } from '../common/extensibility';
|
|
4
|
+
import { ProgramView, ReferenceUseCase, SourceFileInfo, SymbolUsageProvider } from '../common/extensibility';
|
|
5
5
|
import { ReadOnlyFileSystem } from '../common/fileSystem';
|
|
6
|
-
import { Position,
|
|
6
|
+
import { Position, TextRange } from '../common/textRange';
|
|
7
7
|
import { Uri } from '../common/uri/uri';
|
|
8
8
|
import { NameNode, ParseNode } from '../parser/parseNodes';
|
|
9
9
|
import { ParseFileResults } from '../parser/parser';
|
|
10
10
|
import { CollectionResult } from './documentSymbolCollector';
|
|
11
11
|
export type ReferenceCallback = (locations: DocumentRange[]) => void;
|
|
12
|
-
export interface
|
|
12
|
+
export interface ReferenceLocation {
|
|
13
13
|
location: DocumentRange;
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
range: TextRange;
|
|
15
|
+
}
|
|
16
|
+
interface FileReferenceCollection {
|
|
17
|
+
results: ReferenceLocation[];
|
|
18
|
+
discoveredDeclarations: readonly Declaration[];
|
|
16
19
|
}
|
|
17
20
|
export declare class ReferencesResult {
|
|
18
21
|
readonly requiresGlobalSearch: boolean;
|
|
@@ -27,8 +30,8 @@ export declare class ReferencesResult {
|
|
|
27
30
|
constructor(requiresGlobalSearch: boolean, nodeAtOffset: ParseNode, symbolNames: string[], declarations: Declaration[], useCase: ReferenceUseCase, providers: readonly SymbolUsageProvider[], _reporter?: ReferenceCallback | undefined);
|
|
28
31
|
get containsOnlyImportDecls(): boolean;
|
|
29
32
|
get locations(): readonly DocumentRange[];
|
|
30
|
-
get results(): readonly
|
|
31
|
-
addResults(...locs:
|
|
33
|
+
get results(): readonly ReferenceLocation[];
|
|
34
|
+
addResults(...locs: ReferenceLocation[]): void;
|
|
32
35
|
}
|
|
33
36
|
export declare class FindReferencesTreeWalker {
|
|
34
37
|
private _program;
|
|
@@ -37,9 +40,10 @@ export declare class FindReferencesTreeWalker {
|
|
|
37
40
|
private _includeDeclaration;
|
|
38
41
|
private _cancellationToken;
|
|
39
42
|
private readonly _createDocumentRange;
|
|
43
|
+
private readonly _previousResultRanges?;
|
|
40
44
|
private _parseResults;
|
|
41
|
-
constructor(_program: ProgramView, _fileUri: Uri, _referencesResult: ReferencesResult, _includeDeclaration: boolean, _cancellationToken: CancellationToken, _createDocumentRange?: (fileUri: Uri, result: CollectionResult, parseResults: ParseFileResults) => DocumentRange);
|
|
42
|
-
findReferences(rootNode?: import("../parser/parseNodes").ModuleNode | undefined):
|
|
45
|
+
constructor(_program: ProgramView, _fileUri: Uri, _referencesResult: ReferencesResult, _includeDeclaration: boolean, _cancellationToken: CancellationToken, _createDocumentRange?: (fileUri: Uri, result: CollectionResult, parseResults: ParseFileResults) => DocumentRange, _previousResultRanges?: ReadonlySet<string> | undefined);
|
|
46
|
+
findReferences(rootNode?: import("../parser/parseNodes").ModuleNode | undefined): FileReferenceCollection;
|
|
43
47
|
static createDocumentRange(fileUri: Uri, result: CollectionResult, parseResults: ParseFileResults): DocumentRange;
|
|
44
48
|
}
|
|
45
49
|
export declare class ReferencesProvider {
|
|
@@ -49,7 +53,10 @@ export declare class ReferencesProvider {
|
|
|
49
53
|
private readonly _convertToLocation?;
|
|
50
54
|
constructor(_program: ProgramView, _token: CancellationToken, _createDocumentRange?: ((fileUri: Uri, result: CollectionResult, parseResults: ParseFileResults) => DocumentRange) | undefined, _convertToLocation?: ((fs: ReadOnlyFileSystem, ranges: DocumentRange) => Location | undefined) | undefined);
|
|
51
55
|
reportReferences(fileUri: Uri, position: Position, includeDeclaration: boolean, resultReporter?: ResultProgressReporter<Location[]>): Location[] | undefined;
|
|
56
|
+
collectFileReferences(fileUri: Uri, includeDeclaration: boolean, referencesResult: ReferencesResult, previousResultRanges?: Set<string>): FileReferenceCollection;
|
|
52
57
|
addReferencesToResult(fileUri: Uri, includeDeclaration: boolean, referencesResult: ReferencesResult): void;
|
|
58
|
+
collectWorkspaceReferences(referencesResult: ReferencesResult, includeDeclaration: boolean, isCandidateFile: (sourceFileInfo: SourceFileInfo) => boolean): void;
|
|
53
59
|
static getDeclarationForNode(program: ProgramView, fileUri: Uri, node: NameNode, reporter: ReferenceCallback | undefined, useCase: ReferenceUseCase, token: CancellationToken): ReferencesResult | undefined;
|
|
54
60
|
static getDeclarationForPosition(program: ProgramView, fileUri: Uri, position: Position, reporter: ReferenceCallback | undefined, useCase: ReferenceUseCase, token: CancellationToken): ReferencesResult | undefined;
|
|
55
61
|
}
|
|
62
|
+
export {};
|