@zzzen/pyright-internal 1.2.0-dev.20240128 → 1.2.0-dev.20240225

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 (593) hide show
  1. package/dist/analyzer/analysis.js +4 -1
  2. package/dist/analyzer/analysis.js.map +1 -1
  3. package/dist/analyzer/analyzerFileInfo.js.map +1 -1
  4. package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
  5. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  6. package/dist/analyzer/binder.js +1 -0
  7. package/dist/analyzer/binder.js.map +1 -1
  8. package/dist/analyzer/cacheManager.js.map +1 -1
  9. package/dist/analyzer/checker.d.ts +1 -2
  10. package/dist/analyzer/checker.js +251 -121
  11. package/dist/analyzer/checker.js.map +1 -1
  12. package/dist/analyzer/circularDependency.js.map +1 -1
  13. package/dist/analyzer/codeFlowEngine.js +29 -3
  14. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  15. package/dist/analyzer/codeFlowTypes.js.map +1 -1
  16. package/dist/analyzer/codeFlowUtils.js.map +1 -1
  17. package/dist/analyzer/commentUtils.js.map +1 -1
  18. package/dist/analyzer/constraintSolver.d.ts +2 -2
  19. package/dist/analyzer/constraintSolver.js +28 -6
  20. package/dist/analyzer/constraintSolver.js.map +1 -1
  21. package/dist/analyzer/constructorTransform.js.map +1 -1
  22. package/dist/analyzer/constructors.js.map +1 -1
  23. package/dist/analyzer/dataClasses.js +6 -6
  24. package/dist/analyzer/dataClasses.js.map +1 -1
  25. package/dist/analyzer/declaration.js.map +1 -1
  26. package/dist/analyzer/declarationUtils.js.map +1 -1
  27. package/dist/analyzer/decorators.js +6 -6
  28. package/dist/analyzer/decorators.js.map +1 -1
  29. package/dist/analyzer/deprecatedSymbols.js.map +1 -1
  30. package/dist/analyzer/docStringConversion.js.map +1 -1
  31. package/dist/analyzer/docStringUtils.js.map +1 -1
  32. package/dist/analyzer/enums.d.ts +4 -1
  33. package/dist/analyzer/enums.js +30 -16
  34. package/dist/analyzer/enums.js.map +1 -1
  35. package/dist/analyzer/functionTransform.js.map +1 -1
  36. package/dist/analyzer/importResolver.js +12 -4
  37. package/dist/analyzer/importResolver.js.map +1 -1
  38. package/dist/analyzer/importResult.js.map +1 -1
  39. package/dist/analyzer/importStatementUtils.js +2 -0
  40. package/dist/analyzer/importStatementUtils.js.map +1 -1
  41. package/dist/analyzer/namedTuples.js +1 -1
  42. package/dist/analyzer/namedTuples.js.map +1 -1
  43. package/dist/analyzer/operations.js +6 -0
  44. package/dist/analyzer/operations.js.map +1 -1
  45. package/dist/analyzer/packageTypeReport.js.map +1 -1
  46. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  47. package/dist/analyzer/parameterUtils.d.ts +1 -0
  48. package/dist/analyzer/parameterUtils.js +16 -2
  49. package/dist/analyzer/parameterUtils.js.map +1 -1
  50. package/dist/analyzer/parentDirectoryCache.js.map +1 -1
  51. package/dist/analyzer/parseTreeCleaner.js.map +1 -1
  52. package/dist/analyzer/parseTreeUtils.d.ts +1 -0
  53. package/dist/analyzer/parseTreeUtils.js +4 -3
  54. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  55. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  56. package/dist/analyzer/patternMatching.js +90 -61
  57. package/dist/analyzer/patternMatching.js.map +1 -1
  58. package/dist/analyzer/program.d.ts +1 -1
  59. package/dist/analyzer/program.js +2 -2
  60. package/dist/analyzer/program.js.map +1 -1
  61. package/dist/analyzer/properties.js +2 -2
  62. package/dist/analyzer/properties.js.map +1 -1
  63. package/dist/analyzer/protocols.js.map +1 -1
  64. package/dist/analyzer/pyTypedUtils.js.map +1 -1
  65. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  66. package/dist/analyzer/scope.js.map +1 -1
  67. package/dist/analyzer/scopeUtils.js.map +1 -1
  68. package/dist/analyzer/service.js.map +1 -1
  69. package/dist/analyzer/sourceFile.js +4 -4
  70. package/dist/analyzer/sourceFile.js.map +1 -1
  71. package/dist/analyzer/sourceFileInfo.js +1 -1
  72. package/dist/analyzer/sourceFileInfo.js.map +1 -1
  73. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  74. package/dist/analyzer/sourceMapper.js.map +1 -1
  75. package/dist/analyzer/sourceMapperUtils.js.map +1 -1
  76. package/dist/analyzer/staticExpressions.js.map +1 -1
  77. package/dist/analyzer/symbol.js.map +1 -1
  78. package/dist/analyzer/symbolNameUtils.js.map +1 -1
  79. package/dist/analyzer/symbolUtils.js.map +1 -1
  80. package/dist/analyzer/testWalker.js.map +1 -1
  81. package/dist/analyzer/tracePrinter.js.map +1 -1
  82. package/dist/analyzer/typeCacheUtils.js.map +1 -1
  83. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  84. package/dist/analyzer/typeEvaluator.js +433 -334
  85. package/dist/analyzer/typeEvaluator.js.map +1 -1
  86. package/dist/analyzer/typeEvaluatorTypes.d.ts +1 -0
  87. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  88. package/dist/analyzer/typeEvaluatorWithTracker.js.map +1 -1
  89. package/dist/analyzer/typeGuards.js +10 -5
  90. package/dist/analyzer/typeGuards.js.map +1 -1
  91. package/dist/analyzer/typePrinter.js +1 -1
  92. package/dist/analyzer/typePrinter.js.map +1 -1
  93. package/dist/analyzer/typeStubWriter.js.map +1 -1
  94. package/dist/analyzer/typeUtils.d.ts +0 -1
  95. package/dist/analyzer/typeUtils.js +22 -8
  96. package/dist/analyzer/typeUtils.js.map +1 -1
  97. package/dist/analyzer/typeVarContext.d.ts +2 -2
  98. package/dist/analyzer/typeVarContext.js +10 -4
  99. package/dist/analyzer/typeVarContext.js.map +1 -1
  100. package/dist/analyzer/typeWalker.js.map +1 -1
  101. package/dist/analyzer/typedDicts.d.ts +6 -3
  102. package/dist/analyzer/typedDicts.js +292 -65
  103. package/dist/analyzer/typedDicts.js.map +1 -1
  104. package/dist/analyzer/types.d.ts +38 -26
  105. package/dist/analyzer/types.js +99 -72
  106. package/dist/analyzer/types.js.map +1 -1
  107. package/dist/backgroundAnalysis.js.map +1 -1
  108. package/dist/backgroundAnalysisBase.js.map +1 -1
  109. package/dist/backgroundThreadBase.js.map +1 -1
  110. package/dist/commands/commandController.js.map +1 -1
  111. package/dist/commands/commandResult.js.map +1 -1
  112. package/dist/commands/commands.js.map +1 -1
  113. package/dist/commands/createTypeStub.js.map +1 -1
  114. package/dist/commands/dumpFileDebugInfoCommand.js +18 -18
  115. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  116. package/dist/commands/quickActionCommand.js.map +1 -1
  117. package/dist/commands/restartServer.js.map +1 -1
  118. package/dist/common/cancellationUtils.d.ts +6 -1
  119. package/dist/common/cancellationUtils.js +18 -4
  120. package/dist/common/cancellationUtils.js.map +1 -1
  121. package/dist/common/charCodes.js.map +1 -1
  122. package/dist/common/chokidarFileWatcherProvider.js.map +1 -1
  123. package/dist/common/collectionUtils.js.map +1 -1
  124. package/dist/common/commandLineOptions.js.map +1 -1
  125. package/dist/common/commandUtils.js.map +1 -1
  126. package/dist/common/configOptions.js.map +1 -1
  127. package/dist/common/console.js.map +1 -1
  128. package/dist/common/core.js.map +1 -1
  129. package/dist/common/crypto.js.map +1 -1
  130. package/dist/common/debug.js.map +1 -1
  131. package/dist/common/deferred.js.map +1 -1
  132. package/dist/common/diagnostic.js.map +1 -1
  133. package/dist/common/diagnosticRules.js.map +1 -1
  134. package/dist/common/diagnosticSink.js.map +1 -1
  135. package/dist/common/editAction.js.map +1 -1
  136. package/dist/common/envVarUtils.d.ts +2 -1
  137. package/dist/common/envVarUtils.js +5 -1
  138. package/dist/common/envVarUtils.js.map +1 -1
  139. package/dist/common/extensibility.js.map +1 -1
  140. package/dist/common/extensions.js.map +1 -1
  141. package/dist/common/fileBasedCancellationUtils.js.map +1 -1
  142. package/dist/common/fileSystem.js.map +1 -1
  143. package/dist/common/fileWatcher.js.map +1 -1
  144. package/dist/common/fullAccessHost.js +1 -1
  145. package/dist/common/fullAccessHost.js.map +1 -1
  146. package/dist/common/host.js.map +1 -1
  147. package/dist/common/logTracker.js.map +1 -1
  148. package/dist/common/lspUtils.js.map +1 -1
  149. package/dist/common/memUtils.js.map +1 -1
  150. package/dist/common/pathConsts.js.map +1 -1
  151. package/dist/common/pathUtils.js.map +1 -1
  152. package/dist/common/positionUtils.js.map +1 -1
  153. package/dist/common/progressReporter.js.map +1 -1
  154. package/dist/common/pythonVersion.js.map +1 -1
  155. package/dist/common/realFileSystem.js +1 -1
  156. package/dist/common/realFileSystem.js.map +1 -1
  157. package/dist/common/serviceProvider.js.map +1 -1
  158. package/dist/common/serviceProviderExtensions.js.map +1 -1
  159. package/dist/common/stringUtils.js.map +1 -1
  160. package/dist/common/textEditTracker.js.map +1 -1
  161. package/dist/common/textRange.js.map +1 -1
  162. package/dist/common/textRangeCollection.js.map +1 -1
  163. package/dist/common/timing.js.map +1 -1
  164. package/dist/common/uri/baseUri.d.ts +2 -0
  165. package/dist/common/uri/baseUri.js +7 -7
  166. package/dist/common/uri/baseUri.js.map +1 -1
  167. package/dist/common/uri/emptyUri.d.ts +2 -0
  168. package/dist/common/uri/emptyUri.js +6 -0
  169. package/dist/common/uri/emptyUri.js.map +1 -1
  170. package/dist/common/uri/fileUri.d.ts +6 -4
  171. package/dist/common/uri/fileUri.js +18 -9
  172. package/dist/common/uri/fileUri.js.map +1 -1
  173. package/dist/common/uri/memoization.js.map +1 -1
  174. package/dist/common/uri/uri.d.ts +8 -0
  175. package/dist/common/uri/uri.js +16 -7
  176. package/dist/common/uri/uri.js.map +1 -1
  177. package/dist/common/uri/uriUtils.js.map +1 -1
  178. package/dist/common/uri/webUri.d.ts +3 -1
  179. package/dist/common/uri/webUri.js +21 -8
  180. package/dist/common/uri/webUri.js.map +1 -1
  181. package/dist/common/workspaceEditUtils.js.map +1 -1
  182. package/dist/languageServerBase.js.map +1 -1
  183. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  184. package/dist/languageService/autoImporter.d.ts +1 -0
  185. package/dist/languageService/autoImporter.js +3 -1
  186. package/dist/languageService/autoImporter.js.map +1 -1
  187. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  188. package/dist/languageService/codeActionProvider.js.map +1 -1
  189. package/dist/languageService/completionProvider.js +11 -3
  190. package/dist/languageService/completionProvider.js.map +1 -1
  191. package/dist/languageService/completionProviderUtils.js.map +1 -1
  192. package/dist/languageService/definitionProvider.js.map +1 -1
  193. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  194. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  195. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  196. package/dist/languageService/hoverProvider.js +1 -1
  197. package/dist/languageService/hoverProvider.js.map +1 -1
  198. package/dist/languageService/importSorter.js.map +1 -1
  199. package/dist/languageService/navigationUtils.js.map +1 -1
  200. package/dist/languageService/quickActions.js.map +1 -1
  201. package/dist/languageService/referencesProvider.js +11 -1
  202. package/dist/languageService/referencesProvider.js.map +1 -1
  203. package/dist/languageService/renameProvider.js.map +1 -1
  204. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  205. package/dist/languageService/symbolIndexer.js.map +1 -1
  206. package/dist/languageService/tooltipUtils.js.map +1 -1
  207. package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
  208. package/dist/localization/localize.d.ts +45 -3
  209. package/dist/localization/localize.js +16 -3
  210. package/dist/localization/localize.js.map +1 -1
  211. package/dist/localization/package.nls.cs.json +15 -9
  212. package/dist/localization/package.nls.de.json +17 -11
  213. package/dist/localization/package.nls.en-us.json +25 -12
  214. package/dist/localization/package.nls.es.json +16 -10
  215. package/dist/localization/package.nls.fr.json +16 -10
  216. package/dist/localization/package.nls.it.json +16 -10
  217. package/dist/localization/package.nls.ja.json +17 -11
  218. package/dist/localization/package.nls.ko.json +14 -8
  219. package/dist/localization/package.nls.pl.json +14 -8
  220. package/dist/localization/package.nls.pt-br.json +17 -11
  221. package/dist/localization/package.nls.qps-ploc.json +12 -6
  222. package/dist/localization/package.nls.ru.json +17 -11
  223. package/dist/localization/package.nls.tr.json +16 -10
  224. package/dist/localization/package.nls.zh-cn.json +17 -11
  225. package/dist/localization/package.nls.zh-tw.json +17 -11
  226. package/dist/nodeMain.js.map +1 -1
  227. package/dist/nodeServer.js.map +1 -1
  228. package/dist/parser/characterStream.js.map +1 -1
  229. package/dist/parser/characters.js.map +1 -1
  230. package/dist/parser/parseNodes.js.map +1 -1
  231. package/dist/parser/parser.js.map +1 -1
  232. package/dist/parser/stringTokenUtils.js.map +1 -1
  233. package/dist/parser/tokenizer.js.map +1 -1
  234. package/dist/parser/tokenizerTypes.js.map +1 -1
  235. package/dist/parser/unicode.js.map +1 -1
  236. package/dist/pprof/profiler.js.map +1 -1
  237. package/dist/pyright.js.map +1 -1
  238. package/dist/pyrightFileSystem.js.map +1 -1
  239. package/dist/readonlyAugmentedFileSystem.js.map +1 -1
  240. package/dist/server.d.ts +2 -1
  241. package/dist/server.js +9 -7
  242. package/dist/server.js.map +1 -1
  243. package/dist/tests/cacheManager.test.js.map +1 -1
  244. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  245. package/dist/tests/checker.test.js +0 -4
  246. package/dist/tests/checker.test.js.map +1 -1
  247. package/dist/tests/classDeclaration.test.js.map +1 -1
  248. package/dist/tests/collectionUtils.test.js.map +1 -1
  249. package/dist/tests/common.test.js.map +1 -1
  250. package/dist/tests/completions.test.js +23 -0
  251. package/dist/tests/completions.test.js.map +1 -1
  252. package/dist/tests/config.test.js +1 -2
  253. package/dist/tests/config.test.js.map +1 -1
  254. package/dist/tests/debug.test.js.map +1 -1
  255. package/dist/tests/deferred.test.js.map +1 -1
  256. package/dist/tests/diagnosticOverrides.test.js.map +1 -1
  257. package/dist/tests/diagnostics.test.js.map +1 -1
  258. package/dist/tests/docStringConversion.test.js.map +1 -1
  259. package/dist/tests/docStringUtils.test.js.map +1 -1
  260. package/dist/tests/documentSymbolCollector.test.js.map +1 -1
  261. package/dist/tests/envVarUtils.test.d.ts +1 -0
  262. package/dist/tests/envVarUtils.test.js +130 -0
  263. package/dist/tests/envVarUtils.test.js.map +1 -0
  264. package/dist/tests/filesystem.test.js.map +1 -1
  265. package/dist/tests/fourSlashParser.test.js.map +1 -1
  266. package/dist/tests/fourSlashRunner.test.js.map +1 -1
  267. package/dist/tests/fourslash/completions.autoimport.Lib.Found.Type.fourslash.js.map +1 -1
  268. package/dist/tests/fourslash/completions.autoimport.Lib.Found.duplication.fourslash.js.map +1 -1
  269. package/dist/tests/fourslash/completions.autoimport.Lib.NotFound.fourslash.js.map +1 -1
  270. package/dist/tests/fourslash/completions.autoimport.disabled.fourslash.js.map +1 -1
  271. package/dist/tests/fourslash/completions.autoimport.duplicates.fourslash.js.map +1 -1
  272. package/dist/tests/fourslash/completions.autoimport.fourslash.js.map +1 -1
  273. package/dist/tests/fourslash/completions.autoimport.fromImport.fourslash.js.map +1 -1
  274. package/dist/tests/fourslash/completions.autoimport.lib.alias.fourslash.js.map +1 -1
  275. package/dist/tests/fourslash/completions.autoimport.plainText.fourslash.js.map +1 -1
  276. package/dist/tests/fourslash/completions.autoimport.shadow.fourslash.js.map +1 -1
  277. package/dist/tests/fourslash/completions.autoimport.submodule.fourslash.js.map +1 -1
  278. package/dist/tests/fourslash/completions.autoimport.topLevel.fourslash.js.map +1 -1
  279. package/dist/tests/fourslash/completions.builtinDocstrings.fourslash.js.map +1 -1
  280. package/dist/tests/fourslash/completions.builtinOverride.fourslash.js.map +1 -1
  281. package/dist/tests/fourslash/completions.call.stringLiteral.fourslash.js.map +1 -1
  282. package/dist/tests/fourslash/completions.call.typedDict.fourslash.js.map +1 -1
  283. package/dist/tests/fourslash/completions.call.typedDict.list.fourslash.js.map +1 -1
  284. package/dist/tests/fourslash/completions.call.typedDict.states.fourslash.js.map +1 -1
  285. package/dist/tests/fourslash/completions.classVariable.fourslash.js.map +1 -1
  286. package/dist/tests/fourslash/completions.comment.fourslash.js.map +1 -1
  287. package/dist/tests/fourslash/completions.declNames.class.fourslash.js.map +1 -1
  288. package/dist/tests/fourslash/completions.declNames.exception.fourslash.js.map +1 -1
  289. package/dist/tests/fourslash/completions.declNames.for.fourslash.js.map +1 -1
  290. package/dist/tests/fourslash/completions.declNames.importAlias.fourslash.js.map +1 -1
  291. package/dist/tests/fourslash/completions.declNames.lambda.fourslash.js.map +1 -1
  292. package/dist/tests/fourslash/completions.declNames.method.fourslash.js.map +1 -1
  293. package/dist/tests/fourslash/completions.declNames.overload.fourslash.js.map +1 -1
  294. package/dist/tests/fourslash/completions.declNames.topLevelOverload.fourslash.js.map +1 -1
  295. package/dist/tests/fourslash/completions.dictionary.keys.complex.fourslash.js.map +1 -1
  296. package/dist/tests/fourslash/completions.dictionary.keys.expression.fourslash.js.map +1 -1
  297. package/dist/tests/fourslash/completions.dictionary.keys.literalTypes.fourslash.js.map +1 -1
  298. package/dist/tests/fourslash/completions.dictionary.keys.simple.fourslash.js.map +1 -1
  299. package/dist/tests/fourslash/completions.dictionary.keys.stringLiterals.fourslash.js.map +1 -1
  300. package/dist/tests/fourslash/completions.dictionary.keys.symbols.fourslash.js.map +1 -1
  301. package/dist/tests/fourslash/completions.dunderNew.Inheritance.fourslash.js.map +1 -1
  302. package/dist/tests/fourslash/completions.dunderNew.fourslash.js.map +1 -1
  303. package/dist/tests/fourslash/completions.enums.members.fourslash.js.map +1 -1
  304. package/dist/tests/fourslash/completions.errorNodes.fourslash.js.map +1 -1
  305. package/dist/tests/fourslash/completions.excluded.fourslash.js.map +1 -1
  306. package/dist/tests/fourslash/completions.fourslash.js.map +1 -1
  307. package/dist/tests/fourslash/completions.fstring.fourslash.js.map +1 -1
  308. package/dist/tests/fourslash/completions.fstring.stringLiteral.fourslash.js.map +1 -1
  309. package/dist/tests/fourslash/completions.fuzzyMatching.fourslash.js.map +1 -1
  310. package/dist/tests/fourslash/completions.importDunderNames.fourslash.js.map +1 -1
  311. package/dist/tests/fourslash/completions.importInterimFile.fourslash.disabled.js.map +1 -1
  312. package/dist/tests/fourslash/completions.importPrivateNoPytyped.fourslash.js.map +1 -1
  313. package/dist/tests/fourslash/completions.importPytyped.fourslash.js.map +1 -1
  314. package/dist/tests/fourslash/completions.importPytypedLocal.fourslash.js.map +1 -1
  315. package/dist/tests/fourslash/completions.importSubmodule.fourslash.js.map +1 -1
  316. package/dist/tests/fourslash/completions.importsDuplicates.fourslash.js.map +1 -1
  317. package/dist/tests/fourslash/completions.inList.fourslash.js.map +1 -1
  318. package/dist/tests/fourslash/completions.included.fourslash.js.map +1 -1
  319. package/dist/tests/fourslash/completions.indexer.keys.getitem.fourslash.js.map +1 -1
  320. package/dist/tests/fourslash/completions.inherited.function.docFromStub.fourslash.js.map +1 -1
  321. package/dist/tests/fourslash/completions.inherited.overload.docFromScrWithStub.fourslash.js.map +1 -1
  322. package/dist/tests/fourslash/completions.inherited.overload.docFromStub.fourslash.js.map +1 -1
  323. package/dist/tests/fourslash/completions.inherited.property.docFromSrc.fourslash.js.map +1 -1
  324. package/dist/tests/fourslash/completions.inherited.property.docFromStub.fourslash.js.map +1 -1
  325. package/dist/tests/fourslash/completions.keywords.pythonVersion.fourslash.js.map +1 -1
  326. package/dist/tests/fourslash/completions.libCodeAndStub.fourslash.js.map +1 -1
  327. package/dist/tests/fourslash/completions.libCodeNoStub.fourslash.js.map +1 -1
  328. package/dist/tests/fourslash/completions.libStub.fourslash.js.map +1 -1
  329. package/dist/tests/fourslash/completions.literals.fourslash.js.map +1 -1
  330. package/dist/tests/fourslash/completions.localCode.fourslash.js.map +1 -1
  331. package/dist/tests/fourslash/completions.moduleContext.UnknownMemberOnInstance.fourslash.js.map +1 -1
  332. package/dist/tests/fourslash/completions.moduleContext.UnknownStaticFunctionOnClass.fourslash.js.map +1 -1
  333. package/dist/tests/fourslash/completions.moduleContext.libCodeNoStub.fourslash.js.map +1 -1
  334. package/dist/tests/fourslash/completions.overloads.fourslash.js.map +1 -1
  335. package/dist/tests/fourslash/completions.override.default.fourslash.js.map +1 -1
  336. package/dist/tests/fourslash/completions.override.default.importStub.js.map +1 -1
  337. package/dist/tests/fourslash/completions.override.default.imported.fourslash.js.map +1 -1
  338. package/dist/tests/fourslash/completions.override.default.stub.fourslash.js.map +1 -1
  339. package/dist/tests/fourslash/completions.override.fourslash.js.map +1 -1
  340. package/dist/tests/fourslash/completions.override.property.fourslash.js.map +1 -1
  341. package/dist/tests/fourslash/completions.override.property.stub.fourslash.js.map +1 -1
  342. package/dist/tests/fourslash/completions.override.staticAndClassmethod.fourslash.js.map +1 -1
  343. package/dist/tests/fourslash/completions.override.stub.fourslash.js.map +1 -1
  344. package/dist/tests/fourslash/completions.override2.fourslash.js.map +1 -1
  345. package/dist/tests/fourslash/completions.parameters.fourslash.js.map +1 -1
  346. package/dist/tests/fourslash/completions.params.fourslash.js.map +1 -1
  347. package/dist/tests/fourslash/completions.parentFolder.fourslash.js.map +1 -1
  348. package/dist/tests/fourslash/completions.parentFolders.fourslash.js.map +1 -1
  349. package/dist/tests/fourslash/completions.plainText.fourslash.js.map +1 -1
  350. package/dist/tests/fourslash/completions.private.fourslash.js.map +1 -1
  351. package/dist/tests/fourslash/completions.property.fourslash.js.map +1 -1
  352. package/dist/tests/fourslash/completions.propertyDocStrings.fourslash.js.map +1 -1
  353. package/dist/tests/fourslash/completions.self.fourslash.js.map +1 -1
  354. package/dist/tests/fourslash/completions.stringLiteral.escape.fourslash.js.map +1 -1
  355. package/dist/tests/fourslash/completions.stringLiteral.fourslash.js.map +1 -1
  356. package/dist/tests/fourslash/completions.triggers.fourslash.js.map +1 -1
  357. package/dist/tests/fourslash/completions.typeAlias.fourslash.js.map +1 -1
  358. package/dist/tests/fourslash/completions.typeshed.fourslash.js.map +1 -1
  359. package/dist/tests/fourslash/completions.vardecls.fourslash.js.map +1 -1
  360. package/dist/tests/fourslash/completions.variableDocStrings.fourslash.js.map +1 -1
  361. package/dist/tests/fourslash/completions.wildcardimports.fourslash.js.map +1 -1
  362. package/dist/tests/fourslash/completions.with.fourslash.js.map +1 -1
  363. package/dist/tests/fourslash/diagnostics.missingModuleSource.fourslash.js.map +1 -1
  364. package/dist/tests/fourslash/findDefinitions.builtinClass.fourslash.js.map +1 -1
  365. package/dist/tests/fourslash/findDefinitions.classes.fourslash.js.map +1 -1
  366. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.fourslash.js.map +1 -1
  367. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferSource.onlyStubs.js.map +1 -1
  368. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.fourslash.js.map +1 -1
  369. package/dist/tests/fourslash/findDefinitions.definitionFilter.preferStub.onlySource.fourslash.js.map +1 -1
  370. package/dist/tests/fourslash/findDefinitions.fields.fourslash.js.map +1 -1
  371. package/dist/tests/fourslash/findDefinitions.functions.fourslash.js.map +1 -1
  372. package/dist/tests/fourslash/findDefinitions.methods.fourslash.js.map +1 -1
  373. package/dist/tests/fourslash/findDefinitions.modules.fourslash.js.map +1 -1
  374. package/dist/tests/fourslash/findDefinitions.namespaceImport.fourslash.js.map +1 -1
  375. package/dist/tests/fourslash/findDefinitions.namespaceImportWithInit.fourslash.js.map +1 -1
  376. package/dist/tests/fourslash/findDefinitions.overloads.fourslash.js.map +1 -1
  377. package/dist/tests/fourslash/findDefinitions.parameters.fourslash.js.map +1 -1
  378. package/dist/tests/fourslash/findDefinitions.sourceAndStub.function.fourslash.js.map +1 -1
  379. package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClass.fourslash.js.map +1 -1
  380. package/dist/tests/fourslash/findDefinitions.sourceAndStub.innerClassMethod.fourslash.js.map +1 -1
  381. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClass.fourslash.js.map +1 -1
  382. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassMethod.fourslash.js.map +1 -1
  383. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadOnly.fourslash.js.map +1 -1
  384. package/dist/tests/fourslash/findDefinitions.sourceAndStub.outerClassPropertyReadWrite.fourslash.js.map +1 -1
  385. package/dist/tests/fourslash/findDefinitions.sourceOnly.class.fourslash.js.map +1 -1
  386. package/dist/tests/fourslash/findDefinitions.sourceOnly.function1.fourslash.js.map +1 -1
  387. package/dist/tests/fourslash/findDefinitions.sourceOnly.function2.fourslash.js.map +1 -1
  388. package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport1.fourslash.js.map +1 -1
  389. package/dist/tests/fourslash/findDefinitions.sourceOnly.relativeImport2.fourslash.js.map +1 -1
  390. package/dist/tests/fourslash/findDefinitions.stubOnly.fourslash.js.map +1 -1
  391. package/dist/tests/fourslash/findDefinitions.stubPackages.fourslash.js.map +1 -1
  392. package/dist/tests/fourslash/findDefinitions.typedDict.keys.fourslash.js.map +1 -1
  393. package/dist/tests/fourslash/findDefinitions.variables.fourslash.js.map +1 -1
  394. package/dist/tests/fourslash/findDefinitions.wildcardimports.fourslash.js.map +1 -1
  395. package/dist/tests/fourslash/findTypeDefinitions.builtinClass.fourslash.js.map +1 -1
  396. package/dist/tests/fourslash/findTypeDefinitions.classes.fourslash.js.map +1 -1
  397. package/dist/tests/fourslash/findTypeDefinitions.unions.fourslash.js.map +1 -1
  398. package/dist/tests/fourslash/findallreferences.classPropertyReadWrite.js.map +1 -1
  399. package/dist/tests/fourslash/findallreferences.fourslash.js.map +1 -1
  400. package/dist/tests/fourslash/findallreferences.importalias.fourslash.js.map +1 -1
  401. package/dist/tests/fourslash/findallreferences.invokedFromLibrary.fourslash.js.map +1 -1
  402. package/dist/tests/fourslash/findallreferences.module.nested.fourslash.js.map +1 -1
  403. package/dist/tests/fourslash/findallreferences.modules.duplicated.fourslash.js.map +1 -1
  404. package/dist/tests/fourslash/findallreferences.modules.fourslash.js.map +1 -1
  405. package/dist/tests/fourslash/findallreferences.modules.shadow.fourslash.js.map +1 -1
  406. package/dist/tests/fourslash/findallreferences.openFiles.fourslash.js.map +1 -1
  407. package/dist/tests/fourslash/findallreferences.parameter.fourslash.js.map +1 -1
  408. package/dist/tests/fourslash/findallreferences.sourceAndStub.class.fourslash.js.map +1 -1
  409. package/dist/tests/fourslash/findallreferences.sourceAndStub.classMethod.fourslash.js.map +1 -1
  410. package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadOnly.fourslash.js.map +1 -1
  411. package/dist/tests/fourslash/findallreferences.sourceAndStub.classPropertyReadWrite.fourslash.skip.js.map +1 -1
  412. package/dist/tests/fourslash/findallreferences.sourceAndStub.function.fourslash.js.map +1 -1
  413. package/dist/tests/fourslash/findallreferences.variable.fourslash.js.map +1 -1
  414. package/dist/tests/fourslash/fourslash.js.map +1 -1
  415. package/dist/tests/fourslash/highlightreferences.attributes.fourslash.js.map +1 -1
  416. package/dist/tests/fourslash/hover.async.fourslash.js.map +1 -1
  417. package/dist/tests/fourslash/hover.builtinDocstrings.fourslash.js.map +1 -1
  418. package/dist/tests/fourslash/hover.class.docString.fourslash.js.map +1 -1
  419. package/dist/tests/fourslash/hover.classNoInit.fourslash.js.map +1 -1
  420. package/dist/tests/fourslash/hover.docFromSrc.fourslash.js.map +1 -1
  421. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module1.fourslash.js.map +1 -1
  422. package/dist/tests/fourslash/hover.docFromSrc.pkg-vs-module2.fourslash.js.map +1 -1
  423. package/dist/tests/fourslash/hover.docFromSrc.relativeImport1.fourslash.js.map +1 -1
  424. package/dist/tests/fourslash/hover.docFromSrc.relativeImport2.fourslash.js.map +1 -1
  425. package/dist/tests/fourslash/hover.docFromSrc.relativeImport3.fourslash.js.map +1 -1
  426. package/dist/tests/fourslash/hover.docFromSrc.stringFormat.fourslash.js.map +1 -1
  427. package/dist/tests/fourslash/hover.docFromSrc.stubs-package.fourslash.js.map +1 -1
  428. package/dist/tests/fourslash/hover.docFromSrc.typeshed.fourslash.js.map +1 -1
  429. package/dist/tests/fourslash/hover.docstring.alias.fourslash.js.map +1 -1
  430. package/dist/tests/fourslash/hover.docstring.links.fourslash.js.map +1 -1
  431. package/dist/tests/fourslash/hover.docstring.overloads.fourslash.js.map +1 -1
  432. package/dist/tests/fourslash/hover.docstring.parameter.fourslash.js.map +1 -1
  433. package/dist/tests/fourslash/hover.docstring.split.fourslash.js.map +1 -1
  434. package/dist/tests/fourslash/hover.dunderNew.basic.fourslash.js.map +1 -1
  435. package/dist/tests/fourslash/hover.dunderNew.inheritance.fourslash.js.map +1 -1
  436. package/dist/tests/fourslash/hover.dunderNew.inheritance2.fourslash.js.map +1 -1
  437. package/dist/tests/fourslash/hover.dunderNew.overloads.fourslash.js.map +1 -1
  438. package/dist/tests/fourslash/hover.dunderNew.withInit.fourslash.js.map +1 -1
  439. package/dist/tests/fourslash/hover.formatted.fourslash.js.map +1 -1
  440. package/dist/tests/fourslash/hover.fourslash.js.map +1 -1
  441. package/dist/tests/fourslash/hover.import.django.view.fourslash.js.map +1 -1
  442. package/dist/tests/fourslash/hover.import.fourslash.js.map +1 -1
  443. package/dist/tests/fourslash/hover.inferred.fourslash.js.map +1 -1
  444. package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.js.map +1 -1
  445. package/dist/tests/fourslash/hover.inherited.docFromSrcWithStub.fourslash.js.map +1 -1
  446. package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.js.map +1 -1
  447. package/dist/tests/fourslash/hover.inherited.overload.docFromSrcWithStub.fourslash.js.map +1 -1
  448. package/dist/tests/fourslash/hover.inherited.overload.docFromStub.fourslash.js.map +1 -1
  449. package/dist/tests/fourslash/hover.inherited.property.docFromSrcWithStub.fourslash.js.map +1 -1
  450. package/dist/tests/fourslash/hover.inherited.property.docFromStub.fourslash.js.map +1 -1
  451. package/dist/tests/fourslash/hover.init.fourslash.js.map +1 -1
  452. package/dist/tests/fourslash/hover.libCodeAndStub.fourslash.js.map +1 -1
  453. package/dist/tests/fourslash/hover.libCodeNoStub.fourslash.js.map +1 -1
  454. package/dist/tests/fourslash/hover.libStub.fourslash.js.map +1 -1
  455. package/dist/tests/fourslash/hover.optionalAliasParameter.fourslash.js.map +1 -1
  456. package/dist/tests/fourslash/hover.overloadedFunction.fourslash.js.map +1 -1
  457. package/dist/tests/fourslash/hover.plainText.fourslash.js.map +1 -1
  458. package/dist/tests/fourslash/hover.slots.fourslash.js.map +1 -1
  459. package/dist/tests/fourslash/hover.typedDict.key.fourslash.js.map +1 -1
  460. package/dist/tests/fourslash/hover.unpackedTypedDict.key.fourslash.js.map +1 -1
  461. package/dist/tests/fourslash/hover.variable.docString.fourslash.js.map +1 -1
  462. package/dist/tests/fourslash/hover.wildcardimports.fourslash.js.map +1 -1
  463. package/dist/tests/fourslash/import.multipart.fourslash.js.map +1 -1
  464. package/dist/tests/fourslash/import.publicSymbols.fourslash.js.map +1 -1
  465. package/dist/tests/fourslash/import.pytyped.dunderAll.fourslash.js.map +1 -1
  466. package/dist/tests/fourslash/import.pytyped.privateSymbols.fourslash.js.map +1 -1
  467. package/dist/tests/fourslash/import.pytyped.typeCheckingBasic.fourslash.js.map +1 -1
  468. package/dist/tests/fourslash/import.pytyped.typeCheckingOff.fourslash.js.map +1 -1
  469. package/dist/tests/fourslash/import.wildcard.fourslash.js.map +1 -1
  470. package/dist/tests/fourslash/importnotresolved.fourslash.js.map +1 -1
  471. package/dist/tests/fourslash/missingModuleSource.disablingInStrictMode.fourslash.js.map +1 -1
  472. package/dist/tests/fourslash/missingModuleSource.fourslash.js.map +1 -1
  473. package/dist/tests/fourslash/missingTypeStub.codeAction.fourslash.js.map +1 -1
  474. package/dist/tests/fourslash/missingTypeStub.command.multipart.fourslash.js.map +1 -1
  475. package/dist/tests/fourslash/missingTypeStub.command.singlefile.fourslash.js.map +1 -1
  476. package/dist/tests/fourslash/missingTypeStub.command.singlepart.fourslash.js.map +1 -1
  477. package/dist/tests/fourslash/missingTypeStub.command.trycatchImport.fourslash.js.map +1 -1
  478. package/dist/tests/fourslash/missingTypeStub.fourslash.js.map +1 -1
  479. package/dist/tests/fourslash/missingTypeStub.invokeCodeAction.fourslash.js.map +1 -1
  480. package/dist/tests/fourslash/noerrors.fourslash.js.map +1 -1
  481. package/dist/tests/fourslash/orderImports1.command.fourslash.js.map +1 -1
  482. package/dist/tests/fourslash/orderImports2.command.fourslash.js.map +1 -1
  483. package/dist/tests/fourslash/rename.externallyHidden.fourslash.js.map +1 -1
  484. package/dist/tests/fourslash/rename.externallyHidden.params.fourslash.js.map +1 -1
  485. package/dist/tests/fourslash/rename.fourslash.js.map +1 -1
  486. package/dist/tests/fourslash/rename.function.untitledFile.fourslash.js.map +1 -1
  487. package/dist/tests/fourslash/rename.init.fourslash.js.map +1 -1
  488. package/dist/tests/fourslash/rename.library.fourslash.js.map +1 -1
  489. package/dist/tests/fourslash/rename.library.sourceAndStub.fourslash.js.map +1 -1
  490. package/dist/tests/fourslash/rename.multipleDecl.fourslash.d.ts +1 -1
  491. package/dist/tests/fourslash/rename.multipleDecl.fourslash.js.map +1 -1
  492. package/dist/tests/fourslash/rename.parens.fourslash.js.map +1 -1
  493. package/dist/tests/fourslash/rename.sourceAndStub.fourslash.js.map +1 -1
  494. package/dist/tests/fourslash/rename.string.excluded.fourslash.js.map +1 -1
  495. package/dist/tests/fourslash/rename.string.fourslash.js.map +1 -1
  496. package/dist/tests/fourslash/shadowedImports.fourslash.js.map +1 -1
  497. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.js.map +1 -1
  498. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.js.map +1 -1
  499. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.js.map +1 -1
  500. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction1.fourslash.js.map +1 -1
  501. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.aliasedFunction2.fourslash.js.map +1 -1
  502. package/dist/tests/fourslash/showcallhierarchy.outgoingCalls.function.fourslash.js.map +1 -1
  503. package/dist/tests/fourslash/signature.builtinDocstrings.fourslash.js.map +1 -1
  504. package/dist/tests/fourslash/signature.complicated.fourslash.js.map +1 -1
  505. package/dist/tests/fourslash/signature.cornercases.fourslash.js.map +1 -1
  506. package/dist/tests/fourslash/signature.docstrings.fourslash.js.map +1 -1
  507. package/dist/tests/fourslash/signature.docstrings.overloaded.fourslash.js.map +1 -1
  508. package/dist/tests/fourslash/signature.docstrings.wildcardimports.fourslash.js.map +1 -1
  509. package/dist/tests/fourslash/signature.dunderNew.fourslash.js.map +1 -1
  510. package/dist/tests/fourslash/signature.overload.fourslash.js.map +1 -1
  511. package/dist/tests/fourslash/signature.simple.fourslash.js.map +1 -1
  512. package/dist/tests/fourslash/typeVerifier.fourslash.js.map +1 -1
  513. package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
  514. package/dist/tests/harness/fourslash/fourSlashTypes.js.map +1 -1
  515. package/dist/tests/harness/fourslash/runner.js +1 -1
  516. package/dist/tests/harness/fourslash/runner.js.map +1 -1
  517. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  518. package/dist/tests/harness/fourslash/testState.Consts.js.map +1 -1
  519. package/dist/tests/harness/fourslash/testState.d.ts +0 -13
  520. package/dist/tests/harness/fourslash/testState.js +11 -0
  521. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  522. package/dist/tests/harness/fourslash/testStateUtils.js.map +1 -1
  523. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
  524. package/dist/tests/harness/testAccessHost.js.map +1 -1
  525. package/dist/tests/harness/testHost.js.map +1 -1
  526. package/dist/tests/harness/utils.js.map +1 -1
  527. package/dist/tests/harness/vfs/factory.js.map +1 -1
  528. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  529. package/dist/tests/harness/vfs/pathValidation.js.map +1 -1
  530. package/dist/tests/hoverProvider.test.js.map +1 -1
  531. package/dist/tests/importResolver.test.js.map +1 -1
  532. package/dist/tests/importStatementUtils.test.js +8 -0
  533. package/dist/tests/importStatementUtils.test.js.map +1 -1
  534. package/dist/tests/ipythonMode.test.js.map +1 -1
  535. package/dist/tests/languageServer.test.d.ts +1 -0
  536. package/dist/tests/languageServer.test.js +137 -0
  537. package/dist/tests/languageServer.test.js.map +1 -0
  538. package/dist/tests/localizer.test.js.map +1 -1
  539. package/dist/tests/logger.test.js.map +1 -1
  540. package/dist/tests/lsp/customLsp.d.ts +112 -0
  541. package/dist/tests/lsp/customLsp.js +67 -0
  542. package/dist/tests/lsp/customLsp.js.map +1 -0
  543. package/dist/tests/lsp/languageServer.d.ts +1 -0
  544. package/dist/tests/lsp/languageServer.js +326 -0
  545. package/dist/tests/lsp/languageServer.js.map +1 -0
  546. package/dist/tests/lsp/languageServerTestUtils.d.ts +100 -0
  547. package/dist/tests/lsp/languageServerTestUtils.js +803 -0
  548. package/dist/tests/lsp/languageServerTestUtils.js.map +1 -0
  549. package/dist/tests/lsp/main.d.ts +1 -0
  550. package/dist/tests/lsp/main.js +12 -0
  551. package/dist/tests/lsp/main.js.map +1 -0
  552. package/dist/tests/lsp/webpack.testserver.config.d.ts +4 -0
  553. package/dist/tests/lsp/webpack.testserver.config.js +64 -0
  554. package/dist/tests/lsp/webpack.testserver.config.js.map +1 -0
  555. package/dist/tests/parseTreeUtils.test.js.map +1 -1
  556. package/dist/tests/parser.test.js.map +1 -1
  557. package/dist/tests/pathUtils.test.js.map +1 -1
  558. package/dist/tests/positionUtils.test.js.map +1 -1
  559. package/dist/tests/pyrightFileSystem.test.js.map +1 -1
  560. package/dist/tests/serialization.test.js.map +1 -1
  561. package/dist/tests/service.test.js.map +1 -1
  562. package/dist/tests/signatureHelp.test.js.map +1 -1
  563. package/dist/tests/sourceFile.test.js.map +1 -1
  564. package/dist/tests/sourceMapperUtils.test.js.map +1 -1
  565. package/dist/tests/stringUtils.test.js.map +1 -1
  566. package/dist/tests/symbolNameUtils.test.js.map +1 -1
  567. package/dist/tests/testState.test.js.map +1 -1
  568. package/dist/tests/testStateUtils.js.map +1 -1
  569. package/dist/tests/testUtils.js.map +1 -1
  570. package/dist/tests/textEditUtil.test.js.map +1 -1
  571. package/dist/tests/textRange.test.js.map +1 -1
  572. package/dist/tests/tokenizer.test.js.map +1 -1
  573. package/dist/tests/typeEvaluator1.test.js +21 -5
  574. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  575. package/dist/tests/typeEvaluator2.test.js +8 -4
  576. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  577. package/dist/tests/typeEvaluator3.test.js +5 -9
  578. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  579. package/dist/tests/typeEvaluator4.test.js +1 -1
  580. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  581. package/dist/tests/typeEvaluator5.test.js +43 -1
  582. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  583. package/dist/tests/typePrinter.test.js.map +1 -1
  584. package/dist/tests/uri.test.js +74 -26
  585. package/dist/tests/uri.test.js.map +1 -1
  586. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  587. package/dist/tests/zipfs.test.js.map +1 -1
  588. package/dist/workspaceFactory.js +2 -1
  589. package/dist/workspaceFactory.js.map +1 -1
  590. package/package.json +23 -15
  591. package/dist/analyzer/regions.d.ts +0 -11
  592. package/dist/analyzer/regions.js +0 -62
  593. package/dist/analyzer/regions.js.map +0 -1
