@zzzen/pyright-internal 1.2.0-dev.20240804 → 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.
Files changed (732) hide show
  1. package/dist/analyzer/analysis.js +2 -2
  2. package/dist/analyzer/analysis.js.map +1 -1
  3. package/dist/analyzer/analyzerFileInfo.js +1 -2
  4. package/dist/analyzer/analyzerFileInfo.js.map +1 -1
  5. package/dist/analyzer/analyzerNodeInfo.js +20 -21
  6. package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
  7. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  8. package/dist/analyzer/binder.js +1 -1
  9. package/dist/analyzer/binder.js.map +1 -1
  10. package/dist/analyzer/cacheManager.d.ts +0 -1
  11. package/dist/analyzer/cacheManager.js.map +1 -1
  12. package/dist/analyzer/checker.d.ts +2 -0
  13. package/dist/analyzer/checker.js +268 -203
  14. package/dist/analyzer/checker.js.map +1 -1
  15. package/dist/analyzer/circularDependency.js.map +1 -1
  16. package/dist/analyzer/codeFlowEngine.js +6 -6
  17. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  18. package/dist/analyzer/codeFlowTypes.d.ts +17 -17
  19. package/dist/analyzer/codeFlowTypes.js +5 -5
  20. package/dist/analyzer/codeFlowTypes.js.map +1 -1
  21. package/dist/analyzer/codeFlowUtils.js +1 -2
  22. package/dist/analyzer/codeFlowUtils.js.map +1 -1
  23. package/dist/analyzer/commentUtils.js +1 -2
  24. package/dist/analyzer/commentUtils.js.map +1 -1
  25. package/dist/analyzer/constraintSolution.d.ts +2 -1
  26. package/dist/analyzer/constraintSolution.js +7 -1
  27. package/dist/analyzer/constraintSolution.js.map +1 -1
  28. package/dist/analyzer/constraintSolver.d.ts +1 -2
  29. package/dist/analyzer/constraintSolver.js +137 -161
  30. package/dist/analyzer/constraintSolver.js.map +1 -1
  31. package/dist/analyzer/constraintTracker.d.ts +5 -4
  32. package/dist/analyzer/constraintTracker.js +14 -9
  33. package/dist/analyzer/constraintTracker.js.map +1 -1
  34. package/dist/analyzer/constructorTransform.js +8 -8
  35. package/dist/analyzer/constructorTransform.js.map +1 -1
  36. package/dist/analyzer/constructors.js +15 -16
  37. package/dist/analyzer/constructors.js.map +1 -1
  38. package/dist/analyzer/dataClasses.js +37 -26
  39. package/dist/analyzer/dataClasses.js.map +1 -1
  40. package/dist/analyzer/declaration.js +11 -11
  41. package/dist/analyzer/declaration.js.map +1 -1
  42. package/dist/analyzer/declarationUtils.js +8 -9
  43. package/dist/analyzer/declarationUtils.js.map +1 -1
  44. package/dist/analyzer/decorators.d.ts +1 -1
  45. package/dist/analyzer/decorators.js +33 -29
  46. package/dist/analyzer/decorators.js.map +1 -1
  47. package/dist/analyzer/docStringConversion.js +2 -3
  48. package/dist/analyzer/docStringConversion.js.map +1 -1
  49. package/dist/analyzer/docStringUtils.js +2 -3
  50. package/dist/analyzer/docStringUtils.js.map +1 -1
  51. package/dist/analyzer/enums.js +17 -14
  52. package/dist/analyzer/enums.js.map +1 -1
  53. package/dist/analyzer/functionTransform.d.ts +2 -2
  54. package/dist/analyzer/functionTransform.js +1 -2
  55. package/dist/analyzer/functionTransform.js.map +1 -1
  56. package/dist/analyzer/importResolver.d.ts +0 -1
  57. package/dist/analyzer/importResolver.js +5 -5
  58. package/dist/analyzer/importResolver.js.map +1 -1
  59. package/dist/analyzer/importStatementUtils.js +15 -15
  60. package/dist/analyzer/importStatementUtils.js.map +1 -1
  61. package/dist/analyzer/namedTuples.js +2 -3
  62. package/dist/analyzer/namedTuples.js.map +1 -1
  63. package/dist/analyzer/operations.js +6 -7
  64. package/dist/analyzer/operations.js.map +1 -1
  65. package/dist/analyzer/packageTypeReport.d.ts +3 -3
  66. package/dist/analyzer/packageTypeReport.js +2 -2
  67. package/dist/analyzer/packageTypeReport.js.map +1 -1
  68. package/dist/analyzer/packageTypeVerifier.js +9 -9
  69. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  70. package/dist/analyzer/parameterUtils.js +5 -5
  71. package/dist/analyzer/parameterUtils.js.map +1 -1
  72. package/dist/analyzer/parentDirectoryCache.js.map +1 -1
  73. package/dist/analyzer/parseTreeUtils.js +94 -92
  74. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  75. package/dist/analyzer/parseTreeWalker.js +2 -2
  76. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  77. package/dist/analyzer/patternMatching.js +18 -22
  78. package/dist/analyzer/patternMatching.js.map +1 -1
  79. package/dist/analyzer/program.js +5 -1
  80. package/dist/analyzer/program.js.map +1 -1
  81. package/dist/analyzer/properties.js +7 -9
  82. package/dist/analyzer/properties.js.map +1 -1
  83. package/dist/analyzer/protocols.d.ts +2 -2
  84. package/dist/analyzer/protocols.js +26 -30
  85. package/dist/analyzer/protocols.js.map +1 -1
  86. package/dist/analyzer/pyTypedUtils.js +2 -3
  87. package/dist/analyzer/pyTypedUtils.js.map +1 -1
  88. package/dist/analyzer/pythonPathUtils.js +6 -6
  89. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  90. package/dist/analyzer/scope.js.map +1 -1
  91. package/dist/analyzer/scopeUtils.js +5 -6
  92. package/dist/analyzer/scopeUtils.js.map +1 -1
  93. package/dist/analyzer/service.d.ts +3 -0
  94. package/dist/analyzer/service.js +173 -103
  95. package/dist/analyzer/service.js.map +1 -1
  96. package/dist/analyzer/serviceUtils.js +5 -5
  97. package/dist/analyzer/serviceUtils.js.map +1 -1
  98. package/dist/analyzer/sourceFile.js.map +1 -1
  99. package/dist/analyzer/sourceFileInfo.js.map +1 -1
  100. package/dist/analyzer/sourceFileInfoUtils.js +4 -5
  101. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  102. package/dist/analyzer/sourceMapper.js +5 -4
  103. package/dist/analyzer/sourceMapper.js.map +1 -1
  104. package/dist/analyzer/sourceMapperUtils.js +1 -2
  105. package/dist/analyzer/sourceMapperUtils.js.map +1 -1
  106. package/dist/analyzer/staticExpressions.js +2 -3
  107. package/dist/analyzer/staticExpressions.js.map +1 -1
  108. package/dist/analyzer/symbol.js.map +1 -1
  109. package/dist/analyzer/symbolNameUtils.js +8 -9
  110. package/dist/analyzer/symbolNameUtils.js.map +1 -1
  111. package/dist/analyzer/symbolUtils.js +4 -5
  112. package/dist/analyzer/symbolUtils.js.map +1 -1
  113. package/dist/analyzer/testWalker.js.map +1 -1
  114. package/dist/analyzer/tracePrinter.js +5 -4
  115. package/dist/analyzer/tracePrinter.js.map +1 -1
  116. package/dist/analyzer/tuples.d.ts +1 -1
  117. package/dist/analyzer/tuples.js +6 -7
  118. package/dist/analyzer/tuples.js.map +1 -1
  119. package/dist/analyzer/typeCacheUtils.js.map +1 -1
  120. package/dist/analyzer/typeComplexity.js +2 -3
  121. package/dist/analyzer/typeComplexity.js.map +1 -1
  122. package/dist/analyzer/typeDocStringUtils.d.ts +2 -2
  123. package/dist/analyzer/typeDocStringUtils.js +34 -25
  124. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  125. package/dist/analyzer/typeEvaluator.js +419 -419
  126. package/dist/analyzer/typeEvaluator.js.map +1 -1
  127. package/dist/analyzer/typeEvaluatorTypes.d.ts +8 -10
  128. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  129. package/dist/analyzer/typeEvaluatorWithTracker.js +1 -2
  130. package/dist/analyzer/typeEvaluatorWithTracker.js.map +1 -1
  131. package/dist/analyzer/typeGuards.js +31 -30
  132. package/dist/analyzer/typeGuards.js.map +1 -1
  133. package/dist/analyzer/typePrinter.js +11 -11
  134. package/dist/analyzer/typePrinter.js.map +1 -1
  135. package/dist/analyzer/typeStubWriter.js.map +1 -1
  136. package/dist/analyzer/typeUtils.d.ts +10 -14
  137. package/dist/analyzer/typeUtils.js +166 -215
  138. package/dist/analyzer/typeUtils.js.map +1 -1
  139. package/dist/analyzer/typeWalker.d.ts +2 -2
  140. package/dist/analyzer/typeWalker.js +9 -4
  141. package/dist/analyzer/typeWalker.js.map +1 -1
  142. package/dist/analyzer/typedDicts.js +41 -41
  143. package/dist/analyzer/typedDicts.js.map +1 -1
  144. package/dist/analyzer/types.d.ts +18 -16
  145. package/dist/analyzer/types.js +71 -74
  146. package/dist/analyzer/types.js.map +1 -1
  147. package/dist/backgroundAnalysisBase.d.ts +0 -1
  148. package/dist/backgroundAnalysisBase.js.map +1 -1
  149. package/dist/backgroundThreadBase.d.ts +0 -1
  150. package/dist/backgroundThreadBase.js +7 -7
  151. package/dist/backgroundThreadBase.js.map +1 -1
  152. package/dist/commands/commandController.js.map +1 -1
  153. package/dist/commands/createTypeStub.js.map +1 -1
  154. package/dist/commands/dumpFileDebugInfoCommand.js +2 -2
  155. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  156. package/dist/commands/quickActionCommand.js.map +1 -1
  157. package/dist/common/cancellationUtils.js +9 -9
  158. package/dist/common/cancellationUtils.js.map +1 -1
  159. package/dist/common/chokidarFileWatcherProvider.js +3 -3
  160. package/dist/common/chokidarFileWatcherProvider.js.map +1 -1
  161. package/dist/common/collectionUtils.js +23 -23
  162. package/dist/common/collectionUtils.js.map +1 -1
  163. package/dist/common/commandLineOptions.d.ts +19 -12
  164. package/dist/common/commandLineOptions.js +26 -9
  165. package/dist/common/commandLineOptions.js.map +1 -1
  166. package/dist/common/commandUtils.js +1 -2
  167. package/dist/common/commandUtils.js.map +1 -1
  168. package/dist/common/configOptions.d.ts +2 -2
  169. package/dist/common/configOptions.js +30 -40
  170. package/dist/common/configOptions.js.map +1 -1
  171. package/dist/common/console.js +4 -4
  172. package/dist/common/console.js.map +1 -1
  173. package/dist/common/core.js +21 -21
  174. package/dist/common/core.js.map +1 -1
  175. package/dist/common/crypto.js +1 -2
  176. package/dist/common/crypto.js.map +1 -1
  177. package/dist/common/debug.js +9 -10
  178. package/dist/common/debug.js.map +1 -1
  179. package/dist/common/deferred.js +3 -4
  180. package/dist/common/deferred.js.map +1 -1
  181. package/dist/common/diagnostic.js +3 -3
  182. package/dist/common/diagnostic.js.map +1 -1
  183. package/dist/common/diagnosticSink.js.map +1 -1
  184. package/dist/common/envVarUtils.js +2 -3
  185. package/dist/common/envVarUtils.js.map +1 -1
  186. package/dist/common/fileBasedCancellationUtils.js +4 -4
  187. package/dist/common/fileBasedCancellationUtils.js.map +1 -1
  188. package/dist/common/fileSystem.d.ts +0 -2
  189. package/dist/common/fileWatcher.js +2 -2
  190. package/dist/common/fileWatcher.js.map +1 -1
  191. package/dist/common/fullAccessHost.js.map +1 -1
  192. package/dist/common/logTracker.js +2 -2
  193. package/dist/common/logTracker.js.map +1 -1
  194. package/dist/common/lspUtils.d.ts +1 -1
  195. package/dist/common/lspUtils.js +3 -4
  196. package/dist/common/lspUtils.js.map +1 -1
  197. package/dist/common/memUtils.js +2 -2
  198. package/dist/common/memUtils.js.map +1 -1
  199. package/dist/common/pathUtils.js +32 -32
  200. package/dist/common/pathUtils.js.map +1 -1
  201. package/dist/common/positionUtils.js +7 -8
  202. package/dist/common/positionUtils.js.map +1 -1
  203. package/dist/common/progressReporter.js.map +1 -1
  204. package/dist/common/pythonVersion.js.map +1 -1
  205. package/dist/common/realFileSystem.d.ts +0 -2
  206. package/dist/common/realFileSystem.js +2 -2
  207. package/dist/common/realFileSystem.js.map +1 -1
  208. package/dist/common/serviceProvider.js.map +1 -1
  209. package/dist/common/serviceProviderExtensions.js +1 -2
  210. package/dist/common/serviceProviderExtensions.js.map +1 -1
  211. package/dist/common/stringUtils.js +12 -13
  212. package/dist/common/stringUtils.js.map +1 -1
  213. package/dist/common/textEditTracker.js.map +1 -1
  214. package/dist/common/textRange.js +13 -13
  215. package/dist/common/textRange.js.map +1 -1
  216. package/dist/common/textRangeCollection.js +2 -2
  217. package/dist/common/textRangeCollection.js.map +1 -1
  218. package/dist/common/timing.js.map +1 -1
  219. package/dist/common/uri/baseUri.js.map +1 -1
  220. package/dist/common/uri/fileUri.js.map +1 -1
  221. package/dist/common/uri/memoization.js +3 -4
  222. package/dist/common/uri/memoization.js.map +1 -1
  223. package/dist/common/uri/uri.js.map +1 -1
  224. package/dist/common/uri/uriUtils.d.ts +0 -1
  225. package/dist/common/uri/uriUtils.js +20 -20
  226. package/dist/common/uri/uriUtils.js.map +1 -1
  227. package/dist/common/uri/webUri.js.map +1 -1
  228. package/dist/common/workspaceEditUtils.js +8 -9
  229. package/dist/common/workspaceEditUtils.js.map +1 -1
  230. package/dist/languageServerBase.js.map +1 -1
  231. package/dist/languageService/analyzerServiceExecutor.js +30 -29
  232. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  233. package/dist/languageService/autoImporter.js +4 -4
  234. package/dist/languageService/autoImporter.js.map +1 -1
  235. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  236. package/dist/languageService/codeActionProvider.js.map +1 -1
  237. package/dist/languageService/completionProvider.js +2 -2
  238. package/dist/languageService/completionProvider.js.map +1 -1
  239. package/dist/languageService/completionProviderUtils.js +4 -5
  240. package/dist/languageService/completionProviderUtils.js.map +1 -1
  241. package/dist/languageService/definitionProvider.js +5 -5
  242. package/dist/languageService/definitionProvider.js.map +1 -1
  243. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  244. package/dist/languageService/documentSymbolCollector.js +3 -3
  245. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  246. package/dist/languageService/documentSymbolProvider.js +2 -2
  247. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  248. package/dist/languageService/dynamicFeature.js.map +1 -1
  249. package/dist/languageService/fileWatcherDynamicFeature.js.map +1 -1
  250. package/dist/languageService/hoverProvider.js +6 -6
  251. package/dist/languageService/hoverProvider.js.map +1 -1
  252. package/dist/languageService/importSorter.js.map +1 -1
  253. package/dist/languageService/navigationUtils.js +3 -4
  254. package/dist/languageService/navigationUtils.js.map +1 -1
  255. package/dist/languageService/quickActions.js +1 -2
  256. package/dist/languageService/quickActions.js.map +1 -1
  257. package/dist/languageService/referencesProvider.js.map +1 -1
  258. package/dist/languageService/renameProvider.js.map +1 -1
  259. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  260. package/dist/languageService/symbolIndexer.js.map +1 -1
  261. package/dist/languageService/tooltipUtils.d.ts +5 -5
  262. package/dist/languageService/tooltipUtils.js +31 -31
  263. package/dist/languageService/tooltipUtils.js.map +1 -1
  264. package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
  265. package/dist/localization/localize.d.ts +3 -0
  266. package/dist/localization/localize.js +7 -6
  267. package/dist/localization/localize.js.map +1 -1
  268. package/dist/localization/package.nls.en-us.json +2 -1
  269. package/dist/nodeMain.js +1 -2
  270. package/dist/nodeMain.js.map +1 -1
  271. package/dist/nodeServer.js +2 -3
  272. package/dist/nodeServer.js.map +1 -1
  273. package/dist/parser/characterStream.js.map +1 -1
  274. package/dist/parser/characters.js +10 -11
  275. package/dist/parser/characters.js.map +1 -1
  276. package/dist/parser/parseNodes.d.ts +8 -8
  277. package/dist/parser/parseNodes.js +5 -5
  278. package/dist/parser/parseNodes.js.map +1 -1
  279. package/dist/parser/parser.js.map +1 -1
  280. package/dist/parser/stringTokenUtils.js +2 -2
  281. package/dist/parser/stringTokenUtils.js.map +1 -1
  282. package/dist/parser/tokenizer.js.map +1 -1
  283. package/dist/parser/unicode.js +468 -468
  284. package/dist/parser/unicode.js.map +1 -1
  285. package/dist/pprof/profiler.js +2 -3
  286. package/dist/pprof/profiler.js.map +1 -1
  287. package/dist/pyright.js +22 -23
  288. package/dist/pyright.js.map +1 -1
  289. package/dist/pyrightFileSystem.d.ts +0 -2
  290. package/dist/pyrightFileSystem.js.map +1 -1
  291. package/dist/readonlyAugmentedFileSystem.d.ts +0 -2
  292. package/dist/readonlyAugmentedFileSystem.js.map +1 -1
  293. package/dist/server.js.map +1 -1
  294. package/dist/tests/cacheManager.test.js.map +1 -1
  295. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  296. package/dist/tests/checker.test.js +3 -3
  297. package/dist/tests/checker.test.js.map +1 -1
  298. package/dist/tests/classDeclaration.test.js.map +1 -1
  299. package/dist/tests/config.test.js +160 -24
  300. package/dist/tests/config.test.js.map +1 -1
  301. package/dist/tests/debug.test.js.map +1 -1
  302. package/dist/tests/diagnosticOverrides.test.js.map +1 -1
  303. package/dist/tests/docStringConversion.test.js +1 -2
  304. package/dist/tests/docStringConversion.test.js.map +1 -1
  305. package/dist/tests/documentSymbolCollector.test.js.map +1 -1
  306. package/dist/tests/filesystem.test.js.map +1 -1
  307. package/dist/tests/fourSlashParser.test.js.map +1 -1
  308. package/dist/tests/fourSlashRunner.test.js.map +1 -1
  309. package/dist/tests/fourslash/completions.autoimport.Lib.Found.Type.fourslash.d.ts +0 -1
  310. package/dist/tests/fourslash/completions.autoimport.Lib.Found.Type.fourslash.js.map +1 -1
  311. package/dist/tests/fourslash/completions.autoimport.Lib.Found.duplication.fourslash.d.ts +0 -1
  312. package/dist/tests/fourslash/completions.autoimport.Lib.Found.duplication.fourslash.js.map +1 -1
  313. package/dist/tests/fourslash/completions.autoimport.Lib.NotFound.fourslash.d.ts +0 -1
  314. package/dist/tests/fourslash/completions.autoimport.disabled.fourslash.d.ts +0 -1
  315. package/dist/tests/fourslash/completions.autoimport.duplicates.fourslash.d.ts +0 -1
  316. package/dist/tests/fourslash/completions.autoimport.duplicates.fourslash.js.map +1 -1
  317. package/dist/tests/fourslash/completions.autoimport.fourslash.d.ts +0 -1
  318. package/dist/tests/fourslash/completions.autoimport.fourslash.js.map +1 -1
  319. package/dist/tests/fourslash/completions.autoimport.fromImport.fourslash.d.ts +0 -1
  320. package/dist/tests/fourslash/completions.autoimport.fromImport.fourslash.js.map +1 -1
  321. package/dist/tests/fourslash/completions.autoimport.lib.alias.fourslash.d.ts +0 -1
  322. package/dist/tests/fourslash/completions.autoimport.lib.alias.fourslash.js.map +1 -1
  323. package/dist/tests/fourslash/completions.autoimport.plainText.fourslash.d.ts +0 -1
  324. package/dist/tests/fourslash/completions.autoimport.plainText.fourslash.js.map +1 -1
  325. package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.d.ts +0 -1
  326. package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.js.map +1 -1
  327. package/dist/tests/fourslash/completions.autoimport.submodule.fourslash.d.ts +0 -1
  328. package/dist/tests/fourslash/completions.autoimport.submodule.fourslash.js.map +1 -1
  329. package/dist/tests/fourslash/completions.autoimport.topLevel.fourslash.d.ts +0 -1
  330. package/dist/tests/fourslash/completions.autoimport.topLevel.fourslash.js.map +1 -1
  331. package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.d.ts +0 -1
  332. package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.js.map +1 -1
  333. package/dist/tests/fourslash/completions.builtinOverride.fourslash.d.ts +0 -1
  334. package/dist/tests/fourslash/completions.call.stringLiteral.fourslash.d.ts +0 -1
  335. package/dist/tests/fourslash/completions.call.stringLiteral.fourslash.js.map +1 -1
  336. package/dist/tests/fourslash/completions.call.typedDict.fourslash.d.ts +0 -1
  337. package/dist/tests/fourslash/completions.call.typedDict.fourslash.js.map +1 -1
  338. package/dist/tests/fourslash/completions.call.typedDict.list.fourslash.d.ts +0 -1
  339. package/dist/tests/fourslash/completions.call.typedDict.list.fourslash.js.map +1 -1
  340. package/dist/tests/fourslash/completions.call.typedDict.states.fourslash.d.ts +0 -1
  341. package/dist/tests/fourslash/completions.call.typedDict.states.fourslash.js.map +1 -1
  342. package/dist/tests/fourslash/completions.classVariable.fourslash.d.ts +0 -1
  343. package/dist/tests/fourslash/completions.classVariable.fourslash.js.map +1 -1
  344. package/dist/tests/fourslash/completions.comment.fourslash.d.ts +0 -1
  345. package/dist/tests/fourslash/completions.declNames.class.fourslash.d.ts +0 -1
  346. package/dist/tests/fourslash/completions.declNames.class.fourslash.js.map +1 -1
  347. package/dist/tests/fourslash/completions.declNames.exception.fourslash.d.ts +0 -1
  348. package/dist/tests/fourslash/completions.declNames.for.fourslash.d.ts +0 -1
  349. package/dist/tests/fourslash/completions.declNames.for.fourslash.js.map +1 -1
  350. package/dist/tests/fourslash/completions.declNames.importAlias.fourslash.d.ts +0 -1
  351. package/dist/tests/fourslash/completions.declNames.lambda.fourslash.d.ts +0 -1
  352. package/dist/tests/fourslash/completions.declNames.lambda.fourslash.js.map +1 -1
  353. package/dist/tests/fourslash/completions.declNames.method.fourslash.d.ts +0 -1
  354. package/dist/tests/fourslash/completions.declNames.method.fourslash.js.map +1 -1
  355. package/dist/tests/fourslash/completions.declNames.overload.fourslash.d.ts +0 -1
  356. package/dist/tests/fourslash/completions.declNames.overload.fourslash.js.map +1 -1
  357. package/dist/tests/fourslash/completions.declNames.topLevelOverload.fourslash.d.ts +0 -1
  358. package/dist/tests/fourslash/completions.declNames.topLevelOverload.fourslash.js.map +1 -1
  359. package/dist/tests/fourslash/completions.dictionary.keys.complex.fourslash.d.ts +0 -1
  360. package/dist/tests/fourslash/completions.dictionary.keys.complex.fourslash.js.map +1 -1
  361. package/dist/tests/fourslash/completions.dictionary.keys.expression.fourslash.d.ts +0 -1
  362. package/dist/tests/fourslash/completions.dictionary.keys.expression.fourslash.js.map +1 -1
  363. package/dist/tests/fourslash/completions.dictionary.keys.literalTypes.fourslash.d.ts +0 -1
  364. package/dist/tests/fourslash/completions.dictionary.keys.literalTypes.fourslash.js.map +1 -1
  365. package/dist/tests/fourslash/completions.dictionary.keys.simple.fourslash.d.ts +0 -1
  366. package/dist/tests/fourslash/completions.dictionary.keys.simple.fourslash.js.map +1 -1
  367. package/dist/tests/fourslash/completions.dictionary.keys.stringLiterals.fourslash.d.ts +0 -1
  368. package/dist/tests/fourslash/completions.dictionary.keys.stringLiterals.fourslash.js.map +1 -1
  369. package/dist/tests/fourslash/completions.dictionary.keys.symbols.fourslash.d.ts +0 -1
  370. package/dist/tests/fourslash/completions.dictionary.keys.symbols.fourslash.js.map +1 -1
  371. package/dist/tests/fourslash/completions.dunderNew.Inheritance.fourslash.d.ts +0 -1
  372. package/dist/tests/fourslash/completions.dunderNew.fourslash.d.ts +0 -1
  373. package/dist/tests/fourslash/completions.enums.members.fourslash.d.ts +0 -1
  374. package/dist/tests/fourslash/completions.errorNodes.fourslash.d.ts +0 -1
  375. package/dist/tests/fourslash/completions.excluded.fourslash.d.ts +0 -1
  376. package/dist/tests/fourslash/completions.fourslash.d.ts +0 -1
  377. package/dist/tests/fourslash/completions.fstring.fourslash.d.ts +0 -1
  378. package/dist/tests/fourslash/completions.fstring.stringLiteral.fourslash.d.ts +0 -1
  379. package/dist/tests/fourslash/completions.fstring.stringLiteral.fourslash.js.map +1 -1
  380. package/dist/tests/fourslash/completions.fuzzyMatching.fourslash.d.ts +0 -1
  381. package/dist/tests/fourslash/completions.import.dunderNames.fourslash.d.ts +0 -1
  382. package/dist/tests/fourslash/completions.import.exactMatch.fourslash.d.ts +0 -1
  383. package/dist/tests/fourslash/completions.import.excludeAlreadyImported.fourslash.d.ts +0 -1
  384. package/dist/tests/fourslash/completions.import.interimFile.fourslash.disabled.d.ts +0 -1
  385. package/dist/tests/fourslash/completions.import.interimFile.fourslash.disabled.js.map +1 -1
  386. package/dist/tests/fourslash/completions.import.submodule.fourslash.d.ts +0 -1
  387. package/dist/tests/fourslash/completions.inList.fourslash.d.ts +0 -1
  388. package/dist/tests/fourslash/completions.inList.fourslash.js.map +1 -1
  389. package/dist/tests/fourslash/completions.included.fourslash.d.ts +0 -1
  390. package/dist/tests/fourslash/completions.indexer.keys.getitem.fourslash.d.ts +0 -1
  391. package/dist/tests/fourslash/completions.indexer.keys.getitem.fourslash.js.map +1 -1
  392. package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.d.ts +0 -1
  393. package/dist/tests/fourslash/completions.inherited.overload.docFromScrWithStub.fourslash.d.ts +0 -1
  394. package/dist/tests/fourslash/completions.inherited.overload.docFromStub.fourslash.d.ts +0 -1
  395. package/dist/tests/fourslash/completions.inherited.property.docFromSrc.fourslash.d.ts +0 -1
  396. package/dist/tests/fourslash/completions.inherited.property.docFromStub.fourslash.d.ts +0 -1
  397. package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.d.ts +0 -1
  398. package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.js.map +1 -1
  399. package/dist/tests/fourslash/completions.libCodeAndStub.fourslash.d.ts +0 -1
  400. package/dist/tests/fourslash/completions.libCodeNoStub.fourslash.d.ts +0 -1
  401. package/dist/tests/fourslash/completions.libStub.fourslash.d.ts +0 -1
  402. package/dist/tests/fourslash/completions.literals.fourslash.d.ts +0 -1
  403. package/dist/tests/fourslash/completions.literals.fourslash.js.map +1 -1
  404. package/dist/tests/fourslash/completions.localCode.fourslash.d.ts +0 -1
  405. package/dist/tests/fourslash/completions.moduleContext.UnknownMemberOnInstance.fourslash.d.ts +0 -1
  406. package/dist/tests/fourslash/completions.moduleContext.UnknownStaticFunctionOnClass.fourslash.d.ts +0 -1
  407. package/dist/tests/fourslash/completions.moduleContext.libCodeNoStub.fourslash.d.ts +0 -1
  408. package/dist/tests/fourslash/completions.overloads.fourslash.d.ts +0 -1
  409. package/dist/tests/fourslash/completions.override.default.fourslash.d.ts +0 -1
  410. package/dist/tests/fourslash/completions.override.default.importStub.d.ts +0 -1
  411. package/dist/tests/fourslash/completions.override.default.imported.fourslash.d.ts +0 -1
  412. package/dist/tests/fourslash/completions.override.default.stub.fourslash.d.ts +0 -1
  413. package/dist/tests/fourslash/completions.override.fourslash.d.ts +0 -1
  414. package/dist/tests/fourslash/completions.override.property.fourslash.d.ts +0 -1
  415. package/dist/tests/fourslash/completions.override.property.stub.fourslash.d.ts +0 -1
  416. package/dist/tests/fourslash/completions.override.staticAndClassmethod.fourslash.d.ts +0 -1
  417. package/dist/tests/fourslash/completions.override.staticAndClassmethod.fourslash.js.map +1 -1
  418. package/dist/tests/fourslash/completions.override.stub.fourslash.d.ts +0 -1
  419. package/dist/tests/fourslash/completions.override2.fourslash.d.ts +0 -1
  420. package/dist/tests/fourslash/completions.override2.fourslash.js.map +1 -1
  421. package/dist/tests/fourslash/completions.parameters.fourslash.d.ts +0 -1
  422. package/dist/tests/fourslash/completions.params.fourslash.d.ts +0 -1
  423. package/dist/tests/fourslash/completions.parentFolder.fourslash.d.ts +0 -1
  424. package/dist/tests/fourslash/completions.parentFolders.fourslash.d.ts +0 -1
  425. package/dist/tests/fourslash/completions.parentFolders.fourslash.js.map +1 -1
  426. package/dist/tests/fourslash/completions.plainText.fourslash.d.ts +0 -1
  427. package/dist/tests/fourslash/completions.private.fourslash.d.ts +0 -1
  428. package/dist/tests/fourslash/completions.private.fourslash.js.map +1 -1
  429. package/dist/tests/fourslash/completions.property.fourslash.d.ts +0 -1
  430. package/dist/tests/fourslash/completions.propertyDocStrings.fourslash.d.ts +0 -1
  431. package/dist/tests/fourslash/completions.self.fourslash.d.ts +0 -1
  432. package/dist/tests/fourslash/completions.stringLiteral.escape.fourslash.d.ts +0 -1
  433. package/dist/tests/fourslash/completions.stringLiteral.escape.fourslash.js.map +1 -1
  434. package/dist/tests/fourslash/completions.stringLiteral.fourslash.d.ts +0 -1
  435. package/dist/tests/fourslash/completions.stringLiteral.fourslash.js.map +1 -1
  436. package/dist/tests/fourslash/completions.triggers.fourslash.d.ts +0 -1
  437. package/dist/tests/fourslash/completions.triggers.fourslash.js.map +1 -1
  438. package/dist/tests/fourslash/completions.typeAlias.fourslash.d.ts +0 -1
  439. package/dist/tests/fourslash/completions.typeshed.fourslash.d.ts +0 -1
  440. package/dist/tests/fourslash/completions.vardecls.fourslash.d.ts +0 -1
  441. package/dist/tests/fourslash/completions.vardecls.fourslash.js.map +1 -1
  442. package/dist/tests/fourslash/completions.variableDocStrings.fourslash.d.ts +0 -1
  443. package/dist/tests/fourslash/completions.wildcardimports.fourslash.d.ts +0 -1
  444. package/dist/tests/fourslash/completions.with.fourslash.d.ts +0 -1
  445. package/dist/tests/fourslash/diagnostics.missingModuleSource.fourslash.d.ts +0 -1
  446. package/dist/tests/fourslash/diagnostics.missingModuleSource.fourslash.js.map +1 -1
  447. package/dist/tests/fourslash/findDefinitions.builtinClass.fourslash.d.ts +0 -1
  448. package/dist/tests/fourslash/findDefinitions.builtinClass.fourslash.js.map +1 -1
  449. package/dist/tests/fourslash/findDefinitions.classes.fourslash.d.ts +0 -1
  450. package/dist/tests/fourslash/findDefinitions.classes.fourslash.js.map +1 -1
  451. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.d.ts +0 -1
  452. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.js.map +1 -1
  453. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.onlyStubs.d.ts +0 -1
  454. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.onlyStubs.js.map +1 -1
  455. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.fourslash.d.ts +0 -1
  456. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.fourslash.js.map +1 -1
  457. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.onlySource.fourslash.d.ts +0 -1
  458. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.onlySource.fourslash.js.map +1 -1
  459. package/dist/tests/fourslash/findDefinitions.fields.fourslash.d.ts +0 -1
  460. package/dist/tests/fourslash/findDefinitions.fields.fourslash.js.map +1 -1
  461. package/dist/tests/fourslash/findDefinitions.functions.fourslash.d.ts +0 -1
  462. package/dist/tests/fourslash/findDefinitions.functions.fourslash.js.map +1 -1
  463. package/dist/tests/fourslash/findDefinitions.methods.fourslash.d.ts +0 -1
  464. package/dist/tests/fourslash/findDefinitions.methods.fourslash.js.map +1 -1
  465. package/dist/tests/fourslash/findDefinitions.modules.fourslash.d.ts +0 -1
  466. package/dist/tests/fourslash/findDefinitions.modules.fourslash.js.map +1 -1
  467. package/dist/tests/fourslash/findDefinitions.namespaceImport.fourslash.d.ts +0 -1
  468. package/dist/tests/fourslash/findDefinitions.namespaceImport.fourslash.js.map +1 -1
  469. package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.d.ts +0 -1
  470. package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.js.map +1 -1
  471. package/dist/tests/fourslash/findDefinitions.overloads.fourslash.d.ts +0 -1
  472. package/dist/tests/fourslash/findDefinitions.overloads.fourslash.js.map +1 -1
  473. package/dist/tests/fourslash/findDefinitions.parameters.fourslash.d.ts +0 -1
  474. package/dist/tests/fourslash/findDefinitions.parameters.fourslash.js.map +1 -1
  475. package/dist/tests/fourslash/findDefinitions.sourceAndStub.function.fourslash.d.ts +0 -1
  476. package/dist/tests/fourslash/findDefinitions.sourceAndStub.function.fourslash.js.map +1 -1
  477. package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClass.fourslash.d.ts +0 -1
  478. package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClass.fourslash.js.map +1 -1
  479. package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClassMethod.fourslash.d.ts +0 -1
  480. package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClassMethod.fourslash.js.map +1 -1
  481. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClass.fourslash.d.ts +0 -1
  482. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClass.fourslash.js.map +1 -1
  483. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassMethod.fourslash.d.ts +0 -1
  484. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassMethod.fourslash.js.map +1 -1
  485. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadOnly.fourslash.d.ts +0 -1
  486. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadOnly.fourslash.js.map +1 -1
  487. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadWrite.fourslash.d.ts +0 -1
  488. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadWrite.fourslash.js.map +1 -1
  489. package/dist/tests/fourslash/findDefinitions.sourceOnly.class.fourslash.d.ts +0 -1
  490. package/dist/tests/fourslash/findDefinitions.sourceOnly.class.fourslash.js.map +1 -1
  491. package/dist/tests/fourslash/findDefinitions.sourceOnly.function1.fourslash.d.ts +0 -1
  492. package/dist/tests/fourslash/findDefinitions.sourceOnly.function1.fourslash.js.map +1 -1
  493. package/dist/tests/fourslash/findDefinitions.sourceOnly.function2.fourslash.d.ts +0 -1
  494. package/dist/tests/fourslash/findDefinitions.sourceOnly.function2.fourslash.js.map +1 -1
  495. package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport1.fourslash.d.ts +0 -1
  496. package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport1.fourslash.js.map +1 -1
  497. package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport2.fourslash.d.ts +0 -1
  498. package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport2.fourslash.js.map +1 -1
  499. package/dist/tests/fourslash/findDefinitions.stubOnly.fourslash.d.ts +0 -1
  500. package/dist/tests/fourslash/findDefinitions.stubOnly.fourslash.js.map +1 -1
  501. package/dist/tests/fourslash/findDefinitions.stubPackages.fourslash.d.ts +0 -1
  502. package/dist/tests/fourslash/findDefinitions.stubPackages.fourslash.js.map +1 -1
  503. package/dist/tests/fourslash/findDefinitions.typedDict.keys.fourslash.d.ts +0 -1
  504. package/dist/tests/fourslash/findDefinitions.typedDict.keys.fourslash.js.map +1 -1
  505. package/dist/tests/fourslash/findDefinitions.variables.fourslash.d.ts +0 -1
  506. package/dist/tests/fourslash/findDefinitions.variables.fourslash.js.map +1 -1
  507. package/dist/tests/fourslash/findDefinitions.wildcardimports.fourslash.d.ts +0 -1
  508. package/dist/tests/fourslash/findDefinitions.wildcardimports.fourslash.js.map +1 -1
  509. package/dist/tests/fourslash/findTypeDefinitions.builtinClass.fourslash.d.ts +0 -1
  510. package/dist/tests/fourslash/findTypeDefinitions.builtinClass.fourslash.js.map +1 -1
  511. package/dist/tests/fourslash/findTypeDefinitions.classes.fourslash.d.ts +0 -1
  512. package/dist/tests/fourslash/findTypeDefinitions.classes.fourslash.js.map +1 -1
  513. package/dist/tests/fourslash/findTypeDefinitions.unions.fourslash.d.ts +0 -1
  514. package/dist/tests/fourslash/findTypeDefinitions.unions.fourslash.js.map +1 -1
  515. package/dist/tests/fourslash/findallreferences.classPropertyReadWrite.d.ts +0 -1
  516. package/dist/tests/fourslash/findallreferences.classPropertyReadWrite.js.map +1 -1
  517. package/dist/tests/fourslash/findallreferences.fourslash.d.ts +0 -1
  518. package/dist/tests/fourslash/findallreferences.fourslash.js.map +1 -1
  519. package/dist/tests/fourslash/findallreferences.importalias.fourslash.d.ts +0 -1
  520. package/dist/tests/fourslash/findallreferences.importalias.fourslash.js.map +1 -1
  521. package/dist/tests/fourslash/findallreferences.invokedFromLibrary.fourslash.d.ts +0 -1
  522. package/dist/tests/fourslash/findallreferences.invokedFromLibrary.fourslash.js.map +1 -1
  523. package/dist/tests/fourslash/findallreferences.module.nested.fourslash.d.ts +0 -1
  524. package/dist/tests/fourslash/findallreferences.module.nested.fourslash.js.map +1 -1
  525. package/dist/tests/fourslash/findallreferences.modules.duplicated.fourslash.d.ts +0 -1
  526. package/dist/tests/fourslash/findallreferences.modules.duplicated.fourslash.js.map +1 -1
  527. package/dist/tests/fourslash/findallreferences.modules.fourslash.d.ts +0 -1
  528. package/dist/tests/fourslash/findallreferences.modules.fourslash.js.map +1 -1
  529. package/dist/tests/fourslash/findallreferences.modules.shadow.fourslash.d.ts +0 -1
  530. package/dist/tests/fourslash/findallreferences.modules.shadow.fourslash.js.map +1 -1
  531. package/dist/tests/fourslash/findallreferences.openFiles.fourslash.d.ts +0 -1
  532. package/dist/tests/fourslash/findallreferences.openFiles.fourslash.js.map +1 -1
  533. package/dist/tests/fourslash/findallreferences.parameter.fourslash.d.ts +0 -1
  534. package/dist/tests/fourslash/findallreferences.parameter.fourslash.js.map +1 -1
  535. package/dist/tests/fourslash/findallreferences.sourceAndStub.class.fourslash.d.ts +0 -1
  536. package/dist/tests/fourslash/findallreferences.sourceAndStub.class.fourslash.js.map +1 -1
  537. package/dist/tests/fourslash/findallreferences.sourceAndStub.classMethod.fourslash.d.ts +0 -1
  538. package/dist/tests/fourslash/findallreferences.sourceAndStub.classMethod.fourslash.js.map +1 -1
  539. package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadOnly.fourslash.d.ts +0 -1
  540. package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadOnly.fourslash.js.map +1 -1
  541. package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadWrite.fourslash.skip.d.ts +0 -1
  542. package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadWrite.fourslash.skip.js.map +1 -1
  543. package/dist/tests/fourslash/findallreferences.sourceAndStub.function.fourslash.d.ts +0 -1
  544. package/dist/tests/fourslash/findallreferences.sourceAndStub.function.fourslash.js.map +1 -1
  545. package/dist/tests/fourslash/findallreferences.variable.fourslash.d.ts +0 -1
  546. package/dist/tests/fourslash/findallreferences.variable.fourslash.js.map +1 -1
  547. package/dist/tests/fourslash/highlightreferences.attributes.fourslash.d.ts +0 -1
  548. package/dist/tests/fourslash/highlightreferences.attributes.fourslash.js.map +1 -1
  549. package/dist/tests/fourslash/hover.async.fourslash.d.ts +0 -1
  550. package/dist/tests/fourslash/hover.builtinDocstrings.builtinInheritedByBuiltin.fourslash.d.ts +0 -1
  551. package/dist/tests/fourslash/hover.builtinDocstrings.builtinInheritedByUserCode.fourslash.d.ts +0 -1
  552. package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.d.ts +0 -1
  553. package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.js.map +1 -1
  554. package/dist/tests/fourslash/hover.class.docString.fourslash.d.ts +0 -1
  555. package/dist/tests/fourslash/hover.classNoInit.fourslash.d.ts +0 -1
  556. package/dist/tests/fourslash/hover.docFromSrc.fourslash.d.ts +0 -1
  557. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module1.fourslash.d.ts +0 -1
  558. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module2.fourslash.d.ts +0 -1
  559. package/dist/tests/fourslash/hover.docFromSrc.relativeImport1.fourslash.d.ts +0 -1
  560. package/dist/tests/fourslash/hover.docFromSrc.relativeImport2.fourslash.d.ts +0 -1
  561. package/dist/tests/fourslash/hover.docFromSrc.relativeImport3.fourslash.d.ts +0 -1
  562. package/dist/tests/fourslash/hover.docFromSrc.stringFormat.fourslash.d.ts +0 -1
  563. package/dist/tests/fourslash/hover.docFromSrc.stubs-package.fourslash.d.ts +0 -1
  564. package/dist/tests/fourslash/hover.docFromSrc.typeshed.fourslash.d.ts +0 -1
  565. package/dist/tests/fourslash/hover.docstring.alias.fourslash.d.ts +0 -1
  566. package/dist/tests/fourslash/hover.docstring.links.fourslash.d.ts +0 -1
  567. package/dist/tests/fourslash/hover.docstring.overloads.fourslash.d.ts +0 -1
  568. package/dist/tests/fourslash/hover.docstring.parameter.fourslash.d.ts +0 -1
  569. package/dist/tests/fourslash/hover.docstring.split.fourslash.d.ts +0 -1
  570. package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.d.ts +0 -1
  571. package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.d.ts +0 -1
  572. package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.d.ts +0 -1
  573. package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.d.ts +0 -1
  574. package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.d.ts +0 -1
  575. package/dist/tests/fourslash/hover.formatted.fourslash.d.ts +0 -1
  576. package/dist/tests/fourslash/hover.fourslash.d.ts +0 -1
  577. package/dist/tests/fourslash/hover.import.django.view.fourslash.d.ts +0 -1
  578. package/dist/tests/fourslash/hover.import.fourslash.d.ts +0 -1
  579. package/dist/tests/fourslash/hover.inferred.fourslash.d.ts +0 -1
  580. package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.d.ts +0 -1
  581. package/dist/tests/fourslash/hover.inherited.docFromSrcWithStub.fourslash.d.ts +0 -1
  582. package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.d.ts +0 -1
  583. package/dist/tests/fourslash/hover.inherited.overload.docFromSrcWithStub.fourslash.d.ts +0 -1
  584. package/dist/tests/fourslash/hover.inherited.overload.docFromStub.fourslash.d.ts +0 -1
  585. package/dist/tests/fourslash/hover.inherited.property.docFromSrcWithStub.fourslash.d.ts +0 -1
  586. package/dist/tests/fourslash/hover.inherited.property.docFromStub.fourslash.d.ts +0 -1
  587. package/dist/tests/fourslash/hover.init.fourslash.d.ts +0 -1
  588. package/dist/tests/fourslash/hover.libCodeAndStub.fourslash.d.ts +0 -1
  589. package/dist/tests/fourslash/hover.libCodeNoStub.fourslash.d.ts +0 -1
  590. package/dist/tests/fourslash/hover.libStub.fourslash.d.ts +0 -1
  591. package/dist/tests/fourslash/hover.optionalAliasParameter.fourslash.d.ts +0 -1
  592. package/dist/tests/fourslash/hover.overloadedFunction.fourslash.d.ts +0 -1
  593. package/dist/tests/fourslash/hover.plainText.fourslash.d.ts +0 -1
  594. package/dist/tests/fourslash/hover.slots.fourslash.d.ts +0 -1
  595. package/dist/tests/fourslash/hover.typedDict.key.fourslash.d.ts +0 -1
  596. package/dist/tests/fourslash/hover.unpackedTypedDict.key.fourslash.d.ts +0 -1
  597. package/dist/tests/fourslash/hover.variable.docString.fourslash.d.ts +0 -1
  598. package/dist/tests/fourslash/hover.wildcardimports.fourslash.d.ts +0 -1
  599. package/dist/tests/fourslash/import.multipart.fourslash.d.ts +0 -1
  600. package/dist/tests/fourslash/import.nameconflict.fourslash.d.ts +0 -1
  601. package/dist/tests/fourslash/import.publicSymbols.fourslash.d.ts +0 -1
  602. package/dist/tests/fourslash/import.publicSymbols.fourslash.js.map +1 -1
  603. package/dist/tests/fourslash/import.pytyped.dunderAll.fourslash.d.ts +0 -1
  604. package/dist/tests/fourslash/import.pytyped.privateSymbols.fourslash.d.ts +0 -1
  605. package/dist/tests/fourslash/import.pytyped.typeCheckingBasic.fourslash.d.ts +0 -1
  606. package/dist/tests/fourslash/import.pytyped.typeCheckingOff.fourslash.d.ts +0 -1
  607. package/dist/tests/fourslash/import.wildcard.fourslash.d.ts +0 -1
  608. package/dist/tests/fourslash/importnotresolved.fourslash.d.ts +0 -1
  609. package/dist/tests/fourslash/missingModuleSource.disablingInStrictMode.fourslash.d.ts +0 -1
  610. package/dist/tests/fourslash/missingModuleSource.fourslash.d.ts +0 -1
  611. package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.d.ts +0 -1
  612. package/dist/tests/fourslash/missingTypeStub.command.multipart.fourslash.d.ts +0 -1
  613. package/dist/tests/fourslash/missingTypeStub.command.singlefile.fourslash.d.ts +0 -1
  614. package/dist/tests/fourslash/missingTypeStub.command.singlepart.fourslash.d.ts +0 -1
  615. package/dist/tests/fourslash/missingTypeStub.command.trycatchImport.fourslash.d.ts +0 -1
  616. package/dist/tests/fourslash/missingTypeStub.fourslash.d.ts +0 -1
  617. package/dist/tests/fourslash/missingTypeStub.invokeCodeAction.fourslash.d.ts +0 -1
  618. package/dist/tests/fourslash/noerrors.fourslash.d.ts +0 -1
  619. package/dist/tests/fourslash/orderImports1.command.fourslash.d.ts +0 -1
  620. package/dist/tests/fourslash/orderImports2.command.fourslash.d.ts +0 -1
  621. package/dist/tests/fourslash/rename.args.fourslash.d.ts +0 -1
  622. package/dist/tests/fourslash/rename.args.fourslash.js.map +1 -1
  623. package/dist/tests/fourslash/rename.externallyHidden.fourslash.d.ts +0 -1
  624. package/dist/tests/fourslash/rename.externallyHidden.params.fourslash.d.ts +0 -1
  625. package/dist/tests/fourslash/rename.fourslash.d.ts +0 -1
  626. package/dist/tests/fourslash/rename.fourslash.js.map +1 -1
  627. package/dist/tests/fourslash/rename.function.untitledFile.fourslash.d.ts +0 -1
  628. package/dist/tests/fourslash/rename.function.untitledFile.fourslash.js.map +1 -1
  629. package/dist/tests/fourslash/rename.init.fourslash.d.ts +0 -1
  630. package/dist/tests/fourslash/rename.init.fourslash.js.map +1 -1
  631. package/dist/tests/fourslash/rename.library.fourslash.d.ts +0 -1
  632. package/dist/tests/fourslash/rename.library.sourceAndStub.fourslash.d.ts +0 -1
  633. package/dist/tests/fourslash/rename.multipleDecl.fourslash.d.ts +0 -1
  634. package/dist/tests/fourslash/rename.parens.fourslash.d.ts +0 -1
  635. package/dist/tests/fourslash/rename.parens.fourslash.js.map +1 -1
  636. package/dist/tests/fourslash/rename.sourceAndStub.fourslash.d.ts +0 -1
  637. package/dist/tests/fourslash/rename.sourceAndStub.fourslash.js.map +1 -1
  638. package/dist/tests/fourslash/rename.string.excluded.fourslash.d.ts +0 -1
  639. package/dist/tests/fourslash/rename.string.excluded.fourslash.js.map +1 -1
  640. package/dist/tests/fourslash/rename.string.fourslash.d.ts +0 -1
  641. package/dist/tests/fourslash/rename.string.fourslash.js.map +1 -1
  642. package/dist/tests/fourslash/shadowedImports.fourslash.d.ts +0 -1
  643. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.d.ts +0 -1
  644. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.js.map +1 -1
  645. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.d.ts +0 -1
  646. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.js.map +1 -1
  647. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.d.ts +0 -1
  648. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.js.map +1 -1
  649. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.d.ts +0 -1
  650. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.js.map +1 -1
  651. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.d.ts +0 -1
  652. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.js.map +1 -1
  653. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.d.ts +0 -1
  654. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.js.map +1 -1
  655. package/dist/tests/fourslash/signature.builtinDocstrings.fourslash.d.ts +0 -1
  656. package/dist/tests/fourslash/signature.builtinDocstrings.fourslash.js.map +1 -1
  657. package/dist/tests/fourslash/signature.complicated.fourslash.d.ts +0 -1
  658. package/dist/tests/fourslash/signature.complicated.fourslash.js.map +1 -1
  659. package/dist/tests/fourslash/signature.cornercases.fourslash.d.ts +0 -1
  660. package/dist/tests/fourslash/signature.cornercases.fourslash.js.map +1 -1
  661. package/dist/tests/fourslash/signature.docstrings.fourslash.d.ts +0 -1
  662. package/dist/tests/fourslash/signature.docstrings.fourslash.js.map +1 -1
  663. package/dist/tests/fourslash/signature.docstrings.overloaded.fourslash.d.ts +0 -1
  664. package/dist/tests/fourslash/signature.docstrings.overloaded.fourslash.js.map +1 -1
  665. package/dist/tests/fourslash/signature.docstrings.wildcardimports.fourslash.d.ts +0 -1
  666. package/dist/tests/fourslash/signature.docstrings.wildcardimports.fourslash.js.map +1 -1
  667. package/dist/tests/fourslash/signature.dunderNew.fourslash.d.ts +0 -1
  668. package/dist/tests/fourslash/signature.dunderNew.fourslash.js.map +1 -1
  669. package/dist/tests/fourslash/signature.overload.fourslash.d.ts +0 -1
  670. package/dist/tests/fourslash/signature.overload.fourslash.js.map +1 -1
  671. package/dist/tests/fourslash/signature.simple.fourslash.d.ts +0 -1
  672. package/dist/tests/fourslash/signature.simple.fourslash.js.map +1 -1
  673. package/dist/tests/fourslash/typeVerifier.fourslash.d.ts +0 -1
  674. package/dist/tests/fourslash/typeVerifier.fourslash.js.map +1 -1
  675. package/dist/tests/harness/fourslash/fourSlashParser.js +1 -2
  676. package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
  677. package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
  678. package/dist/tests/harness/fourslash/runner.d.ts +0 -1
  679. package/dist/tests/harness/fourslash/runner.js +2 -3
  680. package/dist/tests/harness/fourslash/runner.js.map +1 -1
  681. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  682. package/dist/tests/harness/fourslash/testState.js +7 -7
  683. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  684. package/dist/tests/harness/fourslash/testStateUtils.js +4 -5
  685. package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
  686. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +7 -8
  687. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
  688. package/dist/tests/harness/testHost.js.map +1 -1
  689. package/dist/tests/harness/utils.d.ts +0 -2
  690. package/dist/tests/harness/utils.js +7 -7
  691. package/dist/tests/harness/utils.js.map +1 -1
  692. package/dist/tests/harness/vfs/factory.js +3 -3
  693. package/dist/tests/harness/vfs/factory.js.map +1 -1
  694. package/dist/tests/harness/vfs/filesystem.d.ts +0 -2
  695. package/dist/tests/harness/vfs/filesystem.js +2 -2
  696. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  697. package/dist/tests/harness/vfs/pathValidation.js +2 -2
  698. package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
  699. package/dist/tests/importResolver.test.js.map +1 -1
  700. package/dist/tests/importStatementUtils.test.js.map +1 -1
  701. package/dist/tests/ipythonMode.test.js.map +1 -1
  702. package/dist/tests/languageServer.test.js.map +1 -1
  703. package/dist/tests/localizer.test.js.map +1 -1
  704. package/dist/tests/lsp/languageServer.js +1 -2
  705. package/dist/tests/lsp/languageServer.js.map +1 -1
  706. package/dist/tests/lsp/languageServerTestUtils.js +14 -14
  707. package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
  708. package/dist/tests/lsp/webpack.testserver.config.d.ts +2 -2
  709. package/dist/tests/parseTreeUtils.test.js.map +1 -1
  710. package/dist/tests/pathUtils.test.js.map +1 -1
  711. package/dist/tests/pyrightFileSystem.test.js.map +1 -1
  712. package/dist/tests/serialization.test.js +1 -2
  713. package/dist/tests/serialization.test.js.map +1 -1
  714. package/dist/tests/sourceMapperUtils.test.js.map +1 -1
  715. package/dist/tests/testStateUtils.js +5 -6
  716. package/dist/tests/testStateUtils.js.map +1 -1
  717. package/dist/tests/testUtils.js +8 -9
  718. package/dist/tests/testUtils.js.map +1 -1
  719. package/dist/tests/textEditUtil.test.js.map +1 -1
  720. package/dist/tests/tokenizer.test.js.map +1 -1
  721. package/dist/tests/typeEvaluator1.test.js +6 -6
  722. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  723. package/dist/tests/typeEvaluator2.test.js +8 -0
  724. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  725. package/dist/tests/typeEvaluator3.test.js +2 -2
  726. package/dist/tests/typeEvaluator4.test.js +2 -2
  727. package/dist/tests/typeEvaluator6.test.js +17 -9
  728. package/dist/tests/typeEvaluator6.test.js.map +1 -1
  729. package/dist/tests/uri.test.js.map +1 -1
  730. package/dist/workspaceFactory.js +3 -3
  731. package/dist/workspaceFactory.js.map +1 -1
  732. package/package.json +2 -2
