@zzzen/pyright-internal 1.2.0-dev.20261018 → 1.2.0-dev.20261108

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 (238) hide show
  1. package/dist/analyzer/binder.js +29 -12
  2. package/dist/analyzer/binder.js.map +1 -1
  3. package/dist/analyzer/checker.js +4 -0
  4. package/dist/analyzer/checker.js.map +1 -1
  5. package/dist/analyzer/codeFlowEngine.js +3 -3
  6. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  7. package/dist/analyzer/constructorTransform.js +12 -0
  8. package/dist/analyzer/constructorTransform.js.map +1 -1
  9. package/dist/analyzer/constructors.d.ts +1 -1
  10. package/dist/analyzer/constructors.js +1 -1
  11. package/dist/analyzer/constructors.js.map +1 -1
  12. package/dist/analyzer/dataClasses.js +14 -5
  13. package/dist/analyzer/dataClasses.js.map +1 -1
  14. package/dist/analyzer/decorators.d.ts +2 -2
  15. package/dist/analyzer/decorators.js +22 -2
  16. package/dist/analyzer/decorators.js.map +1 -1
  17. package/dist/analyzer/functionTransform.d.ts +5 -0
  18. package/dist/analyzer/functionTransform.js +6 -3
  19. package/dist/analyzer/functionTransform.js.map +1 -1
  20. package/dist/analyzer/missingBindingMetadata.d.ts +6 -0
  21. package/dist/analyzer/missingBindingMetadata.js +22 -0
  22. package/dist/analyzer/missingBindingMetadata.js.map +1 -0
  23. package/dist/analyzer/namedTuples.d.ts +5 -1
  24. package/dist/analyzer/namedTuples.js +64 -35
  25. package/dist/analyzer/namedTuples.js.map +1 -1
  26. package/dist/analyzer/operations.js +45 -1
  27. package/dist/analyzer/operations.js.map +1 -1
  28. package/dist/analyzer/parseTreeUtils.d.ts +2 -0
  29. package/dist/analyzer/parseTreeUtils.js +43 -0
  30. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  31. package/dist/analyzer/patternMatching.d.ts +5 -1
  32. package/dist/analyzer/patternMatching.js +6 -1
  33. package/dist/analyzer/patternMatching.js.map +1 -1
  34. package/dist/analyzer/program.d.ts +3 -0
  35. package/dist/analyzer/program.js +71 -1
  36. package/dist/analyzer/program.js.map +1 -1
  37. package/dist/analyzer/sentinel.js +7 -1
  38. package/dist/analyzer/sentinel.js.map +1 -1
  39. package/dist/analyzer/sourceFile.js +13 -6
  40. package/dist/analyzer/sourceFile.js.map +1 -1
  41. package/dist/analyzer/tupleComparison.d.ts +6 -0
  42. package/dist/analyzer/tupleComparison.js +731 -0
  43. package/dist/analyzer/tupleComparison.js.map +1 -0
  44. package/dist/analyzer/tuples.d.ts +1 -1
  45. package/dist/analyzer/tuples.js +35 -4
  46. package/dist/analyzer/tuples.js.map +1 -1
  47. package/dist/analyzer/typeCacheUtils.d.ts +1 -0
  48. package/dist/analyzer/typeCacheUtils.js +10 -0
  49. package/dist/analyzer/typeCacheUtils.js.map +1 -1
  50. package/dist/analyzer/typeEvaluator/boundMethodSpecialization.d.ts +15 -0
  51. package/dist/analyzer/typeEvaluator/boundMethodSpecialization.js +98 -0
  52. package/dist/analyzer/typeEvaluator/boundMethodSpecialization.js.map +1 -0
  53. package/dist/analyzer/typeEvaluator/classConstruction.d.ts +25 -0
  54. package/dist/analyzer/typeEvaluator/classConstruction.js +251 -0
  55. package/dist/analyzer/typeEvaluator/classConstruction.js.map +1 -0
  56. package/dist/analyzer/typeEvaluator/collectionInference.d.ts +41 -0
  57. package/dist/analyzer/typeEvaluator/collectionInference.js +695 -0
  58. package/dist/analyzer/typeEvaluator/collectionInference.js.map +1 -0
  59. package/dist/analyzer/typeEvaluator/diagnostics.d.ts +33 -0
  60. package/dist/analyzer/typeEvaluator/diagnostics.js +198 -0
  61. package/dist/analyzer/typeEvaluator/diagnostics.js.map +1 -0
  62. package/dist/analyzer/typeEvaluator/evaluatorCore.d.ts +80 -0
  63. package/dist/analyzer/typeEvaluator/evaluatorCore.js +1126 -0
  64. package/dist/analyzer/typeEvaluator/evaluatorCore.js.map +1 -0
  65. package/dist/analyzer/typeEvaluator/evaluatorNarrowing.d.ts +17 -0
  66. package/dist/analyzer/typeEvaluator/evaluatorNarrowing.js +370 -0
  67. package/dist/analyzer/typeEvaluator/evaluatorNarrowing.js.map +1 -0
  68. package/dist/analyzer/typeEvaluator/expressionEvaluation.d.ts +81 -0
  69. package/dist/analyzer/typeEvaluator/expressionEvaluation.js +1802 -0
  70. package/dist/analyzer/typeEvaluator/expressionEvaluation.js.map +1 -0
  71. package/dist/analyzer/typeEvaluator/flowAnalysis.d.ts +33 -0
  72. package/dist/analyzer/typeEvaluator/flowAnalysis.js +217 -0
  73. package/dist/analyzer/typeEvaluator/flowAnalysis.js.map +1 -0
  74. package/dist/analyzer/typeEvaluator/internals.d.ts +137 -0
  75. package/dist/analyzer/typeEvaluator/internals.js +10 -0
  76. package/dist/analyzer/typeEvaluator/internals.js.map +1 -0
  77. package/dist/analyzer/typeEvaluator/literalTypes.d.ts +3 -0
  78. package/dist/analyzer/typeEvaluator/literalTypes.js +52 -0
  79. package/dist/analyzer/typeEvaluator/literalTypes.js.map +1 -0
  80. package/dist/analyzer/typeEvaluator/memberResolution.d.ts +79 -0
  81. package/dist/analyzer/typeEvaluator/memberResolution.js +1007 -0
  82. package/dist/analyzer/typeEvaluator/memberResolution.js.map +1 -0
  83. package/dist/analyzer/typeEvaluator/overrideValidation.d.ts +15 -0
  84. package/dist/analyzer/typeEvaluator/overrideValidation.js +422 -0
  85. package/dist/analyzer/typeEvaluator/overrideValidation.js.map +1 -0
  86. package/dist/analyzer/typeEvaluator/returnTypeInference.d.ts +33 -0
  87. package/dist/analyzer/typeEvaluator/returnTypeInference.js +226 -0
  88. package/dist/analyzer/typeEvaluator/returnTypeInference.js.map +1 -0
  89. package/dist/analyzer/typeEvaluator/specialFormCreation.d.ts +39 -0
  90. package/dist/analyzer/typeEvaluator/specialFormCreation.js +1728 -0
  91. package/dist/analyzer/typeEvaluator/specialFormCreation.js.map +1 -0
  92. package/dist/analyzer/typeEvaluator/tupleUnpacking.d.ts +2 -0
  93. package/dist/analyzer/typeEvaluator/tupleUnpacking.js +36 -0
  94. package/dist/analyzer/typeEvaluator/tupleUnpacking.js.map +1 -0
  95. package/dist/analyzer/typeEvaluator/typeCompatibility.d.ts +36 -0
  96. package/dist/analyzer/typeEvaluator/typeCompatibility.js +1320 -0
  97. package/dist/analyzer/typeEvaluator/typeCompatibility.js.map +1 -0
  98. package/dist/analyzer/typeEvaluator/typeGuardNarrowing.d.ts +186 -0
  99. package/dist/analyzer/typeEvaluator/typeGuardNarrowing.js +1683 -0
  100. package/dist/analyzer/typeEvaluator/typeGuardNarrowing.js.map +1 -0
  101. package/dist/analyzer/typeEvaluator/typeVarHandling.d.ts +48 -0
  102. package/dist/analyzer/typeEvaluator/typeVarHandling.js +756 -0
  103. package/dist/analyzer/typeEvaluator/typeVarHandling.js.map +1 -0
  104. package/dist/analyzer/typeEvaluator.d.ts +3 -31
  105. package/dist/analyzer/typeEvaluator.js +5140 -13656
  106. package/dist/analyzer/typeEvaluator.js.map +1 -1
  107. package/dist/analyzer/typeEvaluatorTypes.d.ts +1 -1
  108. package/dist/analyzer/typeEvaluatorTypes.js +2 -3
  109. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  110. package/dist/analyzer/typeGuards.d.ts +3 -2
  111. package/dist/analyzer/typeGuards.js +236 -1375
  112. package/dist/analyzer/typeGuards.js.map +1 -1
  113. package/dist/analyzer/typeUtils.js +9 -2
  114. package/dist/analyzer/typeUtils.js.map +1 -1
  115. package/dist/analyzer/typedDicts.js +111 -0
  116. package/dist/analyzer/typedDicts.js.map +1 -1
  117. package/dist/analyzer/types.d.ts +14 -0
  118. package/dist/analyzer/types.js +215 -10
  119. package/dist/analyzer/types.js.map +1 -1
  120. package/dist/browser/browserConnection.d.ts +12 -0
  121. package/dist/browser/browserConnection.js +23 -0
  122. package/dist/browser/browserConnection.js.map +1 -0
  123. package/dist/browser/browserFileSystem.d.ts +73 -0
  124. package/dist/browser/browserFileSystem.js +578 -0
  125. package/dist/browser/browserFileSystem.js.map +1 -0
  126. package/dist/browser/browserHost.d.ts +4 -0
  127. package/dist/browser/browserHost.js +10 -0
  128. package/dist/browser/browserHost.js.map +1 -0
  129. package/dist/browser/browserProcess.d.ts +1 -0
  130. package/dist/browser/browserProcess.js +17 -0
  131. package/dist/browser/browserProcess.js.map +1 -0
  132. package/dist/browser/browserServer.d.ts +8 -0
  133. package/dist/browser/browserServer.js +32 -0
  134. package/dist/browser/browserServer.js.map +1 -0
  135. package/dist/browser/cancellation/common.d.ts +10 -0
  136. package/dist/browser/cancellation/common.js +114 -0
  137. package/dist/browser/cancellation/common.js.map +1 -0
  138. package/dist/browser/cancellation/objectURLReceiverStrategy.d.ts +5 -0
  139. package/dist/browser/cancellation/objectURLReceiverStrategy.js +37 -0
  140. package/dist/browser/cancellation/objectURLReceiverStrategy.js.map +1 -0
  141. package/dist/browser/cancellation/objectURLSenderStrategy.d.ts +7 -0
  142. package/dist/browser/cancellation/objectURLSenderStrategy.js +32 -0
  143. package/dist/browser/cancellation/objectURLSenderStrategy.js.map +1 -0
  144. package/dist/browser/worker.d.ts +1 -0
  145. package/dist/browser/worker.js +33 -0
  146. package/dist/browser/worker.js.map +1 -0
  147. package/dist/common/processUtils.d.ts +6 -0
  148. package/dist/common/processUtils.js +56 -1
  149. package/dist/common/processUtils.js.map +1 -1
  150. package/dist/common/textEditTracker.js +1 -1
  151. package/dist/common/textEditTracker.js.map +1 -1
  152. package/dist/common/windowsProcessTree.d.ts +2 -0
  153. package/dist/common/windowsProcessTree.js +23 -0
  154. package/dist/common/windowsProcessTree.js.map +1 -1
  155. package/dist/common/windowsProcessTree.json +23 -3
  156. package/dist/languageServerBase.d.ts +3 -0
  157. package/dist/languageServerBase.js +44 -12
  158. package/dist/languageServerBase.js.map +1 -1
  159. package/dist/languageService/callHierarchyProvider.js +6 -6
  160. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  161. package/dist/languageService/referencesProvider.js +3 -3
  162. package/dist/languageService/referencesProvider.js.map +1 -1
  163. package/dist/languageService/renameProvider.js +1 -1
  164. package/dist/languageService/renameProvider.js.map +1 -1
  165. package/dist/languageService/symbolIndexer.js +2 -2
  166. package/dist/languageService/symbolIndexer.js.map +1 -1
  167. package/dist/localization/localize.d.ts +2 -0
  168. package/dist/localization/localize.js +2 -0
  169. package/dist/localization/localize.js.map +1 -1
  170. package/dist/localization/package.nls.en-us.json +8 -0
  171. package/dist/parser/parseTreeTokenReuse.d.ts +34 -0
  172. package/dist/parser/parseTreeTokenReuse.js +897 -0
  173. package/dist/parser/parseTreeTokenReuse.js.map +1 -0
  174. package/dist/parser/tokenizer.d.ts +10 -1
  175. package/dist/parser/tokenizer.js +184 -130
  176. package/dist/parser/tokenizer.js.map +1 -1
  177. package/dist/pyrightServer.d.ts +34 -0
  178. package/dist/pyrightServer.js +239 -0
  179. package/dist/pyrightServer.js.map +1 -0
  180. package/dist/server.d.ts +3 -23
  181. package/dist/server.js +12 -232
  182. package/dist/server.js.map +1 -1
  183. package/dist/tests/benchmarks/typeInferenceComparison.d.ts +1 -0
  184. package/dist/tests/benchmarks/typeInferenceComparison.js +1235 -0
  185. package/dist/tests/benchmarks/typeInferenceComparison.js.map +1 -0
  186. package/dist/tests/benchmarks/typeInferencePyrightEntry.d.ts +1 -0
  187. package/dist/tests/benchmarks/typeInferencePyrightEntry.js +53 -0
  188. package/dist/tests/benchmarks/typeInferencePyrightEntry.js.map +1 -0
  189. package/dist/tests/browserCancellation.test.d.ts +1 -0
  190. package/dist/tests/browserCancellation.test.js +63 -0
  191. package/dist/tests/browserCancellation.test.js.map +1 -0
  192. package/dist/tests/browserServer.test.d.ts +1 -0
  193. package/dist/tests/browserServer.test.js +177 -0
  194. package/dist/tests/browserServer.test.js.map +1 -0
  195. package/dist/tests/checker.test.js +8 -0
  196. package/dist/tests/checker.test.js.map +1 -1
  197. package/dist/tests/constraintSolver.test.js +45 -0
  198. package/dist/tests/constraintSolver.test.js.map +1 -1
  199. package/dist/tests/fourSlashParser.test.js +35 -0
  200. package/dist/tests/fourSlashParser.test.js.map +1 -1
  201. package/dist/tests/harness/fourslash/fourSlashParser.js +14 -4
  202. package/dist/tests/harness/fourslash/fourSlashParser.js.map +1 -1
  203. package/dist/tests/languageServer.test.js +15 -0
  204. package/dist/tests/languageServer.test.js.map +1 -1
  205. package/dist/tests/lsp/languageServer.js +6 -6
  206. package/dist/tests/lsp/languageServer.js.map +1 -1
  207. package/dist/tests/mypyPrimerAnalysis.test.js +148 -1
  208. package/dist/tests/mypyPrimerAnalysis.test.js.map +1 -1
  209. package/dist/tests/typeCacheUtils.test.js +46 -0
  210. package/dist/tests/typeCacheUtils.test.js.map +1 -1
  211. package/dist/tests/typeEvaluator1.test.js +78 -1
  212. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  213. package/dist/tests/typeEvaluator2.test.js +54 -1
  214. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  215. package/dist/tests/typeEvaluator3.test.js +4 -0
  216. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  217. package/dist/tests/typeEvaluator4.test.js +42 -3
  218. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  219. package/dist/tests/typeEvaluator6.test.js +35 -0
  220. package/dist/tests/typeEvaluator6.test.js.map +1 -1
  221. package/dist/tests/typeEvaluator7.test.js +414 -0
  222. package/dist/tests/typeEvaluator7.test.js.map +1 -1
  223. package/dist/tests/typeEvaluator8.test.js +1291 -1
  224. package/dist/tests/typeEvaluator8.test.js.map +1 -1
  225. package/dist/tests/typeUtils.test.js +28 -0
  226. package/dist/tests/typeUtils.test.js.map +1 -1
  227. package/dist/tests/types.test.js +55 -0
  228. package/dist/tests/types.test.js.map +1 -1
  229. package/dist/typeServer/programWrapper.js +8 -2
  230. package/dist/typeServer/programWrapper.js.map +1 -1
  231. package/dist/typeServer/server.d.ts +12 -2
  232. package/dist/typeServer/server.js +97 -0
  233. package/dist/typeServer/server.js.map +1 -1
  234. package/dist/typeServer/stubGenerator.js +136 -3
  235. package/dist/typeServer/stubGenerator.js.map +1 -1
  236. package/dist/typeServer/typeServerConversionUtils.js +13 -0
  237. package/dist/typeServer/typeServerConversionUtils.js.map +1 -1
  238. package/package.json +3 -1