@@ -295,69 +295,76 @@ var ClassTypeFlags;
295
295
  // value types and a limited set of static keys.
296
296
  ClassTypeFlags[ClassTypeFlags["TypedDictClass"] = 128] = "TypedDictClass";
297
297
  // Used in conjunction with TypedDictClass, indicates that
298
+ // the TypedDict class is marked "closed".
299
+ ClassTypeFlags[ClassTypeFlags["TypedDictMarkedClosed"] = 256] = "TypedDictMarkedClosed";
300
+ // Used in conjunction with TypedDictClass, indicates that
301
+ // the TypedDict class is marked "closed" or one or more of
302
+ // its superclasses is marked "closed".
303
+ ClassTypeFlags[ClassTypeFlags["TypedDictEffectivelyClosed"] = 512] = "TypedDictEffectivelyClosed";
304
+ // Used in conjunction with TypedDictClass, indicates that
298
305
  // the dictionary values can be omitted.
299
- ClassTypeFlags[ClassTypeFlags["CanOmitDictValues"] = 256] = "CanOmitDictValues";
306
+ ClassTypeFlags[ClassTypeFlags["CanOmitDictValues"] = 1024] = "CanOmitDictValues";
300
307
  // The class derives from a class that has the ABCMeta
301
308
  // metaclass. Such classes are allowed to contain
