jaclang 0.6.1__py3-none-any.whl → 0.7.0__py3-none-any.whl

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.

Potentially problematic release.


This version of jaclang might be problematic. Click here for more details.

Files changed (1337) hide show
  1. jaclang/__init__.py +1 -9
  2. jaclang/cli/.gitignore +3 -0
  3. jaclang/cli/cli.md +190 -0
  4. jaclang/cli/cli.py +25 -4
  5. jaclang/compiler/.gitignore +1 -0
  6. jaclang/compiler/__init__.py +1 -0
  7. jaclang/compiler/absyntree.py +9 -7
  8. jaclang/compiler/compile.py +4 -4
  9. jaclang/compiler/jac.lark +1 -0
  10. jaclang/compiler/parser.py +28 -6
  11. jaclang/compiler/passes/main/def_impl_match_pass.py +4 -0
  12. jaclang/compiler/passes/main/fuse_typeinfo_pass.py +10 -1
  13. jaclang/compiler/passes/main/import_pass.py +47 -33
  14. jaclang/compiler/passes/main/pyast_load_pass.py +33 -6
  15. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl/getme.impl.jac +3 -0
  16. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl.jac +3 -0
  17. jaclang/compiler/passes/main/tests/fixtures/autoimpl.jac +9 -0
  18. jaclang/compiler/passes/main/tests/fixtures/autoimpl.something.else.impl.jac +3 -0
  19. jaclang/compiler/passes/main/tests/fixtures/base.jac +13 -0
  20. jaclang/compiler/passes/main/tests/fixtures/base2.jac +14 -0
  21. jaclang/compiler/passes/main/tests/fixtures/blip.jac +2 -0
  22. jaclang/compiler/passes/main/tests/fixtures/codegentext.jac +31 -0
  23. jaclang/compiler/passes/main/tests/fixtures/decls.jac +10 -0
  24. jaclang/compiler/passes/main/tests/fixtures/defs_and_uses.jac +44 -0
  25. jaclang/compiler/passes/main/tests/fixtures/fstrings.jac +4 -0
  26. jaclang/compiler/passes/main/tests/fixtures/func.jac +18 -0
  27. jaclang/compiler/passes/main/tests/fixtures/func2.jac +8 -0
  28. jaclang/compiler/passes/main/tests/fixtures/game1.jac +15 -0
  29. jaclang/compiler/passes/main/tests/fixtures/impl/defs1.jac +8 -0
  30. jaclang/compiler/passes/main/tests/fixtures/impl/defs2.jac +8 -0
  31. jaclang/compiler/passes/main/tests/fixtures/impl/imps.jac +11 -0
  32. jaclang/compiler/passes/main/tests/fixtures/multi_def_err.jac +7 -0
  33. jaclang/compiler/passes/main/tests/fixtures/registry.jac +36 -0
  34. jaclang/compiler/passes/main/tests/fixtures/type_info.jac +31 -0
  35. jaclang/compiler/passes/main/tests/test_type_check_pass.py +15 -0
  36. jaclang/compiler/passes/tool/jac_formatter_pass.py +2 -2
  37. jaclang/compiler/passes/tool/tests/fixtures/corelib.jac +480 -0
  38. jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac +480 -0
  39. jaclang/compiler/passes/tool/tests/fixtures/genai/essay_review.jac +36 -0
  40. jaclang/compiler/passes/tool/tests/fixtures/genai/expert_answer.jac +17 -0
  41. jaclang/compiler/passes/tool/tests/fixtures/genai/joke_gen.jac +32 -0
  42. jaclang/compiler/passes/tool/tests/fixtures/genai/odd_word_out.jac +27 -0
  43. jaclang/compiler/passes/tool/tests/fixtures/genai/personality_finder.jac +35 -0
  44. jaclang/compiler/passes/tool/tests/fixtures/genai/text_to_type.jac +25 -0
  45. jaclang/compiler/passes/tool/tests/fixtures/genai/translator.jac +13 -0
  46. jaclang/compiler/passes/tool/tests/fixtures/genai/wikipedia.jac +63 -0
  47. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.dot +39 -0
  48. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.jac +7 -0
  49. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.txt +20 -0
  50. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/ability_impl_long_comprehension.jac +15 -0
  51. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/call_with_many_parameters.jac +24 -0
  52. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/entry_main.jac +4 -0
  53. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/long_line_nested_dict_access.jac +10 -0
  54. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/multiline_fstrings.jac +16 -0
  55. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_dict.jac +15 -0
  56. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_loop_and_incrementer.jac +13 -0
  57. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/simple_walker.jac +25 -0
  58. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/try_block_and_walker_spawn_and_fstrings.jac +26 -0
  59. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/tuple_iteration_and_not_negation.jac +20 -0
  60. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/type_annotation.jac +3 -0
  61. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_decl_only.jac +12 -0
  62. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_default_values_types_and_docstrings.jac +18 -0
  63. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_inline_ability_impl.jac +8 -0
  64. jaclang/compiler/passes/tool/tests/fixtures/simple_walk.jac +47 -0
  65. jaclang/compiler/passes/tool/tests/fixtures/simple_walk_fmt.jac +47 -0
  66. jaclang/compiler/passes/transform.py +13 -4
  67. jaclang/compiler/passes/utils/mypy_ast_build.py +8 -0
  68. jaclang/compiler/tests/fixtures/fam.jac +67 -0
  69. jaclang/compiler/tests/fixtures/hello_world.jac +5 -0
  70. jaclang/compiler/tests/fixtures/kwesc.jac +5 -0
  71. jaclang/compiler/tests/fixtures/mod_doc_test.jac +3 -0
  72. jaclang/compiler/tests/fixtures/staticcheck.jac +20 -0
  73. jaclang/compiler/tests/fixtures/stuff.jac +6 -0
  74. jaclang/langserve/__init__.py +1 -0
  75. jaclang/langserve/engine.py +287 -0
  76. jaclang/langserve/server.py +139 -0
  77. jaclang/langserve/tests/__init__.py +1 -0
  78. jaclang/langserve/tests/defaults.py +226 -0
  79. jaclang/langserve/tests/fixtures/hello.jac +1 -0
  80. jaclang/langserve/tests/pylsp_jsonrpc/__init__.py +2 -0
  81. jaclang/langserve/tests/pylsp_jsonrpc/dispatchers.py +37 -0
  82. jaclang/langserve/tests/pylsp_jsonrpc/endpoint.py +294 -0
  83. jaclang/langserve/tests/pylsp_jsonrpc/exceptions.py +114 -0
  84. jaclang/langserve/tests/pylsp_jsonrpc/streams.py +113 -0
  85. jaclang/langserve/tests/session.py +255 -0
  86. jaclang/langserve/tests/test_server.py +36 -0
  87. jaclang/langserve/utils.py +55 -0
  88. jaclang/plugin/default.py +1 -1
  89. jaclang/plugin/tests/fixtures/impl_match.jac +9 -0
  90. jaclang/plugin/tests/fixtures/impl_match_impl.jac +3 -0
  91. jaclang/plugin/tests/fixtures/simple_node_connection.jac +55 -0
  92. jaclang/plugin/tests/fixtures/simple_persistent.jac +41 -0
  93. jaclang/settings.py +5 -0
  94. jaclang/tests/fixtures/abc.jac +73 -0
  95. jaclang/tests/fixtures/access_checker.jac +19 -0
  96. jaclang/tests/fixtures/access_modifier.jac +49 -0
  97. jaclang/tests/fixtures/aott_raise.jac +25 -0
  98. jaclang/tests/fixtures/arithmetic_bug.jac +13 -0
  99. jaclang/tests/fixtures/assign_compr.jac +15 -0
  100. jaclang/tests/fixtures/assign_compr_dup.jac +15 -0
  101. jaclang/tests/fixtures/builtin_dotgen.jac +41 -0
  102. jaclang/tests/fixtures/chandra_bugs.jac +11 -0
  103. jaclang/tests/fixtures/chandra_bugs2.jac +26 -0
  104. jaclang/tests/fixtures/circle_pysolo.py +91 -0
  105. jaclang/tests/fixtures/deep/deeper/deep_outer_import.jac +9 -0
  106. jaclang/tests/fixtures/deep/deeper/deep_outer_import2.jac +9 -0
  107. jaclang/tests/fixtures/deep/deeper/snd_lev.jac +6 -0
  108. jaclang/tests/fixtures/deep/mycode.jac +4 -0
  109. jaclang/tests/fixtures/deep/one_lev.jac +6 -0
  110. jaclang/tests/fixtures/deep/one_lev_dup.jac +6 -0
  111. jaclang/tests/fixtures/deep/one_lev_dup_py.py +6 -0
  112. jaclang/tests/fixtures/deep_convert.jac +5 -0
  113. jaclang/tests/fixtures/deep_convo.py +6 -0
  114. jaclang/tests/fixtures/deep_import.jac +7 -0
  115. jaclang/tests/fixtures/deferred_field.jac +13 -0
  116. jaclang/tests/fixtures/disconn.jac +29 -0
  117. jaclang/tests/fixtures/edge_node_walk.jac +46 -0
  118. jaclang/tests/fixtures/edge_ops.jac +45 -0
  119. jaclang/tests/fixtures/edges_walk.jac +38 -0
  120. jaclang/tests/fixtures/enum_inside_archtype.jac +20 -0
  121. jaclang/tests/fixtures/err.jac +5 -0
  122. jaclang/tests/fixtures/err2.jac +5 -0
  123. jaclang/tests/fixtures/game1.jac +15 -0
  124. jaclang/tests/fixtures/gendot_bubble_sort.jac +77 -0
  125. jaclang/tests/fixtures/guess_game.jac +47 -0
  126. jaclang/tests/fixtures/has_goodness.jac +15 -0
  127. jaclang/tests/fixtures/hashcheck.jac +12 -0
  128. jaclang/tests/fixtures/hashcheck_dup.jac +12 -0
  129. jaclang/tests/fixtures/hello.jac +5 -0
  130. jaclang/tests/fixtures/hello_nc.jac +5 -0
  131. jaclang/tests/fixtures/ignore.jac +43 -0
  132. jaclang/tests/fixtures/ignore_dup.jac +43 -0
  133. jaclang/tests/fixtures/impl_grab.impl.jac +4 -0
  134. jaclang/tests/fixtures/impl_grab.jac +2 -0
  135. jaclang/tests/fixtures/inherit_check.jac +33 -0
  136. jaclang/tests/fixtures/jacsamp.jac +6 -0
  137. jaclang/tests/fixtures/jp_importer.jac +17 -0
  138. jaclang/tests/fixtures/lambda.jac +6 -0
  139. jaclang/tests/fixtures/maxfail_run_test.jac +5 -0
  140. jaclang/tests/fixtures/mtest.impl.jac +6 -0
  141. jaclang/tests/fixtures/mtest.jac +6 -0
  142. jaclang/tests/fixtures/needs_import.jac +18 -0
  143. jaclang/tests/fixtures/needs_import_1.jac +6 -0
  144. jaclang/tests/fixtures/needs_import_2.jac +6 -0
  145. jaclang/tests/fixtures/needs_import_3.jac +6 -0
  146. jaclang/tests/fixtures/needs_import_dup.jac +18 -0
  147. jaclang/tests/fixtures/package_import.jac +6 -0
  148. jaclang/tests/fixtures/pyfunc.py +11 -0
  149. jaclang/tests/fixtures/pyfunc_1.py +311 -0
  150. jaclang/tests/fixtures/pyfunc_2.py +279 -0
  151. jaclang/tests/fixtures/pyfunc_3.py +310 -0
  152. jaclang/tests/fixtures/random_check.jac +62 -0
  153. jaclang/tests/fixtures/raw_byte_string.jac +18 -0
  154. jaclang/tests/fixtures/registry.jac +37 -0
  155. jaclang/tests/fixtures/run_test.jac +5 -0
  156. jaclang/tests/fixtures/semstr.jac +33 -0
  157. jaclang/tests/fixtures/simple_archs.jac +26 -0
  158. jaclang/tests/fixtures/slice_vals.jac +7 -0
  159. jaclang/tests/fixtures/sub_abil_sep.jac +15 -0
  160. jaclang/tests/fixtures/sub_abil_sep_multilev.jac +17 -0
  161. jaclang/tests/fixtures/try_finally.jac +34 -0
  162. jaclang/tests/fixtures/tupleunpack.jac +6 -0
  163. jaclang/tests/fixtures/tuplytuples.jac +8 -0
  164. jaclang/tests/fixtures/type_info.jac +15 -0
  165. jaclang/tests/fixtures/with_context.jac +30 -0
  166. jaclang/tests/fixtures/with_llm_function.jac +33 -0
  167. jaclang/tests/fixtures/with_llm_lower.jac +45 -0
  168. jaclang/tests/fixtures/with_llm_method.jac +51 -0
  169. jaclang/tests/fixtures/with_llm_type.jac +52 -0
  170. jaclang/tests/test_cli.py +239 -0
  171. jaclang/tests/test_language.py +831 -0
  172. jaclang/tests/test_man_code.py +148 -0
  173. jaclang/tests/test_reference.py +95 -0
  174. jaclang/tests/test_settings.py +46 -0
  175. jaclang/utils/helpers.py +11 -0
  176. jaclang/utils/tests/test_lang_tools.py +17 -0
  177. jaclang/utils/treeprinter.py +12 -4
  178. jaclang/vendor/__init__.py +12 -1
  179. jaclang/vendor/attr/__init__.py +134 -0
  180. jaclang/vendor/attr/__init__.pyi +555 -0
  181. jaclang/vendor/attr/_cmp.py +150 -0
  182. jaclang/vendor/attr/_cmp.pyi +13 -0
  183. jaclang/vendor/attr/_compat.py +87 -0
  184. jaclang/vendor/attr/_config.py +31 -0
  185. jaclang/vendor/attr/_funcs.py +483 -0
  186. jaclang/vendor/attr/_make.py +3119 -0
  187. jaclang/vendor/attr/_next_gen.py +229 -0
  188. jaclang/vendor/attr/_typing_compat.pyi +15 -0
  189. jaclang/vendor/attr/_version_info.py +86 -0
  190. jaclang/vendor/attr/_version_info.pyi +9 -0
  191. jaclang/vendor/attr/converters.py +144 -0
  192. jaclang/vendor/attr/converters.pyi +13 -0
  193. jaclang/vendor/attr/exceptions.py +95 -0
  194. jaclang/vendor/attr/exceptions.pyi +17 -0
  195. jaclang/vendor/attr/filters.py +66 -0
  196. jaclang/vendor/attr/filters.pyi +6 -0
  197. jaclang/vendor/attr/setters.py +73 -0
  198. jaclang/vendor/attr/setters.pyi +19 -0
  199. jaclang/vendor/attr/validators.py +681 -0
  200. jaclang/vendor/attr/validators.pyi +88 -0
  201. jaclang/vendor/attrs/__init__.py +65 -0
  202. jaclang/vendor/attrs/__init__.pyi +67 -0
  203. jaclang/vendor/attrs/converters.py +3 -0
  204. jaclang/vendor/attrs/exceptions.py +3 -0
  205. jaclang/vendor/attrs/filters.py +3 -0
  206. jaclang/vendor/attrs/py.typed +0 -0
  207. jaclang/vendor/attrs/setters.py +3 -0
  208. jaclang/vendor/attrs/validators.py +3 -0
  209. jaclang/vendor/attrs-23.2.0.dist-info/METADATA +202 -0
  210. jaclang/vendor/attrs-23.2.0.dist-info/RECORD +35 -0
  211. jaclang/vendor/attrs-23.2.0.dist-info/WHEEL +4 -0
  212. jaclang/vendor/attrs-23.2.0.dist-info/licenses/LICENSE +21 -0
  213. jaclang/vendor/cattr/__init__.py +25 -0
  214. jaclang/vendor/cattr/converters.py +8 -0
  215. jaclang/vendor/cattr/disambiguators.py +3 -0
  216. jaclang/vendor/cattr/dispatch.py +3 -0
  217. jaclang/vendor/cattr/errors.py +15 -0
  218. jaclang/vendor/cattr/gen.py +21 -0
  219. jaclang/vendor/cattr/preconf/__init__.py +3 -0
  220. jaclang/vendor/cattr/preconf/bson.py +4 -0
  221. jaclang/vendor/cattr/preconf/json.py +4 -0
  222. jaclang/vendor/cattr/preconf/msgpack.py +4 -0
  223. jaclang/vendor/cattr/preconf/orjson.py +4 -0
  224. jaclang/vendor/cattr/preconf/pyyaml.py +4 -0
  225. jaclang/vendor/cattr/preconf/tomlkit.py +4 -0
  226. jaclang/vendor/cattr/preconf/ujson.py +4 -0
  227. jaclang/vendor/cattr/py.typed +0 -0
  228. jaclang/vendor/cattrs/__init__.py +55 -0
  229. jaclang/vendor/cattrs/_compat.py +465 -0
  230. jaclang/vendor/cattrs/_generics.py +22 -0
  231. jaclang/vendor/cattrs/converters.py +1101 -0
  232. jaclang/vendor/cattrs/disambiguators.py +132 -0
  233. jaclang/vendor/cattrs/dispatch.py +164 -0
  234. jaclang/vendor/cattrs/errors.py +129 -0
  235. jaclang/vendor/cattrs/fns.py +17 -0
  236. jaclang/vendor/cattrs/gen/__init__.py +890 -0
  237. jaclang/vendor/cattrs/gen/_consts.py +19 -0
  238. jaclang/vendor/cattrs/gen/_generics.py +43 -0
  239. jaclang/vendor/cattrs/gen/_lc.py +28 -0
  240. jaclang/vendor/cattrs/gen/_shared.py +51 -0
  241. jaclang/vendor/cattrs/gen/typeddicts.py +624 -0
  242. jaclang/vendor/cattrs/preconf/__init__.py +7 -0
  243. jaclang/vendor/cattrs/preconf/bson.py +107 -0
  244. jaclang/vendor/cattrs/preconf/cbor2.py +47 -0
  245. jaclang/vendor/cattrs/preconf/json.py +52 -0
  246. jaclang/vendor/cattrs/preconf/msgpack.py +51 -0
  247. jaclang/vendor/cattrs/preconf/orjson.py +82 -0
  248. jaclang/vendor/cattrs/preconf/pyyaml.py +60 -0
  249. jaclang/vendor/cattrs/preconf/tomlkit.py +85 -0
  250. jaclang/vendor/cattrs/preconf/ujson.py +52 -0
  251. jaclang/vendor/cattrs/py.typed +0 -0
  252. jaclang/vendor/cattrs/strategies/__init__.py +11 -0
  253. jaclang/vendor/cattrs/strategies/_class_methods.py +64 -0
  254. jaclang/vendor/cattrs/strategies/_subclasses.py +224 -0
  255. jaclang/vendor/cattrs/strategies/_unions.py +235 -0
  256. jaclang/vendor/cattrs/v.py +111 -0
  257. jaclang/vendor/cattrs-23.2.3.dist-info/METADATA +221 -0
  258. jaclang/vendor/cattrs-23.2.3.dist-info/RECORD +48 -0
  259. jaclang/vendor/cattrs-23.2.3.dist-info/WHEEL +4 -0
  260. jaclang/vendor/cattrs-23.2.3.dist-info/licenses/LICENSE +11 -0
  261. jaclang/vendor/lark/__init__.py +38 -38
  262. jaclang/vendor/lark/__pyinstaller/__init__.py +6 -7
  263. jaclang/vendor/lark/__pyinstaller/hook-lark.py +14 -14
  264. jaclang/vendor/lark/ast_utils.py +59 -70
  265. jaclang/vendor/lark/common.py +89 -113
  266. jaclang/vendor/lark/exceptions.py +292 -352
  267. jaclang/vendor/lark/grammar.py +130 -158
  268. jaclang/vendor/lark/grammars/common.lark +59 -59
  269. jaclang/vendor/lark/grammars/lark.lark +62 -62
  270. jaclang/vendor/lark/grammars/python.lark +302 -302
  271. jaclang/vendor/lark/grammars/unicode.lark +7 -7
  272. jaclang/vendor/lark/indenter.py +112 -118
  273. jaclang/vendor/lark/lark.py +661 -800
  274. jaclang/vendor/lark/lexer.py +678 -829
  275. jaclang/vendor/lark/load_grammar.py +1428 -1673
  276. jaclang/vendor/lark/parse_tree_builder.py +391 -466
  277. jaclang/vendor/lark/parser_frontends.py +257 -305
  278. jaclang/vendor/lark/parsers/cyk.py +340 -391
  279. jaclang/vendor/lark/parsers/earley.py +308 -385
  280. jaclang/vendor/lark/parsers/earley_common.py +42 -59
  281. jaclang/vendor/lark/parsers/earley_forest.py +810 -923
  282. jaclang/vendor/lark/parsers/grammar_analysis.py +203 -239
  283. jaclang/vendor/lark/parsers/lalr_analysis.py +332 -378
  284. jaclang/vendor/lark/parsers/lalr_interactive_parser.py +157 -171
  285. jaclang/vendor/lark/parsers/lalr_parser.py +122 -145
  286. jaclang/vendor/lark/parsers/lalr_parser_state.py +110 -141
  287. jaclang/vendor/lark/parsers/xearley.py +165 -209
  288. jaclang/vendor/lark/reconstruct.py +107 -131
  289. jaclang/vendor/lark/tools/__init__.py +71 -93
  290. jaclang/vendor/lark/tools/nearley.py +202 -240
  291. jaclang/vendor/lark/tools/serialize.py +32 -35
  292. jaclang/vendor/lark/tools/standalone.py +196 -225
  293. jaclang/vendor/lark/tree.py +272 -302
  294. jaclang/vendor/lark/tree_matcher.py +186 -194
  295. jaclang/vendor/lark/tree_templates.py +18 -26
  296. jaclang/vendor/lark/utils.py +361 -393
  297. jaclang/vendor/lark/visitors.py +593 -645
  298. jaclang/vendor/lark-1.1.9.dist-info/LICENSE +18 -0
  299. jaclang/vendor/lark-1.1.9.dist-info/METADATA +47 -0
  300. jaclang/vendor/lark-1.1.9.dist-info/RECORD +46 -0
  301. jaclang/vendor/lark-1.1.9.dist-info/WHEEL +5 -0
  302. jaclang/vendor/lark-1.1.9.dist-info/entry_points.txt +2 -0
  303. jaclang/vendor/lark-1.1.9.dist-info/top_level.txt +1 -0
  304. jaclang/vendor/lsprotocol/__init__.py +2 -0
  305. jaclang/vendor/lsprotocol/_hooks.py +1237 -0
  306. jaclang/vendor/lsprotocol/converters.py +17 -0
  307. jaclang/vendor/lsprotocol/py.typed +0 -0
  308. jaclang/vendor/lsprotocol/types.py +12898 -0
  309. jaclang/vendor/lsprotocol/validators.py +47 -0
  310. jaclang/vendor/lsprotocol-2023.0.1.dist-info/LICENSE +21 -0
  311. jaclang/vendor/lsprotocol-2023.0.1.dist-info/METADATA +65 -0
  312. jaclang/vendor/lsprotocol-2023.0.1.dist-info/RECORD +10 -0
  313. jaclang/vendor/lsprotocol-2023.0.1.dist-info/WHEEL +4 -0
  314. jaclang/vendor/mypy/api.py +1 -3
  315. jaclang/vendor/mypy/applytype.py +24 -24
  316. jaclang/vendor/mypy/argmap.py +5 -9
  317. jaclang/vendor/mypy/binder.py +11 -42
  318. jaclang/vendor/mypy/build.py +78 -260
  319. jaclang/vendor/mypy/checker.py +394 -930
  320. jaclang/vendor/mypy/checkexpr.py +210 -640
  321. jaclang/vendor/mypy/checkmember.py +44 -94
  322. jaclang/vendor/mypy/checkpattern.py +32 -104
  323. jaclang/vendor/mypy/checkstrformat.py +38 -131
  324. jaclang/vendor/mypy/config_parser.py +8 -31
  325. jaclang/vendor/mypy/constant_fold.py +1 -3
  326. jaclang/vendor/mypy/constraints.py +94 -253
  327. jaclang/vendor/mypy/copytype.py +3 -13
  328. jaclang/vendor/mypy/defaults.py +2 -4
  329. jaclang/vendor/mypy/dmypy/client.py +30 -102
  330. jaclang/vendor/mypy/dmypy_server.py +31 -118
  331. jaclang/vendor/mypy/erasetype.py +6 -18
  332. jaclang/vendor/mypy/errorcodes.py +26 -64
  333. jaclang/vendor/mypy/errors.py +23 -117
  334. jaclang/vendor/mypy/evalexpr.py +1 -3
  335. jaclang/vendor/mypy/expandtype.py +37 -40
  336. jaclang/vendor/mypy/exprtotype.py +14 -27
  337. jaclang/vendor/mypy/fastparse.py +66 -215
  338. jaclang/vendor/mypy/find_sources.py +4 -14
  339. jaclang/vendor/mypy/fixup.py +5 -10
  340. jaclang/vendor/mypy/indirection.py +1 -3
  341. jaclang/vendor/mypy/infer.py +2 -6
  342. jaclang/vendor/mypy/inspections.py +3 -13
  343. jaclang/vendor/mypy/ipc.py +7 -28
  344. jaclang/vendor/mypy/join.py +20 -39
  345. jaclang/vendor/mypy/literals.py +2 -10
  346. jaclang/vendor/mypy/main.py +39 -138
  347. jaclang/vendor/mypy/maptype.py +2 -6
  348. jaclang/vendor/mypy/meet.py +23 -77
  349. jaclang/vendor/mypy/message_registry.py +33 -88
  350. jaclang/vendor/mypy/messages.py +146 -447
  351. jaclang/vendor/mypy/metastore.py +2 -6
  352. jaclang/vendor/mypy/modulefinder.py +29 -76
  353. jaclang/vendor/mypy/moduleinspect.py +5 -17
  354. jaclang/vendor/mypy/mro.py +1 -3
  355. jaclang/vendor/mypy/nodes.py +35 -119
  356. jaclang/vendor/mypy/operators.py +2 -11
  357. jaclang/vendor/mypy/options.py +3 -9
  358. jaclang/vendor/mypy/parse.py +1 -3
  359. jaclang/vendor/mypy/plugin.py +25 -75
  360. jaclang/vendor/mypy/plugins/attrs.py +53 -119
  361. jaclang/vendor/mypy/plugins/common.py +9 -29
  362. jaclang/vendor/mypy/plugins/ctypes.py +5 -15
  363. jaclang/vendor/mypy/plugins/dataclasses.py +42 -107
  364. jaclang/vendor/mypy/plugins/default.py +26 -45
  365. jaclang/vendor/mypy/plugins/enums.py +4 -17
  366. jaclang/vendor/mypy/plugins/functools.py +2 -11
  367. jaclang/vendor/mypy/plugins/proper_plugin.py +2 -6
  368. jaclang/vendor/mypy/plugins/singledispatch.py +7 -33
  369. jaclang/vendor/mypy/reachability.py +2 -8
  370. jaclang/vendor/mypy/refinfo.py +1 -3
  371. jaclang/vendor/mypy/report.py +23 -52
  372. jaclang/vendor/mypy/semanal.py +385 -693
  373. jaclang/vendor/mypy/semanal_classprop.py +9 -34
  374. jaclang/vendor/mypy/semanal_enum.py +7 -19
  375. jaclang/vendor/mypy/semanal_infer.py +1 -3
  376. jaclang/vendor/mypy/semanal_main.py +5 -25
  377. jaclang/vendor/mypy/semanal_namedtuple.py +17 -56
  378. jaclang/vendor/mypy/semanal_newtype.py +8 -27
  379. jaclang/vendor/mypy/semanal_pass1.py +2 -6
  380. jaclang/vendor/mypy/semanal_shared.py +9 -27
  381. jaclang/vendor/mypy/semanal_typeargs.py +12 -41
  382. jaclang/vendor/mypy/semanal_typeddict.py +18 -59
  383. jaclang/vendor/mypy/server/astdiff.py +9 -34
  384. jaclang/vendor/mypy/server/astmerge.py +2 -6
  385. jaclang/vendor/mypy/server/deps.py +22 -71
  386. jaclang/vendor/mypy/server/mergecheck.py +1 -3
  387. jaclang/vendor/mypy/server/objgraph.py +2 -8
  388. jaclang/vendor/mypy/server/update.py +18 -54
  389. jaclang/vendor/mypy/solve.py +4 -17
  390. jaclang/vendor/mypy/split_namespace.py +1 -3
  391. jaclang/vendor/mypy/stats.py +6 -24
  392. jaclang/vendor/mypy/strconv.py +8 -31
  393. jaclang/vendor/mypy/stubdoc.py +8 -38
  394. jaclang/vendor/mypy/stubgen.py +79 -144
  395. jaclang/vendor/mypy/stubgenc.py +22 -69
  396. jaclang/vendor/mypy/stubtest.py +62 -167
  397. jaclang/vendor/mypy/stubutil.py +45 -61
  398. jaclang/vendor/mypy/subtypes.py +57 -133
  399. jaclang/vendor/mypy/suggestions.py +19 -53
  400. jaclang/vendor/mypy/test/data.py +13 -40
  401. jaclang/vendor/mypy/test/helpers.py +18 -43
  402. jaclang/vendor/mypy/test/meta/_pytest.py +2 -13
  403. jaclang/vendor/mypy/test/meta/test_parse_data.py +5 -9
  404. jaclang/vendor/mypy/test/meta/test_update_data.py +1 -3
  405. jaclang/vendor/mypy/test/test_find_sources.py +14 -32
  406. jaclang/vendor/mypy/test/test_ref_info.py +3 -9
  407. jaclang/vendor/mypy/test/testargs.py +1 -4
  408. jaclang/vendor/mypy/test/testcheck.py +14 -47
  409. jaclang/vendor/mypy/test/testcmdline.py +3 -14
  410. jaclang/vendor/mypy/test/testconstraints.py +8 -26
  411. jaclang/vendor/mypy/test/testdaemon.py +2 -9
  412. jaclang/vendor/mypy/test/testdeps.py +4 -12
  413. jaclang/vendor/mypy/test/testdiff.py +2 -6
  414. jaclang/vendor/mypy/test/testerrorstream.py +1 -3
  415. jaclang/vendor/mypy/test/testfinegrained.py +18 -56
  416. jaclang/vendor/mypy/test/testgraph.py +3 -18
  417. jaclang/vendor/mypy/test/testinfer.py +13 -55
  418. jaclang/vendor/mypy/test/testipc.py +3 -9
  419. jaclang/vendor/mypy/test/testmerge.py +5 -17
  420. jaclang/vendor/mypy/test/testmodulefinder.py +8 -30
  421. jaclang/vendor/mypy/test/testmypyc.py +1 -3
  422. jaclang/vendor/mypy/test/testparse.py +1 -3
  423. jaclang/vendor/mypy/test/testpep561.py +4 -13
  424. jaclang/vendor/mypy/test/testpythoneval.py +2 -6
  425. jaclang/vendor/mypy/test/testreports.py +1 -2
  426. jaclang/vendor/mypy/test/testsemanal.py +3 -10
  427. jaclang/vendor/mypy/test/testsolve.py +5 -15
  428. jaclang/vendor/mypy/test/teststubgen.py +69 -210
  429. jaclang/vendor/mypy/test/teststubtest.py +123 -163
  430. jaclang/vendor/mypy/test/testsubtypes.py +14 -34
  431. jaclang/vendor/mypy/test/testtransform.py +2 -8
  432. jaclang/vendor/mypy/test/testtypegen.py +2 -8
  433. jaclang/vendor/mypy/test/testtypes.py +77 -253
  434. jaclang/vendor/mypy/test/testutil.py +1 -3
  435. jaclang/vendor/mypy/test/typefixture.py +11 -38
  436. jaclang/vendor/mypy/test/update_data.py +4 -15
  437. jaclang/vendor/mypy/test/visitors.py +1 -9
  438. jaclang/vendor/mypy/treetransform.py +8 -25
  439. jaclang/vendor/mypy/tvar_scope.py +23 -3
  440. jaclang/vendor/mypy/type_visitor.py +3 -10
  441. jaclang/vendor/mypy/typeanal.py +183 -309
  442. jaclang/vendor/mypy/typeops.py +27 -73
  443. jaclang/vendor/mypy/types.py +77 -185
  444. jaclang/vendor/mypy/types_utils.py +7 -20
  445. jaclang/vendor/mypy/typeshed/LICENSE +237 -0
  446. jaclang/vendor/mypy/typeshed/stdlib/VERSIONS +309 -0
  447. jaclang/vendor/mypy/typeshed/stdlib/__future__.pyi +36 -0
  448. jaclang/vendor/mypy/typeshed/stdlib/__main__.pyi +3 -0
  449. jaclang/vendor/mypy/typeshed/stdlib/_ast.pyi +591 -0
  450. jaclang/vendor/mypy/typeshed/stdlib/_bisect.pyi +84 -0
  451. jaclang/vendor/mypy/typeshed/stdlib/_bootlocale.pyi +1 -0
  452. jaclang/vendor/mypy/typeshed/stdlib/_codecs.pyi +133 -0
  453. jaclang/vendor/mypy/typeshed/stdlib/_collections_abc.pyi +94 -0
  454. jaclang/vendor/mypy/typeshed/stdlib/_compat_pickle.pyi +8 -0
  455. jaclang/vendor/mypy/typeshed/stdlib/_compression.pyi +25 -0
  456. jaclang/vendor/mypy/typeshed/stdlib/_csv.pyi +90 -0
  457. jaclang/vendor/mypy/typeshed/stdlib/_ctypes.pyi +207 -0
  458. jaclang/vendor/mypy/typeshed/stdlib/_curses.pyi +566 -0
  459. jaclang/vendor/mypy/typeshed/stdlib/_decimal.pyi +281 -0
  460. jaclang/vendor/mypy/typeshed/stdlib/_dummy_thread.pyi +33 -0
  461. jaclang/vendor/mypy/typeshed/stdlib/_dummy_threading.pyi +164 -0
  462. jaclang/vendor/mypy/typeshed/stdlib/_heapq.pyi +11 -0
  463. jaclang/vendor/mypy/typeshed/stdlib/_imp.pyi +28 -0
  464. jaclang/vendor/mypy/typeshed/stdlib/_json.pyi +49 -0
  465. jaclang/vendor/mypy/typeshed/stdlib/_locale.pyi +100 -0
  466. jaclang/vendor/mypy/typeshed/stdlib/_lsprof.pyi +35 -0
  467. jaclang/vendor/mypy/typeshed/stdlib/_markupbase.pyi +16 -0
  468. jaclang/vendor/mypy/typeshed/stdlib/_msi.pyi +92 -0
  469. jaclang/vendor/mypy/typeshed/stdlib/_operator.pyi +147 -0
  470. jaclang/vendor/mypy/typeshed/stdlib/_osx_support.pyi +34 -0
  471. jaclang/vendor/mypy/typeshed/stdlib/_posixsubprocess.pyi +33 -0
  472. jaclang/vendor/mypy/typeshed/stdlib/_py_abc.pyi +14 -0
  473. jaclang/vendor/mypy/typeshed/stdlib/_pydecimal.pyi +43 -0
  474. jaclang/vendor/mypy/typeshed/stdlib/_random.pyi +12 -0
  475. jaclang/vendor/mypy/typeshed/stdlib/_sitebuiltins.pyi +16 -0
  476. jaclang/vendor/mypy/typeshed/stdlib/_socket.pyi +803 -0
  477. jaclang/vendor/mypy/typeshed/stdlib/_stat.pyi +103 -0
  478. jaclang/vendor/mypy/typeshed/stdlib/_thread.pyi +59 -0
  479. jaclang/vendor/mypy/typeshed/stdlib/_threading_local.pyi +17 -0
  480. jaclang/vendor/mypy/typeshed/stdlib/_tkinter.pyi +121 -0
  481. jaclang/vendor/mypy/typeshed/stdlib/_tracemalloc.pyi +17 -0
  482. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/__init__.pyi +347 -0
  483. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/dbapi.pyi +37 -0
  484. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/wsgi.pyi +44 -0
  485. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/xml.pyi +9 -0
  486. jaclang/vendor/mypy/typeshed/stdlib/_warnings.pyi +55 -0
  487. jaclang/vendor/mypy/typeshed/stdlib/_weakref.pyi +41 -0
  488. jaclang/vendor/mypy/typeshed/stdlib/_weakrefset.pyi +51 -0
  489. jaclang/vendor/mypy/typeshed/stdlib/_winapi.pyi +255 -0
  490. jaclang/vendor/mypy/typeshed/stdlib/abc.pyi +51 -0
  491. jaclang/vendor/mypy/typeshed/stdlib/aifc.pyi +91 -0
  492. jaclang/vendor/mypy/typeshed/stdlib/antigravity.pyi +3 -0
  493. jaclang/vendor/mypy/typeshed/stdlib/argparse.pyi +595 -0
  494. jaclang/vendor/mypy/typeshed/stdlib/array.pyi +92 -0
  495. jaclang/vendor/mypy/typeshed/stdlib/ast.pyi +277 -0
  496. jaclang/vendor/mypy/typeshed/stdlib/asynchat.pyi +21 -0
  497. jaclang/vendor/mypy/typeshed/stdlib/asyncio/__init__.pyi +41 -0
  498. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_events.pyi +440 -0
  499. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_futures.pyi +19 -0
  500. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_subprocess.pyi +63 -0
  501. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_tasks.pyi +9 -0
  502. jaclang/vendor/mypy/typeshed/stdlib/asyncio/constants.pyi +20 -0
  503. jaclang/vendor/mypy/typeshed/stdlib/asyncio/coroutines.pyi +26 -0
  504. jaclang/vendor/mypy/typeshed/stdlib/asyncio/events.pyi +580 -0
  505. jaclang/vendor/mypy/typeshed/stdlib/asyncio/exceptions.pyi +43 -0
  506. jaclang/vendor/mypy/typeshed/stdlib/asyncio/format_helpers.pyi +20 -0
  507. jaclang/vendor/mypy/typeshed/stdlib/asyncio/futures.pyi +57 -0
  508. jaclang/vendor/mypy/typeshed/stdlib/asyncio/locks.pyi +121 -0
  509. jaclang/vendor/mypy/typeshed/stdlib/asyncio/log.pyi +3 -0
  510. jaclang/vendor/mypy/typeshed/stdlib/asyncio/mixins.pyi +9 -0
  511. jaclang/vendor/mypy/typeshed/stdlib/asyncio/proactor_events.pyi +64 -0
  512. jaclang/vendor/mypy/typeshed/stdlib/asyncio/protocols.pyi +34 -0
  513. jaclang/vendor/mypy/typeshed/stdlib/asyncio/queues.pyi +47 -0
  514. jaclang/vendor/mypy/typeshed/stdlib/asyncio/runners.pyi +32 -0
  515. jaclang/vendor/mypy/typeshed/stdlib/asyncio/selector_events.pyi +8 -0
  516. jaclang/vendor/mypy/typeshed/stdlib/asyncio/sslproto.pyi +165 -0
  517. jaclang/vendor/mypy/typeshed/stdlib/asyncio/staggered.pyi +10 -0
  518. jaclang/vendor/mypy/typeshed/stdlib/asyncio/streams.pyi +153 -0
  519. jaclang/vendor/mypy/typeshed/stdlib/asyncio/subprocess.pyi +229 -0
  520. jaclang/vendor/mypy/typeshed/stdlib/asyncio/taskgroups.pyi +25 -0
  521. jaclang/vendor/mypy/typeshed/stdlib/asyncio/tasks.pyi +497 -0
  522. jaclang/vendor/mypy/typeshed/stdlib/asyncio/threads.pyi +9 -0
  523. jaclang/vendor/mypy/typeshed/stdlib/asyncio/timeouts.pyi +19 -0
  524. jaclang/vendor/mypy/typeshed/stdlib/asyncio/transports.pyi +47 -0
  525. jaclang/vendor/mypy/typeshed/stdlib/asyncio/trsock.pyi +94 -0
  526. jaclang/vendor/mypy/typeshed/stdlib/asyncio/unix_events.pyi +196 -0
  527. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_events.pyi +85 -0
  528. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_utils.pyi +49 -0
  529. jaclang/vendor/mypy/typeshed/stdlib/asyncore.pyi +90 -0
  530. jaclang/vendor/mypy/typeshed/stdlib/atexit.pyi +12 -0
  531. jaclang/vendor/mypy/typeshed/stdlib/audioop.pyi +43 -0
  532. jaclang/vendor/mypy/typeshed/stdlib/base64.pyi +59 -0
  533. jaclang/vendor/mypy/typeshed/stdlib/bdb.pyi +102 -0
  534. jaclang/vendor/mypy/typeshed/stdlib/binascii.pyi +36 -0
  535. jaclang/vendor/mypy/typeshed/stdlib/binhex.pyi +45 -0
  536. jaclang/vendor/mypy/typeshed/stdlib/bisect.pyi +4 -0
  537. jaclang/vendor/mypy/typeshed/stdlib/builtins.pyi +1936 -0
  538. jaclang/vendor/mypy/typeshed/stdlib/bz2.pyi +146 -0
  539. jaclang/vendor/mypy/typeshed/stdlib/cProfile.pyi +31 -0
  540. jaclang/vendor/mypy/typeshed/stdlib/calendar.pyi +208 -0
  541. jaclang/vendor/mypy/typeshed/stdlib/cgi.pyi +118 -0
  542. jaclang/vendor/mypy/typeshed/stdlib/cgitb.pyi +32 -0
  543. jaclang/vendor/mypy/typeshed/stdlib/chunk.pyi +20 -0
  544. jaclang/vendor/mypy/typeshed/stdlib/cmath.pyi +36 -0
  545. jaclang/vendor/mypy/typeshed/stdlib/cmd.pyi +45 -0
  546. jaclang/vendor/mypy/typeshed/stdlib/code.pyi +33 -0
  547. jaclang/vendor/mypy/typeshed/stdlib/codecs.pyi +285 -0
  548. jaclang/vendor/mypy/typeshed/stdlib/codeop.pyi +13 -0
  549. jaclang/vendor/mypy/typeshed/stdlib/collections/__init__.pyi +485 -0
  550. jaclang/vendor/mypy/typeshed/stdlib/collections/abc.pyi +2 -0
  551. jaclang/vendor/mypy/typeshed/stdlib/colorsys.pyi +13 -0
  552. jaclang/vendor/mypy/typeshed/stdlib/compileall.pyi +111 -0
  553. jaclang/vendor/mypy/typeshed/stdlib/concurrent/__init__.pyi +0 -0
  554. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/__init__.pyi +32 -0
  555. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/_base.pyi +126 -0
  556. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/process.pyi +233 -0
  557. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/thread.pyi +80 -0
  558. jaclang/vendor/mypy/typeshed/stdlib/configparser.pyi +313 -0
  559. jaclang/vendor/mypy/typeshed/stdlib/contextlib.pyi +208 -0
  560. jaclang/vendor/mypy/typeshed/stdlib/contextvars.pyi +63 -0
  561. jaclang/vendor/mypy/typeshed/stdlib/copy.pyi +16 -0
  562. jaclang/vendor/mypy/typeshed/stdlib/copyreg.pyi +21 -0
  563. jaclang/vendor/mypy/typeshed/stdlib/crypt.pyi +12 -0
  564. jaclang/vendor/mypy/typeshed/stdlib/csv.pyi +147 -0
  565. jaclang/vendor/mypy/typeshed/stdlib/ctypes/__init__.pyi +187 -0
  566. jaclang/vendor/mypy/typeshed/stdlib/ctypes/_endian.pyi +19 -0
  567. jaclang/vendor/mypy/typeshed/stdlib/ctypes/util.pyi +6 -0
  568. jaclang/vendor/mypy/typeshed/stdlib/ctypes/wintypes.pyi +298 -0
  569. jaclang/vendor/mypy/typeshed/stdlib/curses/__init__.pyi +22 -0
  570. jaclang/vendor/mypy/typeshed/stdlib/curses/ascii.pyi +62 -0
  571. jaclang/vendor/mypy/typeshed/stdlib/curses/has_key.pyi +1 -0
  572. jaclang/vendor/mypy/typeshed/stdlib/curses/panel.pyi +22 -0
  573. jaclang/vendor/mypy/typeshed/stdlib/curses/textpad.pyi +11 -0
  574. jaclang/vendor/mypy/typeshed/stdlib/dataclasses.pyi +315 -0
  575. jaclang/vendor/mypy/typeshed/stdlib/datetime.pyi +295 -0
  576. jaclang/vendor/mypy/typeshed/stdlib/dbm/__init__.pyi +95 -0
  577. jaclang/vendor/mypy/typeshed/stdlib/dbm/dumb.pyi +31 -0
  578. jaclang/vendor/mypy/typeshed/stdlib/dbm/gnu.pyi +41 -0
  579. jaclang/vendor/mypy/typeshed/stdlib/dbm/ndbm.pyi +37 -0
  580. jaclang/vendor/mypy/typeshed/stdlib/decimal.pyi +2 -0
  581. jaclang/vendor/mypy/typeshed/stdlib/difflib.pyi +140 -0
  582. jaclang/vendor/mypy/typeshed/stdlib/dis.pyi +144 -0
  583. jaclang/vendor/mypy/typeshed/stdlib/distutils/__init__.pyi +5 -0
  584. jaclang/vendor/mypy/typeshed/stdlib/distutils/archive_util.pyi +20 -0
  585. jaclang/vendor/mypy/typeshed/stdlib/distutils/bcppcompiler.pyi +3 -0
  586. jaclang/vendor/mypy/typeshed/stdlib/distutils/ccompiler.pyi +152 -0
  587. jaclang/vendor/mypy/typeshed/stdlib/distutils/cmd.pyi +66 -0
  588. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/__init__.pyi +0 -0
  589. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist.pyi +25 -0
  590. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_dumb.pyi +21 -0
  591. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_msi.pyi +45 -0
  592. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_packager.pyi +0 -0
  593. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_rpm.pyi +52 -0
  594. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_wininst.pyi +16 -0
  595. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build.pyi +31 -0
  596. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_clib.pyi +27 -0
  597. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_ext.pyi +50 -0
  598. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_py.pyi +44 -0
  599. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_scripts.pyi +24 -0
  600. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/check.pyi +39 -0
  601. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/clean.pyi +17 -0
  602. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/config.pyi +83 -0
  603. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install.pyi +63 -0
  604. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_data.pyi +19 -0
  605. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_egg_info.pyi +18 -0
  606. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_headers.pyi +16 -0
  607. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_lib.pyi +25 -0
  608. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_scripts.pyi +18 -0
  609. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/register.pyi +18 -0
  610. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/sdist.pyi +42 -0
  611. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/upload.pyi +17 -0
  612. jaclang/vendor/mypy/typeshed/stdlib/distutils/config.pyi +17 -0
  613. jaclang/vendor/mypy/typeshed/stdlib/distutils/core.pyi +57 -0
  614. jaclang/vendor/mypy/typeshed/stdlib/distutils/cygwinccompiler.pyi +20 -0
  615. jaclang/vendor/mypy/typeshed/stdlib/distutils/debug.pyi +1 -0
  616. jaclang/vendor/mypy/typeshed/stdlib/distutils/dep_util.pyi +3 -0
  617. jaclang/vendor/mypy/typeshed/stdlib/distutils/dir_util.pyi +13 -0
  618. jaclang/vendor/mypy/typeshed/stdlib/distutils/dist.pyi +146 -0
  619. jaclang/vendor/mypy/typeshed/stdlib/distutils/errors.pyi +19 -0
  620. jaclang/vendor/mypy/typeshed/stdlib/distutils/extension.pyi +36 -0
  621. jaclang/vendor/mypy/typeshed/stdlib/distutils/fancy_getopt.pyi +34 -0
  622. jaclang/vendor/mypy/typeshed/stdlib/distutils/file_util.pyi +14 -0
  623. jaclang/vendor/mypy/typeshed/stdlib/distutils/filelist.pyi +50 -0
  624. jaclang/vendor/mypy/typeshed/stdlib/distutils/log.pyi +25 -0
  625. jaclang/vendor/mypy/typeshed/stdlib/distutils/msvccompiler.pyi +3 -0
  626. jaclang/vendor/mypy/typeshed/stdlib/distutils/spawn.pyi +2 -0
  627. jaclang/vendor/mypy/typeshed/stdlib/distutils/sysconfig.pyi +31 -0
  628. jaclang/vendor/mypy/typeshed/stdlib/distutils/text_file.pyi +21 -0
  629. jaclang/vendor/mypy/typeshed/stdlib/distutils/unixccompiler.pyi +3 -0
  630. jaclang/vendor/mypy/typeshed/stdlib/distutils/util.pyi +46 -0
  631. jaclang/vendor/mypy/typeshed/stdlib/distutils/version.pyi +36 -0
  632. jaclang/vendor/mypy/typeshed/stdlib/doctest.pyi +248 -0
  633. jaclang/vendor/mypy/typeshed/stdlib/dummy_threading.pyi +2 -0
  634. jaclang/vendor/mypy/typeshed/stdlib/email/__init__.pyi +29 -0
  635. jaclang/vendor/mypy/typeshed/stdlib/email/_header_value_parser.pyi +392 -0
  636. jaclang/vendor/mypy/typeshed/stdlib/email/_policybase.pyi +51 -0
  637. jaclang/vendor/mypy/typeshed/stdlib/email/base64mime.pyi +13 -0
  638. jaclang/vendor/mypy/typeshed/stdlib/email/charset.pyi +34 -0
  639. jaclang/vendor/mypy/typeshed/stdlib/email/contentmanager.pyi +11 -0
  640. jaclang/vendor/mypy/typeshed/stdlib/email/encoders.pyi +8 -0
  641. jaclang/vendor/mypy/typeshed/stdlib/email/errors.pyi +39 -0
  642. jaclang/vendor/mypy/typeshed/stdlib/email/feedparser.pyi +23 -0
  643. jaclang/vendor/mypy/typeshed/stdlib/email/generator.pyi +40 -0
  644. jaclang/vendor/mypy/typeshed/stdlib/email/header.pyi +31 -0
  645. jaclang/vendor/mypy/typeshed/stdlib/email/headerregistry.pyi +178 -0
  646. jaclang/vendor/mypy/typeshed/stdlib/email/iterators.pyi +12 -0
  647. jaclang/vendor/mypy/typeshed/stdlib/email/message.pyi +165 -0
  648. jaclang/vendor/mypy/typeshed/stdlib/email/mime/__init__.pyi +0 -0
  649. jaclang/vendor/mypy/typeshed/stdlib/email/mime/application.pyi +17 -0
  650. jaclang/vendor/mypy/typeshed/stdlib/email/mime/audio.pyi +17 -0
  651. jaclang/vendor/mypy/typeshed/stdlib/email/mime/base.pyi +8 -0
  652. jaclang/vendor/mypy/typeshed/stdlib/email/mime/image.pyi +17 -0
  653. jaclang/vendor/mypy/typeshed/stdlib/email/mime/message.pyi +8 -0
  654. jaclang/vendor/mypy/typeshed/stdlib/email/mime/multipart.pyi +18 -0
  655. jaclang/vendor/mypy/typeshed/stdlib/email/mime/nonmultipart.pyi +5 -0
  656. jaclang/vendor/mypy/typeshed/stdlib/email/mime/text.pyi +9 -0
  657. jaclang/vendor/mypy/typeshed/stdlib/email/parser.pyi +26 -0
  658. jaclang/vendor/mypy/typeshed/stdlib/email/policy.pyi +38 -0
  659. jaclang/vendor/mypy/typeshed/stdlib/email/quoprimime.pyi +28 -0
  660. jaclang/vendor/mypy/typeshed/stdlib/email/utils.pyi +70 -0
  661. jaclang/vendor/mypy/typeshed/stdlib/encodings/__init__.pyi +10 -0
  662. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8.pyi +21 -0
  663. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8_sig.pyi +22 -0
  664. jaclang/vendor/mypy/typeshed/stdlib/ensurepip/__init__.pyi +12 -0
  665. jaclang/vendor/mypy/typeshed/stdlib/enum.pyi +320 -0
  666. jaclang/vendor/mypy/typeshed/stdlib/errno.pyi +222 -0
  667. jaclang/vendor/mypy/typeshed/stdlib/faulthandler.pyi +13 -0
  668. jaclang/vendor/mypy/typeshed/stdlib/fcntl.pyi +127 -0
  669. jaclang/vendor/mypy/typeshed/stdlib/filecmp.pyi +57 -0
  670. jaclang/vendor/mypy/typeshed/stdlib/fileinput.pyi +213 -0
  671. jaclang/vendor/mypy/typeshed/stdlib/fnmatch.pyi +9 -0
  672. jaclang/vendor/mypy/typeshed/stdlib/formatter.pyi +88 -0
  673. jaclang/vendor/mypy/typeshed/stdlib/fractions.pyi +150 -0
  674. jaclang/vendor/mypy/typeshed/stdlib/ftplib.pyi +178 -0
  675. jaclang/vendor/mypy/typeshed/stdlib/functools.pyi +213 -0
  676. jaclang/vendor/mypy/typeshed/stdlib/gc.pyi +37 -0
  677. jaclang/vendor/mypy/typeshed/stdlib/genericpath.pyi +52 -0
  678. jaclang/vendor/mypy/typeshed/stdlib/getopt.pyi +11 -0
  679. jaclang/vendor/mypy/typeshed/stdlib/getpass.pyi +8 -0
  680. jaclang/vendor/mypy/typeshed/stdlib/gettext.pyi +169 -0
  681. jaclang/vendor/mypy/typeshed/stdlib/glob.pyi +42 -0
  682. jaclang/vendor/mypy/typeshed/stdlib/graphlib.pyi +28 -0
  683. jaclang/vendor/mypy/typeshed/stdlib/grp.pyi +22 -0
  684. jaclang/vendor/mypy/typeshed/stdlib/gzip.pyi +160 -0
  685. jaclang/vendor/mypy/typeshed/stdlib/hashlib.pyi +167 -0
  686. jaclang/vendor/mypy/typeshed/stdlib/heapq.pyi +17 -0
  687. jaclang/vendor/mypy/typeshed/stdlib/hmac.pyi +38 -0
  688. jaclang/vendor/mypy/typeshed/stdlib/html/__init__.pyi +6 -0
  689. jaclang/vendor/mypy/typeshed/stdlib/html/entities.pyi +6 -0
  690. jaclang/vendor/mypy/typeshed/stdlib/html/parser.pyi +34 -0
  691. jaclang/vendor/mypy/typeshed/stdlib/http/__init__.pyi +105 -0
  692. jaclang/vendor/mypy/typeshed/stdlib/http/client.pyi +259 -0
  693. jaclang/vendor/mypy/typeshed/stdlib/http/cookiejar.pyi +159 -0
  694. jaclang/vendor/mypy/typeshed/stdlib/http/cookies.pyi +60 -0
  695. jaclang/vendor/mypy/typeshed/stdlib/http/server.pyi +83 -0
  696. jaclang/vendor/mypy/typeshed/stdlib/imaplib.pyi +168 -0
  697. jaclang/vendor/mypy/typeshed/stdlib/imghdr.pyi +17 -0
  698. jaclang/vendor/mypy/typeshed/stdlib/imp.pyi +62 -0
  699. jaclang/vendor/mypy/typeshed/stdlib/importlib/__init__.pyi +24 -0
  700. jaclang/vendor/mypy/typeshed/stdlib/importlib/_abc.pyi +15 -0
  701. jaclang/vendor/mypy/typeshed/stdlib/importlib/abc.pyi +172 -0
  702. jaclang/vendor/mypy/typeshed/stdlib/importlib/machinery.pyi +179 -0
  703. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/__init__.pyi +285 -0
  704. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/_meta.pyi +49 -0
  705. jaclang/vendor/mypy/typeshed/stdlib/importlib/readers.pyi +68 -0
  706. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/__init__.pyi +46 -0
  707. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/abc.pyi +12 -0
  708. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/readers.pyi +14 -0
  709. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/simple.pyi +56 -0
  710. jaclang/vendor/mypy/typeshed/stdlib/importlib/simple.pyi +11 -0
  711. jaclang/vendor/mypy/typeshed/stdlib/importlib/util.pyi +43 -0
  712. jaclang/vendor/mypy/typeshed/stdlib/inspect.pyi +632 -0
  713. jaclang/vendor/mypy/typeshed/stdlib/io.pyi +238 -0
  714. jaclang/vendor/mypy/typeshed/stdlib/ipaddress.pyi +208 -0
  715. jaclang/vendor/mypy/typeshed/stdlib/itertools.pyi +273 -0
  716. jaclang/vendor/mypy/typeshed/stdlib/json/__init__.pyi +61 -0
  717. jaclang/vendor/mypy/typeshed/stdlib/json/decoder.pyi +32 -0
  718. jaclang/vendor/mypy/typeshed/stdlib/json/encoder.pyi +40 -0
  719. jaclang/vendor/mypy/typeshed/stdlib/json/tool.pyi +1 -0
  720. jaclang/vendor/mypy/typeshed/stdlib/keyword.pyi +21 -0
  721. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/__init__.pyi +0 -0
  722. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/btm_matcher.pyi +28 -0
  723. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixer_base.pyi +42 -0
  724. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/__init__.pyi +0 -0
  725. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_apply.pyi +8 -0
  726. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_asserts.pyi +10 -0
  727. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_basestring.pyi +8 -0
  728. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_buffer.pyi +8 -0
  729. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_dict.pyi +16 -0
  730. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_except.pyi +14 -0
  731. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exec.pyi +8 -0
  732. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_execfile.pyi +8 -0
  733. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exitfunc.pyi +13 -0
  734. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_filter.pyi +9 -0
  735. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_funcattrs.pyi +8 -0
  736. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_future.pyi +8 -0
  737. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_getcwdu.pyi +8 -0
  738. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_has_key.pyi +8 -0
  739. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_idioms.pyi +15 -0
  740. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_import.pyi +16 -0
  741. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports.pyi +21 -0
  742. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports2.pyi +6 -0
  743. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_input.pyi +11 -0
  744. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_intern.pyi +9 -0
  745. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_isinstance.pyi +8 -0
  746. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools.pyi +9 -0
  747. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools_imports.pyi +7 -0
  748. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_long.pyi +7 -0
  749. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_map.pyi +9 -0
  750. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_metaclass.pyi +17 -0
  751. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_methodattrs.pyi +10 -0
  752. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ne.pyi +8 -0
  753. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_next.pyi +19 -0
  754. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_nonzero.pyi +8 -0
  755. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_numliterals.pyi +8 -0
  756. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_operator.pyi +12 -0
  757. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_paren.pyi +8 -0
  758. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_print.pyi +12 -0
  759. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raise.pyi +8 -0
  760. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raw_input.pyi +8 -0
  761. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reduce.pyi +8 -0
  762. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reload.pyi +9 -0
  763. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_renames.pyi +17 -0
  764. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_repr.pyi +8 -0
  765. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_set_literal.pyi +7 -0
  766. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_standarderror.pyi +8 -0
  767. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_sys_exc.pyi +9 -0
  768. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_throw.pyi +8 -0
  769. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_tuple_params.pyi +17 -0
  770. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_types.pyi +8 -0
  771. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_unicode.pyi +12 -0
  772. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_urllib.pyi +15 -0
  773. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ws_comma.pyi +12 -0
  774. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xrange.pyi +20 -0
  775. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xreadlines.pyi +8 -0
  776. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_zip.pyi +9 -0
  777. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/main.pyi +42 -0
  778. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/__init__.pyi +9 -0
  779. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/driver.pyi +27 -0
  780. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/grammar.pyi +24 -0
  781. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/literals.pyi +7 -0
  782. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/parse.pyi +30 -0
  783. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/pgen.pyi +50 -0
  784. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/token.pyi +67 -0
  785. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/tokenize.pyi +96 -0
  786. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pygram.pyi +114 -0
  787. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pytree.pyi +117 -0
  788. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/refactor.pyi +82 -0
  789. jaclang/vendor/mypy/typeshed/stdlib/linecache.pyi +23 -0
  790. jaclang/vendor/mypy/typeshed/stdlib/locale.pyi +152 -0
  791. jaclang/vendor/mypy/typeshed/stdlib/logging/__init__.pyi +658 -0
  792. jaclang/vendor/mypy/typeshed/stdlib/logging/config.pyi +134 -0
  793. jaclang/vendor/mypy/typeshed/stdlib/logging/handlers.pyi +275 -0
  794. jaclang/vendor/mypy/typeshed/stdlib/lzma.pyi +197 -0
  795. jaclang/vendor/mypy/typeshed/stdlib/mailbox.pyi +256 -0
  796. jaclang/vendor/mypy/typeshed/stdlib/mailcap.pyi +11 -0
  797. jaclang/vendor/mypy/typeshed/stdlib/marshal.pyi +33 -0
  798. jaclang/vendor/mypy/typeshed/stdlib/math.pyi +125 -0
  799. jaclang/vendor/mypy/typeshed/stdlib/mimetypes.pyi +46 -0
  800. jaclang/vendor/mypy/typeshed/stdlib/mmap.pyi +113 -0
  801. jaclang/vendor/mypy/typeshed/stdlib/modulefinder.pyi +66 -0
  802. jaclang/vendor/mypy/typeshed/stdlib/msilib/__init__.pyi +177 -0
  803. jaclang/vendor/mypy/typeshed/stdlib/msilib/schema.pyi +94 -0
  804. jaclang/vendor/mypy/typeshed/stdlib/msilib/sequence.pyi +13 -0
  805. jaclang/vendor/mypy/typeshed/stdlib/msilib/text.pyi +7 -0
  806. jaclang/vendor/mypy/typeshed/stdlib/msvcrt.pyi +32 -0
  807. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/__init__.pyi +90 -0
  808. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/connection.pyi +75 -0
  809. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/context.pyi +189 -0
  810. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/__init__.pyi +77 -0
  811. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/connection.pyi +39 -0
  812. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/forkserver.pyi +31 -0
  813. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/heap.pyi +36 -0
  814. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/managers.pyi +212 -0
  815. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/pool.pyi +103 -0
  816. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_fork.pyi +23 -0
  817. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_forkserver.pyi +16 -0
  818. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_posix.pyi +20 -0
  819. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_win32.pyi +30 -0
  820. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/process.pyi +39 -0
  821. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/queues.pyi +41 -0
  822. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/reduction.pyi +90 -0
  823. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_sharer.pyi +20 -0
  824. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_tracker.pyi +18 -0
  825. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/shared_memory.pyi +40 -0
  826. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/sharedctypes.pyi +107 -0
  827. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/spawn.pyi +32 -0
  828. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/synchronize.pyi +54 -0
  829. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/util.pyi +98 -0
  830. jaclang/vendor/mypy/typeshed/stdlib/netrc.pyi +23 -0
  831. jaclang/vendor/mypy/typeshed/stdlib/nis.pyi +9 -0
  832. jaclang/vendor/mypy/typeshed/stdlib/nntplib.pyi +125 -0
  833. jaclang/vendor/mypy/typeshed/stdlib/nt.pyi +111 -0
  834. jaclang/vendor/mypy/typeshed/stdlib/ntpath.pyi +119 -0
  835. jaclang/vendor/mypy/typeshed/stdlib/nturl2path.pyi +2 -0
  836. jaclang/vendor/mypy/typeshed/stdlib/numbers.pyi +209 -0
  837. jaclang/vendor/mypy/typeshed/stdlib/opcode.pyi +59 -0
  838. jaclang/vendor/mypy/typeshed/stdlib/operator.pyi +110 -0
  839. jaclang/vendor/mypy/typeshed/stdlib/optparse.pyi +255 -0
  840. jaclang/vendor/mypy/typeshed/stdlib/os/__init__.pyi +1157 -0
  841. jaclang/vendor/mypy/typeshed/stdlib/os/path.pyi +8 -0
  842. jaclang/vendor/mypy/typeshed/stdlib/ossaudiodev.pyi +131 -0
  843. jaclang/vendor/mypy/typeshed/stdlib/parser.pyi +24 -0
  844. jaclang/vendor/mypy/typeshed/stdlib/pathlib.pyi +232 -0
  845. jaclang/vendor/mypy/typeshed/stdlib/pdb.pyi +181 -0
  846. jaclang/vendor/mypy/typeshed/stdlib/pickle.pyi +271 -0
  847. jaclang/vendor/mypy/typeshed/stdlib/pickletools.pyi +167 -0
  848. jaclang/vendor/mypy/typeshed/stdlib/pipes.pyi +16 -0
  849. jaclang/vendor/mypy/typeshed/stdlib/pkgutil.pyi +53 -0
  850. jaclang/vendor/mypy/typeshed/stdlib/platform.pyi +42 -0
  851. jaclang/vendor/mypy/typeshed/stdlib/plistlib.pyi +113 -0
  852. jaclang/vendor/mypy/typeshed/stdlib/poplib.pyi +71 -0
  853. jaclang/vendor/mypy/typeshed/stdlib/posix.pyi +361 -0
  854. jaclang/vendor/mypy/typeshed/stdlib/posixpath.pyi +161 -0
  855. jaclang/vendor/mypy/typeshed/stdlib/pprint.pyi +112 -0
  856. jaclang/vendor/mypy/typeshed/stdlib/profile.pyi +31 -0
  857. jaclang/vendor/mypy/typeshed/stdlib/pstats.pyi +80 -0
  858. jaclang/vendor/mypy/typeshed/stdlib/pty.pyi +19 -0
  859. jaclang/vendor/mypy/typeshed/stdlib/pwd.pyi +28 -0
  860. jaclang/vendor/mypy/typeshed/stdlib/py_compile.pyi +34 -0
  861. jaclang/vendor/mypy/typeshed/stdlib/pyclbr.pyi +74 -0
  862. jaclang/vendor/mypy/typeshed/stdlib/pydoc.pyi +261 -0
  863. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/__init__.pyi +0 -0
  864. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/topics.pyi +1 -0
  865. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/__init__.pyi +85 -0
  866. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/errors.pyi +49 -0
  867. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/model.pyi +11 -0
  868. jaclang/vendor/mypy/typeshed/stdlib/queue.pyi +66 -0
  869. jaclang/vendor/mypy/typeshed/stdlib/quopri.pyi +11 -0
  870. jaclang/vendor/mypy/typeshed/stdlib/random.pyi +138 -0
  871. jaclang/vendor/mypy/typeshed/stdlib/re.pyi +290 -0
  872. jaclang/vendor/mypy/typeshed/stdlib/readline.pyi +36 -0
  873. jaclang/vendor/mypy/typeshed/stdlib/reprlib.pyi +65 -0
  874. jaclang/vendor/mypy/typeshed/stdlib/resource.pyi +94 -0
  875. jaclang/vendor/mypy/typeshed/stdlib/rlcompleter.pyi +9 -0
  876. jaclang/vendor/mypy/typeshed/stdlib/runpy.pyi +24 -0
  877. jaclang/vendor/mypy/typeshed/stdlib/sched.pyi +42 -0
  878. jaclang/vendor/mypy/typeshed/stdlib/secrets.pyi +15 -0
  879. jaclang/vendor/mypy/typeshed/stdlib/select.pyi +155 -0
  880. jaclang/vendor/mypy/typeshed/stdlib/selectors.pyi +67 -0
  881. jaclang/vendor/mypy/typeshed/stdlib/shelve.pyi +46 -0
  882. jaclang/vendor/mypy/typeshed/stdlib/shlex.pyi +63 -0
  883. jaclang/vendor/mypy/typeshed/stdlib/shutil.pyi +185 -0
  884. jaclang/vendor/mypy/typeshed/stdlib/signal.pyi +188 -0
  885. jaclang/vendor/mypy/typeshed/stdlib/site.pyi +27 -0
  886. jaclang/vendor/mypy/typeshed/stdlib/smtpd.pyi +91 -0
  887. jaclang/vendor/mypy/typeshed/stdlib/smtplib.pyi +204 -0
  888. jaclang/vendor/mypy/typeshed/stdlib/sndhdr.pyi +14 -0
  889. jaclang/vendor/mypy/typeshed/stdlib/socket.pyi +825 -0
  890. jaclang/vendor/mypy/typeshed/stdlib/socketserver.pyi +168 -0
  891. jaclang/vendor/mypy/typeshed/stdlib/spwd.pyi +41 -0
  892. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/__init__.pyi +1 -0
  893. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/dbapi2.pyi +551 -0
  894. jaclang/vendor/mypy/typeshed/stdlib/sre_compile.pyi +11 -0
  895. jaclang/vendor/mypy/typeshed/stdlib/sre_constants.pyi +130 -0
  896. jaclang/vendor/mypy/typeshed/stdlib/sre_parse.pyi +104 -0
  897. jaclang/vendor/mypy/typeshed/stdlib/ssl.pyi +537 -0
  898. jaclang/vendor/mypy/typeshed/stdlib/stat.pyi +1 -0
  899. jaclang/vendor/mypy/typeshed/stdlib/statistics.pyi +132 -0
  900. jaclang/vendor/mypy/typeshed/stdlib/string.pyi +83 -0
  901. jaclang/vendor/mypy/typeshed/stdlib/stringprep.pyi +27 -0
  902. jaclang/vendor/mypy/typeshed/stdlib/struct.pyi +26 -0
  903. jaclang/vendor/mypy/typeshed/stdlib/subprocess.pyi +2615 -0
  904. jaclang/vendor/mypy/typeshed/stdlib/sunau.pyi +86 -0
  905. jaclang/vendor/mypy/typeshed/stdlib/symbol.pyi +93 -0
  906. jaclang/vendor/mypy/typeshed/stdlib/symtable.pyi +58 -0
  907. jaclang/vendor/mypy/typeshed/stdlib/sys/__init__.pyi +373 -0
  908. jaclang/vendor/mypy/typeshed/stdlib/sys/_monitoring.pyi +52 -0
  909. jaclang/vendor/mypy/typeshed/stdlib/sysconfig.pyi +48 -0
  910. jaclang/vendor/mypy/typeshed/stdlib/syslog.pyi +46 -0
  911. jaclang/vendor/mypy/typeshed/stdlib/tabnanny.pyi +16 -0
  912. jaclang/vendor/mypy/typeshed/stdlib/tarfile.pyi +441 -0
  913. jaclang/vendor/mypy/typeshed/stdlib/telnetlib.pyi +122 -0
  914. jaclang/vendor/mypy/typeshed/stdlib/tempfile.pyi +477 -0
  915. jaclang/vendor/mypy/typeshed/stdlib/termios.pyi +267 -0
  916. jaclang/vendor/mypy/typeshed/stdlib/textwrap.pyi +103 -0
  917. jaclang/vendor/mypy/typeshed/stdlib/this.pyi +2 -0
  918. jaclang/vendor/mypy/typeshed/stdlib/threading.pyi +187 -0
  919. jaclang/vendor/mypy/typeshed/stdlib/time.pyi +108 -0
  920. jaclang/vendor/mypy/typeshed/stdlib/timeit.pyi +32 -0
  921. jaclang/vendor/mypy/typeshed/stdlib/tkinter/__init__.pyi +3654 -0
  922. jaclang/vendor/mypy/typeshed/stdlib/tkinter/colorchooser.pyi +20 -0
  923. jaclang/vendor/mypy/typeshed/stdlib/tkinter/commondialog.pyi +14 -0
  924. jaclang/vendor/mypy/typeshed/stdlib/tkinter/constants.pyi +80 -0
  925. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dialog.pyi +16 -0
  926. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dnd.pyi +20 -0
  927. jaclang/vendor/mypy/typeshed/stdlib/tkinter/filedialog.pyi +151 -0
  928. jaclang/vendor/mypy/typeshed/stdlib/tkinter/font.pyi +116 -0
  929. jaclang/vendor/mypy/typeshed/stdlib/tkinter/messagebox.pyi +44 -0
  930. jaclang/vendor/mypy/typeshed/stdlib/tkinter/scrolledtext.pyi +9 -0
  931. jaclang/vendor/mypy/typeshed/stdlib/tkinter/simpledialog.pyi +54 -0
  932. jaclang/vendor/mypy/typeshed/stdlib/tkinter/tix.pyi +299 -0
  933. jaclang/vendor/mypy/typeshed/stdlib/tkinter/ttk.pyi +1204 -0
  934. jaclang/vendor/mypy/typeshed/stdlib/token.pyi +159 -0
  935. jaclang/vendor/mypy/typeshed/stdlib/tokenize.pyi +177 -0
  936. jaclang/vendor/mypy/typeshed/stdlib/tomllib.pyi +10 -0
  937. jaclang/vendor/mypy/typeshed/stdlib/trace.pyi +79 -0
  938. jaclang/vendor/mypy/typeshed/stdlib/traceback.pyi +262 -0
  939. jaclang/vendor/mypy/typeshed/stdlib/tracemalloc.pyi +124 -0
  940. jaclang/vendor/mypy/typeshed/stdlib/tty.pyi +30 -0
  941. jaclang/vendor/mypy/typeshed/stdlib/turtle.pyi +713 -0
  942. jaclang/vendor/mypy/typeshed/stdlib/types.pyi +614 -0
  943. jaclang/vendor/mypy/typeshed/stdlib/typing.pyi +976 -0
  944. jaclang/vendor/mypy/typeshed/stdlib/typing_extensions.pyi +509 -0
  945. jaclang/vendor/mypy/typeshed/stdlib/unicodedata.pyi +73 -0
  946. jaclang/vendor/mypy/typeshed/stdlib/unittest/__init__.pyi +67 -0
  947. jaclang/vendor/mypy/typeshed/stdlib/unittest/_log.pyi +27 -0
  948. jaclang/vendor/mypy/typeshed/stdlib/unittest/async_case.pyi +21 -0
  949. jaclang/vendor/mypy/typeshed/stdlib/unittest/case.pyi +342 -0
  950. jaclang/vendor/mypy/typeshed/stdlib/unittest/loader.pyi +51 -0
  951. jaclang/vendor/mypy/typeshed/stdlib/unittest/main.pyi +69 -0
  952. jaclang/vendor/mypy/typeshed/stdlib/unittest/mock.pyi +430 -0
  953. jaclang/vendor/mypy/typeshed/stdlib/unittest/result.pyi +47 -0
  954. jaclang/vendor/mypy/typeshed/stdlib/unittest/runner.pyi +72 -0
  955. jaclang/vendor/mypy/typeshed/stdlib/unittest/signals.pyi +15 -0
  956. jaclang/vendor/mypy/typeshed/stdlib/unittest/suite.pyi +22 -0
  957. jaclang/vendor/mypy/typeshed/stdlib/unittest/util.pyi +23 -0
  958. jaclang/vendor/mypy/typeshed/stdlib/urllib/__init__.pyi +0 -0
  959. jaclang/vendor/mypy/typeshed/stdlib/urllib/error.pyi +23 -0
  960. jaclang/vendor/mypy/typeshed/stdlib/urllib/parse.pyi +210 -0
  961. jaclang/vendor/mypy/typeshed/stdlib/urllib/request.pyi +400 -0
  962. jaclang/vendor/mypy/typeshed/stdlib/urllib/response.pyi +43 -0
  963. jaclang/vendor/mypy/typeshed/stdlib/urllib/robotparser.pyi +20 -0
  964. jaclang/vendor/mypy/typeshed/stdlib/uu.pyi +13 -0
  965. jaclang/vendor/mypy/typeshed/stdlib/uuid.pyi +100 -0
  966. jaclang/vendor/mypy/typeshed/stdlib/warnings.pyi +112 -0
  967. jaclang/vendor/mypy/typeshed/stdlib/wave.pyi +85 -0
  968. jaclang/vendor/mypy/typeshed/stdlib/weakref.pyi +149 -0
  969. jaclang/vendor/mypy/typeshed/stdlib/webbrowser.pyi +74 -0
  970. jaclang/vendor/mypy/typeshed/stdlib/winreg.pyi +132 -0
  971. jaclang/vendor/mypy/typeshed/stdlib/winsound.pyi +28 -0
  972. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/__init__.pyi +0 -0
  973. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/handlers.pyi +91 -0
  974. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/headers.pyi +26 -0
  975. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/simple_server.pyi +37 -0
  976. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/types.pyi +32 -0
  977. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/util.pyi +24 -0
  978. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/validate.pyi +50 -0
  979. jaclang/vendor/mypy/typeshed/stdlib/xdrlib.pyi +57 -0
  980. jaclang/vendor/mypy/typeshed/stdlib/xml/__init__.pyi +1 -0
  981. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/NodeFilter.pyi +19 -0
  982. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/__init__.pyi +69 -0
  983. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/domreg.pyi +8 -0
  984. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/expatbuilder.pyi +100 -0
  985. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minicompat.pyi +22 -0
  986. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minidom.pyi +404 -0
  987. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/pulldom.pyi +94 -0
  988. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/xmlbuilder.pyi +108 -0
  989. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementInclude.pyi +28 -0
  990. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementPath.pyi +34 -0
  991. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementTree.pyi +327 -0
  992. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/__init__.pyi +0 -0
  993. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/cElementTree.pyi +1 -0
  994. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/__init__.pyi +1 -0
  995. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/__init__.pyi +1 -0
  996. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/errors.pyi +1 -0
  997. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/model.pyi +1 -0
  998. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/__init__.pyi +25 -0
  999. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/_exceptions.pyi +19 -0
  1000. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/handler.pyi +55 -0
  1001. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/saxutils.pyi +60 -0
  1002. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/xmlreader.pyi +87 -0
  1003. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/__init__.pyi +0 -0
  1004. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/client.pyi +296 -0
  1005. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/server.pyi +143 -0
  1006. jaclang/vendor/mypy/typeshed/stdlib/xxlimited.pyi +22 -0
  1007. jaclang/vendor/mypy/typeshed/stdlib/zipapp.pyi +20 -0
  1008. jaclang/vendor/mypy/typeshed/stdlib/zipfile/__init__.pyi +306 -0
  1009. jaclang/vendor/mypy/typeshed/stdlib/zipfile/_path.pyi +95 -0
  1010. jaclang/vendor/mypy/typeshed/stdlib/zipimport.pyi +32 -0
  1011. jaclang/vendor/mypy/typeshed/stdlib/zlib.pyi +56 -0
  1012. jaclang/vendor/mypy/typeshed/stdlib/zoneinfo/__init__.pyi +38 -0
  1013. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/mypy_extensions.pyi +218 -0
  1014. jaclang/vendor/mypy/typestate.py +5 -15
  1015. jaclang/vendor/mypy/typetraverser.py +9 -3
  1016. jaclang/vendor/mypy/typevars.py +2 -8
  1017. jaclang/vendor/mypy/util.py +14 -45
  1018. jaclang/vendor/mypy/version.py +1 -19
  1019. jaclang/vendor/mypy/visitor.py +3 -9
  1020. jaclang/vendor/mypy/xml/mypy-html.css +104 -0
  1021. jaclang/vendor/mypy/xml/mypy-html.xslt +81 -0
  1022. jaclang/vendor/mypy/xml/mypy-txt.xslt +100 -0
  1023. jaclang/vendor/mypy/xml/mypy.xsd +50 -0
  1024. jaclang/vendor/mypy-1.10.0.dist-info/LICENSE +229 -0
  1025. jaclang/vendor/mypy-1.10.0.dist-info/METADATA +48 -0
  1026. jaclang/vendor/mypy-1.10.0.dist-info/RECORD +1241 -0
  1027. jaclang/vendor/mypy-1.10.0.dist-info/WHEEL +6 -0
  1028. jaclang/vendor/mypy-1.10.0.dist-info/entry_points.txt +6 -0
  1029. jaclang/vendor/mypy-1.10.0.dist-info/top_level.txt +3 -0
  1030. jaclang/vendor/mypy_extensions-1.0.0.dist-info/LICENSE +27 -0
  1031. jaclang/vendor/mypy_extensions-1.0.0.dist-info/METADATA +29 -0
  1032. jaclang/vendor/mypy_extensions-1.0.0.dist-info/RECORD +6 -0
  1033. jaclang/vendor/mypy_extensions-1.0.0.dist-info/WHEEL +5 -0
  1034. jaclang/vendor/mypy_extensions-1.0.0.dist-info/top_level.txt +1 -0
  1035. jaclang/vendor/mypy_extensions.py +21 -40
  1036. jaclang/vendor/mypyc/README.md +133 -0
  1037. jaclang/vendor/mypyc/__main__.py +1 -3
  1038. jaclang/vendor/mypyc/analysis/attrdefined.py +6 -22
  1039. jaclang/vendor/mypyc/analysis/dataflow.py +5 -3
  1040. jaclang/vendor/mypyc/analysis/ircheck.py +13 -26
  1041. jaclang/vendor/mypyc/analysis/selfleaks.py +4 -0
  1042. jaclang/vendor/mypyc/build.py +6 -19
  1043. jaclang/vendor/mypyc/codegen/emit.py +20 -73
  1044. jaclang/vendor/mypyc/codegen/emitclass.py +22 -72
  1045. jaclang/vendor/mypyc/codegen/emitfunc.py +20 -62
  1046. jaclang/vendor/mypyc/codegen/emitmodule.py +50 -117
  1047. jaclang/vendor/mypyc/codegen/emitwrapper.py +22 -78
  1048. jaclang/vendor/mypyc/codegen/literals.py +1 -3
  1049. jaclang/vendor/mypyc/common.py +1 -3
  1050. jaclang/vendor/mypyc/doc/Makefile +20 -0
  1051. jaclang/vendor/mypyc/doc/bool_operations.rst +27 -0
  1052. jaclang/vendor/mypyc/doc/compilation_units.rst +20 -0
  1053. jaclang/vendor/mypyc/doc/conf.py +59 -0
  1054. jaclang/vendor/mypyc/doc/cpython-timings.md +25 -0
  1055. jaclang/vendor/mypyc/doc/dev-intro.md +548 -0
  1056. jaclang/vendor/mypyc/doc/dict_operations.rst +59 -0
  1057. jaclang/vendor/mypyc/doc/differences_from_python.rst +332 -0
  1058. jaclang/vendor/mypyc/doc/float_operations.rst +50 -0
  1059. jaclang/vendor/mypyc/doc/future.md +42 -0
  1060. jaclang/vendor/mypyc/doc/getting_started.rst +240 -0
  1061. jaclang/vendor/mypyc/doc/index.rst +61 -0
  1062. jaclang/vendor/mypyc/doc/int_operations.rst +162 -0
  1063. jaclang/vendor/mypyc/doc/introduction.rst +150 -0
  1064. jaclang/vendor/mypyc/doc/list_operations.rst +65 -0
  1065. jaclang/vendor/mypyc/doc/make.bat +35 -0
  1066. jaclang/vendor/mypyc/doc/native_classes.rst +206 -0
  1067. jaclang/vendor/mypyc/doc/native_operations.rst +55 -0
  1068. jaclang/vendor/mypyc/doc/performance_tips_and_tricks.rst +244 -0
  1069. jaclang/vendor/mypyc/doc/set_operations.rst +47 -0
  1070. jaclang/vendor/mypyc/doc/str_operations.rst +35 -0
  1071. jaclang/vendor/mypyc/doc/tuple_operations.rst +33 -0
  1072. jaclang/vendor/mypyc/doc/using_type_annotations.rst +398 -0
  1073. jaclang/vendor/mypyc/external/googletest/LICENSE +28 -0
  1074. jaclang/vendor/mypyc/external/googletest/README.md +280 -0
  1075. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-death-test.h +294 -0
  1076. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-message.h +250 -0
  1077. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h +1444 -0
  1078. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h.pump +510 -0
  1079. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-printers.h +993 -0
  1080. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-spi.h +232 -0
  1081. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-test-part.h +179 -0
  1082. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-typed-test.h +263 -0
  1083. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest.h +2236 -0
  1084. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_pred_impl.h +358 -0
  1085. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_prod.h +58 -0
  1086. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-port.h +69 -0
  1087. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-printers.h +42 -0
  1088. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest.h +41 -0
  1089. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-death-test-internal.h +319 -0
  1090. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-filepath.h +206 -0
  1091. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-internal.h +1238 -0
  1092. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-linked_ptr.h +243 -0
  1093. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h +5146 -0
  1094. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +286 -0
  1095. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util.h +731 -0
  1096. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port-arch.h +93 -0
  1097. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port.h +2560 -0
  1098. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-string.h +167 -0
  1099. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h +1020 -0
  1100. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h.pump +347 -0
  1101. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h +3331 -0
  1102. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h.pump +297 -0
  1103. jaclang/vendor/mypyc/external/googletest/make/Makefile +61 -0
  1104. jaclang/vendor/mypyc/external/googletest/src/gtest-all.cc +48 -0
  1105. jaclang/vendor/mypyc/external/googletest/src/gtest-death-test.cc +1342 -0
  1106. jaclang/vendor/mypyc/external/googletest/src/gtest-filepath.cc +387 -0
  1107. jaclang/vendor/mypyc/external/googletest/src/gtest-internal-inl.h +1183 -0
  1108. jaclang/vendor/mypyc/external/googletest/src/gtest-port.cc +1259 -0
  1109. jaclang/vendor/mypyc/external/googletest/src/gtest-printers.cc +373 -0
  1110. jaclang/vendor/mypyc/external/googletest/src/gtest-test-part.cc +110 -0
  1111. jaclang/vendor/mypyc/external/googletest/src/gtest-typed-test.cc +118 -0
  1112. jaclang/vendor/mypyc/external/googletest/src/gtest.cc +5388 -0
  1113. jaclang/vendor/mypyc/external/googletest/src/gtest_main.cc +38 -0
  1114. jaclang/vendor/mypyc/ir/class_ir.py +8 -24
  1115. jaclang/vendor/mypyc/ir/func_ir.py +3 -16
  1116. jaclang/vendor/mypyc/ir/module_ir.py +2 -6
  1117. jaclang/vendor/mypyc/ir/ops.py +103 -66
  1118. jaclang/vendor/mypyc/ir/pprint.py +35 -55
  1119. jaclang/vendor/mypyc/ir/rtypes.py +16 -48
  1120. jaclang/vendor/mypyc/irbuild/ast_helpers.py +4 -1
  1121. jaclang/vendor/mypyc/irbuild/builder.py +46 -148
  1122. jaclang/vendor/mypyc/irbuild/callable_class.py +5 -19
  1123. jaclang/vendor/mypyc/irbuild/classdef.py +27 -83
  1124. jaclang/vendor/mypyc/irbuild/env_class.py +3 -9
  1125. jaclang/vendor/mypyc/irbuild/expression.py +42 -100
  1126. jaclang/vendor/mypyc/irbuild/for_helpers.py +56 -105
  1127. jaclang/vendor/mypyc/irbuild/format_str_tokenizer.py +1 -4
  1128. jaclang/vendor/mypyc/irbuild/function.py +40 -132
  1129. jaclang/vendor/mypyc/irbuild/generator.py +14 -49
  1130. jaclang/vendor/mypyc/irbuild/ll_builder.py +197 -426
  1131. jaclang/vendor/mypyc/irbuild/mapper.py +2 -13
  1132. jaclang/vendor/mypyc/irbuild/match.py +11 -36
  1133. jaclang/vendor/mypyc/irbuild/nonlocalcontrol.py +2 -7
  1134. jaclang/vendor/mypyc/irbuild/prebuildvisitor.py +1 -4
  1135. jaclang/vendor/mypyc/irbuild/prepare.py +25 -83
  1136. jaclang/vendor/mypyc/irbuild/specialize.py +22 -72
  1137. jaclang/vendor/mypyc/irbuild/statement.py +30 -96
  1138. jaclang/vendor/mypyc/irbuild/targets.py +1 -3
  1139. jaclang/vendor/mypyc/irbuild/util.py +2 -8
  1140. jaclang/vendor/mypyc/irbuild/vtable.py +1 -3
  1141. jaclang/vendor/mypyc/lib-rt/CPy.h +638 -0
  1142. jaclang/vendor/mypyc/lib-rt/bytes_ops.c +143 -0
  1143. jaclang/vendor/mypyc/lib-rt/dict_ops.c +446 -0
  1144. jaclang/vendor/mypyc/lib-rt/exc_ops.c +259 -0
  1145. jaclang/vendor/mypyc/lib-rt/float_ops.c +192 -0
  1146. jaclang/vendor/mypyc/lib-rt/generic_ops.c +64 -0
  1147. jaclang/vendor/mypyc/lib-rt/getargs.c +450 -0
  1148. jaclang/vendor/mypyc/lib-rt/getargsfast.c +569 -0
  1149. jaclang/vendor/mypyc/lib-rt/init.c +13 -0
  1150. jaclang/vendor/mypyc/lib-rt/int_ops.c +803 -0
  1151. jaclang/vendor/mypyc/lib-rt/list_ops.c +335 -0
  1152. jaclang/vendor/mypyc/lib-rt/misc_ops.c +942 -0
  1153. jaclang/vendor/mypyc/lib-rt/module_shim.tmpl +18 -0
  1154. jaclang/vendor/mypyc/lib-rt/mypyc_util.h +118 -0
  1155. jaclang/vendor/mypyc/lib-rt/pythoncapi_compat.h +497 -0
  1156. jaclang/vendor/mypyc/lib-rt/pythonsupport.h +533 -0
  1157. jaclang/vendor/mypyc/lib-rt/set_ops.c +17 -0
  1158. jaclang/vendor/mypyc/lib-rt/setup.py +70 -0
  1159. jaclang/vendor/mypyc/lib-rt/str_ops.c +241 -0
  1160. jaclang/vendor/mypyc/lib-rt/test_capi.cc +585 -0
  1161. jaclang/vendor/mypyc/lib-rt/tuple_ops.c +61 -0
  1162. jaclang/vendor/mypyc/lower/__init__.py +0 -0
  1163. jaclang/vendor/mypyc/lower/int_ops.py +113 -0
  1164. jaclang/vendor/mypyc/lower/list_ops.py +45 -0
  1165. jaclang/vendor/mypyc/lower/misc_ops.py +12 -0
  1166. jaclang/vendor/mypyc/lower/registry.py +26 -0
  1167. jaclang/vendor/mypyc/options.py +1 -3
  1168. jaclang/vendor/mypyc/primitives/dict_ops.py +1 -4
  1169. jaclang/vendor/mypyc/primitives/exc_ops.py +3 -12
  1170. jaclang/vendor/mypyc/primitives/int_ops.py +22 -32
  1171. jaclang/vendor/mypyc/primitives/list_ops.py +10 -0
  1172. jaclang/vendor/mypyc/primitives/misc_ops.py +28 -22
  1173. jaclang/vendor/mypyc/primitives/registry.py +56 -19
  1174. jaclang/vendor/mypyc/primitives/set_ops.py +1 -3
  1175. jaclang/vendor/mypyc/rt_subtype.py +1 -2
  1176. jaclang/vendor/mypyc/sametype.py +2 -5
  1177. jaclang/vendor/mypyc/subtype.py +3 -12
  1178. jaclang/vendor/mypyc/test/test_alwaysdefined.py +2 -6
  1179. jaclang/vendor/mypyc/test/test_analysis.py +8 -24
  1180. jaclang/vendor/mypyc/test/test_cheader.py +12 -4
  1181. jaclang/vendor/mypyc/test/test_emit.py +4 -14
  1182. jaclang/vendor/mypyc/test/test_emitclass.py +1 -8
  1183. jaclang/vendor/mypyc/test/test_emitfunc.py +30 -77
  1184. jaclang/vendor/mypyc/test/test_emitwrapper.py +1 -3
  1185. jaclang/vendor/mypyc/test/test_exceptions.py +4 -12
  1186. jaclang/vendor/mypyc/test/test_external.py +1 -5
  1187. jaclang/vendor/mypyc/test/test_irbuild.py +2 -6
  1188. jaclang/vendor/mypyc/test/test_ircheck.py +6 -17
  1189. jaclang/vendor/mypyc/test/test_literals.py +1 -4
  1190. jaclang/vendor/mypyc/test/test_lowering.py +56 -0
  1191. jaclang/vendor/mypyc/test/test_namegen.py +1 -4
  1192. jaclang/vendor/mypyc/test/test_optimizations.py +68 -0
  1193. jaclang/vendor/mypyc/test/test_refcount.py +3 -9
  1194. jaclang/vendor/mypyc/test/test_run.py +12 -38
  1195. jaclang/vendor/mypyc/test/test_serialization.py +1 -3
  1196. jaclang/vendor/mypyc/test/test_struct.py +3 -11
  1197. jaclang/vendor/mypyc/test/test_tuplename.py +4 -13
  1198. jaclang/vendor/mypyc/test/test_typeops.py +1 -4
  1199. jaclang/vendor/mypyc/test/testutil.py +2 -6
  1200. jaclang/vendor/mypyc/test-data/alwaysdefined.test +732 -0
  1201. jaclang/vendor/mypyc/test-data/analysis.test +470 -0
  1202. jaclang/vendor/mypyc/test-data/commandline.test +245 -0
  1203. jaclang/vendor/mypyc/test-data/driver/driver.py +48 -0
  1204. jaclang/vendor/mypyc/test-data/exceptions-freq.test +125 -0
  1205. jaclang/vendor/mypyc/test-data/exceptions.test +699 -0
  1206. jaclang/vendor/mypyc/test-data/fixtures/ir.py +373 -0
  1207. jaclang/vendor/mypyc/test-data/fixtures/testutil.py +103 -0
  1208. jaclang/vendor/mypyc/test-data/fixtures/typing-full.pyi +169 -0
  1209. jaclang/vendor/mypyc/test-data/irbuild-any.test +236 -0
  1210. jaclang/vendor/mypyc/test-data/irbuild-basic.test +3399 -0
  1211. jaclang/vendor/mypyc/test-data/irbuild-bool.test +424 -0
  1212. jaclang/vendor/mypyc/test-data/irbuild-bytes.test +181 -0
  1213. jaclang/vendor/mypyc/test-data/irbuild-classes.test +1302 -0
  1214. jaclang/vendor/mypyc/test-data/irbuild-constant-fold.test +480 -0
  1215. jaclang/vendor/mypyc/test-data/irbuild-dict.test +584 -0
  1216. jaclang/vendor/mypyc/test-data/irbuild-dunders.test +215 -0
  1217. jaclang/vendor/mypyc/test-data/irbuild-float.test +497 -0
  1218. jaclang/vendor/mypyc/test-data/irbuild-generics.test +150 -0
  1219. jaclang/vendor/mypyc/test-data/irbuild-glue-methods.test +437 -0
  1220. jaclang/vendor/mypyc/test-data/irbuild-i16.test +526 -0
  1221. jaclang/vendor/mypyc/test-data/irbuild-i32.test +598 -0
  1222. jaclang/vendor/mypyc/test-data/irbuild-i64.test +2144 -0
  1223. jaclang/vendor/mypyc/test-data/irbuild-int.test +194 -0
  1224. jaclang/vendor/mypyc/test-data/irbuild-isinstance.test +109 -0
  1225. jaclang/vendor/mypyc/test-data/irbuild-lists.test +513 -0
  1226. jaclang/vendor/mypyc/test-data/irbuild-match.test +1717 -0
  1227. jaclang/vendor/mypyc/test-data/irbuild-math.test +64 -0
  1228. jaclang/vendor/mypyc/test-data/irbuild-nested.test +807 -0
  1229. jaclang/vendor/mypyc/test-data/irbuild-optional.test +536 -0
  1230. jaclang/vendor/mypyc/test-data/irbuild-set.test +806 -0
  1231. jaclang/vendor/mypyc/test-data/irbuild-singledispatch.test +257 -0
  1232. jaclang/vendor/mypyc/test-data/irbuild-statements.test +1060 -0
  1233. jaclang/vendor/mypyc/test-data/irbuild-str.test +312 -0
  1234. jaclang/vendor/mypyc/test-data/irbuild-strip-asserts.test +12 -0
  1235. jaclang/vendor/mypyc/test-data/irbuild-try.test +523 -0
  1236. jaclang/vendor/mypyc/test-data/irbuild-tuple.test +386 -0
  1237. jaclang/vendor/mypyc/test-data/irbuild-u8.test +543 -0
  1238. jaclang/vendor/mypyc/test-data/irbuild-unreachable.test +241 -0
  1239. jaclang/vendor/mypyc/test-data/irbuild-vectorcall.test +153 -0
  1240. jaclang/vendor/mypyc/test-data/lowering-int.test +377 -0
  1241. jaclang/vendor/mypyc/test-data/lowering-list.test +33 -0
  1242. jaclang/vendor/mypyc/test-data/opt-copy-propagation.test +400 -0
  1243. jaclang/vendor/mypyc/test-data/opt-flag-elimination.test +296 -0
  1244. jaclang/vendor/mypyc/test-data/refcount.test +1482 -0
  1245. jaclang/vendor/mypyc/test-data/run-async.test +173 -0
  1246. jaclang/vendor/mypyc/test-data/run-attrs.test +318 -0
  1247. jaclang/vendor/mypyc/test-data/run-bench.test +196 -0
  1248. jaclang/vendor/mypyc/test-data/run-bools.test +229 -0
  1249. jaclang/vendor/mypyc/test-data/run-bytes.test +302 -0
  1250. jaclang/vendor/mypyc/test-data/run-classes.test +2505 -0
  1251. jaclang/vendor/mypyc/test-data/run-dicts.test +334 -0
  1252. jaclang/vendor/mypyc/test-data/run-dunders.test +945 -0
  1253. jaclang/vendor/mypyc/test-data/run-exceptions.test +448 -0
  1254. jaclang/vendor/mypyc/test-data/run-floats.test +516 -0
  1255. jaclang/vendor/mypyc/test-data/run-functions.test +1310 -0
  1256. jaclang/vendor/mypyc/test-data/run-generators.test +682 -0
  1257. jaclang/vendor/mypyc/test-data/run-i16.test +338 -0
  1258. jaclang/vendor/mypyc/test-data/run-i32.test +336 -0
  1259. jaclang/vendor/mypyc/test-data/run-i64.test +1519 -0
  1260. jaclang/vendor/mypyc/test-data/run-imports.test +265 -0
  1261. jaclang/vendor/mypyc/test-data/run-integers.test +540 -0
  1262. jaclang/vendor/mypyc/test-data/run-lists.test +411 -0
  1263. jaclang/vendor/mypyc/test-data/run-loops.test +485 -0
  1264. jaclang/vendor/mypyc/test-data/run-match.test +283 -0
  1265. jaclang/vendor/mypyc/test-data/run-math.test +106 -0
  1266. jaclang/vendor/mypyc/test-data/run-misc.test +1170 -0
  1267. jaclang/vendor/mypyc/test-data/run-multimodule.test +887 -0
  1268. jaclang/vendor/mypyc/test-data/run-mypy-sim.test +138 -0
  1269. jaclang/vendor/mypyc/test-data/run-primitives.test +375 -0
  1270. jaclang/vendor/mypyc/test-data/run-python37.test +159 -0
  1271. jaclang/vendor/mypyc/test-data/run-python38.test +88 -0
  1272. jaclang/vendor/mypyc/test-data/run-sets.test +150 -0
  1273. jaclang/vendor/mypyc/test-data/run-singledispatch.test +698 -0
  1274. jaclang/vendor/mypyc/test-data/run-strings.test +641 -0
  1275. jaclang/vendor/mypyc/test-data/run-traits.test +411 -0
  1276. jaclang/vendor/mypyc/test-data/run-tuples.test +258 -0
  1277. jaclang/vendor/mypyc/test-data/run-u8.test +303 -0
  1278. jaclang/vendor/mypyc/transform/copy_propagation.py +94 -0
  1279. jaclang/vendor/mypyc/transform/exceptions.py +1 -5
  1280. jaclang/vendor/mypyc/transform/flag_elimination.py +108 -0
  1281. jaclang/vendor/mypyc/transform/ir_transform.py +368 -0
  1282. jaclang/vendor/mypyc/transform/lower.py +33 -0
  1283. jaclang/vendor/mypyc/transform/refcount.py +7 -30
  1284. jaclang/vendor/mypyc/transform/uninit.py +4 -15
  1285. jaclang/vendor/pluggy/__init__.py +15 -11
  1286. jaclang/vendor/pluggy/_callers.py +34 -5
  1287. jaclang/vendor/pluggy/_hooks.py +35 -7
  1288. jaclang/vendor/pluggy/_manager.py +26 -3
  1289. jaclang/vendor/pluggy/_result.py +0 -15
  1290. jaclang/vendor/pluggy/_version.py +16 -0
  1291. jaclang/vendor/pluggy/_warnings.py +27 -0
  1292. jaclang/vendor/pluggy-1.5.0.dist-info/LICENSE +21 -0
  1293. jaclang/vendor/pluggy-1.5.0.dist-info/METADATA +155 -0
  1294. jaclang/vendor/pluggy-1.5.0.dist-info/RECORD +14 -0
  1295. jaclang/vendor/pluggy-1.5.0.dist-info/top_level.txt +1 -0
  1296. jaclang/vendor/pygls/__init__.py +25 -0
  1297. jaclang/vendor/pygls/capabilities.py +460 -0
  1298. jaclang/vendor/pygls/client.py +176 -0
  1299. jaclang/vendor/pygls/constants.py +26 -0
  1300. jaclang/vendor/pygls/exceptions.py +215 -0
  1301. jaclang/vendor/pygls/feature_manager.py +244 -0
  1302. jaclang/vendor/pygls/lsp/__init__.py +139 -0
  1303. jaclang/vendor/pygls/lsp/client.py +1961 -0
  1304. jaclang/vendor/pygls/progress.py +79 -0
  1305. jaclang/vendor/pygls/protocol/__init__.py +78 -0
  1306. jaclang/vendor/pygls/protocol/json_rpc.py +560 -0
  1307. jaclang/vendor/pygls/protocol/language_server.py +569 -0
  1308. jaclang/vendor/pygls/protocol/lsp_meta.py +51 -0
  1309. jaclang/vendor/pygls/py.typed +2 -0
  1310. jaclang/vendor/pygls/server.py +616 -0
  1311. jaclang/vendor/pygls/uris.py +184 -0
  1312. jaclang/vendor/pygls/workspace/__init__.py +97 -0
  1313. jaclang/vendor/pygls/workspace/position_codec.py +206 -0
  1314. jaclang/vendor/pygls/workspace/text_document.py +238 -0
  1315. jaclang/vendor/pygls/workspace/workspace.py +323 -0
  1316. jaclang/vendor/pygls-1.3.1.dist-info/LICENSE.txt +201 -0
  1317. jaclang/vendor/pygls-1.3.1.dist-info/METADATA +105 -0
  1318. jaclang/vendor/pygls-1.3.1.dist-info/RECORD +24 -0
  1319. jaclang/vendor/pygls-1.3.1.dist-info/WHEEL +4 -0
  1320. jaclang/vendor/typing_extensions-4.12.2.dist-info/LICENSE +279 -0
  1321. jaclang/vendor/typing_extensions-4.12.2.dist-info/METADATA +67 -0
  1322. jaclang/vendor/typing_extensions-4.12.2.dist-info/RECORD +5 -0
  1323. jaclang/vendor/typing_extensions-4.12.2.dist-info/WHEEL +4 -0
  1324. jaclang/vendor/typing_extensions.py +1209 -641
  1325. jaclang-0.7.0.dist-info/METADATA +98 -0
  1326. jaclang-0.7.0.dist-info/RECORD +1475 -0
  1327. jaclang-0.7.0.dist-info/WHEEL +4 -0
  1328. jaclang-0.7.0.dist-info/entry_points.txt +3 -0
  1329. jaclang/compiler/generated/jac_parser.py +0 -4069
  1330. jaclang/compiler/tests/test_workspace.py +0 -93
  1331. jaclang/compiler/workspace.py +0 -234
  1332. jaclang-0.6.1.dist-info/METADATA +0 -17
  1333. jaclang-0.6.1.dist-info/RECORD +0 -430
  1334. jaclang-0.6.1.dist-info/entry_points.txt +0 -2
  1335. jaclang-0.6.1.dist-info/top_level.txt +0 -1
  1336. /jaclang/{compiler/generated/__init__.py → vendor/attr/py.typed} +0 -0
  1337. {jaclang-0.6.1.dist-info → jaclang/vendor/pluggy-1.5.0.dist-info}/WHEEL +0 -0
