@zzzen/pyright-internal 1.2.0-dev.20240728 → 1.2.0-dev.20240811
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/analysis.js +2 -2
- package/dist/analyzer/analysis.js.map +1 -1
- package/dist/analyzer/analyzerFileInfo.js +1 -2
- package/dist/analyzer/analyzerFileInfo.js.map +1 -1
- package/dist/analyzer/analyzerNodeInfo.js +20 -21
- package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
- package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
- package/dist/analyzer/binder.js +8 -5
- package/dist/analyzer/binder.js.map +1 -1
- package/dist/analyzer/cacheManager.d.ts +0 -1
- package/dist/analyzer/cacheManager.js.map +1 -1
- package/dist/analyzer/checker.d.ts +4 -1
- package/dist/analyzer/checker.js +371 -254
- package/dist/analyzer/checker.js.map +1 -1
- package/dist/analyzer/circularDependency.js.map +1 -1
- package/dist/analyzer/codeFlowEngine.js +10 -10
- package/dist/analyzer/codeFlowEngine.js.map +1 -1
- package/dist/analyzer/codeFlowTypes.d.ts +17 -17
- package/dist/analyzer/codeFlowTypes.js +5 -5
- package/dist/analyzer/codeFlowTypes.js.map +1 -1
- package/dist/analyzer/codeFlowUtils.js +1 -2
- package/dist/analyzer/codeFlowUtils.js.map +1 -1
- package/dist/analyzer/commentUtils.js +1 -2
- package/dist/analyzer/commentUtils.js.map +1 -1
- package/dist/analyzer/constraintSolution.d.ts +22 -0
- package/dist/analyzer/constraintSolution.js +77 -0
- package/dist/analyzer/constraintSolution.js.map +1 -0
- package/dist/analyzer/constraintSolver.d.ts +8 -5
- package/dist/analyzer/constraintSolver.js +427 -353
- package/dist/analyzer/constraintSolver.js.map +1 -1
- package/dist/analyzer/constraintTracker.d.ts +45 -0
- package/dist/analyzer/constraintTracker.js +235 -0
- package/dist/analyzer/constraintTracker.js.map +1 -0
- package/dist/analyzer/constructorTransform.js +23 -23
- package/dist/analyzer/constructorTransform.js.map +1 -1
- package/dist/analyzer/constructors.d.ts +1 -1
- package/dist/analyzer/constructors.js +71 -51
- package/dist/analyzer/constructors.js.map +1 -1
- package/dist/analyzer/dataClasses.js +72 -58
- package/dist/analyzer/dataClasses.js.map +1 -1
- package/dist/analyzer/declaration.js +11 -11
- package/dist/analyzer/declaration.js.map +1 -1
- package/dist/analyzer/declarationUtils.js +8 -9
- package/dist/analyzer/declarationUtils.js.map +1 -1
- package/dist/analyzer/decorators.d.ts +1 -1
- package/dist/analyzer/decorators.js +34 -30
- package/dist/analyzer/decorators.js.map +1 -1
- package/dist/analyzer/docStringConversion.js +2 -3
- package/dist/analyzer/docStringConversion.js.map +1 -1
- package/dist/analyzer/docStringUtils.js +2 -3
- package/dist/analyzer/docStringUtils.js.map +1 -1
- package/dist/analyzer/enums.js +17 -14
- package/dist/analyzer/enums.js.map +1 -1
- package/dist/analyzer/functionTransform.d.ts +2 -2
- package/dist/analyzer/functionTransform.js +2 -3
- package/dist/analyzer/functionTransform.js.map +1 -1
- package/dist/analyzer/importResolver.d.ts +0 -1
- package/dist/analyzer/importResolver.js +5 -5
- package/dist/analyzer/importResolver.js.map +1 -1
- package/dist/analyzer/importStatementUtils.js +15 -15
- package/dist/analyzer/importStatementUtils.js.map +1 -1
- package/dist/analyzer/namedTuples.js +2 -3
- package/dist/analyzer/namedTuples.js.map +1 -1
- package/dist/analyzer/operations.d.ts +1 -2
- package/dist/analyzer/operations.js +101 -79
- package/dist/analyzer/operations.js.map +1 -1
- package/dist/analyzer/packageTypeReport.d.ts +3 -3
- package/dist/analyzer/packageTypeReport.js +2 -2
- package/dist/analyzer/packageTypeReport.js.map +1 -1
- package/dist/analyzer/packageTypeVerifier.js +17 -13
- package/dist/analyzer/packageTypeVerifier.js.map +1 -1
- package/dist/analyzer/parameterUtils.d.ts +3 -3
- package/dist/analyzer/parameterUtils.js +23 -25
- package/dist/analyzer/parameterUtils.js.map +1 -1
- package/dist/analyzer/parentDirectoryCache.js.map +1 -1
- package/dist/analyzer/parseTreeUtils.js +94 -92
- package/dist/analyzer/parseTreeUtils.js.map +1 -1
- package/dist/analyzer/parseTreeWalker.js +2 -2
- package/dist/analyzer/parseTreeWalker.js.map +1 -1
- package/dist/analyzer/patternMatching.js +39 -41
- package/dist/analyzer/patternMatching.js.map +1 -1
- package/dist/analyzer/program.js +5 -1
- package/dist/analyzer/program.js.map +1 -1
- package/dist/analyzer/properties.d.ts +3 -2
- package/dist/analyzer/properties.js +16 -18
- package/dist/analyzer/properties.js.map +1 -1
- package/dist/analyzer/protocols.d.ts +3 -3
- package/dist/analyzer/protocols.js +58 -60
- package/dist/analyzer/protocols.js.map +1 -1
- package/dist/analyzer/pyTypedUtils.js +2 -3
- package/dist/analyzer/pyTypedUtils.js.map +1 -1
- package/dist/analyzer/pythonPathUtils.js +6 -6
- package/dist/analyzer/pythonPathUtils.js.map +1 -1
- package/dist/analyzer/scope.js.map +1 -1
- package/dist/analyzer/scopeUtils.js +5 -6
- package/dist/analyzer/scopeUtils.js.map +1 -1
- package/dist/analyzer/service.d.ts +3 -0
- package/dist/analyzer/service.js +173 -103
- package/dist/analyzer/service.js.map +1 -1
- package/dist/analyzer/serviceUtils.js +5 -5
- package/dist/analyzer/serviceUtils.js.map +1 -1
- package/dist/analyzer/sourceFile.js.map +1 -1
- package/dist/analyzer/sourceFileInfo.js.map +1 -1
- package/dist/analyzer/sourceFileInfoUtils.js +4 -5
- package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
- package/dist/analyzer/sourceMapper.js +5 -4
- package/dist/analyzer/sourceMapper.js.map +1 -1
- package/dist/analyzer/sourceMapperUtils.js +1 -2
- package/dist/analyzer/sourceMapperUtils.js.map +1 -1
- package/dist/analyzer/staticExpressions.js +2 -3
- package/dist/analyzer/staticExpressions.js.map +1 -1
- package/dist/analyzer/symbol.js.map +1 -1
- package/dist/analyzer/symbolNameUtils.js +8 -9
- package/dist/analyzer/symbolNameUtils.js.map +1 -1
- package/dist/analyzer/symbolUtils.js +4 -5
- package/dist/analyzer/symbolUtils.js.map +1 -1
- package/dist/analyzer/testWalker.js.map +1 -1
- package/dist/analyzer/tracePrinter.js +5 -4
- package/dist/analyzer/tracePrinter.js.map +1 -1
- package/dist/analyzer/tuples.d.ts +2 -2
- package/dist/analyzer/tuples.js +14 -14
- package/dist/analyzer/tuples.js.map +1 -1
- package/dist/analyzer/typeCacheUtils.js.map +1 -1
- package/dist/analyzer/typeComplexity.js +14 -7
- package/dist/analyzer/typeComplexity.js.map +1 -1
- package/dist/analyzer/typeDocStringUtils.d.ts +2 -2
- package/dist/analyzer/typeDocStringUtils.js +34 -25
- package/dist/analyzer/typeDocStringUtils.js.map +1 -1
- package/dist/analyzer/typeEvaluator.js +1021 -993
- package/dist/analyzer/typeEvaluator.js.map +1 -1
- package/dist/analyzer/typeEvaluatorTypes.d.ts +31 -13
- package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
- package/dist/analyzer/typeEvaluatorWithTracker.js +1 -2
- package/dist/analyzer/typeEvaluatorWithTracker.js.map +1 -1
- package/dist/analyzer/typeGuards.js +72 -64
- package/dist/analyzer/typeGuards.js.map +1 -1
- package/dist/analyzer/typePrinter.js +28 -26
- package/dist/analyzer/typePrinter.js.map +1 -1
- package/dist/analyzer/typeStubWriter.js.map +1 -1
- package/dist/analyzer/typeUtils.d.ts +36 -38
- package/dist/analyzer/typeUtils.js +465 -746
- package/dist/analyzer/typeUtils.js.map +1 -1
- package/dist/analyzer/typeWalker.d.ts +2 -2
- package/dist/analyzer/typeWalker.js +10 -5
- package/dist/analyzer/typeWalker.js.map +1 -1
- package/dist/analyzer/typedDicts.d.ts +2 -2
- package/dist/analyzer/typedDicts.js +52 -52
- package/dist/analyzer/typedDicts.js.map +1 -1
- package/dist/analyzer/types.d.ts +41 -36
- package/dist/analyzer/types.js +178 -184
- package/dist/analyzer/types.js.map +1 -1
- package/dist/backgroundAnalysisBase.d.ts +0 -1
- package/dist/backgroundAnalysisBase.js.map +1 -1
- package/dist/backgroundThreadBase.d.ts +0 -1
- package/dist/backgroundThreadBase.js +7 -7
- package/dist/backgroundThreadBase.js.map +1 -1
- package/dist/commands/commandController.js.map +1 -1
- package/dist/commands/createTypeStub.js.map +1 -1
- package/dist/commands/dumpFileDebugInfoCommand.js +2 -2
- package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
- package/dist/commands/quickActionCommand.js.map +1 -1
- package/dist/common/cancellationUtils.js +9 -9
- package/dist/common/cancellationUtils.js.map +1 -1
- package/dist/common/chokidarFileWatcherProvider.js +3 -3
- package/dist/common/chokidarFileWatcherProvider.js.map +1 -1
- package/dist/common/collectionUtils.js +23 -23
- package/dist/common/collectionUtils.js.map +1 -1
- package/dist/common/commandLineOptions.d.ts +19 -12
- package/dist/common/commandLineOptions.js +26 -9
- package/dist/common/commandLineOptions.js.map +1 -1
- package/dist/common/commandUtils.js +1 -2
- package/dist/common/commandUtils.js.map +1 -1
- package/dist/common/configOptions.d.ts +2 -2
- package/dist/common/configOptions.js +30 -40
- package/dist/common/configOptions.js.map +1 -1
- package/dist/common/console.js +4 -4
- package/dist/common/console.js.map +1 -1
- package/dist/common/core.js +21 -21
- package/dist/common/core.js.map +1 -1
- package/dist/common/crypto.js +1 -2
- package/dist/common/crypto.js.map +1 -1
- package/dist/common/debug.js +9 -10
- package/dist/common/debug.js.map +1 -1
- package/dist/common/deferred.js +3 -4
- package/dist/common/deferred.js.map +1 -1
- package/dist/common/diagnostic.js +3 -3
- package/dist/common/diagnostic.js.map +1 -1
- package/dist/common/diagnosticSink.js.map +1 -1
- package/dist/common/envVarUtils.js +2 -3
- package/dist/common/envVarUtils.js.map +1 -1
- package/dist/common/fileBasedCancellationUtils.js +4 -4
- package/dist/common/fileBasedCancellationUtils.js.map +1 -1
- package/dist/common/fileSystem.d.ts +0 -2
- package/dist/common/fileWatcher.js +2 -2
- package/dist/common/fileWatcher.js.map +1 -1
- package/dist/common/fullAccessHost.js.map +1 -1
- package/dist/common/logTracker.js +2 -2
- package/dist/common/logTracker.js.map +1 -1
- package/dist/common/lspUtils.d.ts +1 -1
- package/dist/common/lspUtils.js +3 -4
- package/dist/common/lspUtils.js.map +1 -1
- package/dist/common/memUtils.js +2 -2
- package/dist/common/memUtils.js.map +1 -1
- package/dist/common/pathUtils.js +32 -32
- package/dist/common/pathUtils.js.map +1 -1
- package/dist/common/positionUtils.js +7 -8
- package/dist/common/positionUtils.js.map +1 -1
- package/dist/common/progressReporter.js.map +1 -1
- package/dist/common/pythonVersion.js.map +1 -1
- package/dist/common/realFileSystem.d.ts +0 -2
- package/dist/common/realFileSystem.js +2 -2
- package/dist/common/realFileSystem.js.map +1 -1
- package/dist/common/serviceProvider.js.map +1 -1
- package/dist/common/serviceProviderExtensions.js +1 -2
- package/dist/common/serviceProviderExtensions.js.map +1 -1
- package/dist/common/stringUtils.js +12 -13
- package/dist/common/stringUtils.js.map +1 -1
- package/dist/common/textEditTracker.js.map +1 -1
- package/dist/common/textRange.js +13 -13
- package/dist/common/textRange.js.map +1 -1
- package/dist/common/textRangeCollection.js +2 -2
- package/dist/common/textRangeCollection.js.map +1 -1
- package/dist/common/timing.js.map +1 -1
- package/dist/common/uri/baseUri.js.map +1 -1
- package/dist/common/uri/fileUri.js.map +1 -1
- package/dist/common/uri/memoization.js +3 -4
- package/dist/common/uri/memoization.js.map +1 -1
- package/dist/common/uri/uri.js.map +1 -1
- package/dist/common/uri/uriUtils.d.ts +0 -1
- package/dist/common/uri/uriUtils.js +20 -20
- package/dist/common/uri/uriUtils.js.map +1 -1
- package/dist/common/uri/webUri.js.map +1 -1
- package/dist/common/workspaceEditUtils.js +8 -9
- package/dist/common/workspaceEditUtils.js.map +1 -1
- package/dist/languageServerBase.d.ts +2 -2
- package/dist/languageServerBase.js +5 -2
- package/dist/languageServerBase.js.map +1 -1
- package/dist/languageService/analyzerServiceExecutor.js +30 -29
- package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
- package/dist/languageService/autoImporter.js +4 -4
- package/dist/languageService/autoImporter.js.map +1 -1
- package/dist/languageService/callHierarchyProvider.js.map +1 -1
- package/dist/languageService/codeActionProvider.js.map +1 -1
- package/dist/languageService/completionProvider.js +4 -4
- package/dist/languageService/completionProvider.js.map +1 -1
- package/dist/languageService/completionProviderUtils.js +4 -5
- package/dist/languageService/completionProviderUtils.js.map +1 -1
- package/dist/languageService/definitionProvider.js +5 -5
- package/dist/languageService/definitionProvider.js.map +1 -1
- package/dist/languageService/documentHighlightProvider.js.map +1 -1
- package/dist/languageService/documentSymbolCollector.js +3 -3
- package/dist/languageService/documentSymbolCollector.js.map +1 -1
- package/dist/languageService/documentSymbolProvider.js +2 -2
- package/dist/languageService/documentSymbolProvider.js.map +1 -1
- package/dist/languageService/dynamicFeature.js.map +1 -1
- package/dist/languageService/fileWatcherDynamicFeature.js.map +1 -1
- package/dist/languageService/hoverProvider.js +6 -6
- package/dist/languageService/hoverProvider.js.map +1 -1
- package/dist/languageService/importSorter.js.map +1 -1
- package/dist/languageService/navigationUtils.js +3 -4
- package/dist/languageService/navigationUtils.js.map +1 -1
- package/dist/languageService/quickActions.js +1 -2
- package/dist/languageService/quickActions.js.map +1 -1
- package/dist/languageService/referencesProvider.js.map +1 -1
- package/dist/languageService/renameProvider.js.map +1 -1
- package/dist/languageService/signatureHelpProvider.js.map +1 -1
- package/dist/languageService/symbolIndexer.js.map +1 -1
- package/dist/languageService/tooltipUtils.d.ts +5 -5
- package/dist/languageService/tooltipUtils.js +31 -31
- package/dist/languageService/tooltipUtils.js.map +1 -1
- package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
- package/dist/localization/localize.d.ts +3 -0
- package/dist/localization/localize.js +7 -6
- package/dist/localization/localize.js.map +1 -1
- package/dist/localization/package.nls.en-us.json +2 -1
- package/dist/nodeMain.js +1 -2
- package/dist/nodeMain.js.map +1 -1
- package/dist/nodeServer.js +2 -3
- package/dist/nodeServer.js.map +1 -1
- package/dist/parser/characterStream.js.map +1 -1
- package/dist/parser/characters.js +10 -11
- package/dist/parser/characters.js.map +1 -1
- package/dist/parser/parseNodes.d.ts +8 -8
- package/dist/parser/parseNodes.js +5 -5
- package/dist/parser/parseNodes.js.map +1 -1
- package/dist/parser/parser.js.map +1 -1
- package/dist/parser/stringTokenUtils.js +2 -2
- package/dist/parser/stringTokenUtils.js.map +1 -1
- package/dist/parser/tokenizer.js.map +1 -1
- package/dist/parser/unicode.js +468 -468
- package/dist/parser/unicode.js.map +1 -1
- package/dist/pprof/profiler.js +2 -3
- package/dist/pprof/profiler.js.map +1 -1
- package/dist/pyright.js +22 -23
- package/dist/pyright.js.map +1 -1
- package/dist/pyrightFileSystem.d.ts +0 -2
- package/dist/pyrightFileSystem.js.map +1 -1
- package/dist/readonlyAugmentedFileSystem.d.ts +0 -2
- package/dist/readonlyAugmentedFileSystem.js.map +1 -1
- package/dist/server.js.map +1 -1
- package/dist/tests/cacheManager.test.js.map +1 -1
- package/dist/tests/chainedSourceFiles.test.js.map +1 -1
- package/dist/tests/checker.test.js +13 -5
- package/dist/tests/checker.test.js.map +1 -1
- package/dist/tests/classDeclaration.test.js.map +1 -1
- package/dist/tests/config.test.js +160 -24
- package/dist/tests/config.test.js.map +1 -1
- package/dist/tests/debug.test.js.map +1 -1
- package/dist/tests/diagnosticOverrides.test.js.map +1 -1
- package/dist/tests/docStringConversion.test.js +1 -2
- package/dist/tests/docStringConversion.test.js.map +1 -1
- package/dist/tests/documentSymbolCollector.test.js.map +1 -1
- package/dist/tests/filesystem.test.js.map +1 -1
- package/dist/tests/fourSlashParser.test.js.map +1 -1
- package/dist/tests/fourSlashRunner.test.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.Lib.Found.Type.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.Lib.Found.Type.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.Lib.Found.duplication.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.Lib.Found.duplication.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.Lib.NotFound.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.disabled.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.duplicates.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.duplicates.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.fromImport.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.fromImport.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.lib.alias.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.lib.alias.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.plainText.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.plainText.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.submodule.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.submodule.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.autoimport.topLevel.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.autoimport.topLevel.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.builtinOverride.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.call.stringLiteral.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.call.stringLiteral.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.call.typedDict.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.call.typedDict.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.call.typedDict.list.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.call.typedDict.list.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.call.typedDict.states.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.call.typedDict.states.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.classVariable.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.classVariable.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.comment.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.class.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.class.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.declNames.exception.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.for.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.for.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.declNames.importAlias.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.lambda.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.lambda.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.declNames.method.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.method.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.declNames.overload.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.overload.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.declNames.topLevelOverload.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.declNames.topLevelOverload.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.complex.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.dictionary.keys.complex.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.expression.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.dictionary.keys.expression.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.literalTypes.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.dictionary.keys.literalTypes.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.simple.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.dictionary.keys.simple.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.stringLiterals.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.dictionary.keys.stringLiterals.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dictionary.keys.symbols.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.dictionary.keys.symbols.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.dunderNew.Inheritance.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.dunderNew.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.enums.members.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.errorNodes.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.excluded.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.fstring.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.fstring.stringLiteral.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.fstring.stringLiteral.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.fuzzyMatching.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.import.dunderNames.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.import.exactMatch.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.import.excludeAlreadyImported.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.import.interimFile.fourslash.disabled.d.ts +0 -1
- package/dist/tests/fourslash/completions.import.interimFile.fourslash.disabled.js.map +1 -1
- package/dist/tests/fourslash/completions.import.submodule.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.inList.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.inList.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.included.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.indexer.keys.getitem.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.indexer.keys.getitem.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.inherited.overload.docFromScrWithStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.inherited.overload.docFromStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.inherited.property.docFromSrc.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.inherited.property.docFromStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.libCodeAndStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.libCodeNoStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.libStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.literals.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.literals.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.localCode.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.moduleContext.UnknownMemberOnInstance.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.moduleContext.UnknownStaticFunctionOnClass.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.moduleContext.libCodeNoStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.overloads.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.default.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.default.importStub.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.default.imported.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.default.stub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.property.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.property.stub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.staticAndClassmethod.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override.staticAndClassmethod.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.override.stub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override2.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.override2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.parameters.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.params.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.parentFolder.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.parentFolders.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.parentFolders.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.plainText.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.private.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.private.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.property.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.propertyDocStrings.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.self.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.stringLiteral.escape.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.stringLiteral.escape.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.stringLiteral.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.stringLiteral.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.triggers.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.triggers.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.typeAlias.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.typeshed.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.vardecls.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.vardecls.fourslash.js.map +1 -1
- package/dist/tests/fourslash/completions.variableDocStrings.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.wildcardimports.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/completions.with.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/diagnostics.missingModuleSource.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/diagnostics.missingModuleSource.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.builtinClass.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.builtinClass.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.classes.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.classes.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.onlyStubs.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.onlyStubs.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.onlySource.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.onlySource.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.fields.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.fields.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.functions.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.functions.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.methods.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.methods.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.modules.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.modules.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.namespaceImport.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.namespaceImport.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.overloads.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.overloads.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.parameters.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.parameters.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.function.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.function.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClass.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClass.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClassMethod.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClassMethod.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClass.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClass.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassMethod.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassMethod.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadOnly.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadOnly.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadWrite.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadWrite.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.class.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.class.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.function1.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.function1.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.function2.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.function2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport1.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport1.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport2.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.stubOnly.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.stubOnly.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.stubPackages.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.stubPackages.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.typedDict.keys.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.typedDict.keys.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.variables.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.variables.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findDefinitions.wildcardimports.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findDefinitions.wildcardimports.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findTypeDefinitions.builtinClass.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findTypeDefinitions.builtinClass.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findTypeDefinitions.classes.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findTypeDefinitions.classes.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findTypeDefinitions.unions.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findTypeDefinitions.unions.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.classPropertyReadWrite.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.classPropertyReadWrite.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.importalias.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.importalias.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.invokedFromLibrary.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.invokedFromLibrary.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.module.nested.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.module.nested.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.modules.duplicated.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.modules.duplicated.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.modules.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.modules.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.modules.shadow.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.modules.shadow.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.openFiles.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.openFiles.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.parameter.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.parameter.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.class.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.class.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.classMethod.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.classMethod.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadOnly.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadOnly.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadWrite.fourslash.skip.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadWrite.fourslash.skip.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.function.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.sourceAndStub.function.fourslash.js.map +1 -1
- package/dist/tests/fourslash/findallreferences.variable.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/findallreferences.variable.fourslash.js.map +1 -1
- package/dist/tests/fourslash/highlightreferences.attributes.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/highlightreferences.attributes.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.async.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.builtinDocstrings.builtinInheritedByBuiltin.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.builtinDocstrings.builtinInheritedByUserCode.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.js.map +1 -1
- package/dist/tests/fourslash/hover.class.docString.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.classNoInit.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module1.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module2.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport1.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport2.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.relativeImport3.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.stringFormat.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.stubs-package.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docFromSrc.typeshed.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docstring.alias.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docstring.links.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docstring.overloads.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docstring.parameter.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.docstring.split.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.formatted.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.import.django.view.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.import.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inferred.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inherited.docFromSrcWithStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inherited.overload.docFromSrcWithStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inherited.overload.docFromStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inherited.property.docFromSrcWithStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.inherited.property.docFromStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.init.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.libCodeAndStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.libCodeNoStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.libStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.optionalAliasParameter.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.overloadedFunction.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.plainText.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.slots.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.typedDict.key.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.unpackedTypedDict.key.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.variable.docString.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/hover.wildcardimports.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.multipart.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.nameconflict.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.publicSymbols.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.publicSymbols.fourslash.js.map +1 -1
- package/dist/tests/fourslash/import.pytyped.dunderAll.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.pytyped.privateSymbols.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.pytyped.typeCheckingBasic.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.pytyped.typeCheckingOff.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/import.wildcard.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/importnotresolved.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingModuleSource.disablingInStrictMode.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingModuleSource.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingTypeStub.command.multipart.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingTypeStub.command.singlefile.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingTypeStub.command.singlepart.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingTypeStub.command.trycatchImport.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingTypeStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/missingTypeStub.invokeCodeAction.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/noerrors.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/orderImports1.command.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/orderImports2.command.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.args.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.args.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.externallyHidden.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.externallyHidden.params.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.function.untitledFile.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.function.untitledFile.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.init.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.init.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.library.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.library.sourceAndStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.multipleDecl.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.parens.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.parens.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.sourceAndStub.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.sourceAndStub.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.string.excluded.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.string.excluded.fourslash.js.map +1 -1
- package/dist/tests/fourslash/rename.string.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/rename.string.fourslash.js.map +1 -1
- package/dist/tests/fourslash/shadowedImports.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.js.map +1 -1
- package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.js.map +1 -1
- package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.js.map +1 -1
- package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.js.map +1 -1
- package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.js.map +1 -1
- package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.builtinDocstrings.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.builtinDocstrings.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.complicated.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.complicated.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.cornercases.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.cornercases.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.docstrings.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.docstrings.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.docstrings.overloaded.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.docstrings.overloaded.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.docstrings.wildcardimports.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.docstrings.wildcardimports.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.dunderNew.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.dunderNew.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.overload.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.overload.fourslash.js.map +1 -1
- package/dist/tests/fourslash/signature.simple.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/signature.simple.fourslash.js.map +1 -1
- package/dist/tests/fourslash/typeVerifier.fourslash.d.ts +0 -1
- package/dist/tests/fourslash/typeVerifier.fourslash.js.map +1 -1
- package/dist/tests/harness/fourslash/fourSlashParser.js +1 -2
- package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
- package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
- package/dist/tests/harness/fourslash/runner.d.ts +0 -1
- package/dist/tests/harness/fourslash/runner.js +2 -3
- package/dist/tests/harness/fourslash/runner.js.map +1 -1
- package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
- package/dist/tests/harness/fourslash/testState.js +7 -7
- package/dist/tests/harness/fourslash/testState.js.map +1 -1
- package/dist/tests/harness/fourslash/testStateUtils.js +4 -5
- package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
- package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +7 -8
- package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
- package/dist/tests/harness/testHost.js.map +1 -1
- package/dist/tests/harness/utils.d.ts +0 -2
- package/dist/tests/harness/utils.js +7 -7
- package/dist/tests/harness/utils.js.map +1 -1
- package/dist/tests/harness/vfs/factory.js +3 -3
- package/dist/tests/harness/vfs/factory.js.map +1 -1
- package/dist/tests/harness/vfs/filesystem.d.ts +0 -2
- package/dist/tests/harness/vfs/filesystem.js +2 -2
- package/dist/tests/harness/vfs/filesystem.js.map +1 -1
- package/dist/tests/harness/vfs/pathValidation.js +2 -2
- package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
- package/dist/tests/importResolver.test.js.map +1 -1
- package/dist/tests/importStatementUtils.test.js.map +1 -1
- package/dist/tests/ipythonMode.test.js.map +1 -1
- package/dist/tests/languageServer.test.js.map +1 -1
- package/dist/tests/localizer.test.js.map +1 -1
- package/dist/tests/lsp/languageServer.js +1 -2
- package/dist/tests/lsp/languageServer.js.map +1 -1
- package/dist/tests/lsp/languageServerTestUtils.js +14 -14
- package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
- package/dist/tests/lsp/webpack.testserver.config.d.ts +2 -2
- package/dist/tests/parseTreeUtils.test.js.map +1 -1
- package/dist/tests/pathUtils.test.js.map +1 -1
- package/dist/tests/pyrightFileSystem.test.js.map +1 -1
- package/dist/tests/serialization.test.js +1 -2
- package/dist/tests/serialization.test.js.map +1 -1
- package/dist/tests/sourceMapperUtils.test.js.map +1 -1
- package/dist/tests/testStateUtils.js +5 -6
- package/dist/tests/testStateUtils.js.map +1 -1
- package/dist/tests/testUtils.js +8 -9
- package/dist/tests/testUtils.js.map +1 -1
- package/dist/tests/textEditUtil.test.js.map +1 -1
- package/dist/tests/tokenizer.test.js.map +1 -1
- package/dist/tests/typeEvaluator1.test.js +7 -7
- package/dist/tests/typeEvaluator1.test.js.map +1 -1
- package/dist/tests/typeEvaluator2.test.js +20 -0
- package/dist/tests/typeEvaluator2.test.js.map +1 -1
- package/dist/tests/typeEvaluator3.test.js +6 -2
- package/dist/tests/typeEvaluator3.test.js.map +1 -1
- package/dist/tests/typeEvaluator4.test.js +3 -3
- package/dist/tests/typeEvaluator5.test.js +1 -1
- package/dist/tests/typeEvaluator6.test.js +17 -9
- package/dist/tests/typeEvaluator6.test.js.map +1 -1
- package/dist/tests/typeEvaluator7.test.js +4 -0
- package/dist/tests/typeEvaluator7.test.js.map +1 -1
- package/dist/tests/typeEvaluator8.test.js +4 -0
- package/dist/tests/typeEvaluator8.test.js.map +1 -1
- package/dist/tests/uri.test.js.map +1 -1
- package/dist/workspaceFactory.js +3 -3
- package/dist/workspaceFactory.js.map +1 -1
- package/package.json +2 -2
- package/dist/analyzer/typeVarContext.d.ts +0 -48
- package/dist/analyzer/typeVarContext.js +0 -288
- package/dist/analyzer/typeVarContext.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"constraintSolver.js","sourceRoot":"","sources":["../../../../../src/analyzer/constraintSolver.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"constraintSolver.js","sourceRoot":"","sources":["../../../../../src/analyzer/constraintSolver.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import { Type, TypeVarScopeId, TypeVarType } from './types';
|
2
|
+
export interface TypeVarConstraints {
|
3
|
+
typeVar: TypeVarType;
|
4
|
+
lowerBound?: Type | undefined;
|
5
|
+
upperBound?: Type | undefined;
|
6
|
+
retainLiterals?: boolean;
|
7
|
+
}
|
8
|
+
export declare class ConstraintSet {
|
9
|
+
private _typeVarMap;
|
10
|
+
private _scopeIds;
|
11
|
+
constructor();
|
12
|
+
clone(): ConstraintSet;
|
13
|
+
isSame(other: ConstraintSet): boolean;
|
14
|
+
isEmpty(): boolean;
|
15
|
+
getScore(): number;
|
16
|
+
setBounds(typeVar: TypeVarType, lowerBound: Type | undefined, upperBound?: Type, retainLiterals?: boolean): void;
|
17
|
+
doForEachTypeVar(cb: (entry: TypeVarConstraints) => void): void;
|
18
|
+
getTypeVar(typeVar: TypeVarType): TypeVarConstraints | undefined;
|
19
|
+
getTypeVars(): TypeVarConstraints[];
|
20
|
+
addScopeId(scopeId: TypeVarScopeId): void;
|
21
|
+
hasScopeId(scopeId: TypeVarScopeId): boolean;
|
22
|
+
getScopeIds(): Set<string>;
|
23
|
+
hasUnificationVars(): boolean;
|
24
|
+
}
|
25
|
+
export declare class ConstraintTracker {
|
26
|
+
private _isLocked;
|
27
|
+
private _constraintSets;
|
28
|
+
constructor();
|
29
|
+
clone(): ConstraintTracker;
|
30
|
+
cloneWithSignature(scopeId: TypeVarScopeId): ConstraintTracker;
|
31
|
+
copyFromClone(clone: ConstraintTracker): void;
|
32
|
+
copyBounds(entry: TypeVarConstraints): void;
|
33
|
+
addConstraintSets(contexts: ConstraintSet[]): void;
|
34
|
+
isSame(other: ConstraintTracker): boolean;
|
35
|
+
lock(): void;
|
36
|
+
unlock(): void;
|
37
|
+
isLocked(): boolean;
|
38
|
+
isEmpty(): boolean;
|
39
|
+
setBounds(typeVar: TypeVarType, lowerBound: Type | undefined, upperBound?: Type, retainLiterals?: boolean): void;
|
40
|
+
getScore(): number;
|
41
|
+
getMainConstraintSet(): ConstraintSet;
|
42
|
+
getConstraintSets(): ConstraintSet[];
|
43
|
+
doForEachConstraintSet(callback: (constraintSet: ConstraintSet, index: number) => void): void;
|
44
|
+
getConstraintSet(index: number): ConstraintSet;
|
45
|
+
}
|
@@ -0,0 +1,235 @@
|
|
1
|
+
"use strict";
|
2
|
+
/*
|
3
|
+
* constraintTracker.ts
|
4
|
+
* Copyright (c) Microsoft Corporation.
|
5
|
+
* Licensed under the MIT license.
|
6
|
+
* Author: Eric Traut
|
7
|
+
*
|
8
|
+
* Module that tracks the constraints for a set of type variables.
|
9
|
+
* It is used by the constraint solver to solve for the type of
|
10
|
+
* each type variable.
|
11
|
+
*/
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
13
|
+
exports.ConstraintTracker = exports.ConstraintSet = void 0;
|
14
|
+
const debug_1 = require("../common/debug");
|
15
|
+
const typeComplexity_1 = require("./typeComplexity");
|
16
|
+
const types_1 = require("./types");
|
17
|
+
// The maximum number of constraint sets that can be associated
|
18
|
+
// with a constraint tracker. This equates to the number of overloads
|
19
|
+
// that can be captured by a ParamSpec (or multiple ParamSpecs).
|
20
|
+
// We should never hit this limit in practice, but there are certain
|
21
|
+
// pathological cases where we could, and we need to protect against
|
22
|
+
// this so it doesn't completely exhaust memory. This was previously
|
23
|
+
// set to 64, but we have seen cases where a library uses in excess
|
24
|
+
// of 300 overloads on a single function.
|
25
|
+
const maxConstraintSetCount = 1024;
|
26
|
+
// Records the constraints information for a set of type variables
|
27
|
+
// associated with a callee's signature.
|
28
|
+
class ConstraintSet {
|
29
|
+
constructor() {
|
30
|
+
this._typeVarMap = new Map();
|
31
|
+
}
|
32
|
+
clone() {
|
33
|
+
const constraintSet = new ConstraintSet();
|
34
|
+
this._typeVarMap.forEach((value) => {
|
35
|
+
constraintSet.setBounds(value.typeVar, value.lowerBound, value.upperBound, value.retainLiterals);
|
36
|
+
});
|
37
|
+
if (this._scopeIds) {
|
38
|
+
this._scopeIds.forEach((scopeId) => constraintSet.addScopeId(scopeId));
|
39
|
+
}
|
40
|
+
return constraintSet;
|
41
|
+
}
|
42
|
+
isSame(other) {
|
43
|
+
if (this._typeVarMap.size !== other._typeVarMap.size) {
|
44
|
+
return false;
|
45
|
+
}
|
46
|
+
function typesMatch(type1, type2) {
|
47
|
+
if (!type1 || !type2) {
|
48
|
+
return type1 === type2;
|
49
|
+
}
|
50
|
+
return (0, types_1.isTypeSame)(type1, type2);
|
51
|
+
}
|
52
|
+
let isSame = true;
|
53
|
+
this._typeVarMap.forEach((value, key) => {
|
54
|
+
const otherValue = other._typeVarMap.get(key);
|
55
|
+
if (!otherValue ||
|
56
|
+
!typesMatch(value.lowerBound, otherValue.lowerBound) ||
|
57
|
+
!typesMatch(value.upperBound, otherValue.upperBound)) {
|
58
|
+
isSame = false;
|
59
|
+
}
|
60
|
+
});
|
61
|
+
return isSame;
|
62
|
+
}
|
63
|
+
isEmpty() {
|
64
|
+
return this._typeVarMap.size === 0;
|
65
|
+
}
|
66
|
+
// Provides a "score" - a value that values completeness (number
|
67
|
+
// of type variables that are assigned) and simplicity.
|
68
|
+
getScore() {
|
69
|
+
let score = 0;
|
70
|
+
// Sum the scores for the defined type vars.
|
71
|
+
this._typeVarMap.forEach((entry) => {
|
72
|
+
var _a;
|
73
|
+
// Add 1 to the score for each type variable defined.
|
74
|
+
score += 1;
|
75
|
+
// Add a fractional amount based on the simplicity of the definition.
|
76
|
+
// The more complex, the lower the score. In the spirit of Occam's
|
77
|
+
// Razor, we always want to favor simple answers.
|
78
|
+
const typeVarType = (_a = entry.lowerBound) !== null && _a !== void 0 ? _a : entry.upperBound;
|
79
|
+
if (typeVarType) {
|
80
|
+
score += 1.0 - (0, typeComplexity_1.getComplexityScoreForType)(typeVarType);
|
81
|
+
}
|
82
|
+
});
|
83
|
+
return score;
|
84
|
+
}
|
85
|
+
setBounds(typeVar, lowerBound, upperBound, retainLiterals) {
|
86
|
+
const key = types_1.TypeVarType.getNameWithScope(typeVar);
|
87
|
+
this._typeVarMap.set(key, {
|
88
|
+
typeVar,
|
89
|
+
lowerBound,
|
90
|
+
upperBound,
|
91
|
+
retainLiterals,
|
92
|
+
});
|
93
|
+
}
|
94
|
+
doForEachTypeVar(cb) {
|
95
|
+
this._typeVarMap.forEach(cb);
|
96
|
+
}
|
97
|
+
getTypeVar(typeVar) {
|
98
|
+
const key = types_1.TypeVarType.getNameWithScope(typeVar);
|
99
|
+
return this._typeVarMap.get(key);
|
100
|
+
}
|
101
|
+
getTypeVars() {
|
102
|
+
const entries = [];
|
103
|
+
this._typeVarMap.forEach((entry) => {
|
104
|
+
entries.push(entry);
|
105
|
+
});
|
106
|
+
return entries;
|
107
|
+
}
|
108
|
+
addScopeId(scopeId) {
|
109
|
+
if (!this._scopeIds) {
|
110
|
+
this._scopeIds = new Set();
|
111
|
+
}
|
112
|
+
this._scopeIds.add(scopeId);
|
113
|
+
}
|
114
|
+
hasScopeId(scopeId) {
|
115
|
+
if (!this._scopeIds) {
|
116
|
+
return false;
|
117
|
+
}
|
118
|
+
return this._scopeIds.has(scopeId);
|
119
|
+
}
|
120
|
+
getScopeIds() {
|
121
|
+
return new Set(this._scopeIds);
|
122
|
+
}
|
123
|
+
hasUnificationVars() {
|
124
|
+
for (const entry of this._typeVarMap.values()) {
|
125
|
+
if (types_1.TypeVarType.isUnification(entry.typeVar)) {
|
126
|
+
return true;
|
127
|
+
}
|
128
|
+
}
|
129
|
+
return false;
|
130
|
+
}
|
131
|
+
}
|
132
|
+
exports.ConstraintSet = ConstraintSet;
|
133
|
+
class ConstraintTracker {
|
134
|
+
constructor() {
|
135
|
+
this._isLocked = false;
|
136
|
+
this._constraintSets = [new ConstraintSet()];
|
137
|
+
}
|
138
|
+
clone() {
|
139
|
+
const newTypeVarMap = new ConstraintTracker();
|
140
|
+
newTypeVarMap._constraintSets = this._constraintSets.map((set) => set.clone());
|
141
|
+
newTypeVarMap._isLocked = this._isLocked;
|
142
|
+
return newTypeVarMap;
|
143
|
+
}
|
144
|
+
cloneWithSignature(scopeId) {
|
145
|
+
const cloned = this.clone();
|
146
|
+
if (scopeId) {
|
147
|
+
const filteredSets = this._constraintSets.filter((context) => context.hasScopeId(scopeId));
|
148
|
+
if (filteredSets.length > 0) {
|
149
|
+
cloned._constraintSets = filteredSets;
|
150
|
+
}
|
151
|
+
else {
|
152
|
+
cloned._constraintSets.forEach((context) => {
|
153
|
+
context.addScopeId(scopeId);
|
154
|
+
});
|
155
|
+
}
|
156
|
+
}
|
157
|
+
return cloned;
|
158
|
+
}
|
159
|
+
// Copies a cloned type var context back into this object.
|
160
|
+
copyFromClone(clone) {
|
161
|
+
this._constraintSets = clone._constraintSets.map((context) => context.clone());
|
162
|
+
this._isLocked = clone._isLocked;
|
163
|
+
}
|
164
|
+
copyBounds(entry) {
|
165
|
+
this._constraintSets.forEach((set) => {
|
166
|
+
set.setBounds(entry.typeVar, entry.lowerBound, entry.upperBound, entry.retainLiterals);
|
167
|
+
});
|
168
|
+
}
|
169
|
+
// Copy the specified constraint sets into this type var context.
|
170
|
+
addConstraintSets(contexts) {
|
171
|
+
(0, debug_1.assert)(contexts.length > 0);
|
172
|
+
// Limit the number of constraint sets. There are rare circumstances
|
173
|
+
// where this can grow to unbounded numbers and exhaust memory.
|
174
|
+
if (contexts.length < maxConstraintSetCount) {
|
175
|
+
this._constraintSets = Array.from(contexts);
|
176
|
+
}
|
177
|
+
}
|
178
|
+
isSame(other) {
|
179
|
+
if (other._constraintSets.length !== this._constraintSets.length) {
|
180
|
+
return false;
|
181
|
+
}
|
182
|
+
return this._constraintSets.every((set, index) => set.isSame(other._constraintSets[index]));
|
183
|
+
}
|
184
|
+
lock() {
|
185
|
+
// Locks the type var map, preventing any further changes.
|
186
|
+
(0, debug_1.assert)(!this._isLocked);
|
187
|
+
this._isLocked = true;
|
188
|
+
}
|
189
|
+
unlock() {
|
190
|
+
// Unlocks the type var map, allowing further changes.
|
191
|
+
this._isLocked = false;
|
192
|
+
}
|
193
|
+
isLocked() {
|
194
|
+
return this._isLocked;
|
195
|
+
}
|
196
|
+
isEmpty() {
|
197
|
+
return this._constraintSets.every((set) => set.isEmpty());
|
198
|
+
}
|
199
|
+
setBounds(typeVar, lowerBound, upperBound, retainLiterals) {
|
200
|
+
(0, debug_1.assert)(!this._isLocked);
|
201
|
+
return this._constraintSets.forEach((set) => {
|
202
|
+
set.setBounds(typeVar, lowerBound, upperBound, retainLiterals);
|
203
|
+
});
|
204
|
+
}
|
205
|
+
getScore() {
|
206
|
+
let total = 0;
|
207
|
+
this._constraintSets.forEach((set) => {
|
208
|
+
total += set.getScore();
|
209
|
+
});
|
210
|
+
// Return the average score among all constraint sets.
|
211
|
+
return total / this._constraintSets.length;
|
212
|
+
}
|
213
|
+
getMainConstraintSet() {
|
214
|
+
return this._constraintSets[0];
|
215
|
+
}
|
216
|
+
getConstraintSets() {
|
217
|
+
return this._constraintSets;
|
218
|
+
}
|
219
|
+
doForEachConstraintSet(callback) {
|
220
|
+
const wasLocked = this.isLocked();
|
221
|
+
this.unlock();
|
222
|
+
this.getConstraintSets().forEach((set, index) => {
|
223
|
+
callback(set, index);
|
224
|
+
});
|
225
|
+
if (wasLocked) {
|
226
|
+
this.lock();
|
227
|
+
}
|
228
|
+
}
|
229
|
+
getConstraintSet(index) {
|
230
|
+
(0, debug_1.assert)(index >= 0 && index < this._constraintSets.length);
|
231
|
+
return this._constraintSets[index];
|
232
|
+
}
|
233
|
+
}
|
234
|
+
exports.ConstraintTracker = ConstraintTracker;
|
235
|
+
//# sourceMappingURL=constraintTracker.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"constraintTracker.js","sourceRoot":"","sources":["../../../../../src/analyzer/constraintTracker.ts"],"names":[],"mappings":"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"}
|
@@ -11,24 +11,24 @@
|
|
11
11
|
*
|
12
12
|
*/
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
14
|
-
exports.
|
14
|
+
exports.hasConstructorTransform = hasConstructorTransform;
|
15
|
+
exports.applyConstructorTransform = applyConstructorTransform;
|
15
16
|
const collectionUtils_1 = require("../common/collectionUtils");
|
16
17
|
const diagnostic_1 = require("../common/diagnostic");
|
17
18
|
const diagnosticRules_1 = require("../common/diagnosticRules");
|
18
19
|
const localize_1 = require("../localization/localize");
|
20
|
+
const constraintTracker_1 = require("./constraintTracker");
|
19
21
|
const constructors_1 = require("./constructors");
|
20
22
|
const parameterUtils_1 = require("./parameterUtils");
|
21
23
|
const symbol_1 = require("./symbol");
|
22
24
|
const types_1 = require("./types");
|
23
25
|
const typeUtils_1 = require("./typeUtils");
|
24
|
-
const typeVarContext_1 = require("./typeVarContext");
|
25
26
|
function hasConstructorTransform(classType) {
|
26
27
|
if (classType.shared.fullName === 'functools.partial') {
|
27
28
|
return true;
|
28
29
|
}
|
29
30
|
return false;
|
30
31
|
}
|
31
|
-
exports.hasConstructorTransform = hasConstructorTransform;
|
32
32
|
function applyConstructorTransform(evaluator, errorNode, argList, classType, result) {
|
33
33
|
if (classType.shared.fullName === 'functools.partial') {
|
34
34
|
return applyPartialTransform(evaluator, errorNode, argList, result);
|
@@ -36,7 +36,6 @@ function applyConstructorTransform(evaluator, errorNode, argList, classType, res
|
|
36
36
|
// By default, return the result unmodified.
|
37
37
|
return result;
|
38
38
|
}
|
39
|
-
exports.applyConstructorTransform = applyConstructorTransform;
|
40
39
|
// Applies a transform for the functools.partial class constructor.
|
41
40
|
function applyPartialTransform(evaluator, errorNode, argList, result) {
|
42
41
|
// We assume that the normal return result is a functools.partial class instance.
|
@@ -84,11 +83,12 @@ function applyPartialTransform(evaluator, errorNode, argList, result) {
|
|
84
83
|
argumentErrors: transformResult.argumentErrors,
|
85
84
|
};
|
86
85
|
}
|
87
|
-
if ((0, types_1.
|
86
|
+
if ((0, types_1.isOverloaded)(origFunctionType)) {
|
88
87
|
const applicableOverloads = [];
|
88
|
+
const overloads = types_1.OverloadedType.getOverloads(origFunctionType);
|
89
89
|
let sawArgErrors = false;
|
90
90
|
// Apply the partial transform to each of the functions in the overload.
|
91
|
-
|
91
|
+
overloads.forEach((overload) => {
|
92
92
|
// Apply the transform to this overload, but don't report errors.
|
93
93
|
const transformResult = applyPartialTransformToFunction(evaluator,
|
94
94
|
/* errorNode */ undefined, argList, callMemberType, overload);
|
@@ -102,9 +102,9 @@ function applyPartialTransform(evaluator, errorNode, argList, result) {
|
|
102
102
|
}
|
103
103
|
});
|
104
104
|
if (applicableOverloads.length === 0) {
|
105
|
-
if (sawArgErrors) {
|
105
|
+
if (sawArgErrors && overloads.length > 0) {
|
106
106
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportCallIssue, localize_1.LocMessage.noOverload().format({
|
107
|
-
name:
|
107
|
+
name: overloads[0].shared.name,
|
108
108
|
}), errorNode);
|
109
109
|
}
|
110
110
|
return result;
|
@@ -116,7 +116,7 @@ function applyPartialTransform(evaluator, errorNode, argList, result) {
|
|
116
116
|
synthesizedCallType = applicableOverloads[0];
|
117
117
|
}
|
118
118
|
else {
|
119
|
-
synthesizedCallType = types_1.
|
119
|
+
synthesizedCallType = types_1.OverloadedType.create(
|
120
120
|
// Set the "overloaded" flag for each of the __call__ overloads.
|
121
121
|
applicableOverloads.map((overload) => types_1.FunctionType.cloneWithNewFlags(overload, overload.shared.flags | 256 /* FunctionTypeFlags.Overloaded */)));
|
122
122
|
}
|
@@ -136,7 +136,7 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
|
|
136
136
|
// Verify the types of the provided arguments.
|
137
137
|
let argumentErrors = false;
|
138
138
|
let reportedPositionalError = false;
|
139
|
-
const
|
139
|
+
const constraints = new constraintTracker_1.ConstraintTracker();
|
140
140
|
const remainingArgsList = argList.slice(1);
|
141
141
|
remainingArgsList.forEach((arg, argIndex) => {
|
142
142
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
@@ -149,11 +149,11 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
|
|
149
149
|
if (argIndex >= paramListDetails.params.length ||
|
150
150
|
paramListDetails.params[argIndex].kind === parameterUtils_1.ParamKind.Keyword) {
|
151
151
|
if (paramListDetails.argsIndex !== undefined) {
|
152
|
-
const paramType = types_1.FunctionType.
|
152
|
+
const paramType = types_1.FunctionType.getParamType(origFunctionType, paramListDetails.params[paramListDetails.argsIndex].index);
|
153
153
|
const diag = new diagnostic_1.DiagnosticAddendum();
|
154
154
|
const argTypeResult = evaluator.getTypeOfExpression(arg.valueExpression,
|
155
155
|
/* flags */ undefined, (0, typeUtils_1.makeInferenceContext)(paramType));
|
156
|
-
if (!evaluator.assignType(paramType, argTypeResult.type, diag,
|
156
|
+
if (!evaluator.assignType(paramType, argTypeResult.type, diag, constraints)) {
|
157
157
|
if (errorNode) {
|
158
158
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportArgumentType, localize_1.LocMessage.argAssignmentParamFunction().format({
|
159
159
|
argType: evaluator.printType(argTypeResult.type),
|
@@ -181,12 +181,12 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
|
|
181
181
|
}
|
182
182
|
}
|
183
183
|
else {
|
184
|
-
const paramType = types_1.FunctionType.
|
184
|
+
const paramType = types_1.FunctionType.getParamType(origFunctionType, argIndex);
|
185
185
|
const diag = new diagnostic_1.DiagnosticAddendum();
|
186
186
|
const paramName = (_d = paramListDetails.params[argIndex].param.name) !== null && _d !== void 0 ? _d : '';
|
187
187
|
const argTypeResult = evaluator.getTypeOfExpression(arg.valueExpression,
|
188
188
|
/* flags */ undefined, (0, typeUtils_1.makeInferenceContext)(paramType));
|
189
|
-
if (!evaluator.assignType(paramType, argTypeResult.type, diag,
|
189
|
+
if (!evaluator.assignType(paramType, argTypeResult.type, diag, constraints)) {
|
190
190
|
if (errorNode) {
|
191
191
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportArgumentType, localize_1.LocMessage.argAssignmentParamFunction().format({
|
192
192
|
argType: evaluator.printType(argTypeResult.type),
|
@@ -212,11 +212,11 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
|
|
212
212
|
argumentErrors = true;
|
213
213
|
}
|
214
214
|
else {
|
215
|
-
const paramType = types_1.FunctionType.
|
215
|
+
const paramType = types_1.FunctionType.getParamType(origFunctionType, paramListDetails.params[paramListDetails.kwargsIndex].index);
|
216
216
|
const diag = new diagnostic_1.DiagnosticAddendum();
|
217
217
|
const argTypeResult = evaluator.getTypeOfExpression(arg.valueExpression,
|
218
218
|
/* flags */ undefined, (0, typeUtils_1.makeInferenceContext)(paramType));
|
219
|
-
if (!evaluator.assignType(paramType, argTypeResult.type, diag,
|
219
|
+
if (!evaluator.assignType(paramType, argTypeResult.type, diag, constraints)) {
|
220
220
|
if (errorNode) {
|
221
221
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportArgumentType, localize_1.LocMessage.argAssignmentParamFunction().format({
|
222
222
|
argType: evaluator.printType(argTypeResult.type),
|
@@ -231,7 +231,7 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
|
|
231
231
|
}
|
232
232
|
else {
|
233
233
|
const paramName = matchingParam.param.name;
|
234
|
-
const paramType =
|
234
|
+
const paramType = matchingParam.type;
|
235
235
|
if (paramMap.has(paramName)) {
|
236
236
|
if (errorNode) {
|
237
237
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportCallIssue, localize_1.LocMessage.paramAlreadyAssigned().format({ name: arg.name.d.value }), arg.name);
|
@@ -242,7 +242,7 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
|
|
242
242
|
const diag = new diagnostic_1.DiagnosticAddendum();
|
243
243
|
const argTypeResult = evaluator.getTypeOfExpression(arg.valueExpression,
|
244
244
|
/* flags */ undefined, (0, typeUtils_1.makeInferenceContext)(paramType));
|
245
|
-
if (!evaluator.assignType(paramType, argTypeResult.type, diag,
|
245
|
+
if (!evaluator.assignType(paramType, argTypeResult.type, diag, constraints)) {
|
246
246
|
if (errorNode) {
|
247
247
|
evaluator.addDiagnostic(diagnosticRules_1.DiagnosticRule.reportArgumentType, localize_1.LocMessage.argAssignmentParamFunction().format({
|
248
248
|
argType: evaluator.printType(argTypeResult.type),
|
@@ -258,21 +258,21 @@ function applyPartialTransformToFunction(evaluator, errorNode, argList, partialC
|
|
258
258
|
}
|
259
259
|
}
|
260
260
|
});
|
261
|
-
const specializedFunctionType =
|
261
|
+
const specializedFunctionType = evaluator.solveAndApplyConstraints(origFunctionType, constraints);
|
262
262
|
if (!(0, types_1.isFunction)(specializedFunctionType)) {
|
263
263
|
return undefined;
|
264
264
|
}
|
265
265
|
// Create a new parameter list that omits parameters that have been
|
266
266
|
// populated already.
|
267
267
|
const updatedParamList = specializedFunctionType.shared.parameters.map((param, index) => {
|
268
|
-
const
|
269
|
-
specializedParam.type = types_1.FunctionType.getEffectiveParamType(specializedFunctionType, index);
|
268
|
+
const newType = types_1.FunctionType.getParamType(specializedFunctionType, index);
|
270
269
|
// If it's a keyword parameter that has been assigned a value through
|
271
270
|
// the "partial" mechanism, mark it has having a default value.
|
271
|
+
let newDefaultType = types_1.FunctionType.getParamDefaultType(specializedFunctionType, index);
|
272
272
|
if (param.name && paramMap.get(param.name)) {
|
273
|
-
|
273
|
+
newDefaultType = types_1.AnyType.create(/* isEllipsis */ true);
|
274
274
|
}
|
275
|
-
return
|
275
|
+
return types_1.FunctionParam.create(param.category, newType, param.flags, param.name, newDefaultType);
|
276
276
|
});
|
277
277
|
const unassignedParamList = updatedParamList.filter((param) => {
|
278
278
|
if (param.category === 2 /* ParamCategory.KwargsDict */) {
|