302
309
  // @abstractmethod decorators.
303
- ClassTypeFlags[ClassTypeFlags["SupportsAbstractMethods"] = 1024] = "SupportsAbstractMethods";
310
+ ClassTypeFlags[ClassTypeFlags["SupportsAbstractMethods"] = 2048] = "SupportsAbstractMethods";
304
311
  // Derives from property class and has the semantics of
305
312
  // a property (with optional setter, deleter).
306
- ClassTypeFlags[ClassTypeFlags["PropertyClass"] = 2048] = "PropertyClass";
313
+ ClassTypeFlags[ClassTypeFlags["PropertyClass"] = 4096] = "PropertyClass";
307
314
  // The class is decorated with a "@final" decorator
308
315
  // indicating that it cannot be subclassed.
309
- ClassTypeFlags[ClassTypeFlags["Final"] = 4096] = "Final";
316
+ ClassTypeFlags[ClassTypeFlags["Final"] = 8192] = "Final";
310
317
  // The class derives directly from "Protocol".
311
- ClassTypeFlags[ClassTypeFlags["ProtocolClass"] = 8192] = "ProtocolClass";
318
+ ClassTypeFlags[ClassTypeFlags["ProtocolClass"] = 16384] = "ProtocolClass";
312
319
  // A class whose constructor (__init__ method) does not have
