@zzzen/pyright-internal 1.2.0-dev.20230129 → 1.2.0-dev.20230212
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/backgroundAnalysisProgram.d.ts +3 -3
- package/dist/analyzer/backgroundAnalysisProgram.js +4 -2
- package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
- package/dist/analyzer/binder.js +15 -11
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/checker.d.ts +2 -1
- package/dist/analyzer/checker.js +28 -21
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +3 -2
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/constraintSolver.js +83 -67
- package/dist/analyzer/constraintSolver.js.map +1 -1
- package/dist/analyzer/dataClasses.js +13 -5
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/declaration.d.ts +2 -0
- package/dist/analyzer/declaration.js.map +1 -1
- package/dist/analyzer/importResolver.d.ts +1 -1
- package/dist/analyzer/importResolver.js +6 -3
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/parameterUtils.d.ts +2 -0
- package/dist/analyzer/parameterUtils.js +20 -0
- package/dist/analyzer/parameterUtils.js.map +1 -0
- package/dist/analyzer/parseTreeUtils.d.ts +3 -1
- package/dist/analyzer/parseTreeUtils.js +54 -12
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/parseTreeWalker.d.ts +1 -1
- package/dist/analyzer/program.d.ts +6 -3
- package/dist/analyzer/program.js +78 -19
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/service.d.ts +0 -2
- package/dist/analyzer/service.js +8 -8
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/sourceFile.d.ts +3 -7
- package/dist/analyzer/sourceFile.js +3 -19
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/testWalker.js +23 -15
- package/dist/analyzer/testWalker.js.map +1 -1
- package/dist/analyzer/typeCacheUtils.d.ts +8 -2
- package/dist/analyzer/typeCacheUtils.js +4 -4
- package/dist/analyzer/typeCacheUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +283 -160
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +14 -9
- package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
- package/dist/analyzer/typeGuards.js +0 -14
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typePrinter.d.ts +2 -1
- package/dist/analyzer/typePrinter.js +13 -0
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +5 -4
- package/dist/analyzer/typeUtils.js +191 -144
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typeVarContext.d.ts +32 -19
- package/dist/analyzer/typeVarContext.js +173 -99
- package/dist/analyzer/typeVarContext.js.map +1 -1
- package/dist/analyzer/types.d.ts +2 -1
- package/dist/analyzer/types.js +1 -0
- package/dist/analyzer/types.js.map +1 -1
- package/dist/backgroundAnalysisBase.d.ts +1 -3
- package/dist/backgroundAnalysisBase.js +2 -3
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/backgroundThreadBase.js +5 -1
- package/dist/backgroundThreadBase.js.map +1 -1
- package/dist/common/envVarUtils.d.ts +1 -1
- package/dist/common/envVarUtils.js +26 -16
- package/dist/common/envVarUtils.js.map +1 -1
- package/dist/common/extensibility.d.ts +44 -6
- package/dist/common/extensibility.js +26 -2
- package/dist/common/extensibility.js.map +1 -1
- package/dist/common/fullAccessHost.d.ts +2 -1
- package/dist/common/fullAccessHost.js +22 -0
- package/dist/common/fullAccessHost.js.map +1 -1
- package/dist/common/host.d.ts +6 -0
- package/dist/common/host.js +3 -0
- package/dist/common/host.js.map +1 -1
- package/dist/common/pathUtils.d.ts +2 -0
- package/dist/common/pathUtils.js +17 -3
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/textRangeCollection.d.ts +1 -0
- package/dist/common/textRangeCollection.js +54 -20
- package/dist/common/textRangeCollection.js.map +1 -1
- package/dist/languageServerBase.d.ts +2 -4
- package/dist/languageServerBase.js +5 -6
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.js +1 -1
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/completionProvider.d.ts +0 -1
- package/dist/languageService/completionProvider.js +33 -98
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.d.ts +34 -0
- package/dist/languageService/completionProviderUtils.js +102 -0
- package/dist/languageService/completionProviderUtils.js.map +1 -0
- package/dist/languageService/definitionProvider.d.ts +2 -1
- package/dist/languageService/definitionProvider.js +25 -9
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.d.ts +2 -1
- package/dist/languageService/documentSymbolCollector.js +27 -3
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/documentSymbolProvider.js +1 -1
- package/dist/languageService/documentSymbolProvider.js.map +1 -1
- package/dist/languageService/hoverProvider.d.ts +1 -0
- package/dist/languageService/hoverProvider.js +44 -10
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/referencesProvider.d.ts +2 -1
- package/dist/languageService/referencesProvider.js +4 -3
- package/dist/languageService/referencesProvider.js.map +1 -1
- package/dist/languageService/signatureHelpProvider.js +20 -3
- package/dist/languageService/signatureHelpProvider.js.map +1 -1
- package/dist/languageService/tooltipUtils.d.ts +3 -1
- package/dist/languageService/tooltipUtils.js +30 -10
- package/dist/languageService/tooltipUtils.js.map +1 -1
- package/dist/localization/localize.d.ts +8 -1
- package/dist/localization/localize.js +10 -10
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +3 -3
- package/dist/parser/stringTokenUtils.js +10 -0
- package/dist/parser/stringTokenUtils.js.map +1 -1
- package/dist/pyright.js +17 -9
- package/dist/pyright.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.js +5 -5
- package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.fourslash.js +2 -2
- package/dist/tests/fourslash/completions.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.inherited.overload.docFromScrWithStub.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.inherited.overload.docFromScrWithStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.inherited.overload.docFromStub.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.inherited.overload.docFromStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.libCodeAndStub.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.libCodeAndStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.libCodeNoStub.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.libCodeNoStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.libStub.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.libStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.localCode.fourslash.js +2 -2
- package/dist/tests/fourslash/completions.localCode.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.overloads.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.overloads.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.params.fourslash.js +37 -0
- package/dist/tests/fourslash/completions.params.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.plainText.fourslash.js +2 -2
- package/dist/tests/fourslash/completions.plainText.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.self.fourslash.js +2 -2
- package/dist/tests/fourslash/completions.self.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.wildcardimports.fourslash.js +1 -1
- package/dist/tests/fourslash/completions.wildcardimports.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.js +7 -7
- package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.class.docString.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.class.docString.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.classNoInit.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.classNoInit.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.fourslash.js +7 -7
- package/dist/tests/fourslash/hover.docFromSrc.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module1.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module1.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module2.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport1.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport1.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport2.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport3.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport3.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.stubs-package.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.docFromSrc.stubs-package.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.typeshed.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.docFromSrc.typeshed.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docstring.links.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.docstring.links.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.docstring.split.fourslash.js +3 -3
- package/dist/tests/fourslash/hover.docstring.split.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.formatted.fourslash.js +6 -6
- package/dist/tests/fourslash/hover.formatted.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.js +6 -6
- package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.inherited.docFromSrcWithStub.fourslash.js +5 -5
- package/dist/tests/fourslash/hover.inherited.docFromSrcWithStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.js +4 -4
- package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.inherited.overload.docFromSrcWithStub.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.inherited.overload.docFromSrcWithStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.inherited.overload.docFromStub.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.inherited.overload.docFromStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.init.fourslash.js +4 -4
- package/dist/tests/fourslash/hover.init.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.libCodeAndStub.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.libCodeAndStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.libCodeNoStub.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.libCodeNoStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.libStub.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.libStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.overloadedFunction.fourslash.js +2 -2
- package/dist/tests/fourslash/hover.overloadedFunction.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.plainText.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.plainText.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.wildcardimports.fourslash.js +1 -1
- package/dist/tests/fourslash/hover.wildcardimports.fourslash.js.map +1 -1
- package/dist/tests/fourslash/import.multipart.fourslash.js +1 -1
- package/dist/tests/fourslash/import.multipart.fourslash.js.map +1 -1
- package/dist/tests/fourslash/import.pytyped.typeCheckingBasic.fourslash.js +1 -1
- package/dist/tests/fourslash/import.pytyped.typeCheckingBasic.fourslash.js.map +1 -1
- package/dist/tests/fourslash/import.pytyped.typeCheckingOff.fourslash.js +1 -1
- package/dist/tests/fourslash/import.pytyped.typeCheckingOff.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.complicated.fourslash.js +31 -1
- package/dist/tests/fourslash/signature.complicated.fourslash.js.map +1 -1
- package/dist/tests/harness/fourslash/testLanguageService.js +1 -1
- package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
- package/dist/tests/hoverProvider.test.js +27 -0
- package/dist/tests/hoverProvider.test.js.map +1 -1
- package/dist/tests/pathUtils.test.js +24 -1
- package/dist/tests/pathUtils.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +16 -0
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +4 -0
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +2 -2
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +11 -3
- package/dist/tests/typeEvaluator4.test.js.map +1 -1
- package/dist/workspaceMap.d.ts +4 -0
- package/dist/workspaceMap.js +67 -37
- package/dist/workspaceMap.js.map +1 -1
- package/package.json +1 -1
@@ -1,6 +1,6 @@
|
|
1
1
|
import { CancellationToken, CompletionItem, DocumentHighlight, DocumentSymbol, MarkupKind } from 'vscode-languageserver';
|
2
2
|
import { TextDocumentContentChangeEvent } from 'vscode-languageserver-textdocument';
|
3
|
-
import { ConfigOptions,
|
3
|
+
import { ConfigOptions, SignatureDisplayType } from '../common/configOptions';
|
4
4
|
import { ConsoleInterface } from '../common/console';
|
5
5
|
import { Diagnostic } from '../common/diagnostic';
|
6
6
|
import { TextEditAction } from '../common/editAction';
|
@@ -15,7 +15,6 @@ import { IndexOptions, IndexResults } from '../languageService/documentSymbolPro
|
|
15
15
|
import { HoverResults } from '../languageService/hoverProvider';
|
16
16
|
import { ReferenceCallback, ReferencesResult } from '../languageService/referencesProvider';
|
17
17
|
import { SignatureHelpResults } from '../languageService/signatureHelpProvider';
|
18
|
-
import { NameNode } from '../parser/parseNodes';
|
19
18
|
import { ParseResults } from '../parser/parser';
|
20
19
|
import { ImportLookup } from './analyzerFileInfo';
|
21
20
|
import { CircularDependency } from './circularDependency';
|
@@ -27,8 +26,7 @@ import { SymbolTable } from './symbol';
|
|
27
26
|
import { TypeEvaluator } from './typeEvaluatorTypes';
|
28
27
|
export declare enum IPythonMode {
|
29
28
|
None = 0,
|
30
|
-
|
31
|
-
CellDocs = 2
|
29
|
+
CellDocs = 1
|
32
30
|
}
|
33
31
|
export declare class SourceFile {
|
34
32
|
private _console;
|
@@ -112,9 +110,7 @@ export declare class SourceFile {
|
|
112
110
|
parse(configOptions: ConfigOptions, importResolver: ImportResolver, content?: string): boolean;
|
113
111
|
index(options: IndexOptions, token: CancellationToken): IndexResults | undefined;
|
114
112
|
getDefinitionsForPosition(sourceMapper: SourceMapper, position: Position, filter: DefinitionFilter, evaluator: TypeEvaluator, token: CancellationToken): DocumentRange[] | undefined;
|
115
|
-
getDefinitionsForNode(sourceMapper: SourceMapper, node: NameNode, evaluator: TypeEvaluator): DocumentRange[] | undefined;
|
116
113
|
getTypeDefinitionsForPosition(sourceMapper: SourceMapper, position: Position, evaluator: TypeEvaluator, filePath: string, token: CancellationToken): DocumentRange[] | undefined;
|
117
|
-
getDeclarationForNode(sourceMapper: SourceMapper, node: NameNode, evaluator: TypeEvaluator, reporter: ReferenceCallback | undefined, useCase: DocumentSymbolCollectorUseCase, token: CancellationToken): ReferencesResult | undefined;
|
118
114
|
getDeclarationForPosition(sourceMapper: SourceMapper, position: Position, evaluator: TypeEvaluator, reporter: ReferenceCallback | undefined, useCase: DocumentSymbolCollectorUseCase, token: CancellationToken): ReferencesResult | undefined;
|
119
115
|
addReferences(referencesResult: ReferencesResult, includeDeclaration: boolean, evaluator: TypeEvaluator, token: CancellationToken): void;
|
120
116
|
addHierarchicalSymbolsForDocument(symbolList: DocumentSymbol[], token: CancellationToken): void;
|
@@ -126,7 +122,7 @@ export declare class SourceFile {
|
|
126
122
|
resolveCompletionItem(configOptions: ConfigOptions, importResolver: ImportResolver, importLookup: ImportLookup, evaluator: TypeEvaluator, options: CompletionOptions, sourceMapper: SourceMapper, nameMap: AbbreviationMap | undefined, libraryMap: Map<string, IndexResults> | undefined, moduleSymbolsCallback: () => ModuleSymbolMap, completionItem: CompletionItem, token: CancellationToken): void;
|
127
123
|
performQuickAction(command: string, args: any[], token: CancellationToken): TextEditAction[] | undefined;
|
128
124
|
bind(configOptions: ConfigOptions, importLookup: ImportLookup, builtinsScope: Scope | undefined, futureImports: Set<string>): void;
|
129
|
-
check(importResolver: ImportResolver, evaluator: TypeEvaluator,
|
125
|
+
check(importResolver: ImportResolver, evaluator: TypeEvaluator, sourceMapper: SourceMapper, dependentFiles?: ParseResults[]): void;
|
130
126
|
test_enableIPythonMode(enable: boolean): void;
|
131
127
|
private _buildFileInfo;
|
132
128
|
private _cleanParseTreeIfRequired;
|
@@ -75,10 +75,8 @@ var IPythonMode;
|
|
75
75
|
// Not a notebook. This is the only falsy enum value, so you
|
76
76
|
// can test if IPython is supported via "if (ipythonMode)"
|
77
77
|
IPythonMode[IPythonMode["None"] = 0] = "None";
|
78
|
-
// All cells are concatenated into a single document.
|
79
|
-
IPythonMode[IPythonMode["ConcatDoc"] = 1] = "ConcatDoc";
|
80
78
|
// Each cell is its own document.
|
81
|
-
IPythonMode[IPythonMode["CellDocs"] =
|
79
|
+
IPythonMode[IPythonMode["CellDocs"] = 1] = "CellDocs";
|
82
80
|
})(IPythonMode = exports.IPythonMode || (exports.IPythonMode = {}));
|
83
81
|
class SourceFile {
|
84
82
|
constructor(fs, filePath, moduleName, isThirdPartyImport, isThirdPartyPyTypedPresent, console, logTracker, realFilePath, ipythonMode = IPythonMode.None) {
|
@@ -674,13 +672,6 @@ class SourceFile {
|
|
674
672
|
}
|
675
673
|
return definitionProvider_1.DefinitionProvider.getDefinitionsForPosition(sourceMapper, this._parseResults, position, filter, evaluator, token);
|
676
674
|
}
|
677
|
-
getDefinitionsForNode(sourceMapper, node, evaluator) {
|
678
|
-
// If we have no completed analysis job, there's nothing to do.
|
679
|
-
if (!this._parseResults) {
|
680
|
-
return undefined;
|
681
|
-
}
|
682
|
-
return definitionProvider_1.DefinitionProvider.getDefinitionsForNode(sourceMapper, node, definitionProvider_1.DefinitionFilter.All, evaluator);
|
683
|
-
}
|
684
675
|
getTypeDefinitionsForPosition(sourceMapper, position, evaluator, filePath, token) {
|
685
676
|
// If we have no completed analysis job, there's nothing to do.
|
686
677
|
if (!this._parseResults) {
|
@@ -688,13 +679,6 @@ class SourceFile {
|
|
688
679
|
}
|
689
680
|
return definitionProvider_1.DefinitionProvider.getTypeDefinitionsForPosition(sourceMapper, this._parseResults, position, evaluator, filePath, token);
|
690
681
|
}
|
691
|
-
getDeclarationForNode(sourceMapper, node, evaluator, reporter, useCase, token) {
|
692
|
-
// If we have no completed analysis job, there's nothing to do.
|
693
|
-
if (!this._parseResults) {
|
694
|
-
return undefined;
|
695
|
-
}
|
696
|
-
return referencesProvider_1.ReferencesProvider.getDeclarationForNode(sourceMapper, this._filePath, node, evaluator, reporter, useCase, token);
|
697
|
-
}
|
698
682
|
getDeclarationForPosition(sourceMapper, position, evaluator, reporter, useCase, token) {
|
699
683
|
// If we have no completed analysis job, there's nothing to do.
|
700
684
|
if (!this._parseResults) {
|
@@ -835,7 +819,7 @@ class SourceFile {
|
|
835
819
|
this._isBindingNeeded = false;
|
836
820
|
});
|
837
821
|
}
|
838
|
-
check(importResolver, evaluator,
|
822
|
+
check(importResolver, evaluator, sourceMapper, dependentFiles) {
|
839
823
|
(0, debug_1.assert)(!this.isParseRequired(), 'Check called before parsing');
|
840
824
|
(0, debug_1.assert)(!this.isBindingRequired(), 'Check called before binding');
|
841
825
|
(0, debug_1.assert)(!this._isBindingInProgress, 'Check called while binding in progress');
|
@@ -845,7 +829,7 @@ class SourceFile {
|
|
845
829
|
try {
|
846
830
|
timing_1.timingStats.typeCheckerTime.timeOperation(() => {
|
847
831
|
const checkDuration = new timing_1.Duration();
|
848
|
-
const checker = new checker_1.Checker(importResolver, evaluator, this._parseResults, sourceMapper);
|
832
|
+
const checker = new checker_1.Checker(importResolver, evaluator, this._parseResults, sourceMapper, dependentFiles);
|
849
833
|
checker.check();
|
850
834
|
this._isCheckingNeeded = false;
|
851
835
|
const fileInfo = AnalyzerNodeInfo.getFileInfo(this._parseResults.parseTree);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sourceFile.js","sourceRoot":"","sources":["../../../src/analyzer/sourceFile.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"sourceFile.js","sourceRoot":"","sources":["../../../src/analyzer/sourceFile.ts"],"names":[],"mappings":"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"}
|
@@ -9,6 +9,7 @@ exports.NameTypeWalker = exports.TestWalker = void 0;
|
|
9
9
|
const parseTreeWalker_1 = require("../analyzer/parseTreeWalker");
|
10
10
|
const debug_1 = require("../common/debug");
|
11
11
|
const textRange_1 = require("../common/textRange");
|
12
|
+
const parseTreeUtils_1 = require("./parseTreeUtils");
|
12
13
|
class TestWalker extends parseTreeWalker_1.ParseTreeWalker {
|
13
14
|
constructor() {
|
14
15
|
super();
|
@@ -35,24 +36,31 @@ class TestWalker extends parseTreeWalker_1.ParseTreeWalker {
|
|
35
36
|
// Children are listed in increasing order
|
36
37
|
_verifyChildRanges(node, children) {
|
37
38
|
let prevNode;
|
39
|
+
const compliant = (0, parseTreeUtils_1.isCompliantWithNodeRangeRules)(node);
|
38
40
|
children.forEach((child) => {
|
39
41
|
if (child) {
|
40
42
|
let skipCheck = false;
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
43
|
+
if (!compliant) {
|
44
|
+
switch (node.nodeType) {
|
45
|
+
case 3 /* Assignment */:
|
46
|
+
// There are a few exceptions we need to deal with here. Comment
|
47
|
+
// annotations can occur outside of an assignment node's range.
|
48
|
+
if (child === node.typeAnnotationComment) {
|
49
|
+
skipCheck = true;
|
50
|
+
}
|
51
|
+
// Portions of chained assignments can occur outside of an
|
52
|
+
// assignment node's range.
|
53
|
+
if (child.nodeType === 3 /* Assignment */) {
|
54
|
+
skipCheck = true;
|
55
|
+
}
|
56
|
+
break;
|
57
|
+
case 48 /* StringList */:
|
58
|
+
if (child === node.typeAnnotation) {
|
59
|
+
skipCheck = true;
|
60
|
+
}
|
61
|
+
break;
|
62
|
+
default:
|
63
|
+
(0, debug_1.fail)(`node ${node.nodeType} is not marked as not following range rules.`);
|
56
64
|
}
|
57
65
|
}
|
58
66
|
if (!skipCheck) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"testWalker.js","sourceRoot":"","sources":["../../../src/analyzer/testWalker.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,iEAA8D;AAC9D,2CAAuC;AACvC,mDAAgD;
|
1
|
+
{"version":3,"file":"testWalker.js","sourceRoot":"","sources":["../../../src/analyzer/testWalker.ts"],"names":[],"mappings":"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"}
|
@@ -11,6 +11,12 @@ interface SpeculativeContext {
|
|
11
11
|
}
|
12
12
|
export interface TypeResult {
|
13
13
|
type: Type;
|
14
|
+
isIncomplete?: boolean;
|
15
|
+
}
|
16
|
+
export interface SpeculativeTypeEntry {
|
17
|
+
typeResult: TypeResult;
|
18
|
+
expectedType: Type | undefined;
|
19
|
+
incompleteGenerationCount: number;
|
14
20
|
}
|
15
21
|
export declare class SpeculativeTypeTracker {
|
16
22
|
private _speculativeContextStack;
|
@@ -21,7 +27,7 @@ export declare class SpeculativeTypeTracker {
|
|
21
27
|
trackEntry(cache: Map<number, any>, id: number): void;
|
22
28
|
disableSpeculativeMode(): SpeculativeContext[];
|
23
29
|
enableSpeculativeMode(stack: SpeculativeContext[]): void;
|
24
|
-
addSpeculativeType(node: ParseNode, typeResult: TypeResult, expectedType: Type | undefined): void;
|
25
|
-
getSpeculativeType(node: ParseNode, expectedType: Type | undefined):
|
30
|
+
addSpeculativeType(node: ParseNode, typeResult: TypeResult, incompleteGenerationCount: number, expectedType: Type | undefined): void;
|
31
|
+
getSpeculativeType(node: ParseNode, expectedType: Type | undefined): SpeculativeTypeEntry | undefined;
|
26
32
|
}
|
27
33
|
export {};
|
@@ -93,7 +93,7 @@ class SpeculativeTypeTracker {
|
|
93
93
|
(0, debug_1.assert)(this._speculativeContextStack.length === 0);
|
94
94
|
this._speculativeContextStack = stack;
|
95
95
|
}
|
96
|
-
addSpeculativeType(node, typeResult, expectedType) {
|
96
|
+
addSpeculativeType(node, typeResult, incompleteGenerationCount, expectedType) {
|
97
97
|
(0, debug_1.assert)(this._speculativeContextStack.length > 0);
|
98
98
|
if (this._speculativeContextStack.some((context) => !context.allowCacheRetention)) {
|
99
99
|
return;
|
@@ -103,7 +103,7 @@ class SpeculativeTypeTracker {
|
|
103
103
|
cacheEntries = [];
|
104
104
|
this._speculativeTypeCache.set(node.id, cacheEntries);
|
105
105
|
}
|
106
|
-
cacheEntries.push({ typeResult, expectedType });
|
106
|
+
cacheEntries.push({ typeResult, expectedType, incompleteGenerationCount });
|
107
107
|
}
|
108
108
|
getSpeculativeType(node, expectedType) {
|
109
109
|
if (this._speculativeContextStack.some((context) => ParseTreeUtils.isNodeContainedWithin(node, context.speculativeRootNode))) {
|
@@ -112,11 +112,11 @@ class SpeculativeTypeTracker {
|
|
112
112
|
for (const entry of entries) {
|
113
113
|
if (!expectedType) {
|
114
114
|
if (!entry.expectedType) {
|
115
|
-
return entry
|
115
|
+
return entry;
|
116
116
|
}
|
117
117
|
}
|
118
118
|
else if (entry.expectedType && (0, types_1.isTypeSame)(expectedType, entry.expectedType)) {
|
119
|
-
return entry
|
119
|
+
return entry;
|
120
120
|
}
|
121
121
|
}
|
122
122
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"typeCacheUtils.js","sourceRoot":"","sources":["../../../src/analyzer/typeCacheUtils.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAAyC;AAEzC,iEAAmD;AACnD,mCAA2C;
|
1
|
+
{"version":3,"file":"typeCacheUtils.js","sourceRoot":"","sources":["../../../src/analyzer/typeCacheUtils.ts"],"names":[],"mappings":"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"}
|