@@ -67,9 +67,7 @@ def setup_callable_class(builder: IRBuilder) -> None:
67
67
  # If the enclosing class doesn't contain nested (which will happen if
68
68
  # this is a toplevel lambda), don't set up an environment.
69
69
  if builder.fn_infos[-2].contains_nested:
70
- callable_class_ir.attributes[ENV_ATTR_NAME] = RInstance(
71
- builder.fn_infos[-2].env_class
72
- )
70
+ callable_class_ir.attributes[ENV_ATTR_NAME] = RInstance(builder.fn_infos[-2].env_class)
73
71
  callable_class_ir.mro = [callable_class_ir]
74
72
  builder.fn_info.callable_class = ImplicitClass(callable_class_ir)
75
73
  builder.classes.append(callable_class_ir)
@@ -77,9 +75,7 @@ def setup_callable_class(builder: IRBuilder) -> None:
77
75
  # Add a 'self' variable to the environment of the callable class,
78
76
  # and store that variable in a register to be accessed later.
79
77
  self_target = builder.add_self_to_env(callable_class_ir)
80
- builder.fn_info.callable_class.self_reg = builder.read(
81
- self_target, builder.fn_info.fitem.line
82
- )
78
+ builder.fn_info.callable_class.self_reg = builder.read(self_target, builder.fn_info.fitem.line)
83
79
 