313
320
  // annotated types and is treated as though each parameter
314
321
  // is a generic type for purposes of type inference.
315
- ClassTypeFlags[ClassTypeFlags["PseudoGenericClass"] = 16384] = "PseudoGenericClass";
322
+ ClassTypeFlags[ClassTypeFlags["PseudoGenericClass"] = 32768] = "PseudoGenericClass";
316
323
  // A protocol class that is "runtime checkable" can be used
317
324
  // in an isinstance call.
318
- ClassTypeFlags[ClassTypeFlags["RuntimeCheckable"] = 32768] = "RuntimeCheckable";
325
+ ClassTypeFlags[ClassTypeFlags["RuntimeCheckable"] = 65536] = "RuntimeCheckable";
319
326
  // The type is defined in the typing_extensions.pyi file.
320
- ClassTypeFlags[ClassTypeFlags["TypingExtensionClass"] = 65536] = "TypingExtensionClass";
327
+ ClassTypeFlags[ClassTypeFlags["TypingExtensionClass"] = 131072] = "TypingExtensionClass";
321
328
  // The class type is in the process of being evaluated and
322
329
  // is not yet complete. This allows us to detect cases where
323
330
  // the class refers to itself (e.g. uses itself as a type
324
331
  // argument to one of its generic base classes).