@@ -10,7 +10,11 @@
10
10
  *
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.applyUnificationVars = exports.addConstraintsForExpectedType = exports.updateTypeVarType = exports.solveConstraintSet = exports.solveConstraints = exports.assignTypeVar = void 0;
13
+ exports.assignTypeVar = assignTypeVar;
14
+ exports.solveConstraints = solveConstraints;
15
+ exports.applySourceSolutionToConstraints = applySourceSolutionToConstraints;
16
+ exports.solveConstraintSet = solveConstraintSet;
17
+ exports.addConstraintsForExpectedType = addConstraintsForExpectedType;
14
18
  const diagnostic_1 = require("../common/diagnostic");
15
19
  const localize_1 = require("../localization/localize");
16
20
  const constraintSolution_1 = require("./constraintSolution");
@@ -105,7 +109,6 @@ function assignTypeVar(evaluator, destType, srcType, diag, constraints, flags =
105
109
  }
106
110
  return isAssignable;
107
111
  }
108
- exports.assignTypeVar = assignTypeVar;
109
112
  // Returns a solution for the type variables tracked by the constraint tracker.
110
113
  function solveConstraints(evaluator, constraints, options) {
111
114
  const solutionSets = [];
@@ -115,40 +118,64 @@ function solveConstraints(evaluator, constraints, options) {
115
118
  });