84
80
 
85
81
  def add_call_to_callable_class(
@@ -100,15 +96,9 @@ def add_call_to_callable_class(
100
96
  sig = FuncSignature(
101
97
  (RuntimeArg(SELF_NAME, object_rprimitive),) + sig.args[:nargs], sig.ret_type
102
98
  )
103
- call_fn_decl = FuncDecl(
104
- "__call__", fn_info.callable_class.ir.name, builder.module_name, sig
105
- )
99
+ call_fn_decl = FuncDecl("__call__", fn_info.callable_class.ir.name, builder.module_name, sig)
106
100
  call_fn_ir = FuncIR(
107
- call_fn_decl,
108
- args,
109
- blocks,
110
- fn_info.fitem.line,
111
- traceback_name=fn_info.fitem.name,
101
+ call_fn_decl, args, blocks, fn_info.fitem.line, traceback_name=fn_info.fitem.name
112
102
  )
113
103
  fn_info.callable_class.ir.methods["__call__"] = call_fn_ir
114
104
  fn_info.callable_class.ir.method_decls["__call__"] = call_fn_decl
@@ -142,11 +132,7 @@ def add_get_to_callable_class(builder: IRBuilder, fn_info: FuncInfo) -> None:
142
132
 
143
133
  builder.activate_block(instance_block)
144
134
  builder.add(
145
- Return(
146
- builder.call_c(
147
- method_new_op, [builder.self(), builder.read(instance)], line
148
- )
149
- )
135
+ Return(builder.call_c(method_new_op, [builder.self(), builder.read(instance)], line))
150
136
  )
151
137
 
152
138
 
@@ -61,12 +61,7 @@ from mypyc.irbuild.function import (
61
61
  handle_non_ext_method,
62
62
  load_type,
63
63
  )
64
- from mypyc.irbuild.util import (
65
- dataclass_type,
66
- get_func_def,
67
- is_constant,
68
- is_dataclass_decorator,
69
- )
64
+ from mypyc.irbuild.util import dataclass_type, get_func_def, is_constant, is_dataclass_decorator
70
65
  from mypyc.primitives.dict_ops import dict_new_op, dict_set_item_op
71
66
  from mypyc.primitives.generic_ops import py_hasattr_op, py_setattr_op
72
67
  from mypyc.primitives.misc_ops import (
@@ -95,12 +90,8 @@ def transform_class_def(builder: IRBuilder, cdef: ClassDef) -> None:
95
90
  # We do this check here because the base field of parent
96
91
  # classes aren't necessarily populated yet at
97
92
  # prepare_class_def time.
98
- if any(
99
- ir.base_mro[i].base != ir.base_mro[i + 1] for i in range(len(ir.base_mro) - 1)
100
- ):
101
- builder.error(
102
- "Multiple inheritance is not supported (except for traits)", cdef.line
103
- )
93
+ if any(ir.base_mro[i].base != ir.base_mro[i + 1] for i in range(len(ir.base_mro) - 1)):
94
+ builder.error("Multiple inheritance is not supported (except for traits)", cdef.line)
104
95
 
105
96
  if ir.allow_interpreted_subclasses:
106
97
  for parent in ir.mro:
@@ -133,9 +124,7 @@ def transform_class_def(builder: IRBuilder, cdef: ClassDef) -> None:
133
124
  if isinstance(cls_builder, NonExtClassBuilder):
134
125
  # properties with both getters and setters in non_extension
135
126
  # classes not supported
136
- builder.error(
137
- "Property setters not supported in non-extension classes", stmt.line
138
- )
127
+ builder.error("Property setters not supported in non-extension classes", stmt.line)
139
128
  for item in stmt.items:
140
129
  with builder.catch_errors(stmt.line):
141
130
  cls_builder.add_method(get_func_def(item))
@@ -151,15 +140,12 @@ def transform_class_def(builder: IRBuilder, cdef: ClassDef) -> None:
151
140
  continue
152
141
  elif isinstance(stmt, AssignmentStmt):
153
142
  if len(stmt.lvalues) != 1:
154
- builder.error(
155
- "Multiple assignment in class bodies not supported", stmt.line
156
- )
143
+ builder.error("Multiple assignment in class bodies not supported", stmt.line)
157
144
  continue
158
145
  lvalue = stmt.lvalues[0]
159
146
  if not isinstance(lvalue, NameExpr):
160
147
  builder.error(
161
- "Only assignment to variables is supported in class bodies",
162
- stmt.line,
148
+ "Only assignment to variables is supported in class bodies", stmt.line
163
149
  )
164
150
  continue
165
151
  # We want to collect class variables in a dictionary for both real
@@ -226,9 +212,7 @@ class NonExtClassBuilder(ClassBuilder):
226
212
 
227
213
  def create_non_ext_info(self) -> NonExtClassInfo:
228
214
  non_ext_bases = populate_non_ext_bases(self.builder, self.cdef)
229
- non_ext_metaclass = find_non_ext_metaclass(
230
- self.builder, self.cdef, non_ext_bases
231
- )
215
+ non_ext_metaclass = find_non_ext_metaclass(self.builder, self.cdef, non_ext_bases)
232
216
  non_ext_dict = setup_non_ext_dict(
233
217
  self.builder, self.cdef, non_ext_metaclass, non_ext_bases
234
218
  )
@@ -236,9 +220,7 @@ class NonExtClassBuilder(ClassBuilder):
236
220
  # because dataclasses uses it to determine which attributes to compute on.
237
221
  # TODO: Maybe generate more precise types for annotations
238
222
  non_ext_anns = self.builder.call_c(dict_new_op, [], self.cdef.line)
239
- return NonExtClassInfo(
240
- non_ext_dict, non_ext_bases, non_ext_anns, non_ext_metaclass
241
- )
223
+ return NonExtClassInfo(non_ext_dict, non_ext_bases, non_ext_anns, non_ext_metaclass)
242
224
 
243
225
  def add_method(self, fdef: FuncDef) -> None:
244
226
  handle_non_ext_method(self.builder, self.non_ext, self.cdef, fdef)
@@ -251,16 +233,12 @@ class NonExtClassBuilder(ClassBuilder):
251
233
 
252
234
  def finalize(self, ir: ClassIR) -> None:
253
235
  # Dynamically create the class via the type constructor
254
- non_ext_class = load_non_ext_class(
255
- self.builder, ir, self.non_ext, self.cdef.line
256
- )
236
+ non_ext_class = load_non_ext_class(self.builder, ir, self.non_ext, self.cdef.line)
257
237
  non_ext_class = load_decorated_class(self.builder, self.cdef, non_ext_class)
258
238
 
259
239
  # Save the decorated class
260
240
  self.builder.add(
261
- InitStatic(
262
- non_ext_class, self.cdef.name, self.builder.module_name, NAMESPACE_TYPE
263
- )
241
+ InitStatic(non_ext_class, self.cdef.name, self.builder.module_name, NAMESPACE_TYPE)
264
242
  )
265
243
 
266
244
  # Add the non-extension class to the dict
@@ -336,9 +314,7 @@ class DataClassBuilder(ExtClassBuilder):
336
314
  self.builder.call_c(dict_new_op, [], self.cdef.line),
337
315
  self.builder.add(TupleSet([], self.cdef.line)),
338
316
  self.builder.call_c(dict_new_op, [], self.cdef.line),
339
- self.builder.add(
340
- LoadAddress(type_object_op.type, type_object_op.src, self.cdef.line)
341
- ),
317
+ self.builder.add(LoadAddress(type_object_op.type, type_object_op.src, self.cdef.line)),
342
318
  )
343
319
 
344
320
  def skip_attr_default(self, name: str, stmt: AssignmentStmt) -> bool:
@@ -419,9 +395,7 @@ class AttrsClassBuilder(DataClassBuilder):
419
395
  ):
420
396
  index = stmt.rvalue.arg_names.index("type")
421
397
  type_name = stmt.rvalue.args[index]
422
- if isinstance(type_name, NameExpr) and isinstance(
423
- type_name.node, TypeInfo
424
- ):
398
+ if isinstance(type_name, NameExpr) and isinstance(type_name.node, TypeInfo):
425
399
  lvalue = stmt.lvalues[0]
426
400
  assert isinstance(lvalue, NameExpr)
427
401
  return type_name.node
@@ -438,17 +412,10 @@ def allocate_class(builder: IRBuilder, cdef: ClassDef) -> Value:
438
412
  tp_bases = builder.add(LoadErrorValue(object_rprimitive, is_borrowed=True))
439
413
  modname = builder.load_str(builder.module_name)
440
414
  template = builder.add(
441
- LoadStatic(
442
- object_rprimitive,
443
- cdef.name + "_template",
444
- builder.module_name,
445
- NAMESPACE_TYPE,
446
- )
415
+ LoadStatic(object_rprimitive, cdef.name + "_template", builder.module_name, NAMESPACE_TYPE)
447
416
  )
448
417
  # Create the class
449
- tp = builder.call_c(
450
- pytype_from_template_op, [template, tp_bases, modname], cdef.line
451
- )
418
+ tp = builder.call_c(pytype_from_template_op, [template, tp_bases, modname], cdef.line)
452
419
  # Immediately fix up the trait vtables, before doing anything with the class.
453
420
  ir = builder.mapper.type_to_ir[cdef.info]
454
421
  if not ir.is_trait and not ir.builtin_base:
@@ -470,9 +437,7 @@ def allocate_class(builder: IRBuilder, cdef: ClassDef) -> Value:
470
437
  [
471
438
  tp,
472
439
  builder.load_str("__mypyc_attrs__"),
473
- create_mypyc_attrs_tuple(
474
- builder, builder.mapper.type_to_ir[cdef.info], cdef.line
475
- ),
440
+ create_mypyc_attrs_tuple(builder, builder.mapper.type_to_ir[cdef.info], cdef.line),
476
441
  ],
477
442
  cdef.line,
478
443
  )