325
- ClassTypeFlags[ClassTypeFlags["PartiallyEvaluated"] = 131072] = "PartiallyEvaluated";
332
+ ClassTypeFlags[ClassTypeFlags["PartiallyEvaluated"] = 262144] = "PartiallyEvaluated";
326
333
  // The class or one of its ancestors defines a __class_getitem__
327
334
  // method that is used for subscripting. This is not set if the
328
335
  // class is generic, and therefore supports standard subscripting
329
336
  // semantics.
330
- ClassTypeFlags[ClassTypeFlags["HasCustomClassGetItem"] = 262144] = "HasCustomClassGetItem";
337
+ ClassTypeFlags[ClassTypeFlags["HasCustomClassGetItem"] = 524288] = "HasCustomClassGetItem";
331
338
  // The tuple class uses a variadic type parameter and requires
332
339
  // special-case handling of its type arguments.
333
- ClassTypeFlags[ClassTypeFlags["TupleClass"] = 524288] = "TupleClass";
340
+ ClassTypeFlags[ClassTypeFlags["TupleClass"] = 1048576] = "TupleClass";
334
341
  // The class has a metaclass of EnumMeta or derives from
335
342
  // a class that has this metaclass.
336
- ClassTypeFlags[ClassTypeFlags["EnumClass"] = 1048576] = "EnumClass";
343
+ ClassTypeFlags[ClassTypeFlags["EnumClass"] = 2097152] = "EnumClass";
337
344
  // For dataclasses, should __init__ method always be generated
