@zzzen/pyright-internal 1.2.0-dev.20221009 → 1.2.0-dev.20221127

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 (338) hide show
  1. package/dist/analyzer/backgroundAnalysisProgram.d.ts +10 -10
  2. package/dist/analyzer/backgroundAnalysisProgram.js +21 -54
  3. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  4. package/dist/analyzer/binder.js +43 -32
  5. package/dist/analyzer/binder.js.map +1 -1
  6. package/dist/analyzer/cacheManager.d.ts +7 -7
  7. package/dist/analyzer/cacheManager.js +17 -15
  8. package/dist/analyzer/cacheManager.js.map +1 -1
  9. package/dist/analyzer/checker.d.ts +16 -3
  10. package/dist/analyzer/checker.js +295 -143
  11. package/dist/analyzer/checker.js.map +1 -1
  12. package/dist/analyzer/codeFlowEngine.d.ts +2 -2
  13. package/dist/analyzer/codeFlowEngine.js +85 -88
  14. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  15. package/dist/analyzer/codeFlowTypes.d.ts +1 -0
  16. package/dist/analyzer/codeFlowTypes.js +3 -1
  17. package/dist/analyzer/codeFlowTypes.js.map +1 -1
  18. package/dist/analyzer/constraintSolver.js +1 -1
  19. package/dist/analyzer/constraintSolver.js.map +1 -1
  20. package/dist/analyzer/dataClasses.d.ts +3 -3
  21. package/dist/analyzer/dataClasses.js +77 -57
  22. package/dist/analyzer/dataClasses.js.map +1 -1
  23. package/dist/analyzer/declaration.js.map +1 -1
  24. package/dist/analyzer/declarationUtils.d.ts +1 -1
  25. package/dist/analyzer/declarationUtils.js +6 -4
  26. package/dist/analyzer/declarationUtils.js.map +1 -1
  27. package/dist/analyzer/docStringConversion.js +4 -3
  28. package/dist/analyzer/docStringConversion.js.map +1 -1
  29. package/dist/analyzer/importResolver.d.ts +4 -0
  30. package/dist/analyzer/importResolver.js +53 -10
  31. package/dist/analyzer/importResolver.js.map +1 -1
  32. package/dist/analyzer/importResult.d.ts +1 -0
  33. package/dist/analyzer/namedTuples.js +1 -1
  34. package/dist/analyzer/namedTuples.js.map +1 -1
  35. package/dist/analyzer/packageTypeVerifier.d.ts +2 -1
  36. package/dist/analyzer/packageTypeVerifier.js +16 -10
  37. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  38. package/dist/analyzer/parseTreeUtils.d.ts +2 -1
  39. package/dist/analyzer/parseTreeUtils.js +38 -3
  40. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  41. package/dist/analyzer/parseTreeWalker.d.ts +86 -79
  42. package/dist/analyzer/parseTreeWalker.js +384 -201
  43. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  44. package/dist/analyzer/program.d.ts +9 -9
  45. package/dist/analyzer/program.js +90 -86
  46. package/dist/analyzer/program.js.map +1 -1
  47. package/dist/analyzer/properties.js +10 -3
  48. package/dist/analyzer/properties.js.map +1 -1
  49. package/dist/analyzer/protocols.js +1 -1
  50. package/dist/analyzer/protocols.js.map +1 -1
  51. package/dist/analyzer/regions.d.ts +11 -0
  52. package/dist/analyzer/regions.js +57 -0
  53. package/dist/analyzer/regions.js.map +1 -0
  54. package/dist/analyzer/service.d.ts +11 -6
  55. package/dist/analyzer/service.js +69 -30
  56. package/dist/analyzer/service.js.map +1 -1
  57. package/dist/analyzer/sourceFile.d.ts +5 -2
  58. package/dist/analyzer/sourceFile.js +21 -8
  59. package/dist/analyzer/sourceFile.js.map +1 -1
  60. package/dist/analyzer/sourceFileInfoUtils.d.ts +1 -1
  61. package/dist/analyzer/sourceFileInfoUtils.js +1 -1
  62. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  63. package/dist/analyzer/sourceMapper.d.ts +11 -3
  64. package/dist/analyzer/sourceMapper.js +61 -14
  65. package/dist/analyzer/sourceMapper.js.map +1 -1
  66. package/dist/analyzer/sourceMapperUtils.d.ts +10 -0
  67. package/dist/analyzer/sourceMapperUtils.js +57 -0
  68. package/dist/analyzer/sourceMapperUtils.js.map +1 -0
  69. package/dist/analyzer/staticExpressions.js +19 -9
  70. package/dist/analyzer/staticExpressions.js.map +1 -1
  71. package/dist/analyzer/symbolUtils.d.ts +1 -0
  72. package/dist/analyzer/symbolUtils.js +5 -1
  73. package/dist/analyzer/symbolUtils.js.map +1 -1
  74. package/dist/analyzer/typeEvaluator.js +654 -258
  75. package/dist/analyzer/typeEvaluator.js.map +1 -1
  76. package/dist/analyzer/typeEvaluatorTypes.d.ts +15 -4
  77. package/dist/analyzer/typeGuards.js +9 -0
  78. package/dist/analyzer/typeGuards.js.map +1 -1
  79. package/dist/analyzer/typePrinter.d.ts +3 -1
  80. package/dist/analyzer/typePrinter.js +135 -26
  81. package/dist/analyzer/typePrinter.js.map +1 -1
  82. package/dist/analyzer/typeStubWriter.js +5 -1
  83. package/dist/analyzer/typeStubWriter.js.map +1 -1
  84. package/dist/analyzer/typeUtils.d.ts +4 -2
  85. package/dist/analyzer/typeUtils.js +112 -25
  86. package/dist/analyzer/typeUtils.js.map +1 -1
  87. package/dist/analyzer/typedDicts.js +8 -6
  88. package/dist/analyzer/typedDicts.js.map +1 -1
  89. package/dist/analyzer/types.d.ts +8 -5
  90. package/dist/analyzer/types.js +49 -20
  91. package/dist/analyzer/types.js.map +1 -1
  92. package/dist/backgroundAnalysisBase.d.ts +6 -4
  93. package/dist/backgroundAnalysisBase.js +30 -8
  94. package/dist/backgroundAnalysisBase.js.map +1 -1
  95. package/dist/backgroundThreadBase.d.ts +2 -1
  96. package/dist/backgroundThreadBase.js +4 -0
  97. package/dist/backgroundThreadBase.js.map +1 -1
  98. package/dist/commands/createTypeStub.js +3 -1
  99. package/dist/commands/createTypeStub.js.map +1 -1
  100. package/dist/common/configOptions.d.ts +1 -0
  101. package/dist/common/configOptions.js +4 -0
  102. package/dist/common/configOptions.js.map +1 -1
  103. package/dist/common/core.d.ts +2 -0
  104. package/dist/common/core.js +24 -3
  105. package/dist/common/core.js.map +1 -1
  106. package/dist/common/diagnostic.d.ts +8 -0
  107. package/dist/common/diagnostic.js +5 -1
  108. package/dist/common/diagnostic.js.map +1 -1
  109. package/dist/common/diagnosticRules.d.ts +2 -1
  110. package/dist/common/diagnosticRules.js +1 -0
  111. package/dist/common/diagnosticRules.js.map +1 -1
  112. package/dist/common/fileSystem.d.ts +1 -0
  113. package/dist/common/fileSystem.js.map +1 -1
  114. package/dist/common/pathUtils.d.ts +1 -0
  115. package/dist/common/pathUtils.js +13 -3
  116. package/dist/common/pathUtils.js.map +1 -1
  117. package/dist/common/pythonVersion.d.ts +1 -1
  118. package/dist/common/pythonVersion.js +1 -1
  119. package/dist/common/realFileSystem.js +12 -3
  120. package/dist/common/realFileSystem.js.map +1 -1
  121. package/dist/common/workspaceEditUtils.d.ts +6 -1
  122. package/dist/common/workspaceEditUtils.js +72 -1
  123. package/dist/common/workspaceEditUtils.js.map +1 -1
  124. package/dist/languageServerBase.d.ts +9 -5
  125. package/dist/languageServerBase.js +35 -21
  126. package/dist/languageServerBase.js.map +1 -1
  127. package/dist/languageService/analyzerServiceExecutor.d.ts +6 -2
  128. package/dist/languageService/analyzerServiceExecutor.js +7 -4
  129. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  130. package/dist/languageService/autoImporter.js +2 -1
  131. package/dist/languageService/autoImporter.js.map +1 -1
  132. package/dist/languageService/codeActionProvider.js +30 -0
  133. package/dist/languageService/codeActionProvider.js.map +1 -1
  134. package/dist/languageService/completionProvider.d.ts +1 -0
  135. package/dist/languageService/completionProvider.js +66 -28
  136. package/dist/languageService/completionProvider.js.map +1 -1
  137. package/dist/languageService/definitionProvider.d.ts +2 -0
  138. package/dist/languageService/definitionProvider.js +3 -0
  139. package/dist/languageService/definitionProvider.js.map +1 -1
  140. package/dist/languageService/documentSymbolCollector.js +7 -3
  141. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  142. package/dist/languageService/documentSymbolProvider.js +1 -1
  143. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  144. package/dist/languageService/hoverProvider.d.ts +1 -1
  145. package/dist/languageService/hoverProvider.js +73 -38
  146. package/dist/languageService/hoverProvider.js.map +1 -1
  147. package/dist/languageService/referencesProvider.js +2 -1
  148. package/dist/languageService/referencesProvider.js.map +1 -1
  149. package/dist/languageService/signatureHelpProvider.js +1 -2
  150. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  151. package/dist/languageService/tooltipUtils.js +30 -19
  152. package/dist/languageService/tooltipUtils.js.map +1 -1
  153. package/dist/localization/localize.d.ts +33 -4
  154. package/dist/localization/localize.js +22 -5
  155. package/dist/localization/localize.js.map +1 -1
  156. package/dist/localization/package.nls.en-us.json +20 -3
  157. package/dist/parser/parseNodes.d.ts +2 -1
  158. package/dist/parser/parseNodes.js +6 -1
  159. package/dist/parser/parseNodes.js.map +1 -1
  160. package/dist/parser/parser.js +19 -13
  161. package/dist/parser/parser.js.map +1 -1
  162. package/dist/parser/tokenizer.js +2 -1
  163. package/dist/parser/tokenizer.js.map +1 -1
  164. package/dist/pyright.js +4 -4
  165. package/dist/pyright.js.map +1 -1
  166. package/dist/pyrightFileSystem.d.ts +1 -0
  167. package/dist/pyrightFileSystem.js +3 -0
  168. package/dist/pyrightFileSystem.js.map +1 -1
  169. package/dist/readonlyAugmentedFileSystem.d.ts +1 -0
  170. package/dist/readonlyAugmentedFileSystem.js +3 -0
  171. package/dist/readonlyAugmentedFileSystem.js.map +1 -1
  172. package/dist/server.d.ts +1 -1
  173. package/dist/server.js +1 -1
  174. package/dist/server.js.map +1 -1
  175. package/dist/tests/checker.test.js +25 -2
  176. package/dist/tests/checker.test.js.map +1 -1
  177. package/dist/tests/config.test.js +11 -0
  178. package/dist/tests/config.test.js.map +1 -1
  179. package/dist/tests/diagnostics.test.d.ts +1 -0
  180. package/dist/tests/diagnostics.test.js +37 -0
  181. package/dist/tests/diagnostics.test.js.map +1 -0
  182. package/dist/tests/docStringConversion.test.js +25 -0
  183. package/dist/tests/docStringConversion.test.js.map +1 -1
  184. package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.js +1 -1
  185. package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.js.map +1 -1
  186. package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.js +5 -5
  187. package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.js.map +1 -1
  188. package/dist/tests/fourslash/completions.classVariable.fourslash.js +28 -6
  189. package/dist/tests/fourslash/completions.classVariable.fourslash.js.map +1 -1
  190. package/dist/tests/fourslash/{signature.paramspec.fourslash.d.ts → completions.dunderNew.Inheritance.fourslash.d.ts} +0 -0
  191. package/dist/tests/fourslash/completions.dunderNew.Inheritance.fourslash.js +29 -0
  192. package/dist/tests/fourslash/completions.dunderNew.Inheritance.fourslash.js.map +1 -0
  193. package/dist/tests/fourslash/completions.dunderNew.fourslash.d.ts +1 -0
  194. package/dist/tests/fourslash/completions.dunderNew.fourslash.js +20 -0
  195. package/dist/tests/fourslash/completions.dunderNew.fourslash.js.map +1 -0
  196. package/dist/tests/fourslash/completions.fourslash.js +2 -2
  197. package/dist/tests/fourslash/completions.fourslash.js.map +1 -1
  198. package/dist/tests/fourslash/completions.libCodeAndStub.fourslash.js +1 -1
  199. package/dist/tests/fourslash/completions.libCodeAndStub.fourslash.js.map +1 -1
  200. package/dist/tests/fourslash/completions.libCodeNoStub.fourslash.js +1 -1
  201. package/dist/tests/fourslash/completions.libCodeNoStub.fourslash.js.map +1 -1
  202. package/dist/tests/fourslash/completions.libStub.fourslash.js +1 -1
  203. package/dist/tests/fourslash/completions.libStub.fourslash.js.map +1 -1
  204. package/dist/tests/fourslash/completions.localCode.fourslash.js +2 -2
  205. package/dist/tests/fourslash/completions.localCode.fourslash.js.map +1 -1
  206. package/dist/tests/fourslash/completions.plainText.fourslash.js +2 -2
  207. package/dist/tests/fourslash/completions.plainText.fourslash.js.map +1 -1
  208. package/dist/tests/fourslash/completions.self.fourslash.js +2 -2
  209. package/dist/tests/fourslash/completions.self.fourslash.js.map +1 -1
  210. package/dist/tests/fourslash/completions.wildcardimports.fourslash.js +1 -1
  211. package/dist/tests/fourslash/completions.wildcardimports.fourslash.js.map +1 -1
  212. package/dist/tests/fourslash/findDefinitions.builtinClass.fourslash.js +8 -6
  213. package/dist/tests/fourslash/findDefinitions.builtinClass.fourslash.js.map +1 -1
  214. package/dist/tests/fourslash/findDefinitions.namespaceImport.fourslash.js +2 -2
  215. package/dist/tests/fourslash/findDefinitions.namespaceImport.fourslash.js.map +1 -1
  216. package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.d.ts +1 -0
  217. package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.js +32 -0
  218. package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.js.map +1 -0
  219. package/dist/tests/fourslash/fourslash.d.ts +2 -1
  220. package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.js +2 -2
  221. package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.js.map +1 -1
  222. package/dist/tests/fourslash/hover.docFromSrc.fourslash.js +4 -4
  223. package/dist/tests/fourslash/hover.docFromSrc.fourslash.js.map +1 -1
  224. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module1.fourslash.js +1 -1
  225. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module1.fourslash.js.map +1 -1
  226. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module2.fourslash.js +1 -1
  227. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module2.fourslash.js.map +1 -1
  228. package/dist/tests/fourslash/hover.docFromSrc.relativeImport1.fourslash.js +1 -1
  229. package/dist/tests/fourslash/hover.docFromSrc.relativeImport1.fourslash.js.map +1 -1
  230. package/dist/tests/fourslash/hover.docFromSrc.relativeImport2.fourslash.js +1 -1
  231. package/dist/tests/fourslash/hover.docFromSrc.relativeImport2.fourslash.js.map +1 -1
  232. package/dist/tests/fourslash/hover.docFromSrc.relativeImport3.fourslash.js +1 -1
  233. package/dist/tests/fourslash/hover.docFromSrc.relativeImport3.fourslash.js.map +1 -1
  234. package/dist/tests/fourslash/hover.docFromSrc.stubs-package.fourslash.js +2 -2
  235. package/dist/tests/fourslash/hover.docFromSrc.stubs-package.fourslash.js.map +1 -1
  236. package/dist/tests/fourslash/hover.docFromSrc.typeshed.fourslash.js +1 -1
  237. package/dist/tests/fourslash/hover.docFromSrc.typeshed.fourslash.js.map +1 -1
  238. package/dist/tests/fourslash/hover.docstring.alias.fourslash.d.ts +1 -0
  239. package/dist/tests/fourslash/hover.docstring.alias.fourslash.js +24 -0
  240. package/dist/tests/fourslash/hover.docstring.alias.fourslash.js.map +1 -0
  241. package/dist/tests/fourslash/hover.docstring.links.fourslash.js +1 -1
  242. package/dist/tests/fourslash/hover.docstring.links.fourslash.js.map +1 -1
  243. package/dist/tests/fourslash/hover.docstring.split.fourslash.js +3 -3
  244. package/dist/tests/fourslash/hover.docstring.split.fourslash.js.map +1 -1
  245. package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.d.ts +1 -0
  246. package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.js +13 -0
  247. package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.js.map +1 -0
  248. package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.d.ts +1 -0
  249. package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.js +15 -0
  250. package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.js.map +1 -0
  251. package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.d.ts +1 -0
  252. package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.js +21 -0
  253. package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.js.map +1 -0
  254. package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.d.ts +1 -0
  255. package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.js +17 -0
  256. package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.js.map +1 -0
  257. package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.d.ts +1 -0
  258. package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.js +15 -0
  259. package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.js.map +1 -0
  260. package/dist/tests/fourslash/hover.fourslash.js +1 -1
  261. package/dist/tests/fourslash/hover.fourslash.js.map +1 -1
  262. package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.js +3 -3
  263. package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.js.map +1 -1
  264. package/dist/tests/fourslash/hover.inherited.docFromSrcWithStub.fourslash.js +2 -2
  265. package/dist/tests/fourslash/hover.inherited.docFromSrcWithStub.fourslash.js.map +1 -1
  266. package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.js +2 -2
  267. package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.js.map +1 -1
  268. package/dist/tests/fourslash/hover.init.fourslash.js +1 -1
  269. package/dist/tests/fourslash/hover.init.fourslash.js.map +1 -1
  270. package/dist/tests/fourslash/hover.libCodeAndStub.fourslash.js +1 -1
  271. package/dist/tests/fourslash/hover.libCodeAndStub.fourslash.js.map +1 -1
  272. package/dist/tests/fourslash/hover.libCodeNoStub.fourslash.js +1 -1
  273. package/dist/tests/fourslash/hover.libCodeNoStub.fourslash.js.map +1 -1
  274. package/dist/tests/fourslash/hover.libStub.fourslash.js +1 -1
  275. package/dist/tests/fourslash/hover.libStub.fourslash.js.map +1 -1
  276. package/dist/tests/fourslash/hover.plainText.fourslash.js +1 -1
  277. package/dist/tests/fourslash/hover.plainText.fourslash.js.map +1 -1
  278. package/dist/tests/fourslash/hover.wildcardimports.fourslash.js +1 -1
  279. package/dist/tests/fourslash/hover.wildcardimports.fourslash.js.map +1 -1
  280. package/dist/tests/fourslash/import.pytyped.typeCheckingBasic.fourslash.js +1 -1
  281. package/dist/tests/fourslash/import.pytyped.typeCheckingBasic.fourslash.js.map +1 -1
  282. package/dist/tests/fourslash/import.pytyped.typeCheckingOff.fourslash.js +1 -1
  283. package/dist/tests/fourslash/import.pytyped.typeCheckingOff.fourslash.js.map +1 -1
  284. package/dist/tests/fourslash/shadowedImports.fourslash.d.ts +1 -0
  285. package/dist/tests/fourslash/shadowedImports.fourslash.js +75 -0
  286. package/dist/tests/fourslash/shadowedImports.fourslash.js.map +1 -0
  287. package/dist/tests/fourslash/signature.dunderNew.fourslash.d.ts +1 -0
  288. package/dist/tests/fourslash/signature.dunderNew.fourslash.js +24 -0
  289. package/dist/tests/fourslash/signature.dunderNew.fourslash.js.map +1 -0
  290. package/dist/tests/harness/fourslash/runner.js +1 -0
  291. package/dist/tests/harness/fourslash/runner.js.map +1 -1
  292. package/dist/tests/harness/fourslash/testLanguageService.d.ts +3 -1
  293. package/dist/tests/harness/fourslash/testLanguageService.js +4 -2
  294. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  295. package/dist/tests/harness/fourslash/testState.d.ts +8 -7
  296. package/dist/tests/harness/fourslash/testState.js +80 -161
  297. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  298. package/dist/tests/harness/fourslash/workspaceEditTestUtils.d.ts +16 -0
  299. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +159 -0
  300. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -0
  301. package/dist/tests/harness/vfs/filesystem.d.ts +1 -0
  302. package/dist/tests/harness/vfs/filesystem.js +3 -0
  303. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  304. package/dist/tests/ipythonMode.test.js +39 -0
  305. package/dist/tests/ipythonMode.test.js.map +1 -1
  306. package/dist/tests/logger.test.js +3 -1
  307. package/dist/tests/logger.test.js.map +1 -1
  308. package/dist/tests/pathUtils.test.js +7 -0
  309. package/dist/tests/pathUtils.test.js.map +1 -1
  310. package/dist/tests/sourceFile.test.js +34 -1
  311. package/dist/tests/sourceFile.test.js.map +1 -1
  312. package/dist/tests/sourceMapperUtils.test.d.ts +1 -0
  313. package/dist/tests/sourceMapperUtils.test.js +138 -0
  314. package/dist/tests/sourceMapperUtils.test.js.map +1 -0
  315. package/dist/tests/tokenizer.test.js +6 -2
  316. package/dist/tests/tokenizer.test.js.map +1 -1
  317. package/dist/tests/typeEvaluator1.test.js +16 -6
  318. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  319. package/dist/tests/typeEvaluator2.test.js +19 -3
  320. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  321. package/dist/tests/typeEvaluator3.test.js +44 -10
  322. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  323. package/dist/tests/typeEvaluator4.test.js +11 -3
  324. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  325. package/dist/tests/typeEvaluator5.test.js +48 -0
  326. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  327. package/dist/tests/typePrinter.test.d.ts +1 -0
  328. package/dist/tests/typePrinter.test.js +148 -0
  329. package/dist/tests/typePrinter.test.js.map +1 -0
  330. package/dist/tests/workspaceEditUtils.test.d.ts +1 -0
  331. package/dist/tests/workspaceEditUtils.test.js +167 -0
  332. package/dist/tests/workspaceEditUtils.test.js.map +1 -0
  333. package/dist/workspaceMap.d.ts +2 -0
  334. package/dist/workspaceMap.js +45 -15
  335. package/dist/workspaceMap.js.map +1 -1
  336. package/package.json +3 -3
  337. package/dist/tests/fourslash/signature.paramspec.fourslash.js +0 -30
  338. package/dist/tests/fourslash/signature.paramspec.fourslash.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"parseNodes.js","sourceRoot":"","sources":["../../../src/parser/parseNodes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parseNodes.js","sourceRoot":"","sources":["../../../src/parser/parseNodes.ts"],"names":[],"mappings":"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"}