@@ -482,9 +447,7 @@ def allocate_class(builder: IRBuilder, cdef: ClassDef) -> Value:
482
447
 
483
448
  # Add it to the dict
484
449
  builder.call_c(
485
- dict_set_item_op,
486
- [builder.load_globals_dict(), builder.load_str(cdef.name), tp],
487
- cdef.line,
450
+ dict_set_item_op, [builder.load_globals_dict(), builder.load_str(cdef.name), tp], cdef.line
488
451
  )
489
452
 
490
453
  return tp
@@ -572,10 +535,7 @@ def find_non_ext_metaclass(builder: IRBuilder, cdef: ClassDef, bases: Value) ->
572
535
  if cdef.metaclass:
573
536
  declared_metaclass = builder.accept(cdef.metaclass)
574
537
  else:
575
- if cdef.info.typeddict_type is not None and builder.options.capi_version >= (
576
- 3,
577
- 9,
578
- ):
538
+ if cdef.info.typeddict_type is not None and builder.options.capi_version >= (3, 9):
579
539
  # In Python 3.9, the metaclass for class-based TypedDict is typing._TypedDictMeta.
580
540
  # We can't easily calculate it generically, so special case it.
581
541
  return builder.get_module_attr("typing", "_TypedDictMeta", cdef.line)