338
345
  // with keyword-only parameters?
339
- ClassTypeFlags[ClassTypeFlags["DataClassKeywordOnlyParams"] = 2097152] = "DataClassKeywordOnlyParams";
346
+ ClassTypeFlags[ClassTypeFlags["DataClassKeywordOnlyParams"] = 4194304] = "DataClassKeywordOnlyParams";
340
347
  // Properties that are defined using the @classmethod decorator.
341
- ClassTypeFlags[ClassTypeFlags["ClassProperty"] = 4194304] = "ClassProperty";
348
+ ClassTypeFlags[ClassTypeFlags["ClassProperty"] = 8388608] = "ClassProperty";
342
349
  // Class is declared within a type stub file.
343
- ClassTypeFlags[ClassTypeFlags["DefinedInStub"] = 8388608] = "DefinedInStub";
350
+ ClassTypeFlags[ClassTypeFlags["DefinedInStub"] = 16777216] = "DefinedInStub";
344
351
  // Class does not allow writing or deleting its instance variables
345
352
  // through a member access. Used with named tuples.
346
- ClassTypeFlags[ClassTypeFlags["ReadOnlyInstanceVariables"] = 16777216] = "ReadOnlyInstanceVariables";
353
+ ClassTypeFlags[ClassTypeFlags["ReadOnlyInstanceVariables"] = 33554432] = "ReadOnlyInstanceVariables";
347
354
  // For dataclasses, should __slots__ be generated?
348
- ClassTypeFlags[ClassTypeFlags["GenerateDataClassSlots"] = 33554432] = "GenerateDataClassSlots";
355
+ ClassTypeFlags[ClassTypeFlags["GenerateDataClassSlots"] = 67108864] = "GenerateDataClassSlots";
349
356
  // For dataclasses, should __hash__ be generated?
350
- ClassTypeFlags[ClassTypeFlags["SynthesizeDataClassUnsafeHash"] = 67108864] = "SynthesizeDataClassUnsafeHash";
357
+ ClassTypeFlags[ClassTypeFlags["SynthesizeDataClassUnsafeHash"] = 134217728] = "SynthesizeDataClassUnsafeHash";
351
358
  // Decorated with @type_check_only.
352
- ClassTypeFlags[ClassTypeFlags["TypeCheckOnly"] = 134217728] = "TypeCheckOnly";
359
+ ClassTypeFlags[ClassTypeFlags["TypeCheckOnly"] = 268435456] = "TypeCheckOnly";
353
360
  // Created with the NewType call.
354
- ClassTypeFlags[ClassTypeFlags["NewTypeClass"] = 268435456] = "NewTypeClass";
361
+ ClassTypeFlags[ClassTypeFlags["NewTypeClass"] = 536870912] = "NewTypeClass";
355
362
  // Class is allowed to be used as an implicit type alias even
356
363
  // though it is not defined using a `class` statement.
357
- ClassTypeFlags[ClassTypeFlags["ValidTypeAliasClass"] = 536870912] = "ValidTypeAliasClass";
364
+ ClassTypeFlags[ClassTypeFlags["ValidTypeAliasClass"] = 1073741824] = "ValidTypeAliasClass";
358
365
  // A special form is not compatible with type[T] and cannot
359
366
  // be directly instantiated.
360
- ClassTypeFlags[ClassTypeFlags["SpecialFormClass"] = 1073741824] = "SpecialFormClass";
367
+ ClassTypeFlags[ClassTypeFlags["SpecialFormClass"] = -2147483648] = "SpecialFormClass";
361
368
  })(ClassTypeFlags || (exports.ClassTypeFlags = ClassTypeFlags = {}));
362
369
  var ClassType;