@@ -1 +1 @@
1
- {"version":3,"file":"programWrapper.js","sourceRoot":"","sources":["../../../../../src/typeServer/programWrapper.ts"],"names":[],"mappings":";;;AA81BA,kCAuBC;AA11BD,mEAUsC;AAKtC,+DAA+D;AAE/D,uDAAyD;AACzD,uDAAqD;AAGrD,uEAAkG;AAClG,6CAA0E;AAG1E,2CAAuC;AAKvC,2CAAwC;AACxC,iDAA8C;AAC9C,qDAAgD;AAChD,qDAA+E;AAG/E,+DAAwF;AACxF,mDAAmG;AACnG,uDAAiE;AAEjE,2EAAiE;AAEjE,mEAAgE;AAChE,2EAAkE;AAElE,iDAAyD;AAEzD,2CAAoD;AAEpD;;;;;;;;;;;;;;;GAeG;AACH,MAAa,cAAc;IAQvB,YAA6B,QAAiB,EAAU,MAAkB;QAA7C,aAAQ,GAAR,QAAQ,CAAS;QAAU,WAAM,GAAN,MAAM,CAAY;QANlE,mBAAc,GAA6B,IAAI,OAAO,EAAE,CAAC;QACzD,uBAAkB,GAA6B,IAAI,GAAG,EAAE,CAAC;QACzD,8BAAyB,GAAG,KAAK,CAAC;QAClC,gBAAW,GAAG,IAAI,eAAM,EAAW,CAAC;QACpC,gBAAW,GAAG,KAAK,CAAC;QAGxB,4EAA4E;QAC5E,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,CAAC,OAAY,EAAE,OAAsB,EAAE,QAAgB,EAAE,OAAO,EAAE,EAAE;YAC9F,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC3D,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9E,IAAI,CAAC,QAAQ,CAAC,aAAa,GAAG,CAAC,OAAY,EAAE,EAAE;YAC3C,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;YAC9C,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC;QACF,MAAM,wBAAwB,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpF,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,CAAC,OAAY,EAAE,cAAmB,EAAE,EAAE;YACnE,wBAAwB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAClD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChF,IAAI,CAAC,QAAQ,CAAC,cAAc,GAAG,CAAC,QAAe,EAAE,qBAA8B,EAAE,EAAE;YAC/E,sBAAsB,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;YACxD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,yBAAyB,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtF,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,CAAC,qBAA8B,EAAE,EAAE;YACjE,yBAAyB,CAAC,qBAAqB,CAAC,CAAC;YACjD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,wBAAwB,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpF,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,CAAC,aAA4B,EAAE,EAAE;YAC9D,wBAAwB,CAAC,aAAa,CAAC,CAAC;YACxC,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;YACpC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9B,CAAC,CAAC;QACF,MAAM,yBAAyB,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtF,IAAI,CAAC,QAAQ,CAAC,iBAAiB,GAAG,CAAC,cAAc,EAAE,EAAE;YACjD,yBAAyB,CAAC,cAAc,CAAC,CAAC;YAC1C,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;YACpC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC9B,CAAC,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5B,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAClC,CAAC;IACD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IACjC,CAAC;IACD,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;IACvC,CAAC;IACD,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;IACpC,CAAC;IACD,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;IACpC,CAAC;IACD,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;IACzC,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,6CAAqB,CAAC,SAAS,CAAC,CAAC;IACjF,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,uBAAuB;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,YAAY;QACZ,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAkB;YAChC,WAAW,EAAE,CAAC,IAAe,EAAoB,EAAE;gBAC/C,qEAAqE;gBACrE,mEAAmE;gBACnE,kEAAkE;gBAClE,mDAAmD;gBACnD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC7C,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAC9C,OAAO,IAAA,8BAAW,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvC,CAAC;YACD,aAAa,EAAE,CAAC,IAAe,EAA4B,EAAE;gBACzD,OAAO,IAAA,gCAAa,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACzC,CAAC;YACD,cAAc,EAAE,CAAC,IAAe,EAA2B,EAAE;gBACzD,OAAO,IAAA,iCAAc,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC1C,CAAC;YACD,WAAW,EAAE,CAAC,IAAe,EAAwB,EAAE;gBACnD,OAAO,IAAA,8BAAW,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvC,CAAC;YACD,QAAQ,CAAC,IAAI;gBACT,OAAO,IAAA,2BAAQ,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACpC,CAAC;YACD,iBAAiB,CAAC,IAAe;gBAC7B,OAAO,IAAA,kCAAiB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YACD,gBAAgB,CAAC,IAAgB;gBAC7B,OAAO,IAAA,mCAAgB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC5C,CAAC;YACD,iBAAiB,EAAE,CAAC,OAAY,EAAE,mBAAmB,GAAG,KAAK,EAA2B,EAAE;gBACtF,+EAA+E;gBAC/E,gFAAgF;gBAChF,iFAAiF;gBACjF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBACtC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;gBAC9E,OAAO,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;YACvD,CAAC;YACD,iBAAiB,EAAE,CAAC,IAAe,EAA2B,EAAE;gBAC5D,MAAM,KAAK,GAAG,IAAA,4BAAe,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC9C,OAAO,KAAK,EAAE,WAAW,CAAC;YAC9B,CAAC;YACD,YAAY,EAAE,CACV,WAAsB,EACtB,IAAY,EACZ,oBAA8B,EACZ,EAAE;gBACpB,OAAO,IAAA,kCAAkB,EAAC,WAAW,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC3D,CAAC;YACD,oBAAoB,EAAE,CAAC,MAAc,EAAsB,EAAE;gBACzD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ;qBAC3B,qBAAqB,EAAE;qBACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,EAAE,YAAY,CAAC,SAAS,CAAC;qBAClE,MAAM,CAAC,CAAC,CAAC,EAAmB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,8BAAW,EAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;gBACrG,OAAO,SAAS,CAAC;YACrB,CAAC;SACJ,CAAC;QACF,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,WAAW,CAAI,QAA4B,EAAE,KAAwB;QACjE,IAAI,OAAO,GAAqB,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,MAAM,IAAI,sCAAuB,EAAE,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QAC9B,IAAI,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,wBAAwB,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QACnF,CAAC;gBAAS,CAAC;YACP,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;YACvC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC7B,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,aAAa;QACT,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IAClC,CAAC;IACD,YAAY;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IACD,GAAG,CAAI,QAA4B,EAAE,KAAwB;QACzD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,eAAe;QACX,OAAO,IAAA,+CAAyB,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvE,CAAC;IAED,2BAA2B,CAAC,IAAiB;QACzC,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,2BAA2B,CAAC,IAAiB,EAAE,IAAU;QACrD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,qBAAqB,CAAC,OAAuC;QACzD,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAA,8CAAkB,EAAC,OAAO,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,qBAAqB,CAAC,OAAuC,EAAE,IAAiB;QAC5E,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAA,8CAAkB,EAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC;IACD,eAAe,CACX,OAAY,EACZ,WAAoB,EACpB,WAAoB,EACpB,KAAwB;QAExB,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC7F,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAkB;YAC3B,gBAAgB,EAAE,CAAC,IAAiB,EAAE,EAAE;gBACpC,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,CAAC;YACD,sBAAsB,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE;gBAC3D,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,sBAAsB,CAAC,cAAc,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvG,CAAC;YACD,2BAA2B,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;gBACvC,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,2BAA2B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnF,CAAC;YACD,wBAAwB,EAAE,CAAC,IAAyB,EAAE,EAAE;gBACpD,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,CAAC;YACD,sBAAsB,EAAE,CAAC,OAAY,EAAE,QAAyB,EAAE,EAAE;gBAChE,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,CAAC;YACD,aAAa,EAAE,CAAC,GAAQ,EAAE,EAAE;gBACxB,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,CAAC;YACD,WAAW,EAAE,CAAC,QAAa,EAAE,EAAE;gBAC3B,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,CAAC;YACD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;gBAClB,qEAAqE;gBACrE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAC7C,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;gBAC9C,OAAO,IAAA,8BAAW,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACvC,CAAC;SACJ,CAAC;QACF,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,MAAM,CAAC,IAAe;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAA,gCAAa,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,eAAe,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CAAC,OAAY,EAAE,KAAwB;QACrD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO;QACX,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAE1C,4FAA4F;QAC5F,mGAAmG;QACnG,yEAAyE;QACzE,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,YAAY,EAAE,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpB,mDAAmD;gBACnD,MAAM,SAAS,GAAG,IAAA,+CAAmB,EAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBAC9D,IAAI,SAAS,EAAE,CAAC;oBACZ,8CAA8C;oBAC9C,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;gBACpC,CAAC;YACL,CAAC,EAAE,KAAK,CAAC,CAAC;QACd,CAAC;IACL,CAAC;IAED,eAAe,CAAC,GAA4B,EAAE,KAAwB;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACnC,IAAI,IAAA,6BAAa,EAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,IAAA,6CAA6B,EAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC3D,CAAC;YAED,IAAI,IAAA,6BAAgB,EAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;YAED,OAAO,SAAS,CAAC;QACrB,CAAC,EAAE,KAAK,CAAC,CAAC;QAEV,gEAAgE;QAChE,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,eAAe,CAAC,GAA4B,EAAE,KAAwB;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACnC,IAAI,IAAA,6BAAa,EAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,qBAAqB,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;gBAC3D,OAAO,IAAI;oBACP,CAAC,CAAC;wBACI,IAAI;wBACJ,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,UAAU,EAAE,EAAE;qBACjB;oBACH,CAAC,CAAC,SAAS,CAAC;YACpB,CAAC;YAED,IAAI,IAAA,6BAAgB,EAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,CAAC,SAAS,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC;YAC7C,CAAC;YAED,OAAO,SAAS,CAAC;QACrB,CAAC,EAAE,KAAK,CAAC,CAAC;QAEV,OAAO,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IACD,eAAe,CAAC,GAA4B,EAAE,KAAwB;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACnC,IAAI,IAAA,6BAAa,EAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,CAAC,CAAC,SAAS,EAAE,qBAAqB,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;YACzD,CAAC;YAED,IAAI,IAAA,6BAAgB,EAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;YAED,OAAO,SAAS,CAAC;QACrB,CAAC,EAAE,KAAK,CAAC,CAAC;QAEV,gEAAgE;QAChE,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,cAAc;QACV,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,6CAAqB,CAAC,gBAAgB,CAAC,CAAC;QAC1F,OAAO,aAAa,EAAE,cAAc,EAAE,CAAC;IAC3C,CAAC;IAED,aAAa;QACT,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,6CAAqB,CAAC,gBAAgB,CAAC,CAAC;QAC1F,OAAO,aAAa,EAAE,aAAa,EAAE,CAAC;IAC1C,CAAC;IAED,yBAAyB,CAAC,kBAA0B;QAChD,6BAA6B;IACjC,CAAC;IAED,wBAAwB;QACpB,6BAA6B;IACjC,CAAC;IAED,oBAAoB,CAAC,KAAwB;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACnC,CAAC;IAED,YAAY,CACR,eAA+C,EAC/C,OAA6B;QAE7B,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,CAAC,GAAQ;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IACD,eAAe,CAAC,OAAY;QACxB,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,sCAAsC;YACtC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBACtC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,eAAe,CAAC,OAAY;QACxB,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,sCAAsC;YACtC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBACtC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,kFAAkF;QAClF,mFAAmF;QACnF,mFAAmF;QACnF,OAAO;YACH,GAAG,OAAO;YACV,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE;YAC7C,GAAG,EAAE,OAAO;SACf,CAAC;IACN,CAAC;IACD,WAAW,CAAC,IAAY,EAAE,YAAkB;QACxC,6BAA6B;QAC7B,8FAA8F;QAC9F,MAAM,YAAY,GAAG,UAAU,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3F,MAAM,OAAO,GAAG,YAAY;YACxB,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC;YACzC,CAAC,CAAC,SAAG,CAAC,IAAI,CAAC,IAAI,YAAY,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAEzD,yFAAyF;QACzF,8CAA8C;QAC9C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC;YACD,mDAAmD;YACnD,sDAAsD;YACtD,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE;gBAC1C,WAAW,EAAE,wBAAW,CAAC,IAAI;gBAC7B,cAAc,EAAE,SAAS;gBACzB,SAAS,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAEtC,yCAAyC;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAC5D,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEpC,OAAO;gBACH,GAAG,EAAE,OAAO;gBACZ,YAAY,EAAE,EAAE,GAAG,YAAY,EAAE,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;aACjG,CAAC;QACN,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;QAC3C,CAAC;IACL,CAAC;IACD,aAAa,CAAC,OAAY;QACtB,uGAAuG;QACvG,gFAAgF;QAEhF,uGAAuG;QACvG,uGAAuG;QACvG,IAAI,SAAS,GAAG,OAAO,CAAC;QAExB,sCAAsC;QACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,iBAAM,EAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC;YAC7F,6EAA6E;YAC7E,IAAI,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjD,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACjD,uEAAuE;oBACvE,OAAO,SAAS,CAAC;gBACrB,CAAC;YACL,CAAC;YACD,SAAS,GAAG,QAAQ,CAAC;QACzB,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,+DAA+D;YAC/D,sEAAsE;YACtE,oEAAoE;YACpE,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC;YAClC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACP,gFAAgF;gBAChF,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;YAClC,CAAC;YACD,qCAAqC;QACzC,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CACzE,SAAS,EACT,OAAO;QACP,4BAA4B,CAAC,IAAI;QACjC,mBAAmB,CAAC,IAAI,CAC3B,CAAC;QACF,OAAO,iBAAiB,CAAC,UAAU,IAAI,SAAS,CAAC;IACrD,CAAC;IACD,iBAAiB,CAAC,OAAY;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,aAAa,CAAC,OAAY;QACtB,qEAAqE;QACrE,kCAAkC;QAClC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IACD,kBAAkB;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,CAAC;IACD,kBAAkB,CAAC,GAAQ,EAAE,WAAmB;QAC5C,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,IAAI,CAAC,CAAC;YAC5C,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9E,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,wBAAW,CAAC,IAAI,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,CAAC,EAAE,WAAW,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;QAChG,CAAC;IACL,CAAC;IAED,cAAc,CAAC,GAAQ,EAAE,kBAA2B,EAAE,kBAA2B;QAC7E,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;IAC9E,CAAC;IAED,eAAe,CAAC,IAAW;QACvB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,qBAAqB;QACjB,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,CAAC;IAC1C,CAAC;IAED,WAAW,CAAC,KAAwB;QAChC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAChC,CAAC;IACD,sBAAsB,CAClB,GAAQ,EACR,gBAAoC,EACpC,KAAwB;QAExB,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACpD,IAAI,UAAU,EAAE,CAAC;YACb,8CAA8C;YAC9C,IAAI,UAAU,CAAC,kBAAkB,EAAE,IAAI,UAAU,CAAC,iBAAiB,EAAE,EAAE,CAAC;gBACpE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,WAAW,GAAiB,EAAE,CAAC;QACnC,IAAI,UAAU,GAAuB,SAAS,CAAC;QAC/C,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG;gBACV,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;gBAChC,GAAG,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE;aACxE,CAAC;YACF,WAAW,GAAG,IAAI,CAAC,QAAQ;iBACtB,sBAAsB,CAAC,GAAG,EAAE,KAAK,CAAC;iBAClC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,8CAA4B,EAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5F,UAAU,GAAG,UAAU,CAAC,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;QAC9D,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IACtE,CAAC;IACD,aAAa,CACT,MAAW,EACX,gBAA+C,EAC/C,KAAwB;QAExB,MAAM,oBAAoB,GAA6B;YACnD,GAAG,gBAAgB;YACnB,eAAe,EAAE,IAAI,GAAG,EAAU;SACrC,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CACtD,MAAM,EACN,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EACxB,oBAAoB,CACvB,CAAC;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACvF,IAAI,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAChC,0DAA0D;YAC1D,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,mBAAmB,CAAC,OAAoB;QACpC,wCAAwC;IAC5C,CAAC;IACD,cAAc,CAAC,GAAQ;QACnB,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO;QACH,oEAAoE;IACxE,CAAC;IAEO,kBAAkB,CAAC,MAAwB;QAC/C,mEAAmE;QACnE,WAAW;QACX,IAAI,MAAM,IAAI,IAAA,8BAAsB,EAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAChE,CAAC;QAED,oEAAoE;QACpE,6CAA6C;QAC7C,IAAI,MAAM,IAAI,IAAA,eAAO,EAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;YACnE,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,EAAE,SAAS,EAAE,EAAE,CAAC;QAC3F,CAAC;QAED,2EAA2E;QAC3E,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC9C,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAEO,0BAA0B,CAAC,MAAsC;QACrE,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU;aAC/B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;aACtD,MAAM,CAAC,CAAC,SAAS,EAAqB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAE3D,OAAO;YACH,IAAI;YACJ,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,UAAU,EAAE,IAAA,iDAA4B,EAAC,IAAI,EAAE,UAAU,CAAC;SAC7D,CAAC;IACN,CAAC;IAEO,mBAAmB,CAAC,CAAiB;QACzC,mGAAmG;QACnG,OAAO,IAAI,CAAC;YACR,YAAoB,cAA8B,EAAU,EAAkB;gBAA1D,mBAAc,GAAd,cAAc,CAAgB;gBAAU,OAAE,GAAF,EAAE,CAAgB;gBAiGtE,wBAAmB,GAAG,CAAC,EAAkB,EAAmB,EAAE;oBAClE,OAAO,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC;YAnG+E,CAAC;YAElF,0DAA0D;YAC1D,IAAI,GAAG;gBACH,OAAO,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC;YACvB,CAAC;YACD,IAAI,QAAQ;gBACR,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;YAC5B,CAAC;YACD,IAAI,WAAW;gBACX,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;YAC/B,CAAC;YACD,IAAI,cAAc;gBACd,OAAO,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC;YAClC,CAAC;YACD,IAAI,kBAAkB;gBAClB,OAAO,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC;YACtC,CAAC;YACD,IAAI,0BAA0B;gBAC1B,OAAO,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC;YAC9C,CAAC;YACD,IAAI,gBAAgB;gBAChB,OAAO,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC;YACpC,CAAC;YACD,IAAI,kBAAkB;gBAClB,OAAO,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC;YACtC,CAAC;YACD,IAAI,kBAAkB;gBAClB,OAAO,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC;YACtC,CAAC;YACD,IAAI,eAAe;gBACf,OAAO,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC;YACnC,CAAC;YACD,IAAI,aAAa;gBACb,OAAO,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;YACjC,CAAC;YACD,IAAI,iBAAiB;gBACjB,OAAO,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC;YACrC,CAAC;YACD,IAAI,SAAS;gBACT,OAAO,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC;YAC7B,CAAC;YACD,IAAI,cAAc;gBACd,OAAO,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC;YAClC,CAAC;YACD,IAAI,SAAS;gBACT,OAAO,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC;YAC7B,CAAC;YACD,IAAI,OAAO;gBACP,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;YAC3B,CAAC;YACD,IAAI,kBAAkB;gBAClB,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,IAAI,UAAU;gBACV,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;YAC9B,CAAC;YACD,IAAI,OAAO;gBACP,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;YAC3B,CAAC;YACD,IAAI,UAAU;gBACV,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC;YAC9B,CAAC;YAED,UAAU;gBACN,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACnD,CAAC;YAED,aAAa;gBACT,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACtD,CAAC;YAED,iBAAiB;gBACb,IAAI,CAAC,CAAC,cAAc,KAAK,CAAC,EAAE,CAAC;oBACzB,OAAO,SAAS,CAAC;gBACrB,CAAC;gBACD,IAAI,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,aAAa,EAAE,EAAE,CAAC;oBACzE,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBACzD,CAAC;gBAED,OAAO,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrF,CAAC;YAED,iBAAiB;gBACb,OAAO,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrF,CAAC;YAED,uEAAuE;YACvE,yEAAyE;YACzE,2BAA2B;gBACvB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACpC,CAAC;YAED,2BAA2B;gBACvB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACpC,CAAC;SAKJ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAChB,CAAC;IAEO,kBAAkB;QACtB,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACjC,OAAO;QACX,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;QACpC,kEAAkE;QAClE,wDAAwD;QACxD,IAAI,CAAC,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;QACpC,wEAAwE;QACxE,+DAA+D;QAC/D,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;QAEpC,+CAA+C;QAC/C,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC;QAC3C,CAAC;IACL,CAAC;IAEO,WAAW,CAAC,GAAQ;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa;aAClC,wBAAwB,EAAE;aAC1B,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChF,OAAO,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,yBAAyB,EAAE,CAAC;IAC1E,CAAC;IAEO,OAAO,CAAC,IAAe,EAAE,QAAgC;QAC7D,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;YAC9C,KAAK,MAAM,cAAc,IAAI,IAAI,CAAC,QAAQ,CAAC,qBAAqB,EAAE,EAAE,CAAC;gBACjE,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBACzE,OAAO,cAAc,CAAC,GAAG,CAAC;gBAC9B,CAAC;YACL,CAAC;YACD,OAAO,SAAS,CAAC;QACrB,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AA/vBD,wCA+vBC;AAED,MAAM,eAAe,GAAG,IAAI,OAAO,EAAyB,CAAC;AAC7D,SAAgB,WAAW,CAAC,OAAoB,EAAE,KAAkB;IAChE,2FAA2F;IAC3F,oEAAoE;IACpE,IAAI,OAAO,GAAyB,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACjE,IAAI,CAAC,OAAO,EAAE,CAAC;QACX,OAAO,GAAG,IAAI,cAAc,CACxB,OAAkB,EAClB,KAAK;YACD,IAAI,qBAAS,CACT,OAAO,CAAC,eAAe,EACvB,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,EACrC,GAAG,EAAE,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAC1D,CACR,CAAC;QACF,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,KAAK,IAAI,OAAO,YAAY,cAAc,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;QACnF,oFAAoF;QACpF,uFAAuF;QACvF,+EAA+E;QAC/E,oEAAoE;QACpE,IAAA,YAAI,EAAC,+EAA+E,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"programWrapper.js","sourceRoot":"","sources":["../../../../../src/typeServer/programWrapper.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
- import { CancellationToken, Connection, Diagnostic } from 'vscode-languageserver';
2
- import { CodeActionParams, DidOpenTextDocumentParams, DocumentDiagnosticParams, ExecuteCommandParams, InitializeParams, InitializeResult } from 'vscode-languageserver-protocol';
1
+ import { CancellationToken, Connection, Diagnostic, ResultProgressReporter, WorkDoneProgressReporter } from 'vscode-languageserver';
2
+ import { CodeActionParams, DidOpenTextDocumentParams, DocumentDiagnosticParams, ExecuteCommandParams, InitializeParams, InitializeResult, WorkspaceDiagnosticParams, WorkspaceDiagnosticReportPartialResult } from 'vscode-languageserver-protocol';
3
3
  import { CodeAction, Command } from 'vscode-languageserver-types';
4
+ import { BackgroundAnalysisProgram } from '../analyzer/backgroundAnalysisProgram';
4
5
  import { ImportResolver } from '../analyzer/importResolver';
6
+ import { MaxAnalysisTime } from '../analyzer/program';
5
7
  import { IPythonMode } from '../analyzer/sourceFile';
6
8
  import { IBackgroundAnalysis } from '../backgroundAnalysisBase';
7
9
  import { ConfigOptions } from '../common/configOptions';
@@ -22,6 +24,7 @@ export declare class TypeServer extends LanguageServerBase {
22
24
  private _globalTypeCache;
23
25
  protected notebookManager: NotebookDocumentHandler | undefined;
24
26
  private readonly _uriMapper;
27
+ private _nativeWorkspaceDiagnosticProgress;
25
28
  constructor(serverOptions: ServerOptions, connection: Connection);
26
29
  dispose(): void;
27
30
  getWorkspaceForFile(fileUri: Uri, pythonPath?: Uri): Promise<Workspace>;
@@ -32,7 +35,11 @@ export declare class TypeServer extends LanguageServerBase {
32
35
  protected isRefactoringCommand(command: string): boolean;
33
36
  protected executeCodeAction(params: CodeActionParams, token: CancellationToken): Promise<(Command | CodeAction)[] | undefined | null>;
34
37
  protected createHost(): Host;
38
+ protected createBackgroundAnalysisProgram(serviceId: string, serviceProvider: ServiceProvider, configOptions: ConfigOptions, importResolver: ImportResolver, backgroundAnalysis?: IBackgroundAnalysis, maxAnalysisTime?: MaxAnalysisTime): BackgroundAnalysisProgram;
35
39
  protected createImportResolver(serviceProvider: ServiceProvider, options: ConfigOptions, host: Host): ImportResolver;
40
+ protected onWorkspaceDiagnostics(params: WorkspaceDiagnosticParams, token: CancellationToken, workDoneProgress: WorkDoneProgressReporter, resultReporter?: ResultProgressReporter<WorkspaceDiagnosticReportPartialResult>): Promise<import("vscode-languageserver").WorkspaceDiagnosticReport>;
41
+ protected sendProgressMessage(fileCount: number, cellCount?: number): void;
42
+ protected getWorkspaceDiagnosticVersion(version: number | undefined): number | null;
36
43
  protected createProgressReporter(): ProgressReporter;
37
44
  protected executeCommand(params: ExecuteCommandParams, token: CancellationToken): Promise<any>;
38
45
  protected setupConnection(supportedCommands: string[], supportedCodeActions: string[]): void;
@@ -51,6 +58,9 @@ export declare class TypeServer extends LanguageServerBase {
51
58
  protected convertDiagnostic(diag: AnalyzerDiagnostic, fs: ReadOnlyFileSystem, supportsUnnecessaryDiagnosticTag: boolean, supportsTaskItemDiagnosticTag: boolean): Diagnostic | undefined;
52
59
  private _getStringValues;
53
60
  private _getParserOutput;
61
+ private _onNativeWorkspaceDiagnostics;
62
+ private _sendNativeAnalysisProgress;
63
+ private _sendNativeNotebookAnalysisProgress;
54
64
  private _getWorkspaceForUri;
55
65
  private _getExistingIPythonMode;
56
66
  private _getProgram;
@@ -31,6 +31,7 @@ const console_1 = require("../common/console");
31
31
  const core_1 = require("../common/core");
32
32
  const envVarUtils_1 = require("../common/envVarUtils");
33
33
  const fullAccessHost_1 = require("../common/fullAccessHost");
34
+ const uri_1 = require("../common/uri/uri");
34
35
  const languageServerBase_1 = require("../languageServerBase");
35
36
  const navigationUtils_1 = require("../languageService/navigationUtils");
36
37
  const workspaceFactory_1 = require("../workspaceFactory");
@@ -54,6 +55,7 @@ class TypeServer extends languageServerBase_1.LanguageServerBase {
54
55
  super(serverOptions, connection);
55
56
  this._handleToUriMap = new Map();
56
57
  this._initializedComplete = false;
58
+ this._nativeWorkspaceDiagnosticProgress = false;
57
59
  this._uriMapper = serverOptions.serviceProvider.tryGet(typeServerServiceKeys_1.TypeServerServiceKeys.uriMapper);
58
60
  this._globalTypeCache = new typeCache_1.TypeCache(serverOptions.serviceProvider, this._getParserOutput.bind(this));
59
61
  this._globalTypeCache.snapshotChanged(this._onSnapshotChanged.bind(this));
@@ -208,6 +210,12 @@ class TypeServer extends languageServerBase_1.LanguageServerBase {
208
210
  createHost() {
209
211
  return new fullAccessHost_1.FullAccessHost(this.serverOptions.serviceProvider);
210
212
  }
213
+ createBackgroundAnalysisProgram(serviceId, serviceProvider, configOptions, importResolver, backgroundAnalysis, maxAnalysisTime) {
214
+ if (!this._nativeWorkspaceDiagnosticProgress) {
215
+ return super.createBackgroundAnalysisProgram(serviceId, serviceProvider, configOptions, importResolver, backgroundAnalysis, maxAnalysisTime);
216
+ }
217
+ return new NativeWorkspaceDiagnosticAnalysisProgram(this._sendNativeAnalysisProgress.bind(this), serviceId, serviceProvider, configOptions, importResolver, backgroundAnalysis, maxAnalysisTime);
218
+ }
211
219
  createImportResolver(serviceProvider, options, host) {
212
220
  const importResolver = new importResolver_1.ImportResolver(serviceProvider, options, host);
213
221
  // In case there was cached information in the file system related to
@@ -215,6 +223,26 @@ class TypeServer extends languageServerBase_1.LanguageServerBase {
215
223
  importResolver.invalidateCache();
216
224
  return importResolver;
217
225
  }
226
+ onWorkspaceDiagnostics(params, token, workDoneProgress, resultReporter) {
227
+ if (!this._nativeWorkspaceDiagnosticProgress) {
228
+ return super.onWorkspaceDiagnostics(params, token, workDoneProgress, resultReporter);
229
+ }
230
+ return this._onNativeWorkspaceDiagnostics(params, token, workDoneProgress, resultReporter);
231
+ }
232
+ sendProgressMessage(fileCount, cellCount) {
233
+ if (!this._nativeWorkspaceDiagnosticProgress || !this.workspaceDiagnosticsReporter) {
234
+ super.sendProgressMessage(fileCount, cellCount);
235
+ return;
236
+ }
237
+ // TSP query counters are not analysis counts and must not overwrite workspace progress.
238
+ if (cellCount === undefined) {
239
+ return;
240
+ }
241
+ this._sendNativeAnalysisProgress();
242
+ }
243
+ getWorkspaceDiagnosticVersion(version) {
244
+ return this._nativeWorkspaceDiagnosticProgress ? version ?? null : super.getWorkspaceDiagnosticVersion(version);
245
+ }
218
246
  createProgressReporter() {
219
247
  // The old progress notifications are kept for backwards compatibility with
220
248
  // clients that do not support work done progress.
@@ -295,15 +323,29 @@ class TypeServer extends languageServerBase_1.LanguageServerBase {
295
323
  // constructor returns; `initialize()` runs before any notifications arrive.
296
324
  this.connection.onNotification('notebookDocument/didOpen', (params) => {
297
325
  this.notebookManager?.onDidOpenNotebookDocument(params);
326
+ if (this._nativeWorkspaceDiagnosticProgress) {
327
+ return this._sendNativeNotebookAnalysisProgress(params.notebookDocument.uri);
328
+ }
329
+ return undefined;
298
330
  });
299
331
  this.connection.onNotification('notebookDocument/didChange', (params) => {
300
332
  this.notebookManager?.onDidChangeNotebookDocument(params);
333
+ if (this._nativeWorkspaceDiagnosticProgress) {
334
+ return this._sendNativeNotebookAnalysisProgress(params.notebookDocument.uri);
335
+ }
336
+ return undefined;
301
337
  });
302
338
  this.connection.onNotification('notebookDocument/didClose', (params) => {
303
339
  this.notebookManager?.onDidCloseNotebookDocument(params);
304
340
  });
305
341
  }
306
342
  async initialize(params, supportedCommands, supportedCodeActions) {
343
+ const options = params.initializationOptions;
344
+ this._nativeWorkspaceDiagnosticProgress =
345
+ typeof options === 'object' &&
346
+ options !== null &&
347
+ 'nativeWorkspaceDiagnosticProgress' in options &&
348
+ options.nativeWorkspaceDiagnosticProgress === true;
307
349
  // Create the notebook manager here (not in setupConnection) because SWC's TC39
308
350
  // class-field semantics reinitialize `notebookManager` to undefined after the base
309
351
  // class constructor returns. This method runs when the Initialize request is processed,
@@ -313,6 +355,12 @@ class TypeServer extends languageServerBase_1.LanguageServerBase {
313
355
  this.notebookManager = this.createNotebookManager(this._uriMapper);
314
356
  }
315
357
  const result = await super.initialize(params, supportedCommands, supportedCodeActions);
358
+ if (this._nativeWorkspaceDiagnosticProgress) {
359
+ result.capabilities.experimental = {
360
+ ...result.capabilities.experimental,
361
+ workspaceDiagnosticAnalysisCounts: true,
362
+ };
363
+ }
316
364
  // Advertise notebook support so the client sends notebookDocument/* notifications.
317
365
  if (this.notebookManager) {
318
366
  result.capabilities.notebookDocumentSync = notebookCellChain_1.AnyNotebookDocumentSelector;
@@ -447,6 +495,42 @@ class TypeServer extends languageServerBase_1.LanguageServerBase {
447
495
  }
448
496
  return undefined;
449
497
  }
498
+ async _onNativeWorkspaceDiagnostics(params, token, workDoneProgress, resultReporter) {
499
+ await this.getWorkspaces();
500
+ if (token.isCancellationRequested) {
501
+ return { items: [] };
502
+ }
503
+ const pending = super.onWorkspaceDiagnostics(params, token, workDoneProgress, resultReporter);
504
+ this._sendNativeAnalysisProgress();
505
+ return pending;
506
+ }
507
+ _sendNativeAnalysisProgress() {
508
+ if (!this.workspaceDiagnosticsReporter || this.isDisposed) {
509
+ return;
510
+ }
511
+ let files = 0;
512
+ let cells = 0;
513
+ for (const workspace of this.workspaceFactory.getNonDefaultWorkspaces()) {
514
+ const counts = workspace.service.backgroundAnalysisProgram.program.getFilesToAnalyzeCount();
515
+ files += counts.files;
516
+ cells += counts.cells;
517
+ }
518
+ const reporter = this.getAnalysisProgressReporter();
519
+ if (files + cells === 0) {
520
+ reporter.end();
521
+ return;
522
+ }
523
+ if (!reporter.isDisplayingProgress()) {
524
+ reporter.begin();
525
+ }
526
+ reporter.report(`${files} ${files === 1 ? 'file' : 'files'} and ` + `${cells} ${cells === 1 ? 'cell' : 'cells'} to analyze`);
527
+ }
528
+ async _sendNativeNotebookAnalysisProgress(notebook) {
529
+ // Notebook synchronization creates the program's cells on its own sequenced queue.
530
+ const prefix = notebookUriMapper_1.NotebookUriMapper.getNotebookPrefixUri(uri_1.Uri.parse(notebook, this.caseSensitiveDetector));
531
+ await this.notebookManager?.getNotebookDataForCell(prefix);
532
+ this._sendNativeAnalysisProgress();
533
+ }
450
534
  _getWorkspaceForUri(uri) {
451
535
  // Best-effort synchronous workspace lookup used by the type cache. Prefer a
452
536
  // workspace that already tracks the file, otherwise fall back to the first
@@ -627,6 +711,19 @@ class TypeServer extends languageServerBase_1.LanguageServerBase {
627
711
  }
628
712
  }
629
713
  exports.TypeServer = TypeServer;
714
+ class NativeWorkspaceDiagnosticAnalysisProgram extends backgroundAnalysisProgram_1.BackgroundAnalysisProgram {
715
+ constructor(_reportProgress, ...args) {
716
+ super(...args);
717
+ this._reportProgress = _reportProgress;
718
+ }
719
+ startAnalysis(token) {
720
+ // Enumeration creates pending files after subscription, before analysis consumes their counts.
721
+ if (!token.isCancellationRequested) {
722
+ this._reportProgress();
723
+ }
724
+ return super.startAnalysis(token);
725
+ }
726
+ }
630
727
  function isProtocolDeclaration(arg) {
631
728
  return arg.kind !== undefined;
632
729
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../../src/typeServer/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../../../src/typeServer/server.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,7 @@ exports.generateStubFromFunctionType = generateStubFromFunctionType;
46
46
  exports.generateStubFromClassType = generateStubFromClassType;
47
47
  const typePrinter_1 = require("../analyzer/typePrinter");
48
48
  const PyrightTypes = __importStar(require("../analyzer/types"));
49
+ const typeUtils_1 = require("../analyzer/typeUtils");
49
50
  const pythonVersion_1 = require("../common/pythonVersion");
50
51
  const tokenizer_1 = require("../parser/tokenizer");
51
52
  function getClassStubName(type, context) {
@@ -139,6 +140,22 @@ function generateStubFromFunctionType(evaluator, type, options) {
139
140
  classStubNames: new Map(),
140
141
  usedClassStubNames: new Set(),
141
142
  };
143
+ // A direct partial.__call__ response is a standalone function, not the
144
+ // nominal partial stub. Preserve its Unknown annotations with the same
145
+ // ordinary unannotated binding used by the nominal producer.
146
+ let unknownFactoryName;
147
+ const boundType = type.priv.boundToType ?? type.priv.strippedFirstParamType;
148
+ if (boundType && PyrightTypes.isClassInstance(boundType) && boundType.priv.partialCallType) {
149
+ const typeNames = (0, typePrinter_1.printType)(type, 4096 /* PrintTypeFlags.UseFullyQualifiedNames */, (call) => PyrightTypes.FunctionType.getEffectiveReturnType(call) ?? PyrightTypes.UnknownType.create());
150
+ const freshName = (base) => {
151
+ while (typeNames.includes(base)) {
152
+ base += '_';
153
+ }
154
+ return base;
155
+ };
156
+ context.unknownTypeName = freshName('__partial_unknown');
157
+ unknownFactoryName = freshName('__partial_unknown_factory');
158
+ }
142
159
  const lines = [];
143
160
  // Generate header comment
144
161
  lines.push('# This stub file was generated from Pyright type information');
@@ -183,6 +200,9 @@ function generateStubFromFunctionType(evaluator, type, options) {
183
200
  }
184
201
  // Generate the function stub with docstring and deprecated decorator
185
202
  const functionStub = generateFunctionStub(type, context, type.shared.docString, type.shared.deprecatedMessage);
203
+ if (context.usesUnknownType && unknownFactoryName) {
204
+ lines.unshift(`def ${unknownFactoryName}(): ...`, `${context.unknownTypeName} = ${unknownFactoryName}()`, '');
205
+ }
186
206
  lines.push(functionStub);
187
207
  // Generate imports (will be inserted at top after we know what's needed)
188
208
  const importLines = generateImportStatements(context);
@@ -307,11 +327,18 @@ function getReturnTypeStringFromFunction(type, context) {
307
327
  */
308
328
  function pyrightTypeToString(type, context) {
309
329
  const flags = 256 /* PrintTypeFlags.PythonSyntax */ | 4096 /* PrintTypeFlags.UseFullyQualifiedNames */;
330
+ // Unknown has no Python annotation spelling. For a partial value, use a
331
+ // generated stub's unannotated return instead of silently turning it into Any.
332
+ const typePrinter = context && (context.unknownTypeName || context.typeVarNames) ? new StubTypePrinter(context) : undefined;
333
+ if (typePrinter) {
334
+ type = typePrinter.apply(type, 0);
335
+ }
310
336
  // Simple callback for getting return types - just use declared or inferred return type
311
337
  const returnTypeCallback = (funcType) => {
312
- return (funcType.shared.declaredReturnType ??
338
+ const returnType = funcType.shared.declaredReturnType ??
313
339
  funcType.shared.inferredReturnType?.type ??
314
- PyrightTypes.UnknownType.create());
340
+ PyrightTypes.UnknownType.create();
341
+ return typePrinter ? typePrinter.apply(returnType, 0) : returnType;
315
342
  };
316
343
  const typeString = (0, typePrinter_1.printType)(type, flags, returnTypeCallback);
317
344
  // Remove 'builtins.' prefix from builtin types
@@ -322,6 +349,28 @@ function pyrightTypeToString(type, context) {
322
349
  }
323
350
  return cleanedTypeString;
324
351
  }
352
+ // This transforms only the printer's input, never a program's semantic types.
353
+ // The generated name is bound to an ordinary Unknown-valued stub expression.
354
+ class StubTypePrinter extends typeUtils_1.TypeVarTransformer {
355
+ constructor(_context) {
356
+ super();
357
+ this._context = _context;
358
+ }
359
+ canSkipTransform() {
360
+ return false;
361
+ }
362
+ apply(type, recursionCount) {
363
+ if (PyrightTypes.isUnknown(type) && this._context.unknownTypeName) {
364
+ this._context.usesUnknownType = true;
365
+ return PyrightTypes.TypeVarType.createInstance(this._context.unknownTypeName);
366
+ }
367
+ return super.apply(type, recursionCount);
368
+ }
369
+ transformTypeVar(typeVar) {
370
+ const name = this._context.typeVarNames?.get(PyrightTypes.TypeVarType.getNameWithScope(typeVar));
371
+ return name && name !== typeVar.shared.name ? PyrightTypes.TypeVarType.cloneForNewName(typeVar, name) : typeVar;
372
+ }
373
+ }
325
374
  /**
326
375
  * Extracts module-qualified names from a type string and tracks them as imports.
327
376
  * For example, "test.Box[int]" would extract module "test".
@@ -452,6 +501,10 @@ function generateImportStatements(context) {
452
501
  * @returns Stub generation result with content and metadata
453
502
  */
454
503
  function generateStubFromClassType(evaluator, type, options, targetMethodName) {
504
+ const partialCall = type.priv.partialCallType;
505
+ if (partialCall && (PyrightTypes.isFunction(partialCall) || PyrightTypes.isOverloaded(partialCall))) {
506
+ return generatePartialStub(type, partialCall, options);
507
+ }
455
508
  const context = {
456
509
  imports: { imports: new Map() },
457
510
  pythonVersion: options.pythonVersion,
@@ -468,6 +521,85 @@ function generateStubFromClassType(evaluator, type, options, targetMethodName) {
468
521
  if (PyrightTypes.ClassType.isNewTypeClass(type)) {
469
522
  return generateNewTypeStub(type, context, options);
470
523
  }
524
+ function generatePartialStub(type, partialCall, options) {
525
+ const calls = PyrightTypes.isOverloaded(partialCall)
526
+ ? PyrightTypes.OverloadedType.getOverloads(partialCall)
527
+ : [partialCall];
528
+ const typeNames = [type, ...calls]
529
+ .map((value) => (0, typePrinter_1.printType)(value, 4096 /* PrintTypeFlags.UseFullyQualifiedNames */, (call) => PyrightTypes.FunctionType.getEffectiveReturnType(call) ?? PyrightTypes.UnknownType.create()))
530
+ .join('\n');
531
+ const freshName = (base) => {
532
+ while (typeNames.includes(base)) {
533
+ base += '_';
534
+ }
535
+ return base;
536
+ };
537
+ const functionName = freshName('__partial_callable');
538
+ const valueName = freshName('__partial_value');
539
+ const unknownFactoryName = freshName('__partial_unknown_factory');
540
+ const context = {
541
+ imports: { imports: new Map() },
542
+ pythonVersion: options.pythonVersion,
543
+ moduleImports: new Map(),
544
+ classStubNames: new Map(),
545
+ usedClassStubNames: new Set(),
546
+ unknownTypeName: freshName('__partial_unknown'),
547
+ typeVarNames: new Map(),
548
+ };
549
+ const typeVars = new Map();
550
+ const usedTypeVarNames = new Set();
551
+ const functions = calls.map((call) => {
552
+ const clone = PyrightTypes.FunctionType.clone(call);
553
+ clone.shared.name = functionName;
554
+ // partialCallType is an unbound __call__; the generated function is
555
+ // the remaining callable itself, without the nominal instance's self.
556
+ clone.shared.parameters = call.shared.parameters.slice(1);
557
+ for (const typeVar of (0, typeUtils_1.getTypeVarArgsRecursive)(clone)) {
558
+ const identity = PyrightTypes.TypeVarType.getNameWithScope(typeVar);
559
+ if (!typeVars.has(identity)) {
560
+ // Distinct overload scopes can reuse a spelling with different
561
+ // bounds or constraints. Give each identity its own stub name.
562
+ let name = typeVar.shared.name;
563
+ while (usedTypeVarNames.has(name)) {
564
+ name = freshName(name + '_');
565
+ }
566
+ typeVars.set(identity, typeVar);
567
+ context.typeVarNames.set(identity, name);
568
+ usedTypeVarNames.add(name);
569
+ }
570
+ }
571
+ return clone;
572
+ });
573
+ const lines = generateTypeVarDeclarations([...typeVars.values()], context);
574
+ if (functions.length > 1) {
575
+ addImport(context, 'typing', 'overload');
576
+ }
577
+ for (const call of functions) {
578
+ if (functions.length > 1) {
579
+ lines.push('@overload');
580
+ }
581
+ lines.push(generateFunctionStub(call, context));
582
+ }
583
+ // Generic return variables must be inferred from that same generated
584
+ // callable scope, rather than rebound in a separate module occurrence.
585
+ const hasGenericReturn = (0, typeUtils_1.getTypeVarArgsRecursive)(type).length > 0;
586
+ const nominal = hasGenericReturn
587
+ ? type.shared.fullName
588
+ : pyrightTypeToString(PyrightTypes.ClassType.cloneAsInstance(type), context);
589
+ if (hasGenericReturn) {
590
+ extractModuleImportsFromTypeString(nominal, type, context);
591
+ }
592
+ const assignment = `${valueName} = ${nominal}(${functionName})`;
593
+ lines.push(assignment);
594
+ if (context.usesUnknownType) {
595
+ // A .pyi function without a return annotation returns Unknown. Binding
596
+ // that value provides legal Python names for nested Unknown annotations
597
+ // without an undefined symbol, an Any substitution or decoder markers.
598
+ lines.unshift(`def ${unknownFactoryName}(): ...`, `${context.unknownTypeName} = ${unknownFactoryName}()`);
599
+ }
600
+ const stubContent = [...generateImportStatements(context), '', ...lines].join('\n') + '\n';
601
+ return { stubContent, primaryDefinitionOffset: stubContent.lastIndexOf(assignment) };
602
+ }
471
603
  // Generate the class stub (will include marker for main class)
472
604
  const classStub = generateClassStub(evaluator, type, context, true);
473
605
  lines.push(classStub);
@@ -884,7 +1016,8 @@ function generateTypeVarDeclarations(typeParams, context) {
884
1016
  const lines = [];
885
1017
  for (const typeParam of typeParams) {
886
1018
  if (PyrightTypes.isTypeVar(typeParam)) {
887
- const name = typeParam.shared.name;
1019
+ const name = context.typeVarNames?.get(PyrightTypes.TypeVarType.getNameWithScope(typeParam)) ??
1020
+ typeParam.shared.name;
888
1021
  // Check if it's a ParamSpec
889
1022
  if (PyrightTypes.isParamSpec(typeParam)) {
890
1023
  addImport(context, getTypingModule(context.pythonVersion, 'ParamSpec'), 'ParamSpec');