@@ -654,9 +614,7 @@ def add_non_ext_class_attr_ann(
654
614
  elif isinstance(ann_type, Instance):
655
615
  typ = load_type(builder, ann_type.type, stmt.line)
656
616
  else:
657
- typ = builder.add(
658
- LoadAddress(type_object_op.type, type_object_op.src, stmt.line)
659
- )
617
+ typ = builder.add(LoadAddress(type_object_op.type, type_object_op.src, stmt.line))
660
618
 
661
619
  key = builder.load_str(lvalue.name)
662
620
  builder.call_c(dict_set_item_op, [non_ext.anns, key, typ], stmt.line)
@@ -689,9 +647,7 @@ def add_non_ext_class_attr(
689
647
 
690
648
 
691
649
  def find_attr_initializers(
692
- builder: IRBuilder,
693
- cdef: ClassDef,
694
- skip: Callable[[str, AssignmentStmt], bool] | None = None,
650
+ builder: IRBuilder, cdef: ClassDef, skip: Callable[[str, AssignmentStmt], bool] | None = None
695
651
  ) -> tuple[set[str], list[AssignmentStmt]]:
696
652
  """Find initializers of attributes in a class body.
697
653
 
@@ -733,10 +689,7 @@ def find_attr_initializers(
733
689
 
734
690
  # If the attribute is initialized to None and type isn't optional,
735
691
  # doesn't initialize it to anything (special case for "# type:" comments).
736
- if (
737
- isinstance(stmt.rvalue, RefExpr)
738
- and stmt.rvalue.fullname == "builtins.None"
739
- ):
692
+ if isinstance(stmt.rvalue, RefExpr) and stmt.rvalue.fullname == "builtins.None":
740
693
  if (
741
694
  not is_optional_type(attr_type)
742
695
  and not is_object_rprimitive(attr_type)
@@ -790,9 +743,9 @@ def check_deletable_declaration(builder: IRBuilder, cl: ClassIR, line: int) -> N
790
743
  else:
791
744
  _, base = cl.attr_details(attr)
792
745
  builder.error(
793
- (
794
- 'Attribute "{}" not defined in "{}" ' + '(defined in "{}")'
795
- ).format(attr, cl.name, base.name),
746
+ ('Attribute "{}" not defined in "{}" ' + '(defined in "{}")').format(
747
+ attr, cl.name, base.name
748
+ ),
796
749
  line,
797
750
  )
798
751
 
@@ -825,9 +778,7 @@ def gen_glue_ne_method(builder: IRBuilder, cls: ClassIR, line: int) -> None:
825
778
  )
826
779
 
827
780
  builder.activate_block(regular_block)
828
- retval = builder.coerce(
829
- builder.unary_op(eqval, "not", line), object_rprimitive, line
830
- )
781
+ retval = builder.coerce(builder.unary_op(eqval, "not", line), object_rprimitive, line)
831
782
  builder.add(Return(retval))
832
783
 
833
784
  builder.activate_block(not_implemented_block)
@@ -885,10 +836,7 @@ def create_mypyc_attrs_tuple(builder: IRBuilder, ir: ClassIR, line: int) -> Valu
885
836
 
886
837
 
887
838
  def add_dunders_to_non_ext_dict(
888
- builder: IRBuilder,
889
- non_ext: NonExtClassInfo,
890
- line: int,
891
- add_annotations: bool = True,
839
+ builder: IRBuilder, non_ext: NonExtClassInfo, line: int, add_annotations: bool = True
892
840
  ) -> None:
893
841
  if add_annotations:
894
842
  # Add __annotations__ to the class dict.
@@ -898,9 +846,5 @@ def add_dunders_to_non_ext_dict(
898
846
  # dataclass decorator, dataclass will not try to look for __text_signature__.
899
847
  # https://github.com/python/cpython/blob/3.7/Lib/dataclasses.py#L957
900
848
  filler_doc_str = "mypyc filler docstring"
901
- builder.add_to_non_ext_dict(
902
- non_ext, "__doc__", builder.load_str(filler_doc_str), line
903
- )
904
- builder.add_to_non_ext_dict(
905
- non_ext, "__module__", builder.load_str(builder.module_name), line
906
- )
849
+ builder.add_to_non_ext_dict(non_ext, "__doc__", builder.load_str(filler_doc_str), line)
850
+ builder.add_to_non_ext_dict(non_ext, "__module__", builder.load_str(builder.module_name), line)
@@ -43,9 +43,7 @@ def setup_env_class(builder: IRBuilder) -> ClassIR:
43
43
  containing a nested function.
44
44
  """
45
45
  env_class = ClassIR(
46
- f"{builder.fn_info.namespaced_name()}_env",
47
- builder.module_name,
48
- is_generated=True,
46
+ f"{builder.fn_info.namespaced_name()}_env", builder.module_name, is_generated=True
49
47
  )
50
48
  env_class.attributes[SELF_NAME] = RInstance(env_class)
51
49
  if builder.fn_info.is_nested:
@@ -190,14 +188,10 @@ def add_args_to_env(
190
188
  if is_free_variable(builder, arg.variable) or fn_info.is_generator:
191
189
  rtype = builder.type_to_rtype(arg.variable.type)
192
190
  assert base is not None, "base cannot be None for adding nonlocal args"
193
- builder.add_var_to_env_class(
194
- arg.variable, rtype, base, reassign=reassign
195
- )
191
+ builder.add_var_to_env_class(arg.variable, rtype, base, reassign=reassign)
196
192
 
197
193
 
198
- def setup_func_for_recursive_call(
199
- builder: IRBuilder, fdef: FuncDef, base: ImplicitClass
200
- ) -> None:
194
+ def setup_func_for_recursive_call(builder: IRBuilder, fdef: FuncDef, base: ImplicitClass) -> None:
201
195
  """Enable calling a nested function (with a callable class) recursively.
202
196
 
203
197
  Adds the instance of the callable class representing the given
@@ -80,6 +80,7 @@ from mypyc.irbuild.builder import IRBuilder, int_borrow_friendly_op
80
80
  from mypyc.irbuild.constant_fold import constant_fold_expr
81
81
  from mypyc.irbuild.for_helpers import (
82
82
  comprehension_helper,
83
+ raise_error_if_contains_unreachable_names,
83
84
  translate_list_comprehension,
84
85
  translate_set_comprehension,
85
86
  )
@@ -90,21 +91,12 @@ from mypyc.irbuild.format_str_tokenizer import (
90
91
  join_formatted_strings,
91
92
  tokenizer_printf_style,
92
93
  )
93
- from mypyc.irbuild.specialize import (
94
- apply_function_specialization,
95
- apply_method_specialization,
96
- )
94
+ from mypyc.irbuild.specialize import apply_function_specialization, apply_method_specialization
97
95
  from mypyc.primitives.bytes_ops import bytes_slice_op
98
96
  from mypyc.primitives.dict_ops import dict_get_item_op, dict_new_op, dict_set_item_op
99
97
  from mypyc.primitives.generic_ops import iter_op
100
- from mypyc.primitives.int_ops import int_comparison_op_mapping
101
98
  from mypyc.primitives.list_ops import list_append_op, list_extend_op, list_slice_op
102
- from mypyc.primitives.misc_ops import (
103
- ellipsis_op,
104
- get_module_dict_op,
105
- new_slice_op,
106
- type_op,
107
- )
99
+ from mypyc.primitives.misc_ops import ellipsis_op, get_module_dict_op, new_slice_op, type_op
108
100
  from mypyc.primitives.registry import CFunctionDescription, builtin_names
109
101
  from mypyc.primitives.set_ops import set_add_op, set_in_op, set_update_op
110
102
  from mypyc.primitives.str_ops import str_slice_op
@@ -134,6 +126,8 @@ def transform_name_expr(builder: IRBuilder, expr: NameExpr) -> Value:
134
126
  return builder.true()
135
127
  if fullname == "builtins.False":
136
128
  return builder.false()
129
+ if fullname in ("typing.TYPE_CHECKING", "typing_extensions.TYPE_CHECKING"):
130
+ return builder.false()
137
131
 
138
132
  math_literal = transform_math_literal(builder, fullname)
139
133
  if math_literal is not None:
@@ -158,9 +152,7 @@ def transform_name_expr(builder: IRBuilder, expr: NameExpr) -> Value:
158
152
  # assignment target and return it. Otherwise if the expression is a global, load it from
159
153
  # the globals dictionary.
160
154
  # Except for imports, that currently always happens in the global namespace.
161
- if expr.kind == LDEF and not (
162
- isinstance(expr.node, Var) and expr.node.is_suppressed_import
163
- ):
155
+ if expr.kind == LDEF and not (isinstance(expr.node, Var) and expr.node.is_suppressed_import):
164
156
  # Try to detect and error when we hit the irritating mypy bug
165
157
  # where a local variable is cast to None. (#5423)
166
158
  if (
@@ -185,20 +177,20 @@ def transform_name_expr(builder: IRBuilder, expr: NameExpr) -> Value:
185
177
  # instead load the module separately on each access.
186
178
  mod_dict = builder.call_c(get_module_dict_op, [], expr.line)
187
179
  obj = builder.call_c(
188
- dict_get_item_op,
189
- [mod_dict, builder.load_str(expr.node.fullname)],
190
- expr.line,
180
+ dict_get_item_op, [mod_dict, builder.load_str(expr.node.fullname)], expr.line
191
181
  )
192
182
  return obj
193
183
  else:
194
- return builder.read(
195
- builder.get_assignment_target(expr, for_read=True), expr.line
196
- )
184
+ return builder.read(builder.get_assignment_target(expr, for_read=True), expr.line)
197
185
 
198
186
  return builder.load_global(expr)
199
187
 
200
188
 
201
189
  def transform_member_expr(builder: IRBuilder, expr: MemberExpr) -> Value:
190
+ # Special Cases
191
+ if expr.fullname in ("typing.TYPE_CHECKING", "typing_extensions.TYPE_CHECKING"):
192
+ return builder.false()
193
+
202
194
  # First check if this is maybe a final attribute.
203
195
  final = builder.get_final_ref(expr)
204
196
  if final is not None:
@@ -226,9 +218,7 @@ def transform_member_expr(builder: IRBuilder, expr: MemberExpr) -> Value:
226
218
  fields = typ.partial_fallback.type.metadata["namedtuple"]["fields"]
227
219
  if expr.name in fields:
228
220
  index = builder.builder.load_int(fields.index(expr.name))
229
- return builder.gen_method_call(
230
- obj, "__getitem__", [index], rtype, expr.line
231
- )
221
+ return builder.gen_method_call(obj, "__getitem__", [index], rtype, expr.line)
232
222
 
233
223
  check_instance_attribute_access_through_class(builder, expr, typ)
234
224
 
@@ -316,9 +306,9 @@ def transform_call_expr(builder: IRBuilder, expr: CallExpr) -> Value:
316
306
  if isinstance(callee.expr, RefExpr) and isinstance(callee.expr.node, MypyFile):
317
307
  # Call a module-level function, not a method.
318
308
  return translate_call(builder, expr, callee)
319
- return apply_method_specialization(
309
+ return apply_method_specialization(builder, expr, callee) or translate_method_call(
320
310
  builder, expr, callee
321
- ) or translate_method_call(builder, expr, callee)
311
+ )
322
312
  elif isinstance(callee, SuperExpr):
323
313
  return translate_super_method_call(builder, expr, callee)
324
314
  else:
@@ -328,9 +318,9 @@ def transform_call_expr(builder: IRBuilder, expr: CallExpr) -> Value:
328
318
  def translate_call(builder: IRBuilder, expr: CallExpr, callee: Expression) -> Value:
329
319
  # The common case of calls is refexprs
330
320
  if isinstance(callee, RefExpr):
331
- return apply_function_specialization(
321
+ return apply_function_specialization(builder, expr, callee) or translate_refexpr_call(
332
322
  builder, expr, callee
333
- ) or translate_refexpr_call(builder, expr, callee)
323
+ )
334
324
 
335
325
  function = builder.accept(callee)
336
326
  args = [builder.accept(arg) for arg in expr.args]
@@ -339,9 +329,7 @@ def translate_call(builder: IRBuilder, expr: CallExpr, callee: Expression) -> Va
339
329
  )
340
330
 
341
331
 
342
- def translate_refexpr_call(
343
- builder: IRBuilder, expr: CallExpr, callee: RefExpr
344
- ) -> Value:
332
+ def translate_refexpr_call(builder: IRBuilder, expr: CallExpr, callee: RefExpr) -> Value:
345
333
  """Translate a non-method call."""
346
334
  # Gen the argument values
347
335
  arg_values = [builder.accept(arg) for arg in expr.args]
@@ -349,9 +337,7 @@ def translate_refexpr_call(
349
337
  return builder.call_refexpr_with_args(expr, callee, arg_values)
350
338
 
351
339
 
352
- def translate_method_call(
353
- builder: IRBuilder, expr: CallExpr, callee: MemberExpr
354
- ) -> Value:
340
+ def translate_method_call(builder: IRBuilder, expr: CallExpr, callee: MemberExpr) -> Value:
355
341
  """Generate IR for an arbitrary call of form e.m(...).
356
342
 
357
343
  This can also deal with calls to module-level functions.
@@ -374,11 +360,7 @@ def translate_method_call(
374
360
  function = builder.accept(callee)
375
361
  args = [builder.accept(arg) for arg in expr.args]
376
362
  return builder.py_call(
377
- function,
378
- args,
379
- expr.line,
380
- arg_kinds=expr.arg_kinds,
381
- arg_names=expr.arg_names,
363
+ function, args, expr.line, arg_kinds=expr.arg_kinds, arg_names=expr.arg_names
382
364
  )
383
365
  else:
384
366
  if isinstance(callee.expr, RefExpr):
@@ -387,11 +369,7 @@ def translate_method_call(
387
369
  typ = get_proper_type(node.type)
388
370
  if isinstance(typ, TypeType) and isinstance(typ.item, Instance):
389
371
  class_ir = builder.mapper.type_to_ir.get(typ.item.type)
390
- if (
391
- class_ir
392
- and class_ir.is_ext_class
393
- and class_ir.has_no_subclasses()
394
- ):
372
+ if class_ir and class_ir.is_ext_class and class_ir.has_no_subclasses():
395
373
  # Call a native classmethod via cls that can be statically bound,
396
374
  # since the class has no subclasses.
397
375
  return call_classmethod(builder, class_ir, expr, callee)
@@ -417,9 +395,7 @@ def translate_method_call(
417
395
  )
418
396
 
419
397
 
420
- def call_classmethod(
421
- builder: IRBuilder, ir: ClassIR, expr: CallExpr, callee: MemberExpr
422
- ) -> Value:
398
+ def call_classmethod(builder: IRBuilder, ir: ClassIR, expr: CallExpr, callee: MemberExpr) -> Value:
423
399
  decl = ir.method_decl(callee.name)
424
400
  args = []
425
401
  arg_kinds, arg_names = expr.arg_kinds.copy(), expr.arg_names.copy()
@@ -445,12 +421,8 @@ def call_classmethod(
445
421
  )
446
422
 
447
423
 
448
- def translate_super_method_call(
449
- builder: IRBuilder, expr: CallExpr, callee: SuperExpr
450
- ) -> Value:
451
- if callee.info is None or (
452
- len(callee.call.args) != 0 and len(callee.call.args) != 2
453
- ):
424
+ def translate_super_method_call(builder: IRBuilder, expr: CallExpr, callee: SuperExpr) -> Value:
425
+ if callee.info is None or (len(callee.call.args) != 0 and len(callee.call.args) != 2):
454
426
  return translate_call(builder, expr, callee)
455
427
 
456
428
  # We support two-argument super but only when it is super(CurrentClass, self)
@@ -645,9 +617,7 @@ def try_gen_slice_op(builder: IRBuilder, base: Value, index: SliceExpr) -> Value
645
617
  # (a sequence can't be longer).
646
618
  end = builder.load_int(MAX_SHORT_INT)
647
619
  candidates = [list_slice_op, tuple_slice_op, str_slice_op, bytes_slice_op]
648
- return builder.builder.matching_call_c(
649
- candidates, [base, begin, end], index.line
650
- )
620
+ return builder.builder.matching_call_c(candidates, [base, begin, end], index.line)
651
621
 
652
622
  return None
653
623
 
@@ -677,9 +647,7 @@ def transform_conditional_expr(builder: IRBuilder, expr: ConditionalExpr) -> Val
677
647
  return target
678
648
 
679
649
 
680
- def set_literal_values(
681
- builder: IRBuilder, items: Sequence[Expression]
682
- ) -> list[object] | None:
650
+ def set_literal_values(builder: IRBuilder, items: Sequence[Expression]) -> list[object] | None:
683
651
  values: list[object] = []
684
652
  for item in items:
685
653
  const_value = constant_fold_expr(builder, item)
@@ -787,7 +755,7 @@ def transform_comparison_expr(builder: IRBuilder, e: ComparisonExpr) -> Value:
787
755
  set_literal = precompute_set_literal(builder, e.operands[1])
788
756
  if set_literal is not None:
789
757
  lhs = e.operands[0]
790
- result = builder.builder.call_c(
758
+ result = builder.builder.primitive_op(
791
759
  set_in_op, [builder.accept(lhs), set_literal], e.line, bool_rprimitive
792
760
  )
793
761
  if first_op == "not in":
@@ -798,14 +766,9 @@ def transform_comparison_expr(builder: IRBuilder, e: ComparisonExpr) -> Value:
798
766
  # Special some common simple cases
799
767
  if first_op in ("is", "is not"):
800
768
  right_expr = e.operands[1]
801
- if (
802
- isinstance(right_expr, NameExpr)
803
- and right_expr.fullname == "builtins.None"
804
- ):
769
+ if isinstance(right_expr, NameExpr) and right_expr.fullname == "builtins.None":
805
770
  # Special case 'is None' / 'is not None'.
806
- return translate_is_none(
807
- builder, e.operands[0], negated=first_op != "is"
808
- )
771
+ return translate_is_none(builder, e.operands[0], negated=first_op != "is")
809
772
  left_expr = e.operands[0]
810
773
  if is_int_rprimitive(builder.node_type(left_expr)):
811
774
  right_expr = e.operands[1]
@@ -814,7 +777,7 @@ def transform_comparison_expr(builder: IRBuilder, e: ComparisonExpr) -> Value:
814
777
  borrow_left = is_borrow_friendly_expr(builder, right_expr)
815
778
  left = builder.accept(left_expr, can_borrow=borrow_left)
816
779
  right = builder.accept(right_expr, can_borrow=True)
817
- return builder.compare_tagged(left, right, first_op, e.line)
780
+ return builder.binary_op(left, right, first_op, e.line)
818
781
 
819
782
  # TODO: Don't produce an expression when used in conditional context
820
783
  # All of the trickiness here is due to support for chained conditionals
@@ -834,9 +797,7 @@ def transform_comparison_expr(builder: IRBuilder, e: ComparisonExpr) -> Value:
834
797
  return builder.builder.shortcircuit_helper(
835
798
  "and",
836
799
  expr_type,
837
- lambda: transform_basic_comparison(
838
- builder, e.operators[i], prev, next, e.line
839
- ),
800
+ lambda: transform_basic_comparison(builder, e.operators[i], prev, next, e.line),
840
801
  lambda: go(i + 1, next),
841
802
  e.line,
842
803
  )
@@ -846,21 +807,13 @@ def transform_comparison_expr(builder: IRBuilder, e: ComparisonExpr) -> Value:
846
807
 
847
808
  def translate_is_none(builder: IRBuilder, expr: Expression, negated: bool) -> Value:
848
809
  v = builder.accept(expr, can_borrow=True)
849
- return builder.binary_op(
850
- v, builder.none_object(), "is not" if negated else "is", expr.line
851
- )
810
+ return builder.binary_op(v, builder.none_object(), "is not" if negated else "is", expr.line)
852
811
 
853
812
 
854
813
  def transform_basic_comparison(
855
814
  builder: IRBuilder, op: str, left: Value, right: Value, line: int
856
815
  ) -> Value:
857
- if (
858
- is_int_rprimitive(left.type)
859
- and is_int_rprimitive(right.type)
860
- and op in int_comparison_op_mapping
861
- ):
862
- return builder.compare_tagged(left, right, op, line)
863
- if is_fixed_width_rtype(left.type) and op in int_comparison_op_mapping:
816
+ if is_fixed_width_rtype(left.type) and op in ComparisonOp.signed_ops:
864
817
  if right.type == left.type:
865
818
  if left.type.is_signed:
866
819
  op_id = ComparisonOp.signed_ops[op]
@@ -877,7 +830,7 @@ def transform_basic_comparison(
877
830
  )
878
831
  elif (
879
832
  is_fixed_width_rtype(right.type)
880
- and op in int_comparison_op_mapping
833
+ and op in ComparisonOp.signed_ops
881
834
  and isinstance(left, Integer)
882
835
  ):
883
836
  if right.type.is_signed:
@@ -919,17 +872,13 @@ def translate_printf_style_formatting(
919
872
  builder, format_ops, exprs, format_expr.line
920
873
  )
921
874
  if substitutions is not None:
922
- return join_formatted_bytes(
923
- builder, literals, substitutions, format_expr.line
924
- )
875
+ return join_formatted_bytes(builder, literals, substitutions, format_expr.line)
925
876
  else:
926
877
  substitutions = convert_format_expr_to_str(
927
878
  builder, format_ops, exprs, format_expr.line
928
879
  )
929
880
  if substitutions is not None:
930
- return join_formatted_strings(
931
- builder, literals, substitutions, format_expr.line
932
- )
881
+ return join_formatted_strings(builder, literals, substitutions, format_expr.line)
933
882
 
934
883
  return None
935
884
 
@@ -968,9 +917,7 @@ def transform_list_expr(builder: IRBuilder, expr: ListExpr) -> Value:
968
917
  return _visit_list_display(builder, expr.items, expr.line)
969
918
 
970
919
 
971
- def _visit_list_display(
972
- builder: IRBuilder, items: list[Expression], line: int
973
- ) -> Value:
920
+ def _visit_list_display(builder: IRBuilder, items: list[Expression], line: int) -> Value:
974
921
  return _visit_display(
975
922
  builder, items, builder.new_list_op, list_append_op, list_extend_op, line, True
976
923
  )
@@ -1017,13 +964,7 @@ def transform_dict_expr(builder: IRBuilder, expr: DictExpr) -> Value:
1017
964
 
1018
965
  def transform_set_expr(builder: IRBuilder, expr: SetExpr) -> Value:
1019
966
  return _visit_display(
1020
- builder,
1021
- expr.items,
1022
- builder.new_set_op,
1023
- set_add_op,
1024
- set_update_op,
1025
- expr.line,
1026
- False,
967
+ builder, expr.items, builder.new_set_op, set_add_op, set_update_op, expr.line, False
1027
968
  )
1028
969
 
1029
970
 
@@ -1072,9 +1013,10 @@ def transform_set_comprehension(builder: IRBuilder, o: SetComprehension) -> Valu
1072
1013
  return translate_set_comprehension(builder, o.generator)
1073
1014
 
1074
1015
 
1075
- def transform_dictionary_comprehension(
1076
- builder: IRBuilder, o: DictionaryComprehension
1077
- ) -> Value:
1016
+ def transform_dictionary_comprehension(builder: IRBuilder, o: DictionaryComprehension) -> Value:
1017
+ if raise_error_if_contains_unreachable_names(builder, o):
1018
+ return builder.none()
1019
+
1078
1020
  d = builder.maybe_spill(builder.call_c(dict_new_op, [], o.line))
1079
1021
  loop_params = list(zip(o.indices, o.sequences, o.condlists, o.is_async))
1080
1022