363
370
  (function (ClassType) {
@@ -420,7 +427,9 @@ var ClassType;
420
427
  newClassType.includeSubclasses = true;
421
428
  }
422
429
  newClassType.tupleTypeArguments = tupleTypeArguments
423
- ? tupleTypeArguments.map((t) => isNever(t.type) ? { type: UnknownType.create(), isUnbounded: t.isUnbounded } : t)
430
+ ? tupleTypeArguments.map((t) => isNever(t.type)
431
+ ? { type: UnknownType.create(), isUnbounded: t.isUnbounded, isOptional: t.isOptional }
432
+ : t)
424
433
  : undefined;
425
434
  if (isEmptyContainer !== undefined) {
426
435
  newClassType.isEmptyContainer = isEmptyContainer;
@@ -601,7 +610,7 @@ var ClassType;
601
610
  }
602
611
  ClassType.derivesFromAnyOrUnknown = derivesFromAnyOrUnknown;
603
612
  function supportsAbstractMethods(classType) {
604
- return !!(classType.details.flags & 1024 /* ClassTypeFlags.SupportsAbstractMethods */);
613
+ return !!(classType.details.flags & 2048 /* ClassTypeFlags.SupportsAbstractMethods */);
605
614
  }
606
615
  ClassType.supportsAbstractMethods = supportsAbstractMethods;
607
616
  function isDataClass(classType) {
@@ -625,31 +634,31 @@ var ClassType;
625
634
  }
626
635
  ClassType.isSynthesizedDataclassOrder = isSynthesizedDataclassOrder;
627
636
  function isDataClassKeywordOnlyParams(classType) {
628
- return !!(classType.details.flags & 2097152 /* ClassTypeFlags.DataClassKeywordOnlyParams */);
637
+ return !!(classType.details.flags & 4194304 /* ClassTypeFlags.DataClassKeywordOnlyParams */);
629
638
  }
630
639
  ClassType.isDataClassKeywordOnlyParams = isDataClassKeywordOnlyParams;
631
640
  function isGeneratedDataClassSlots(classType) {
632
- return !!(classType.details.flags & 33554432 /* ClassTypeFlags.GenerateDataClassSlots */);
641
+ return !!(classType.details.flags & 67108864 /* ClassTypeFlags.GenerateDataClassSlots */);
633
642
  }
634
643
  ClassType.isGeneratedDataClassSlots = isGeneratedDataClassSlots;
635
644
  function isSynthesizeDataClassUnsafeHash(classType) {
636
- return !!(classType.details.flags & 67108864 /* ClassTypeFlags.SynthesizeDataClassUnsafeHash */);
645
+ return !!(classType.details.flags & 134217728 /* ClassTypeFlags.SynthesizeDataClassUnsafeHash */);
637
646
  }
638
647
  ClassType.isSynthesizeDataClassUnsafeHash = isSynthesizeDataClassUnsafeHash;
639
648
  function isTypeCheckOnly(classType) {
640
- return !!(classType.details.flags & 134217728 /* ClassTypeFlags.TypeCheckOnly */);
649
+ return !!(classType.details.flags & 268435456 /* ClassTypeFlags.TypeCheckOnly */);
641
650
  }
642
651
  ClassType.isTypeCheckOnly = isTypeCheckOnly;
643
652
  function isNewTypeClass(classType) {
644
- return !!(classType.details.flags & 268435456 /* ClassTypeFlags.NewTypeClass */);
653
+ return !!(classType.details.flags & 536870912 /* ClassTypeFlags.NewTypeClass */);
645
654
  }
646
655
  ClassType.isNewTypeClass = isNewTypeClass;
647
656
  function isValidTypeAliasClass(classType) {
648
- return !!(classType.details.flags & 536870912 /* ClassTypeFlags.ValidTypeAliasClass */);
657
+ return !!(classType.details.flags & 1073741824 /* ClassTypeFlags.ValidTypeAliasClass */);
649
658
  }
650
659
  ClassType.isValidTypeAliasClass = isValidTypeAliasClass;
651
660
  function isSpecialFormClass(classType) {
652
- return !!(classType.details.flags & 1073741824 /* ClassTypeFlags.SpecialFormClass */);
661
+ return !!(classType.details.flags & -2147483648 /* ClassTypeFlags.SpecialFormClass */);
653
662
  }
654
663
  ClassType.isSpecialFormClass = isSpecialFormClass;
655
664
  function isTypedDictClass(classType) {
@@ -657,35 +666,43 @@ var ClassType;
657
666
  }
658
667
  ClassType.isTypedDictClass = isTypedDictClass;
659
668
  function isCanOmitDictValues(classType) {
660
- return !!(classType.details.flags & 256 /* ClassTypeFlags.CanOmitDictValues */);
669
+ return !!(classType.details.flags & 1024 /* ClassTypeFlags.CanOmitDictValues */);
661
670
  }
662
671
  ClassType.isCanOmitDictValues = isCanOmitDictValues;
672
+ function isTypedDictMarkedClosed(classType) {
673
+ return !!(classType.details.flags & 256 /* ClassTypeFlags.TypedDictMarkedClosed */);
674
+ }
675
+ ClassType.isTypedDictMarkedClosed = isTypedDictMarkedClosed;
676
+ function isTypedDictEffectivelyClosed(classType) {
677
+ return !!(classType.details.flags & 512 /* ClassTypeFlags.TypedDictEffectivelyClosed */);
678
+ }
679
+ ClassType.isTypedDictEffectivelyClosed = isTypedDictEffectivelyClosed;
663
680
  function isEnumClass(classType) {
664
- return !!(classType.details.flags & 1048576 /* ClassTypeFlags.EnumClass */);
681
+ return !!(classType.details.flags & 2097152 /* ClassTypeFlags.EnumClass */);
665
682
  }
666
683
  ClassType.isEnumClass = isEnumClass;
667
684
  function isPropertyClass(classType) {
668
- return !!(classType.details.flags & 2048 /* ClassTypeFlags.PropertyClass */);
685
+ return !!(classType.details.flags & 4096 /* ClassTypeFlags.PropertyClass */);
669
686
  }
670
687
  ClassType.isPropertyClass = isPropertyClass;
671
688
  function isClassProperty(classType) {
672
- return !!(classType.details.flags & 4194304 /* ClassTypeFlags.ClassProperty */);
689
+ return !!(classType.details.flags & 8388608 /* ClassTypeFlags.ClassProperty */);
673
690
  }
674
691
  ClassType.isClassProperty = isClassProperty;
675
692
  function isFinal(classType) {
676
- return !!(classType.details.flags & 4096 /* ClassTypeFlags.Final */);
693
+ return !!(classType.details.flags & 8192 /* ClassTypeFlags.Final */);
677
694
  }
678
695
  ClassType.isFinal = isFinal;
679
696
  function isProtocolClass(classType) {
680
- return !!(classType.details.flags & 8192 /* ClassTypeFlags.ProtocolClass */);
697
+ return !!(classType.details.flags & 16384 /* ClassTypeFlags.ProtocolClass */);
681
698
  }
682
699
  ClassType.isProtocolClass = isProtocolClass;
683
700
  function isDefinedInStub(classType) {
684
- return !!(classType.details.flags & 8388608 /* ClassTypeFlags.DefinedInStub */);
701
+ return !!(classType.details.flags & 16777216 /* ClassTypeFlags.DefinedInStub */);
685
702
  }
686
703
  ClassType.isDefinedInStub = isDefinedInStub;
687
704
  function isPseudoGenericClass(classType) {
688
- return !!(classType.details.flags & 16384 /* ClassTypeFlags.PseudoGenericClass */);
705
+ return !!(classType.details.flags & 32768 /* ClassTypeFlags.PseudoGenericClass */);
689
706
  }
690
707
  ClassType.isPseudoGenericClass = isPseudoGenericClass;
691
708
  function getDataClassEntries(classType) {
@@ -693,27 +710,27 @@ var ClassType;
693
710
  }
694
711
  ClassType.getDataClassEntries = getDataClassEntries;
695
712
  function isRuntimeCheckable(classType) {
696
- return !!(classType.details.flags & 32768 /* ClassTypeFlags.RuntimeCheckable */);
713
+ return !!(classType.details.flags & 65536 /* ClassTypeFlags.RuntimeCheckable */);
697
714
  }
698
715
  ClassType.isRuntimeCheckable = isRuntimeCheckable;
699
716
  function isTypingExtensionClass(classType) {
700
- return !!(classType.details.flags & 65536 /* ClassTypeFlags.TypingExtensionClass */);
717
+ return !!(classType.details.flags & 131072 /* ClassTypeFlags.TypingExtensionClass */);
701
718
  }
702
719
  ClassType.isTypingExtensionClass = isTypingExtensionClass;
703
720
  function isPartiallyEvaluated(classType) {
704
- return !!(classType.details.flags & 131072 /* ClassTypeFlags.PartiallyEvaluated */);
721
+ return !!(classType.details.flags & 262144 /* ClassTypeFlags.PartiallyEvaluated */);
705
722
  }
706
723
  ClassType.isPartiallyEvaluated = isPartiallyEvaluated;
707
724
  function hasCustomClassGetItem(classType) {
708
- return !!(classType.details.flags & 262144 /* ClassTypeFlags.HasCustomClassGetItem */);
725
+ return !!(classType.details.flags & 524288 /* ClassTypeFlags.HasCustomClassGetItem */);
709
726
  }
710
727
  ClassType.hasCustomClassGetItem = hasCustomClassGetItem;
711
728
  function isTupleClass(classType) {
712
- return !!(classType.details.flags & 524288 /* ClassTypeFlags.TupleClass */);
729
+ return !!(classType.details.flags & 1048576 /* ClassTypeFlags.TupleClass */);
713
730
  }
714
731
  ClassType.isTupleClass = isTupleClass;
715
732
  function isReadOnlyInstanceVariables(classType) {
716
- return !!(classType.details.flags & 16777216 /* ClassTypeFlags.ReadOnlyInstanceVariables */);
733
+ return !!(classType.details.flags & 33554432 /* ClassTypeFlags.ReadOnlyInstanceVariables */);
717
734
  }
718
735
  ClassType.isReadOnlyInstanceVariables = isReadOnlyInstanceVariables;
719
736
  function getTypeParameters(classType) {
@@ -1556,6 +1573,8 @@ var UnionType;
1556
1573
  const newUnionType = {
1557
1574
  category: 8 /* TypeCategory.Union */,
1558
1575
  subtypes: [],
1576
+ literalInstances: {},
1577
+ literalClasses: {},
1559
1578
  flags: 2 /* TypeFlags.Instance */ | 1 /* TypeFlags.Instantiable */,
1560
1579
  };
1561
1580
  return newUnionType;
@@ -1565,25 +1584,26 @@ var UnionType;
1565
1584
  // If we're adding a string, integer or enum literal, add it to the
1566
1585
  // corresponding literal map to speed up some operations. It's not
1567
1586
  // uncommon for unions to contain hundreds of literals.
1568
- if (isClassInstance(newType) && newType.literalValue !== undefined && newType.condition === undefined) {
1587
+ if (isClass(newType) && newType.literalValue !== undefined && newType.condition === undefined) {
1588
+ const literalMaps = isClassInstance(newType) ? unionType.literalInstances : unionType.literalClasses;
1569
1589
  if (ClassType.isBuiltIn(newType, 'str')) {
1570
- if (unionType.literalStrMap === undefined) {
1571
- unionType.literalStrMap = new Map();
1590
+ if (literalMaps.literalStrMap === undefined) {
1591
+ literalMaps.literalStrMap = new Map();
1572
1592
  }
1573
- unionType.literalStrMap.set(newType.literalValue, newType);
1593
+ literalMaps.literalStrMap.set(newType.literalValue, newType);
1574
1594
  }
1575
1595
  else if (ClassType.isBuiltIn(newType, 'int')) {
1576
- if (unionType.literalIntMap === undefined) {
1577
- unionType.literalIntMap = new Map();
1596
+ if (literalMaps.literalIntMap === undefined) {
1597
+ literalMaps.literalIntMap = new Map();
1578
1598
  }
1579
- unionType.literalIntMap.set(newType.literalValue, newType);
1599
+ literalMaps.literalIntMap.set(newType.literalValue, newType);
1580
1600
  }
1581
1601
  else if (ClassType.isEnumClass(newType)) {
1582
- if (unionType.literalEnumMap === undefined) {
1583
- unionType.literalEnumMap = new Map();
1602
+ if (literalMaps.literalEnumMap === undefined) {
1603
+ literalMaps.literalEnumMap = new Map();
1584
1604
  }
1585
1605
  const enumLiteral = newType.literalValue;
1586
- unionType.literalEnumMap.set(enumLiteral.getName(), newType);
1606
+ literalMaps.literalEnumMap.set(enumLiteral.getName(), newType);
1587
1607
  }
1588
1608
  }
1589
1609
  unionType.flags &= newType.flags;
@@ -1601,16 +1621,17 @@ var UnionType;
1601
1621
  function containsType(unionType, subtype, exclusionSet, recursionCount = 0) {
1602
1622
  // Handle string literals as a special case because unions can sometimes
1603
1623
  // contain hundreds of string literal types.
1604
- if (isClassInstance(subtype) && subtype.condition === undefined && subtype.literalValue !== undefined) {
1605
- if (ClassType.isBuiltIn(subtype, 'str') && unionType.literalStrMap !== undefined) {
1606
- return unionType.literalStrMap.has(subtype.literalValue);
1624
+ if (isClass(subtype) && subtype.condition === undefined && subtype.literalValue !== undefined) {
1625
+ const literalMaps = isClassInstance(subtype) ? unionType.literalInstances : unionType.literalClasses;
1626
+ if (ClassType.isBuiltIn(subtype, 'str') && literalMaps.literalStrMap !== undefined) {
1627
+ return literalMaps.literalStrMap.has(subtype.literalValue);
1607
1628
  }
1608
- else if (ClassType.isBuiltIn(subtype, 'int') && unionType.literalIntMap !== undefined) {
1609
- return unionType.literalIntMap.has(subtype.literalValue);
1629
+ else if (ClassType.isBuiltIn(subtype, 'int') && literalMaps.literalIntMap !== undefined) {
1630
+ return literalMaps.literalIntMap.has(subtype.literalValue);
1610
1631
  }
1611
- else if (ClassType.isEnumClass(subtype) && unionType.literalEnumMap !== undefined) {
1632
+ else if (ClassType.isEnumClass(subtype) && literalMaps.literalEnumMap !== undefined) {
1612
1633
  const enumLiteral = subtype.literalValue;
1613
- return unionType.literalEnumMap.has(enumLiteral.getName());
1634
+ return literalMaps.literalEnumMap.has(enumLiteral.getName());
1614
1635
  }
1615
1636
  }
1616
1637
  const foundIndex = unionType.subtypes.findIndex((t, i) => {
@@ -2276,10 +2297,14 @@ function combineTypes(subtypes, maxSubtypeCount) {
2276
2297
  return subtypes[0];
2277
2298
  }
2278
2299
  // Expand all union types.
2279
- let expandedTypes = [];
2300
+ let expandedTypes;
2280
2301
  const typeAliasSources = new Set();
2281
- for (const subtype of subtypes) {
2302
+ for (let i = 0; i < subtypes.length; i++) {
2303
+ const subtype = subtypes[i];
2282
2304
  if (isUnion(subtype)) {
2305
+ if (!expandedTypes) {
2306
+ expandedTypes = subtypes.slice(0, i);
2307
+ }
2283
2308
  expandedTypes = expandedTypes.concat(subtype.subtypes);
2284
2309
  if (subtype.typeAliasInfo) {
2285
2310
  typeAliasSources.add(subtype);
@@ -2290,10 +2315,11 @@ function combineTypes(subtypes, maxSubtypeCount) {
2290
2315
  });
2291
2316
  }
2292
2317
  }
2293
- else {
2318
+ else if (expandedTypes) {
2294
2319
  expandedTypes.push(subtype);
2295
2320
  }
2296
2321
  }
2322
+ expandedTypes = expandedTypes !== null && expandedTypes !== void 0 ? expandedTypes : subtypes;
2297
2323
  // Sort all of the literal and empty types to the end.
2298
2324
  expandedTypes = expandedTypes.sort((type1, type2) => {
2299
2325
  if (isClass(type1) && type1.literalValue !== undefined) {
@@ -2368,28 +2394,29 @@ function _addTypeIfUnique(unionType, typeToAdd) {
2368
2394
  // Handle the addition of a string literal in a special manner to
2369
2395
  // avoid n^2 behavior in unions that contain hundreds of string
2370
2396
  // literal types. Skip this for constrained types.
2371
- if (isClassInstance(typeToAdd) && typeToAdd.condition === undefined) {
2397
+ if (isClass(typeToAdd) && typeToAdd.condition === undefined) {
2398
+ const literalMaps = isClassInstance(typeToAdd) ? unionType.literalInstances : unionType.literalClasses;
2372
2399
  if (ClassType.isBuiltIn(typeToAdd, 'str') &&
2373
2400
  typeToAdd.literalValue !== undefined &&
2374
- unionType.literalStrMap !== undefined) {
2375
- if (!unionType.literalStrMap.has(typeToAdd.literalValue)) {
2401
+ literalMaps.literalStrMap !== undefined) {
2402
+ if (!literalMaps.literalStrMap.has(typeToAdd.literalValue)) {
2376
2403
  UnionType.addType(unionType, typeToAdd);
2377
2404
  }
2378
2405
  return;
2379
2406
  }
2380
2407
  else if (ClassType.isBuiltIn(typeToAdd, 'int') &&
2381
2408
  typeToAdd.literalValue !== undefined &&
2382
- unionType.literalIntMap !== undefined) {
2383
- if (!unionType.literalIntMap.has(typeToAdd.literalValue)) {
2409
+ literalMaps.literalIntMap !== undefined) {
2410
+ if (!literalMaps.literalIntMap.has(typeToAdd.literalValue)) {
2384
2411
  UnionType.addType(unionType, typeToAdd);
2385
2412
  }
2386
2413
  return;
2387
2414
  }
2388
2415
  else if (ClassType.isEnumClass(typeToAdd) &&
2389
2416
  typeToAdd.literalValue !== undefined &&
2390
- unionType.literalEnumMap !== undefined) {
2417
+ literalMaps.literalEnumMap !== undefined) {
2391
2418
  const enumLiteral = typeToAdd.literalValue;
2392
- if (!unionType.literalEnumMap.has(enumLiteral.getName())) {
2419
+ if (!literalMaps.literalEnumMap.has(enumLiteral.getName())) {
2393
2420
  UnionType.addType(unionType, typeToAdd);
2394
2421
  }
2395
2422
  return;