@@ -310,7 +310,7 @@ class Parser {
310
310
  }
311
311
  return parseNodes_1.TypeParameterListNode.create(openBracketToken, closingToken, typeVariableNodes);
312
312
  }
313
- // type_param: ['*' | '**'] NAME [':' expr]
313
+ // type_param: ['*' | '**'] NAME [':' bound_expr] ['=' default_expr]
314
314
  _parseTypeParameter() {
315
315
  let typeParamCategory = parseNodes_1.TypeParameterCategory.TypeVar;
316
316
  if (this._consumeTokenIfOperator(26 /* Multiply */)) {
@@ -326,14 +326,18 @@ class Parser {
326
326
  }
327
327
  const name = parseNodes_1.NameNode.create(nameToken);
328
328
  let boundExpression;
329
- if (this._peekTokenType() === 10 /* Colon */) {
330
- this._getNextToken();
331
- boundExpression = this._parseTestExpression(/* allowAssignmentExpression */ false);
329
+ if (this._consumeTokenIfType(10 /* Colon */)) {
330
+ boundExpression = this._parseExpression(/* allowUnpack */ false);
332
331
  if (typeParamCategory !== parseNodes_1.TypeParameterCategory.TypeVar) {
333
332
  this._addError(localize_1.Localizer.Diagnostic.typeParameterBoundNotAllowed(), boundExpression);
334
333
  }
335
334
  }
336
- return parseNodes_1.TypeParameterNode.create(name, typeParamCategory, boundExpression);
335
+ let defaultExpression;
336
+ if (this._consumeTokenIfOperator(2 /* Assign */)) {
337
+ defaultExpression = this._parseExpression(
338
+ /* allowUnpack */ typeParamCategory === parseNodes_1.TypeParameterCategory.TypeVarTuple);
339
+ }
340
+ return parseNodes_1.TypeParameterNode.create(name, typeParamCategory, boundExpression, defaultExpression);
337
341
  }
338
342
  // match_stmt: "match" subject_expr ':' NEWLINE INDENT case_block+ DEDENT
339
343
  // subject_expr:
@@ -1043,14 +1047,15 @@ class Parser {
1043
1047
  if (postColonCallback) {
1044
1048
  postColonCallback();
1045
1049
  }
1050
+ let bodyIndentToken;
1046
1051
  const possibleIndent = this._peekToken();
1047
1052
  if (!this._consumeTokenIfType(3 /* Indent */)) {
1048
1053
  this._addError(localize_1.Localizer.Diagnostic.expectedIndentedBlock(), this._peekToken());
1049
1054
  }
1050
1055
  else {
1051
- const indentToken = possibleIndent;
1052
- if (indentToken.isIndentAmbiguous) {
1053
- this._addError(localize_1.Localizer.Diagnostic.inconsistentTabs(), indentToken);
1056
+ bodyIndentToken = possibleIndent;
1057
+ if (bodyIndentToken.isIndentAmbiguous) {
1058
+ this._addError(localize_1.Localizer.Diagnostic.inconsistentTabs(), bodyIndentToken);
1054
1059
  }
1055
1060
  }
1056
1061
  while (true) {
@@ -1085,7 +1090,11 @@ class Parser {
1085
1090
  else {
1086
1091
  (0, parseNodes_1.extendRange)(suite, dedentToken);
1087
1092
  }
1088
- break;
1093
+ // Did this dedent take us to an indent amount that is less than the
1094
+ // initial indent of the suite body?
1095
+ if (!bodyIndentToken || dedentToken.indentAmount < bodyIndentToken.indentAmount) {
1096
+ break;
1097
+ }
1089
1098
  }
1090
1099
  const statement = this._parseStatement();
1091
1100
  if (!statement) {
@@ -2358,12 +2367,9 @@ class Parser {
2358
2367
  return testExpr;
2359
2368
  }
2360
2369
  if (!this._consumeTokenIfKeyword(13 /* Else */)) {
2361
- return this._handleExpressionParseError(1 /* MissingElse */, localize_1.Localizer.Diagnostic.expectedElse());
2370
+ return parseNodes_1.TernaryNode.create(ifExpr, testExpr, this._handleExpressionParseError(1 /* MissingElse */, localize_1.Localizer.Diagnostic.expectedElse()));
2362
2371
  }
2363
2372
  const elseExpr = this._parseTestExpression(/* allowAssignmentExpression */ true);
2364
- if (elseExpr.nodeType === 0 /* Error */) {
2365
- return elseExpr;
2366
- }
2367
2373
  return parseNodes_1.TernaryNode.create(ifExpr, testExpr, elseExpr);
2368
2374
  }
2369
2375
  // assign_expr: NAME := test