116
119
  return new constraintSolution_1.ConstraintSolution(solutionSets);
117
120
  }
118
- exports.solveConstraints = solveConstraints;
121
+ // Applies solved TypeVars from one context to this context.
122
+ function applySourceSolutionToConstraints(constraints, srcSolution) {
123
+ if (srcSolution.isEmpty()) {
124
+ return;
125
+ }
126
+ constraints.doForEachConstraintSet((constraintSet) => {
127
+ constraintSet.getTypeVars().forEach((entry) => {
128
+ constraintSet.setBounds(entry.typeVar, entry.lowerBound ? (0, typeUtils_1.applySolvedTypeVars)(entry.lowerBound, srcSolution) : undefined, entry.upperBound ? (0, typeUtils_1.applySolvedTypeVars)(entry.upperBound, srcSolution) : undefined, entry.retainLiterals);
129
+ });
130
+ });
131
+ }
119
132
  function solveConstraintSet(evaluator, constraintSet, options) {
120
133
  const solutionSet = new constraintSolution_1.ConstraintSolutionSet(constraintSet.getScopeIds());
121
134
  constraintSet.doForEachTypeVar((entry) => {
122
- const value = getTypeVarType(evaluator, constraintSet, entry.typeVar, options === null || options === void 0 ? void 0 : options.useLowerBoundOnly);
123
- if (value) {
124
- solutionSet.setType(entry.typeVar, value);
125
- }
135
+ solveTypeVarRecursive(evaluator, constraintSet, options, solutionSet, entry);
126
136
  });
127
137
  return solutionSet;
128
138
  }
129
- exports.solveConstraintSet = solveConstraintSet;
130
- // Updates the lower and upper bounds for a type variable. It also calculates the
131
- // lowerBoundNoLiterals, which is a variant of the lower bound that has
132
- // literals stripped. By default, the constraint solver always uses the "no literals"
133
- // type in its solutions unless the version with literals is required to satisfy
134
- // the upper bound.
135
- function updateTypeVarType(evaluator, constraints, destType, lowerBound, upperBound, forceRetainLiterals = false) {
136
- let lowerBoundNoLiterals;
137
- if (lowerBound && !forceRetainLiterals) {
138
- const strippedLiteral = (0, types_1.isTypeVarTuple)(destType)
139
- ? stripLiteralValueForUnpackedTuple(evaluator, lowerBound)
140
- : evaluator.stripLiteralValue(lowerBound);
141
- // Strip the literals from the lower bound and see if it is still
142
- // narrower than the upper bound.
143
- if (strippedLiteral !== lowerBound) {
144
- if (!upperBound || evaluator.assignType(upperBound, strippedLiteral)) {
145
- lowerBoundNoLiterals = strippedLiteral;
146
- }
147
- }
148
- }
149
- constraints.setBounds(destType, lowerBound, lowerBoundNoLiterals, upperBound);
139
+ function solveTypeVarRecursive(evaluator, constraintSet, options, solutionSet, entry) {
140
+ // If this TypeVar already has a solution, don't attempt to re-solve it.
141
+ if (solutionSet.hasType(entry.typeVar)) {
142
+ return solutionSet.getType(entry.typeVar);
143
+ }
144
+ // Protect against infinite recursion by setting the initial value to undefined.
145
+ solutionSet.setType(entry.typeVar, undefined);
146
+ let value = getTypeVarType(evaluator, constraintSet, entry.typeVar, options === null || options === void 0 ? void 0 : options.useLowerBoundOnly);
147
+ if (value) {
148
+ // Are there any unsolved TypeVars in this type?
149
+ const typeVars = (0, typeUtils_1.getTypeVarArgsRecursive)(value);
150
+ if (typeVars.length > 0) {
151
+ const dependentSolution = new constraintSolution_1.ConstraintSolution();
152
+ for (const typeVar of typeVars) {
153
+ // Don't attempt to replace a TypeVar with itself.
154
+ if ((0, types_1.isTypeSame)(typeVar, entry.typeVar, { ignoreTypeFlags: true })) {
155
+ continue;
156
+ }
157
+ // Don't attempt to solve or replace bound TypeVars.
158
+ if (types_1.TypeVarType.isBound(typeVar)) {
159
+ continue;
160
+ }
161
+ const dependentEntry = constraintSet.getTypeVar(typeVar);
162
+ if (!dependentEntry) {
163
+ continue;
164
+ }
165
+ const dependentType = solveTypeVarRecursive(evaluator, constraintSet, options, solutionSet, dependentEntry);
166
+ if (dependentType) {
167
+ dependentSolution.setType(typeVar, dependentType);
168
+ }
169
+ }
170
+ // Apply the dependent TypeVar values to the current TypeVar value.
171
+ if (!dependentSolution.isEmpty()) {
172
+ value = (0, typeUtils_1.applySolvedTypeVars)(value, dependentSolution);
173
+ }
174
+ }
175
+ }
176
+ solutionSet.setType(entry.typeVar, value);
177
+ return value;
150
178
  }
151
- exports.updateTypeVarType = updateTypeVarType;
152
179
  // In cases where the expected type is a specialized base class of the
153
180
  // source type, we need to determine which type arguments in the derived
154
181
  // class will make it compatible with the specialized base class. This method
@@ -158,7 +185,7 @@ exports.updateTypeVarType = updateTypeVarType;
158
185
  function addConstraintsForExpectedType(evaluator, type, expectedType, constraints, liveTypeVarScopes, usageOffset = undefined) {
159
186
  if ((0, types_1.isAny)(expectedType)) {
160
187
  type.shared.typeParams.forEach((typeParam) => {
161
- updateTypeVarType(evaluator, constraints, typeParam, expectedType, expectedType);
188
+ constraints.setBounds(typeParam, expectedType, expectedType);
162
189
  });
163
190
  return true;
164
191
  }
@@ -172,8 +199,7 @@ function addConstraintsForExpectedType(evaluator, type, expectedType, constraint
172
199
  const expectedTypeArgs = expectedType.priv.typeArgs;
173
200
  if (!expectedTypeArgs) {
174
201
  return evaluator.assignType(type, expectedType,
175
- /* diag */ undefined, constraints,
176
- /* srcConstraints */ undefined, 2048 /* AssignTypeFlags.PopulatingExpectedType */);
202
+ /* diag */ undefined, constraints, 2048 /* AssignTypeFlags.PopulateExpectedType */);
177
203
  }
178
204
  evaluator.inferVarianceForClass(type);
179
205
  // If the expected type is the same as the target type (commonly the case),
@@ -188,7 +214,7 @@ function addConstraintsForExpectedType(evaluator, type, expectedType, constraint
188
214
  }
189
215
  if (typeArgValue) {
190
216
  const variance = types_1.TypeVarType.getVariance(typeParam);
191
- updateTypeVarType(evaluator, constraints, typeParam, variance === 3 /* Variance.Covariant */ ? undefined : typeArgValue, variance === 4 /* Variance.Contravariant */ ? undefined : typeArgValue);
217
+ constraints.setBounds(typeParam, variance === 3 /* Variance.Covariant */ ? undefined : typeArgValue, variance === 4 /* Variance.Contravariant */ ? undefined : typeArgValue);
192
218
  }
193
219
  });
194
220
  return true;
@@ -215,8 +241,7 @@ function addConstraintsForExpectedType(evaluator, type, expectedType, constraint
215
241
  const specializedType = types_1.ClassType.specialize(type, typeArgs);
216
242
  const syntheticConstraints = new constraintTracker_1.ConstraintTracker();
217
243
  if (evaluator.assignType(genericExpectedType, specializedType,
218
- /* diag */ undefined, syntheticConstraints,
219
- /* srcConstraints */ undefined, 2048 /* AssignTypeFlags.PopulatingExpectedType */)) {
244
+ /* diag */ undefined, syntheticConstraints, 2048 /* AssignTypeFlags.PopulateExpectedType */)) {
220
245
  let isResultValid = true;
221
246
  synthExpectedTypeArgs.forEach((typeVar, index) => {
222
247
  let synthTypeVar = getTypeVarType(evaluator, syntheticConstraints.getMainConstraintSet(), typeVar);
@@ -269,7 +294,7 @@ function addConstraintsForExpectedType(evaluator, type, expectedType, constraint
269
294
  isResultValid = false;
270
295
  typeArgValue = types_1.UnknownType.create();
271
296
  }
272
- updateTypeVarType(evaluator, constraints, targetTypeVar, variance === 3 /* Variance.Covariant */ ? undefined : typeArgValue, variance === 4 /* Variance.Contravariant */ ? undefined : typeArgValue);
297
+ constraints.setBounds(targetTypeVar, variance === 3 /* Variance.Covariant */ ? undefined : typeArgValue, variance === 4 /* Variance.Contravariant */ ? undefined : typeArgValue);
273
298
  }
274
299
  else {
275
300
  isResultValid = false;
@@ -281,34 +306,12 @@ function addConstraintsForExpectedType(evaluator, type, expectedType, constraint
281
306
  }
282
307
  return false;
283
308
  }
284
- exports.addConstraintsForExpectedType = addConstraintsForExpectedType;
285
- // If the constraint tracker contains any type variables whose types depend on
286
- // unification vars used for bidirectional type inference, replace those
287
- // with the solved type associated with those unification vars.
288
- function applyUnificationVars(evaluator, constraints) {
289
- constraints.doForEachConstraintSet((constraintSet) => {
290
- if (!constraintSet.hasUnificationVars()) {
291
- return;
292
- }
293
- constraintSet.getTypeVars().forEach((entry) => {
294
- if (!types_1.TypeVarType.isUnification(entry.typeVar)) {
295
- const newLowerBound = entry.lowerBound
296
- ? applyUnificationVarsToType(evaluator, entry.lowerBound, constraintSet)
297
- : undefined;
298
- const newLowerBoundNoLiterals = entry.lowerBoundNoLiterals
299
- ? applyUnificationVarsToType(evaluator, entry.lowerBoundNoLiterals, constraintSet)
300
- : undefined;
301
- const newUpperBound = entry.upperBound
302
- ? applyUnificationVarsToType(evaluator, entry.upperBound, constraintSet)
303
- : undefined;
304
- constraintSet.setBounds(entry.typeVar, newLowerBound, newLowerBoundNoLiterals, newUpperBound);
305
- }
306
- });
307
- });
309
+ function stripLiteralsForLowerBound(evaluator, typeVar, lowerBound) {
310
+ return (0, types_1.isTypeVarTuple)(typeVar)
311
+ ? stripLiteralValueForUnpackedTuple(evaluator, lowerBound)
312
+ : evaluator.stripLiteralValue(lowerBound);
308
313
  }
309
- exports.applyUnificationVars = applyUnificationVars;
310
314
  function getTypeVarType(evaluator, constraintSet, typeVar, useLowerBoundOnly) {
311
- var _a, _b;
312
315
  const entry = constraintSet.getTypeVar(typeVar);
313
316
  if (!entry) {
314
317
  return undefined;
@@ -324,13 +327,33 @@ function getTypeVarType(evaluator, constraintSet, typeVar, useLowerBoundOnly) {
324
327
  return types_1.ParamSpecType.getUnknown();
325
328
  }
326
329
  }
327
- if (useLowerBoundOnly) {
328
- return entry.lowerBound;
330
+ let result;
331
+ let lowerBound = entry.lowerBound;
332
+ if (lowerBound) {
333
+ if (!entry.retainLiterals) {
334
+ const lowerNoLiterals = stripLiteralsForLowerBound(evaluator, typeVar, lowerBound);
335
+ // If we can widen the lower bound to a non-literal type without
336
+ // exceeding the upper bound, use the widened type.
337
+ if (lowerNoLiterals !== lowerBound) {
338
+ if (!entry.upperBound || evaluator.assignType(entry.upperBound, lowerNoLiterals)) {
339
+ if (types_1.TypeVarType.hasConstraints(typeVar)) {
340
+ // Does it still match a value constraint?
341
+ if (typeVar.shared.constraints.some((constraint) => (0, types_1.isTypeSame)(lowerNoLiterals, constraint))) {
342
+ lowerBound = lowerNoLiterals;
343
+ }
344
+ }
345
+ else {
346
+ lowerBound = lowerNoLiterals;
347
+ }
348
+ }
349
+ }
350
+ }
351
+ result = lowerBound;
352
+ }
353
+ else if (!useLowerBoundOnly) {
354
+ result = entry.upperBound;
329
355
  }
330
- // Prefer the lower bound with no literals. It will be undefined
331
- // if the literal type couldn't be widened due to constraints imposed
332
- // by the upper bound.
333
- return (_b = (_a = entry.lowerBoundNoLiterals) !== null && _a !== void 0 ? _a : entry.lowerBound) !== null && _b !== void 0 ? _b : entry.upperBound;
356
+ return result;
334
357
  }
335
358
  // Handles an assignment to a TypeVar that is "bound" rather than "free".
336
359
  // In general, such assignments are not allowed, but there are some special
@@ -341,14 +364,11 @@ function assignBoundTypeVar(evaluator, destType, srcType, diag, flags) {
341
364
  return true;
342
365
  }
343
366
  // Is this the equivalent of an "Unknown" for a ParamSpec?
344
- if ((0, types_1.isParamSpec)(destType) &&
345
- (0, types_1.isFunction)(srcType) &&
346
- types_1.FunctionType.isParamSpecValue(srcType) &&
347
- types_1.FunctionType.isGradualCallableForm(srcType)) {
367
+ if ((0, types_1.isParamSpec)(destType) && (0, types_1.isFunction)(srcType) && types_1.FunctionType.isGradualCallableForm(srcType)) {
348
368
  return true;
349
369
  }
350
370
  // Never is always assignable in a covariant context.
351
- const isCovariant = (flags & (1 /* AssignTypeFlags.EnforceInvariance */ | 2 /* AssignTypeFlags.ReverseTypeVarMatching */)) === 0;
371
+ const isCovariant = (flags & (1 /* AssignTypeFlags.Invariant */ | 2 /* AssignTypeFlags.Contravariant */)) === 0;
352
372
  if ((0, types_1.isNever)(srcType) && isCovariant) {
353
373
  return true;
354
374
  }
@@ -370,8 +390,8 @@ function assignBoundTypeVar(evaluator, destType, srcType, diag, flags) {
370
390
  // Handles assignments to a TypeVarTuple or a TypeVar that does not have
371
391
  // value constraints (but may have an upper bound).
372
392
  function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constraints, flags, recursionCount) {
373
- const isInvariant = (flags & 1 /* AssignTypeFlags.EnforceInvariance */) !== 0;
374
- const isContravariant = (flags & 2 /* AssignTypeFlags.ReverseTypeVarMatching */) !== 0 && !isInvariant;
393
+ const isInvariant = (flags & 1 /* AssignTypeFlags.Invariant */) !== 0;
394
+ const isContravariant = (flags & 2 /* AssignTypeFlags.Contravariant */) !== 0 && !isInvariant;
375
395
  // Handle the unconstrained (but possibly bound) case.
376
396
  const curEntry = constraints === null || constraints === void 0 ? void 0 : constraints.getMainConstraintSet().getTypeVar(destType);
377
397
  let curUpperBound = curEntry === null || curEntry === void 0 ? void 0 : curEntry.upperBound;
@@ -380,7 +400,7 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
380
400
  }
381
401
  let curLowerBound = curEntry === null || curEntry === void 0 ? void 0 : curEntry.lowerBound;
382
402
  let newLowerBound = curLowerBound;
383
- let newUpperTypeBound = curUpperBound;
403
+ let newUpperBound = curUpperBound;
384
404
  const diagAddendum = diag ? new diagnostic_1.DiagnosticAddendum() : undefined;
385
405
  let adjSrcType = srcType;
386
406
  // If the source is a class that is missing type arguments, fill
@@ -412,7 +432,7 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
412
432
  diag === null || diag === void 0 ? void 0 : diag.addMessage(localize_1.LocAddendum.typeAssignmentMismatch().format(evaluator.printSrcDestTypes(adjSrcType, destType)));
413
433
  return false;
414
434
  }
415
- if ((flags & 2048 /* AssignTypeFlags.PopulatingExpectedType */) !== 0) {
435
+ if ((flags & 2048 /* AssignTypeFlags.PopulateExpectedType */) !== 0) {
416
436
  if ((flags & 4096 /* AssignTypeFlags.SkipPopulateUnknownExpectedType */) !== 0 && (0, types_1.isUnknown)(adjSrcType)) {
417
437
  return true;
418
438
  }
@@ -422,31 +442,29 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
422
442
  if (!curEntry) {
423
443
  if (isInvariant) {
424
444
  newLowerBound = adjSrcType;
425
- newUpperTypeBound = adjSrcType;
445
+ newUpperBound = adjSrcType;
426
446
  }
427
447
  else if (isContravariant) {
428
448
  newLowerBound = adjSrcType;
429
449
  }
430
450
  else {
431
- newUpperTypeBound = adjSrcType;
451
+ newUpperBound = adjSrcType;
432
452
  }
433
453
  }
434
454
  }
435
455
  else if (isContravariant) {
436
456
  // Update the upper bound.
437
457
  if (!curUpperBound || (0, types_1.isTypeSame)(destType, curUpperBound)) {
438
- newUpperTypeBound = adjSrcType;
458
+ newUpperBound = adjSrcType;
439
459
  }
440
460
  else if (!(0, types_1.isTypeSame)(curUpperBound, adjSrcType, {}, recursionCount)) {
441
461
  if (evaluator.assignType(curUpperBound, evaluator.makeTopLevelTypeVarsConcrete(adjSrcType), diagAddendum,
442
- /* destConstraints */ undefined,
443
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
462
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
444
463
  // The srcType is narrower than the current upper bound, so replace it.
445
- newUpperTypeBound = adjSrcType;
464
+ newUpperBound = adjSrcType;
446
465
  }
447
466
  else if (!evaluator.assignType(adjSrcType, curUpperBound, diagAddendum,
448
- /* destConstraints */ undefined,
449
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
467
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
450
468
  if (diag && diagAddendum) {
451
469
  diag.addMessage(localize_1.LocAddendum.typeAssignmentMismatch().format(evaluator.printSrcDestTypes(curUpperBound, adjSrcType)));
452
470
  diag.addAddendum(diagAddendum);
@@ -456,12 +474,11 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
456
474
  }
457
475
  // Make sure we haven't narrowed it beyond the current lower bound.
458
476
  if (curLowerBound) {
459
- if (!evaluator.assignType(newUpperTypeBound, curLowerBound,
477
+ if (!evaluator.assignType(newUpperBound, curLowerBound,
460
478
  /* diag */ undefined,
461
- /* destConstraints */ undefined,
462
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
479
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
463
480
  if (diag && diagAddendum) {
464
- diag.addMessage(localize_1.LocAddendum.typeAssignmentMismatch().format(evaluator.printSrcDestTypes(curLowerBound, newUpperTypeBound)));
481
+ diag.addMessage(localize_1.LocAddendum.typeAssignmentMismatch().format(evaluator.printSrcDestTypes(curLowerBound, newUpperBound)));
465
482
  diag.addAddendum(diagAddendum);
466
483
  }
467
484
  return false;
@@ -477,21 +494,19 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
477
494
  // If this is an invariant context and there is currently no upper bound
478
495
  // established, use the "no literals" version of the lower bound rather
479
496
  // than a version that has literals.
480
- if (!newUpperTypeBound && isInvariant && (curEntry === null || curEntry === void 0 ? void 0 : curEntry.lowerBoundNoLiterals)) {
481
- newLowerBound = curEntry.lowerBoundNoLiterals;
497
+ if (!newUpperBound && isInvariant && curEntry && !curEntry.retainLiterals) {
498
+ newLowerBound = stripLiteralsForLowerBound(evaluator, destType, curLowerBound);
482
499
  }
483
500
  }
484
501
  else {
485
- if (evaluator.assignType(curLowerBound, adjSrcType, diagAddendum, constraints,
486
- /* srcConstraints */ undefined, flags, recursionCount)) {
502
+ if (evaluator.assignType(curLowerBound, adjSrcType, diagAddendum, constraints, flags, recursionCount)) {
487
503
  // No need to widen. Stick with the existing type unless it's unknown
488
504
  // or partly unknown, in which case we'll replace it with a known type
489
505
  // as long as it doesn't violate the current lower bound.
490
506
  if ((0, typeUtils_1.isPartlyUnknown)(curLowerBound) &&
491
507
  !(0, types_1.isUnknown)(adjSrcType) &&
492
508
  evaluator.assignType(adjSrcType, curLowerBound,
493
- /* diag */ undefined, constraints,
494
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
509
+ /* diag */ undefined, constraints, 0 /* AssignTypeFlags.Default */, recursionCount)) {
495
510
  newLowerBound = adjSrcType;
496
511
  }
497
512
  else {
@@ -503,8 +518,7 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
503
518
  }
504
519
  else if ((0, types_1.isTypeVar)(curLowerBound) &&
505
520
  !(0, types_1.isTypeVar)(adjSrcType) &&
506
- evaluator.assignType(evaluator.makeTopLevelTypeVarsConcrete(curLowerBound), adjSrcType, diagAddendum, constraints,
507
- /* srcConstraints */ undefined, flags, recursionCount)) {
521
+ evaluator.assignType(evaluator.makeTopLevelTypeVarsConcrete(curLowerBound), adjSrcType, diagAddendum, constraints, flags, recursionCount)) {
508
522
  // If the existing lower bound was a TypeVar that is not
509
523
  // part of the current context we can replace it with the new
510
524
  // source type.
@@ -517,8 +531,7 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
517
531
  return false;
518
532
  }
519
533
  if (evaluator.assignType(adjSrcType, curLowerBound,
520
- /* diag */ undefined, constraints,
521
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
534
+ /* diag */ undefined, constraints, 0 /* AssignTypeFlags.Default */, recursionCount)) {
522
535
  newLowerBound = adjSrcType;
523
536
  }
524
537
  else if ((0, types_1.isTypeVarTuple)(destType)) {
@@ -534,8 +547,8 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
534
547
  // If this is an invariant context and there is currently no upper bound
535
548
  // established, use the "no literals" version of the lower bound rather
536
549
  // than a version that has literals.
537
- if (!newUpperTypeBound && isInvariant && (curEntry === null || curEntry === void 0 ? void 0 : curEntry.lowerBoundNoLiterals)) {
538
- curLowerBound = curEntry.lowerBoundNoLiterals;
550
+ if (!newUpperBound && isInvariant && curEntry && !curEntry.retainLiterals) {
551
+ curLowerBound = stripLiteralsForLowerBound(evaluator, destType, curLowerBound);
539
552
  }
540
553
  let curSolvedLowerBound = curLowerBound;
541
554
  if (constraints) {
@@ -566,8 +579,7 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
566
579
  // isn't too wide.
567
580
  if (isInvariant && newLowerBound) {
568
581
  if (!evaluator.assignType(adjSrcType, newLowerBound, diag === null || diag === void 0 ? void 0 : diag.createAddendum(),
569
- /* destConstraints */ undefined,
570
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
582
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
571
583
  if (diag && diagAddendum) {
572
584
  diag.addMessage(localize_1.LocAddendum.typeAssignmentMismatch().format(evaluator.printSrcDestTypes(newLowerBound, adjSrcType)));
573
585
  }
@@ -577,30 +589,22 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
577
589
  // Make sure we don't exceed the upper bound.
578
590
  if (curUpperBound && newLowerBound) {
579
591
  if (!(0, types_1.isTypeSame)(curUpperBound, newLowerBound, {}, recursionCount)) {
580
- let adjUpperBound = evaluator.makeTopLevelTypeVarsConcrete(curUpperBound,
581
- /* makeParamSpecsConcrete */ true);
582
- // Convert any remaining (non-top-level) TypeVars in the upper
583
- // bound to unification vars.
584
- adjUpperBound = (0, typeUtils_1.transformExpectedType)(adjUpperBound,
585
- /* liveTypeVarScopes */ [],
586
- /* usageOffset */ undefined);
587
- if (!evaluator.assignType(adjUpperBound, newLowerBound, diag === null || diag === void 0 ? void 0 : diag.createAddendum(),
588
- /* destConstraints */ undefined,
589
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
592
+ if (!evaluator.assignType(curUpperBound, newLowerBound, diag === null || diag === void 0 ? void 0 : diag.createAddendum(),
593
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
590
594
  if (diag && diagAddendum) {
591
- diag.addMessage(localize_1.LocAddendum.typeAssignmentMismatch().format(evaluator.printSrcDestTypes(newLowerBound, adjUpperBound)));
595
+ diag.addMessage(localize_1.LocAddendum.typeAssignmentMismatch().format(evaluator.printSrcDestTypes(newLowerBound, curUpperBound)));
592
596
  }
593
597
  return false;
594
598
  }
595
599
  }
596
600
  }
597
601
  }
598
- if (!newUpperTypeBound && isInvariant) {
599
- newUpperTypeBound = newLowerBound;
602
+ if (!newUpperBound && isInvariant) {
603
+ newUpperBound = newLowerBound;
600
604
  }
601
605
  // If there's a bound type, make sure the source is assignable to it.
602
606
  if (destType.shared.boundType) {
603
- const updatedType = (newLowerBound || newUpperTypeBound);
607
+ const updatedType = (newLowerBound || newUpperBound);
604
608
  // If the dest is a Type[T] but the source is not a valid Type,
605
609
  // skip the assignType check and the diagnostic addendum, which will
606
610
  // be confusing and inaccurate.
@@ -611,8 +615,7 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
611
615
  // exception. In this case, we need to use the original constraints
612
616
  // to solve for the generic type variable(s) in the bound type.
613
617
  const effectiveConstraints = types_1.TypeVarType.isSelf(destType) ? constraints : undefined;
614
- if (!evaluator.assignType(destType.shared.boundType, evaluator.makeTopLevelTypeVarsConcrete(updatedType), diag === null || diag === void 0 ? void 0 : diag.createAddendum(), effectiveConstraints,
615
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
618
+ if (!evaluator.assignType(destType.shared.boundType, evaluator.makeTopLevelTypeVarsConcrete(updatedType), diag === null || diag === void 0 ? void 0 : diag.createAddendum(), effectiveConstraints, 0 /* AssignTypeFlags.Default */, recursionCount)) {
616
619
  // Avoid adding a message that will confuse users if the TypeVar was
617
620
  // synthesized for internal purposes.
618
621
  if (!destType.shared.isSynthesized) {
@@ -626,7 +629,7 @@ function assignUnconstrainedTypeVar(evaluator, destType, srcType, diag, constrai
626
629
  }
627
630
  }
628
631
  if (constraints && !constraints.isLocked()) {
629
- updateTypeVarType(evaluator, constraints, destType, newLowerBound, newUpperTypeBound, (flags & (2048 /* AssignTypeFlags.PopulatingExpectedType */ | 256 /* AssignTypeFlags.RetainLiteralsForTypeVar */)) !== 0);
632
+ constraints.setBounds(destType, newLowerBound, newUpperBound, (flags & (2048 /* AssignTypeFlags.PopulateExpectedType */ | 256 /* AssignTypeFlags.RetainLiteralsForTypeVar */)) !== 0);
630
633
  }
631
634
  return true;
632
635
  }
@@ -637,12 +640,11 @@ function assignConstrainedTypeVar(evaluator, destType, srcType, diag, constraint
637
640
  const curEntry = constraints === null || constraints === void 0 ? void 0 : constraints.getMainConstraintSet().getTypeVar(destType);
638
641
  const curUpperBound = curEntry === null || curEntry === void 0 ? void 0 : curEntry.upperBound;
639
642
  const curLowerBound = curEntry === null || curEntry === void 0 ? void 0 : curEntry.lowerBound;
640
- let forceRetainLiterals = false;
643
+ let retainLiterals = false;
641
644
  if ((0, types_1.isTypeVar)(srcType)) {
642
645
  if (evaluator.assignType(destType, concreteSrcType,
643
646
  /* diag */ undefined,
644
- /* destConstraints */ undefined,
645
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
647
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
646
648
  constrainedType = srcType;
647
649
  // If the source and dest are both instantiables (type[T]), then
648
650
  // we need to convert to an instance (T).
@@ -670,15 +672,13 @@ function assignConstrainedTypeVar(evaluator, destType, srcType, diag, constraint
670
672
  : constraint;
671
673
  if (evaluator.assignType(adjustedConstraint, srcSubtype,
672
674
  /* diag */ undefined,
673
- /* destConstraints */ undefined,
674
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
675
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
675
676
  if (!constrainedSubtype ||
676
677
  evaluator.assignType(types_1.TypeBase.isInstantiable(destType)
677
678
  ? (0, typeUtils_1.convertToInstantiable)(constrainedSubtype)
678
679
  : constrainedSubtype, adjustedConstraint,
679
680
  /* diag */ undefined,
680
- /* destConstraints */ undefined,
681
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
681
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
682
682
  constrainedSubtype = (0, typeUtils_1.addConditionToType)(constraint, (0, typeUtils_1.getTypeCondition)(srcSubtype));
683
683
  constraintIndexUsed = i;
684
684
  }
@@ -688,7 +688,7 @@ function assignConstrainedTypeVar(evaluator, destType, srcType, diag, constraint
688
688
  // We found a source subtype that is not compatible with the dest.
689
689
  // This is OK if we're handling the contravariant case because only
690
690
  // one subtype needs to be assignable in that case.
691
- if ((flags & 2 /* AssignTypeFlags.ReverseTypeVarMatching */) === 0) {
691
+ if ((flags & 2 /* AssignTypeFlags.Contravariant */) === 0) {
692
692
  isCompatible = false;
693
693
  }
694
694
  }
@@ -715,8 +715,7 @@ function assignConstrainedTypeVar(evaluator, destType, srcType, diag, constraint
715
715
  : constraint;
716
716
  return evaluator.assignType(adjustedConstraint, concreteSrcType,
717
717
  /* diag */ undefined,
718
- /* destConstraints */ undefined,
719
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount);
718
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount);
720
719
  });
721
720
  }
722
721
  }
@@ -731,22 +730,20 @@ function assignConstrainedTypeVar(evaluator, destType, srcType, diag, constraint
731
730
  return false;
732
731
  }
733
732
  else if ((0, typeUtils_1.isLiteralTypeOrUnion)(constrainedType)) {
734
- forceRetainLiterals = true;
733
+ retainLiterals = true;
735
734
  }
736
735
  if (curLowerBound && !(0, types_1.isAnyOrUnknown)(curLowerBound)) {
737
736
  if (!evaluator.assignType(curLowerBound, constrainedType,
738
737
  /* diag */ undefined,
739
- /* destConstraints */ undefined,
740
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
738
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
741
739
  // Handle the case where one of the constrained types is a wider
742
740
  // version of another constrained type that was previously assigned
743
741
  // to the type variable.
744
742
  if (evaluator.assignType(constrainedType, curLowerBound,
745
743
  /* diag */ undefined,
746
- /* destConstraints */ undefined,
747
- /* srcConstraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
744
+ /* constraints */ undefined, 0 /* AssignTypeFlags.Default */, recursionCount)) {
748
745
  if (constraints && !constraints.isLocked()) {
749
- updateTypeVarType(evaluator, constraints, destType, constrainedType, curUpperBound);
746
+ constraints.setBounds(destType, constrainedType, curUpperBound);
750
747
  }
751
748
  }
752
749
  else {
@@ -761,7 +758,7 @@ function assignConstrainedTypeVar(evaluator, destType, srcType, diag, constraint
761
758
  else {
762
759
  // Assign the type to the type var.
763
760
  if (constraints && !constraints.isLocked()) {
764
- updateTypeVarType(evaluator, constraints, destType, constrainedType, curUpperBound, forceRetainLiterals);
761
+ constraints.setBounds(destType, constrainedType, curUpperBound, retainLiterals);
765
762
  }
766
763
  }
767
764
  return true;
@@ -810,12 +807,10 @@ function assignParamSpec(evaluator, destType, srcType, diag, constraints, recurs
810
807
  const existingFunction = (0, typeUtils_1.simplifyFunctionToParamSpec)((0, typeUtils_1.convertTypeToParamSpecValue)(existingType));
811
808
  const isNewNarrower = evaluator.assignType(existingFunction, newFunction,
812
809
  /* diag */ undefined,
813
- /* destConstraints */ undefined,
814
- /* srcConstraints */ undefined, 64 /* AssignTypeFlags.SkipReturnTypeCheck */, recursionCount);
810
+ /* constraints */ undefined, 64 /* AssignTypeFlags.SkipReturnTypeCheck */, recursionCount);
815
811
  const isNewWider = evaluator.assignType(newFunction, existingFunction,
816
812
  /* diag */ undefined,
817
- /* destConstraints */ undefined,
818
- /* srcConstraints */ undefined, 64 /* AssignTypeFlags.SkipReturnTypeCheck */, recursionCount);
813
+ /* constraints */ undefined, 64 /* AssignTypeFlags.SkipReturnTypeCheck */, recursionCount);
819
814
  // Should we widen the type?
820
815
  if (isNewNarrower && isNewWider) {
821
816
  // The new type is both a supertype and a subtype of the existing type.
@@ -860,24 +855,6 @@ function assignParamSpec(evaluator, destType, srcType, diag, constraints, recurs
860
855
  });
861
856
  return isAssignable;
862
857
  }
863
- class UnificationVarTransformer extends typeUtils_1.TypeVarTransformer {
864
- constructor(_evaluator, _constraintSet) {
865
- super();
866
- this._evaluator = _evaluator;
867
- this._constraintSet = _constraintSet;
868
- }
869
- transformTypeVar(typeVar) {
870
- var _a;
871
- if (types_1.TypeVarType.isUnification(typeVar)) {
872
- return (_a = getTypeVarType(this._evaluator, this._constraintSet, typeVar)) !== null && _a !== void 0 ? _a : typeVar;
873
- }
874
- return undefined;
875
- }
876
- }
877
- function applyUnificationVarsToType(evaluator, type, constraintSet) {
878
- const transformer = new UnificationVarTransformer(evaluator, constraintSet);
879
- return transformer.apply(type, 0);
880
- }
881
858
  // For normal TypeVars, the constraint solver can widen a type by combining
882
859
  // two otherwise incompatible types into a union. For TypeVarTuples, we need
883
860
  // to do the equivalent operation for unpacked tuples.
@@ -946,9 +923,8 @@ function logConstraints(evaluator, constraints, indent) {
946
923
  function logTypeVarConstraintSet(evaluator, context, indent) {
947
924
  let loggedConstraint = false;
948
925
  context.getTypeVars().forEach((entry) => {
949
- var _a;
950
926
  const typeVarName = `${indent}${entry.typeVar.shared.name}`;
951
- const lowerBound = (_a = entry.lowerBoundNoLiterals) !== null && _a !== void 0 ? _a : entry.lowerBound;
927
+ const lowerBound = entry.lowerBound;
952
928
  const upperBound = entry.upperBound;
953
929
  // Log the lower and upper bounds.
954
930
  if (lowerBound && upperBound && (0, types_1.isTypeSame)(lowerBound, upperBound)) {