jaclang 0.6.0__py3-none-any.whl → 0.6.5__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 (1348) 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 +115 -7
  5. jaclang/cli/cmdreg.py +18 -6
  6. jaclang/compiler/.gitignore +1 -0
  7. jaclang/compiler/__init__.py +1 -0
  8. jaclang/compiler/absyntree.py +8 -9
  9. jaclang/compiler/compile.py +4 -4
  10. jaclang/compiler/jac.lark +1 -0
  11. jaclang/compiler/parser.py +16 -3
  12. jaclang/compiler/passes/main/def_impl_match_pass.py +8 -1
  13. jaclang/compiler/passes/main/fuse_typeinfo_pass.py +20 -8
  14. jaclang/compiler/passes/main/import_pass.py +78 -47
  15. jaclang/compiler/passes/main/pyast_gen_pass.py +6 -57
  16. jaclang/compiler/passes/main/pyast_load_pass.py +33 -6
  17. jaclang/compiler/passes/main/pyjac_ast_link_pass.py +218 -0
  18. jaclang/compiler/passes/main/schedules.py +2 -0
  19. jaclang/compiler/passes/main/sym_tab_build_pass.py +9 -3
  20. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl/getme.impl.jac +3 -0
  21. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl.jac +3 -0
  22. jaclang/compiler/passes/main/tests/fixtures/autoimpl.jac +9 -0
  23. jaclang/compiler/passes/main/tests/fixtures/autoimpl.something.else.impl.jac +3 -0
  24. jaclang/compiler/passes/main/tests/fixtures/base.jac +13 -0
  25. jaclang/compiler/passes/main/tests/fixtures/base2.jac +14 -0
  26. jaclang/compiler/passes/main/tests/fixtures/blip.jac +2 -0
  27. jaclang/compiler/passes/main/tests/fixtures/codegentext.jac +31 -0
  28. jaclang/compiler/passes/main/tests/fixtures/decls.jac +10 -0
  29. jaclang/compiler/passes/main/tests/fixtures/defs_and_uses.jac +44 -0
  30. jaclang/compiler/passes/main/tests/fixtures/fstrings.jac +4 -0
  31. jaclang/compiler/passes/main/tests/fixtures/func.jac +18 -0
  32. jaclang/compiler/passes/main/tests/fixtures/func2.jac +8 -0
  33. jaclang/compiler/passes/main/tests/fixtures/game1.jac +15 -0
  34. jaclang/compiler/passes/main/tests/fixtures/impl/defs1.jac +8 -0
  35. jaclang/compiler/passes/main/tests/fixtures/impl/defs2.jac +8 -0
  36. jaclang/compiler/passes/main/tests/fixtures/impl/imps.jac +11 -0
  37. jaclang/compiler/passes/main/tests/fixtures/multi_def_err.jac +7 -0
  38. jaclang/compiler/passes/main/tests/fixtures/registry.jac +36 -0
  39. jaclang/compiler/passes/main/tests/fixtures/type_info.jac +31 -0
  40. jaclang/compiler/passes/main/tests/test_import_pass.py +11 -0
  41. jaclang/compiler/passes/main/tests/test_type_check_pass.py +15 -0
  42. jaclang/compiler/passes/tool/tests/fixtures/corelib.jac +480 -0
  43. jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac +480 -0
  44. jaclang/compiler/passes/tool/tests/fixtures/genai/essay_review.jac +36 -0
  45. jaclang/compiler/passes/tool/tests/fixtures/genai/expert_answer.jac +17 -0
  46. jaclang/compiler/passes/tool/tests/fixtures/genai/joke_gen.jac +32 -0
  47. jaclang/compiler/passes/tool/tests/fixtures/genai/odd_word_out.jac +27 -0
  48. jaclang/compiler/passes/tool/tests/fixtures/genai/personality_finder.jac +35 -0
  49. jaclang/compiler/passes/tool/tests/fixtures/genai/text_to_type.jac +25 -0
  50. jaclang/compiler/passes/tool/tests/fixtures/genai/translator.jac +13 -0
  51. jaclang/compiler/passes/tool/tests/fixtures/genai/wikipedia.jac +63 -0
  52. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.dot +39 -0
  53. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.jac +7 -0
  54. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.txt +20 -0
  55. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/ability_impl_long_comprehension.jac +15 -0
  56. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/call_with_many_parameters.jac +24 -0
  57. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/entry_main.jac +4 -0
  58. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/long_line_nested_dict_access.jac +10 -0
  59. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/multiline_fstrings.jac +16 -0
  60. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_dict.jac +15 -0
  61. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_loop_and_incrementer.jac +13 -0
  62. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/simple_walker.jac +25 -0
  63. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/try_block_and_walker_spawn_and_fstrings.jac +26 -0
  64. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/tuple_iteration_and_not_negation.jac +20 -0
  65. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/type_annotation.jac +3 -0
  66. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_decl_only.jac +12 -0
  67. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_default_values_types_and_docstrings.jac +18 -0
  68. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_inline_ability_impl.jac +8 -0
  69. jaclang/compiler/passes/tool/tests/fixtures/simple_walk.jac +47 -0
  70. jaclang/compiler/passes/tool/tests/fixtures/simple_walk_fmt.jac +47 -0
  71. jaclang/compiler/passes/utils/mypy_ast_build.py +8 -0
  72. jaclang/compiler/tests/fixtures/fam.jac +67 -0
  73. jaclang/compiler/tests/fixtures/hello_world.jac +5 -0
  74. jaclang/compiler/tests/fixtures/kwesc.jac +5 -0
  75. jaclang/compiler/tests/fixtures/mod_doc_test.jac +1 -0
  76. jaclang/compiler/tests/fixtures/staticcheck.jac +20 -0
  77. jaclang/compiler/tests/fixtures/stuff.jac +6 -0
  78. jaclang/core/aott.py +10 -1
  79. jaclang/core/construct.py +157 -21
  80. jaclang/core/importer.py +6 -2
  81. jaclang/core/memory.py +48 -0
  82. jaclang/core/shelve_storage.py +55 -0
  83. jaclang/langserve/__init__.py +1 -0
  84. jaclang/langserve/server.py +108 -0
  85. jaclang/langserve/tests/__init__.py +1 -0
  86. jaclang/langserve/tests/defaults.py +226 -0
  87. jaclang/langserve/tests/fixtures/hello.jac +1 -0
  88. jaclang/langserve/tests/pylsp_jsonrpc/__init__.py +2 -0
  89. jaclang/langserve/tests/pylsp_jsonrpc/dispatchers.py +37 -0
  90. jaclang/langserve/tests/pylsp_jsonrpc/endpoint.py +294 -0
  91. jaclang/langserve/tests/pylsp_jsonrpc/exceptions.py +114 -0
  92. jaclang/langserve/tests/pylsp_jsonrpc/streams.py +113 -0
  93. jaclang/langserve/tests/session.py +255 -0
  94. jaclang/langserve/tests/test_server.py +36 -0
  95. jaclang/langserve/utils.py +53 -0
  96. jaclang/plugin/__init__.py +1 -2
  97. jaclang/plugin/builtin.py +1 -1
  98. jaclang/plugin/default.py +97 -4
  99. jaclang/plugin/feature.py +28 -9
  100. jaclang/plugin/spec.py +45 -10
  101. jaclang/plugin/tests/fixtures/impl_match.jac +9 -0
  102. jaclang/plugin/tests/fixtures/impl_match_impl.jac +3 -0
  103. jaclang/plugin/tests/fixtures/simple_node_connection.jac +55 -0
  104. jaclang/plugin/tests/fixtures/simple_persistent.jac +41 -0
  105. jaclang/plugin/tests/test_jaseci.py +219 -0
  106. jaclang/settings.py +5 -0
  107. jaclang/tests/fixtures/abc.jac +73 -0
  108. jaclang/tests/fixtures/access_checker.jac +19 -0
  109. jaclang/tests/fixtures/access_modifier.jac +49 -0
  110. jaclang/tests/fixtures/aott_raise.jac +25 -0
  111. jaclang/tests/fixtures/arithmetic_bug.jac +13 -0
  112. jaclang/tests/fixtures/assign_compr.jac +15 -0
  113. jaclang/tests/fixtures/assign_compr_dup.jac +15 -0
  114. jaclang/tests/fixtures/builtin_dotgen.jac +41 -0
  115. jaclang/tests/fixtures/chandra_bugs.jac +11 -0
  116. jaclang/tests/fixtures/chandra_bugs2.jac +26 -0
  117. jaclang/tests/fixtures/circle_pysolo.py +91 -0
  118. jaclang/tests/fixtures/deep/deeper/deep_outer_import.jac +9 -0
  119. jaclang/tests/fixtures/deep/deeper/deep_outer_import2.jac +9 -0
  120. jaclang/tests/fixtures/deep/deeper/snd_lev.jac +6 -0
  121. jaclang/tests/fixtures/deep/mycode.jac +4 -0
  122. jaclang/tests/fixtures/deep/one_lev.jac +6 -0
  123. jaclang/tests/fixtures/deep/one_lev_dup.jac +6 -0
  124. jaclang/tests/fixtures/deep/one_lev_dup_py.py +6 -0
  125. jaclang/tests/fixtures/deep_convert.jac +5 -0
  126. jaclang/tests/fixtures/deep_convo.py +6 -0
  127. jaclang/tests/fixtures/deep_import.jac +7 -0
  128. jaclang/tests/fixtures/deferred_field.jac +13 -0
  129. jaclang/tests/fixtures/disconn.jac +29 -0
  130. jaclang/tests/fixtures/edge_node_walk.jac +46 -0
  131. jaclang/tests/fixtures/edge_ops.jac +45 -0
  132. jaclang/tests/fixtures/edges_walk.jac +38 -0
  133. jaclang/tests/fixtures/enum_inside_archtype.jac +20 -0
  134. jaclang/tests/fixtures/err.jac +5 -0
  135. jaclang/tests/fixtures/err2.jac +5 -0
  136. jaclang/tests/fixtures/game1.jac +15 -0
  137. jaclang/tests/fixtures/gendot_bubble_sort.jac +77 -0
  138. jaclang/tests/fixtures/guess_game.jac +47 -0
  139. jaclang/tests/fixtures/has_goodness.jac +15 -0
  140. jaclang/tests/fixtures/hashcheck.jac +12 -0
  141. jaclang/tests/fixtures/hashcheck_dup.jac +12 -0
  142. jaclang/tests/fixtures/hello.jac +5 -0
  143. jaclang/tests/fixtures/hello_nc.jac +5 -0
  144. jaclang/tests/fixtures/ignore.jac +43 -0
  145. jaclang/tests/fixtures/ignore_dup.jac +43 -0
  146. jaclang/tests/fixtures/impl_grab.impl.jac +4 -0
  147. jaclang/tests/fixtures/impl_grab.jac +2 -0
  148. jaclang/tests/fixtures/inherit_check.jac +33 -0
  149. jaclang/tests/fixtures/jacsamp.jac +6 -0
  150. jaclang/tests/fixtures/jp_importer.jac +17 -0
  151. jaclang/tests/fixtures/lambda.jac +6 -0
  152. jaclang/tests/fixtures/maxfail_run_test.jac +5 -0
  153. jaclang/tests/fixtures/mtest.impl.jac +6 -0
  154. jaclang/tests/fixtures/mtest.jac +6 -0
  155. jaclang/tests/fixtures/needs_import.jac +18 -0
  156. jaclang/tests/fixtures/needs_import_1.jac +6 -0
  157. jaclang/tests/fixtures/needs_import_2.jac +6 -0
  158. jaclang/tests/fixtures/needs_import_3.jac +6 -0
  159. jaclang/tests/fixtures/needs_import_dup.jac +18 -0
  160. jaclang/tests/fixtures/package_import.jac +6 -0
  161. jaclang/tests/fixtures/pyfunc.py +11 -0
  162. jaclang/tests/fixtures/pyfunc_1.py +311 -0
  163. jaclang/tests/fixtures/pyfunc_2.py +279 -0
  164. jaclang/tests/fixtures/pyfunc_3.py +310 -0
  165. jaclang/tests/fixtures/random_check.jac +62 -0
  166. jaclang/tests/fixtures/raw_byte_string.jac +18 -0
  167. jaclang/tests/fixtures/registry.jac +37 -0
  168. jaclang/tests/fixtures/run_test.jac +5 -0
  169. jaclang/tests/fixtures/semstr.jac +33 -0
  170. jaclang/tests/fixtures/simple_archs.jac +26 -0
  171. jaclang/tests/fixtures/slice_vals.jac +7 -0
  172. jaclang/tests/fixtures/sub_abil_sep.jac +15 -0
  173. jaclang/tests/fixtures/sub_abil_sep_multilev.jac +17 -0
  174. jaclang/tests/fixtures/try_finally.jac +34 -0
  175. jaclang/tests/fixtures/tupleunpack.jac +6 -0
  176. jaclang/tests/fixtures/tuplytuples.jac +8 -0
  177. jaclang/tests/fixtures/type_info.jac +15 -0
  178. jaclang/tests/fixtures/with_context.jac +30 -0
  179. jaclang/tests/fixtures/with_llm_function.jac +33 -0
  180. jaclang/tests/fixtures/with_llm_lower.jac +45 -0
  181. jaclang/tests/fixtures/with_llm_method.jac +51 -0
  182. jaclang/tests/fixtures/with_llm_type.jac +52 -0
  183. jaclang/tests/test_cli.py +239 -0
  184. jaclang/tests/test_language.py +831 -0
  185. jaclang/tests/test_man_code.py +148 -0
  186. jaclang/tests/test_reference.py +95 -0
  187. jaclang/tests/test_settings.py +46 -0
  188. jaclang/utils/helpers.py +11 -0
  189. jaclang/utils/tests/test_lang_tools.py +17 -0
  190. jaclang/utils/treeprinter.py +17 -4
  191. jaclang/vendor/__init__.py +12 -1
  192. jaclang/vendor/attr/__init__.py +134 -0
  193. jaclang/vendor/attr/__init__.pyi +555 -0
  194. jaclang/vendor/attr/_cmp.py +150 -0
  195. jaclang/vendor/attr/_cmp.pyi +13 -0
  196. jaclang/vendor/attr/_compat.py +87 -0
  197. jaclang/vendor/attr/_config.py +31 -0
  198. jaclang/vendor/attr/_funcs.py +483 -0
  199. jaclang/vendor/attr/_make.py +3119 -0
  200. jaclang/vendor/attr/_next_gen.py +229 -0
  201. jaclang/vendor/attr/_typing_compat.pyi +15 -0
  202. jaclang/vendor/attr/_version_info.py +86 -0
  203. jaclang/vendor/attr/_version_info.pyi +9 -0
  204. jaclang/vendor/attr/converters.py +144 -0
  205. jaclang/vendor/attr/converters.pyi +13 -0
  206. jaclang/vendor/attr/exceptions.py +95 -0
  207. jaclang/vendor/attr/exceptions.pyi +17 -0
  208. jaclang/vendor/attr/filters.py +66 -0
  209. jaclang/vendor/attr/filters.pyi +6 -0
  210. jaclang/vendor/attr/setters.py +73 -0
  211. jaclang/vendor/attr/setters.pyi +19 -0
  212. jaclang/vendor/attr/validators.py +681 -0
  213. jaclang/vendor/attr/validators.pyi +88 -0
  214. jaclang/vendor/attrs/__init__.py +65 -0
  215. jaclang/vendor/attrs/__init__.pyi +67 -0
  216. jaclang/vendor/attrs/converters.py +3 -0
  217. jaclang/vendor/attrs/exceptions.py +3 -0
  218. jaclang/vendor/attrs/filters.py +3 -0
  219. jaclang/vendor/attrs/py.typed +0 -0
  220. jaclang/vendor/attrs/setters.py +3 -0
  221. jaclang/vendor/attrs/validators.py +3 -0
  222. jaclang/vendor/attrs-23.2.0.dist-info/METADATA +202 -0
  223. jaclang/vendor/attrs-23.2.0.dist-info/RECORD +35 -0
  224. jaclang/vendor/attrs-23.2.0.dist-info/WHEEL +4 -0
  225. jaclang/vendor/attrs-23.2.0.dist-info/licenses/LICENSE +21 -0
  226. jaclang/vendor/cattr/__init__.py +25 -0
  227. jaclang/vendor/cattr/converters.py +8 -0
  228. jaclang/vendor/cattr/disambiguators.py +3 -0
  229. jaclang/vendor/cattr/dispatch.py +3 -0
  230. jaclang/vendor/cattr/errors.py +15 -0
  231. jaclang/vendor/cattr/gen.py +21 -0
  232. jaclang/vendor/cattr/preconf/__init__.py +3 -0
  233. jaclang/vendor/cattr/preconf/bson.py +4 -0
  234. jaclang/vendor/cattr/preconf/json.py +4 -0
  235. jaclang/vendor/cattr/preconf/msgpack.py +4 -0
  236. jaclang/vendor/cattr/preconf/orjson.py +4 -0
  237. jaclang/vendor/cattr/preconf/pyyaml.py +4 -0
  238. jaclang/vendor/cattr/preconf/tomlkit.py +4 -0
  239. jaclang/vendor/cattr/preconf/ujson.py +4 -0
  240. jaclang/vendor/cattr/py.typed +0 -0
  241. jaclang/vendor/cattrs/__init__.py +55 -0
  242. jaclang/vendor/cattrs/_compat.py +465 -0
  243. jaclang/vendor/cattrs/_generics.py +22 -0
  244. jaclang/vendor/cattrs/converters.py +1101 -0
  245. jaclang/vendor/cattrs/disambiguators.py +132 -0
  246. jaclang/vendor/cattrs/dispatch.py +164 -0
  247. jaclang/vendor/cattrs/errors.py +129 -0
  248. jaclang/vendor/cattrs/fns.py +17 -0
  249. jaclang/vendor/cattrs/gen/__init__.py +890 -0
  250. jaclang/vendor/cattrs/gen/_consts.py +19 -0
  251. jaclang/vendor/cattrs/gen/_generics.py +43 -0
  252. jaclang/vendor/cattrs/gen/_lc.py +28 -0
  253. jaclang/vendor/cattrs/gen/_shared.py +51 -0
  254. jaclang/vendor/cattrs/gen/typeddicts.py +624 -0
  255. jaclang/vendor/cattrs/preconf/__init__.py +7 -0
  256. jaclang/vendor/cattrs/preconf/bson.py +107 -0
  257. jaclang/vendor/cattrs/preconf/cbor2.py +47 -0
  258. jaclang/vendor/cattrs/preconf/json.py +52 -0
  259. jaclang/vendor/cattrs/preconf/msgpack.py +51 -0
  260. jaclang/vendor/cattrs/preconf/orjson.py +82 -0
  261. jaclang/vendor/cattrs/preconf/pyyaml.py +60 -0
  262. jaclang/vendor/cattrs/preconf/tomlkit.py +85 -0
  263. jaclang/vendor/cattrs/preconf/ujson.py +52 -0
  264. jaclang/vendor/cattrs/py.typed +0 -0
  265. jaclang/vendor/cattrs/strategies/__init__.py +11 -0
  266. jaclang/vendor/cattrs/strategies/_class_methods.py +64 -0
  267. jaclang/vendor/cattrs/strategies/_subclasses.py +224 -0
  268. jaclang/vendor/cattrs/strategies/_unions.py +235 -0
  269. jaclang/vendor/cattrs/v.py +111 -0
  270. jaclang/vendor/cattrs-23.2.3.dist-info/METADATA +221 -0
  271. jaclang/vendor/cattrs-23.2.3.dist-info/RECORD +48 -0
  272. jaclang/vendor/cattrs-23.2.3.dist-info/WHEEL +4 -0
  273. jaclang/vendor/cattrs-23.2.3.dist-info/licenses/LICENSE +11 -0
  274. jaclang/vendor/lark/__init__.py +38 -38
  275. jaclang/vendor/lark/__pyinstaller/__init__.py +6 -7
  276. jaclang/vendor/lark/__pyinstaller/hook-lark.py +14 -14
  277. jaclang/vendor/lark/ast_utils.py +59 -70
  278. jaclang/vendor/lark/common.py +89 -113
  279. jaclang/vendor/lark/exceptions.py +292 -352
  280. jaclang/vendor/lark/grammar.py +130 -158
  281. jaclang/vendor/lark/grammars/common.lark +59 -59
  282. jaclang/vendor/lark/grammars/lark.lark +62 -62
  283. jaclang/vendor/lark/grammars/python.lark +302 -302
  284. jaclang/vendor/lark/grammars/unicode.lark +7 -7
  285. jaclang/vendor/lark/indenter.py +112 -118
  286. jaclang/vendor/lark/lark.py +661 -800
  287. jaclang/vendor/lark/lexer.py +678 -829
  288. jaclang/vendor/lark/load_grammar.py +1428 -1673
  289. jaclang/vendor/lark/parse_tree_builder.py +391 -466
  290. jaclang/vendor/lark/parser_frontends.py +257 -305
  291. jaclang/vendor/lark/parsers/cyk.py +340 -391
  292. jaclang/vendor/lark/parsers/earley.py +308 -385
  293. jaclang/vendor/lark/parsers/earley_common.py +42 -59
  294. jaclang/vendor/lark/parsers/earley_forest.py +810 -923
  295. jaclang/vendor/lark/parsers/grammar_analysis.py +203 -239
  296. jaclang/vendor/lark/parsers/lalr_analysis.py +332 -378
  297. jaclang/vendor/lark/parsers/lalr_interactive_parser.py +157 -171
  298. jaclang/vendor/lark/parsers/lalr_parser.py +122 -145
  299. jaclang/vendor/lark/parsers/lalr_parser_state.py +110 -141
  300. jaclang/vendor/lark/parsers/xearley.py +165 -209
  301. jaclang/vendor/lark/reconstruct.py +107 -131
  302. jaclang/vendor/lark/tools/__init__.py +71 -93
  303. jaclang/vendor/lark/tools/nearley.py +202 -240
  304. jaclang/vendor/lark/tools/serialize.py +32 -35
  305. jaclang/vendor/lark/tools/standalone.py +196 -225
  306. jaclang/vendor/lark/tree.py +272 -302
  307. jaclang/vendor/lark/tree_matcher.py +186 -194
  308. jaclang/vendor/lark/tree_templates.py +18 -26
  309. jaclang/vendor/lark/utils.py +361 -393
  310. jaclang/vendor/lark/visitors.py +593 -645
  311. jaclang/vendor/lark-1.1.9.dist-info/LICENSE +18 -0
  312. jaclang/vendor/lark-1.1.9.dist-info/METADATA +47 -0
  313. jaclang/vendor/lark-1.1.9.dist-info/RECORD +46 -0
  314. jaclang/vendor/lark-1.1.9.dist-info/WHEEL +5 -0
  315. jaclang/vendor/lark-1.1.9.dist-info/entry_points.txt +2 -0
  316. jaclang/vendor/lark-1.1.9.dist-info/top_level.txt +1 -0
  317. jaclang/vendor/lsprotocol/__init__.py +2 -0
  318. jaclang/vendor/lsprotocol/_hooks.py +1237 -0
  319. jaclang/vendor/lsprotocol/converters.py +17 -0
  320. jaclang/vendor/lsprotocol/py.typed +0 -0
  321. jaclang/vendor/lsprotocol/types.py +12898 -0
  322. jaclang/vendor/lsprotocol/validators.py +47 -0
  323. jaclang/vendor/lsprotocol-2023.0.1.dist-info/LICENSE +21 -0
  324. jaclang/vendor/lsprotocol-2023.0.1.dist-info/METADATA +65 -0
  325. jaclang/vendor/lsprotocol-2023.0.1.dist-info/RECORD +10 -0
  326. jaclang/vendor/lsprotocol-2023.0.1.dist-info/WHEEL +4 -0
  327. jaclang/vendor/mypy/api.py +1 -3
  328. jaclang/vendor/mypy/applytype.py +24 -24
  329. jaclang/vendor/mypy/argmap.py +5 -9
  330. jaclang/vendor/mypy/binder.py +11 -42
  331. jaclang/vendor/mypy/build.py +78 -260
  332. jaclang/vendor/mypy/checker.py +394 -930
  333. jaclang/vendor/mypy/checkexpr.py +210 -640
  334. jaclang/vendor/mypy/checkmember.py +44 -94
  335. jaclang/vendor/mypy/checkpattern.py +32 -104
  336. jaclang/vendor/mypy/checkstrformat.py +38 -131
  337. jaclang/vendor/mypy/config_parser.py +8 -31
  338. jaclang/vendor/mypy/constant_fold.py +1 -3
  339. jaclang/vendor/mypy/constraints.py +94 -253
  340. jaclang/vendor/mypy/copytype.py +3 -13
  341. jaclang/vendor/mypy/defaults.py +2 -4
  342. jaclang/vendor/mypy/dmypy/client.py +30 -102
  343. jaclang/vendor/mypy/dmypy_server.py +31 -118
  344. jaclang/vendor/mypy/erasetype.py +6 -18
  345. jaclang/vendor/mypy/errorcodes.py +26 -64
  346. jaclang/vendor/mypy/errors.py +23 -117
  347. jaclang/vendor/mypy/evalexpr.py +1 -3
  348. jaclang/vendor/mypy/expandtype.py +37 -40
  349. jaclang/vendor/mypy/exprtotype.py +14 -27
  350. jaclang/vendor/mypy/fastparse.py +66 -215
  351. jaclang/vendor/mypy/find_sources.py +4 -14
  352. jaclang/vendor/mypy/fixup.py +5 -10
  353. jaclang/vendor/mypy/indirection.py +1 -3
  354. jaclang/vendor/mypy/infer.py +2 -6
  355. jaclang/vendor/mypy/inspections.py +3 -13
  356. jaclang/vendor/mypy/ipc.py +7 -28
  357. jaclang/vendor/mypy/join.py +20 -39
  358. jaclang/vendor/mypy/literals.py +2 -10
  359. jaclang/vendor/mypy/main.py +39 -138
  360. jaclang/vendor/mypy/maptype.py +2 -6
  361. jaclang/vendor/mypy/meet.py +23 -77
  362. jaclang/vendor/mypy/message_registry.py +33 -88
  363. jaclang/vendor/mypy/messages.py +146 -447
  364. jaclang/vendor/mypy/metastore.py +2 -6
  365. jaclang/vendor/mypy/modulefinder.py +29 -76
  366. jaclang/vendor/mypy/moduleinspect.py +5 -17
  367. jaclang/vendor/mypy/mro.py +1 -3
  368. jaclang/vendor/mypy/nodes.py +35 -119
  369. jaclang/vendor/mypy/operators.py +2 -11
  370. jaclang/vendor/mypy/options.py +3 -9
  371. jaclang/vendor/mypy/parse.py +1 -3
  372. jaclang/vendor/mypy/plugin.py +25 -75
  373. jaclang/vendor/mypy/plugins/attrs.py +53 -119
  374. jaclang/vendor/mypy/plugins/common.py +9 -29
  375. jaclang/vendor/mypy/plugins/ctypes.py +5 -15
  376. jaclang/vendor/mypy/plugins/dataclasses.py +42 -107
  377. jaclang/vendor/mypy/plugins/default.py +26 -45
  378. jaclang/vendor/mypy/plugins/enums.py +4 -17
  379. jaclang/vendor/mypy/plugins/functools.py +2 -11
  380. jaclang/vendor/mypy/plugins/proper_plugin.py +2 -6
  381. jaclang/vendor/mypy/plugins/singledispatch.py +7 -33
  382. jaclang/vendor/mypy/reachability.py +2 -8
  383. jaclang/vendor/mypy/refinfo.py +1 -3
  384. jaclang/vendor/mypy/report.py +23 -52
  385. jaclang/vendor/mypy/semanal.py +385 -693
  386. jaclang/vendor/mypy/semanal_classprop.py +9 -34
  387. jaclang/vendor/mypy/semanal_enum.py +7 -19
  388. jaclang/vendor/mypy/semanal_infer.py +1 -3
  389. jaclang/vendor/mypy/semanal_main.py +5 -25
  390. jaclang/vendor/mypy/semanal_namedtuple.py +17 -56
  391. jaclang/vendor/mypy/semanal_newtype.py +8 -27
  392. jaclang/vendor/mypy/semanal_pass1.py +2 -6
  393. jaclang/vendor/mypy/semanal_shared.py +9 -27
  394. jaclang/vendor/mypy/semanal_typeargs.py +12 -41
  395. jaclang/vendor/mypy/semanal_typeddict.py +18 -59
  396. jaclang/vendor/mypy/server/astdiff.py +9 -34
  397. jaclang/vendor/mypy/server/astmerge.py +2 -6
  398. jaclang/vendor/mypy/server/deps.py +22 -71
  399. jaclang/vendor/mypy/server/mergecheck.py +1 -3
  400. jaclang/vendor/mypy/server/objgraph.py +2 -8
  401. jaclang/vendor/mypy/server/update.py +18 -54
  402. jaclang/vendor/mypy/solve.py +4 -17
  403. jaclang/vendor/mypy/split_namespace.py +1 -3
  404. jaclang/vendor/mypy/stats.py +6 -24
  405. jaclang/vendor/mypy/strconv.py +8 -31
  406. jaclang/vendor/mypy/stubdoc.py +8 -38
  407. jaclang/vendor/mypy/stubgen.py +79 -144
  408. jaclang/vendor/mypy/stubgenc.py +22 -69
  409. jaclang/vendor/mypy/stubtest.py +62 -167
  410. jaclang/vendor/mypy/stubutil.py +45 -61
  411. jaclang/vendor/mypy/subtypes.py +57 -133
  412. jaclang/vendor/mypy/suggestions.py +19 -53
  413. jaclang/vendor/mypy/test/data.py +13 -40
  414. jaclang/vendor/mypy/test/helpers.py +18 -43
  415. jaclang/vendor/mypy/test/meta/_pytest.py +2 -13
  416. jaclang/vendor/mypy/test/meta/test_parse_data.py +5 -9
  417. jaclang/vendor/mypy/test/meta/test_update_data.py +1 -3
  418. jaclang/vendor/mypy/test/test_find_sources.py +14 -32
  419. jaclang/vendor/mypy/test/test_ref_info.py +3 -9
  420. jaclang/vendor/mypy/test/testargs.py +1 -4
  421. jaclang/vendor/mypy/test/testcheck.py +14 -47
  422. jaclang/vendor/mypy/test/testcmdline.py +3 -14
  423. jaclang/vendor/mypy/test/testconstraints.py +8 -26
  424. jaclang/vendor/mypy/test/testdaemon.py +2 -9
  425. jaclang/vendor/mypy/test/testdeps.py +4 -12
  426. jaclang/vendor/mypy/test/testdiff.py +2 -6
  427. jaclang/vendor/mypy/test/testerrorstream.py +1 -3
  428. jaclang/vendor/mypy/test/testfinegrained.py +18 -56
  429. jaclang/vendor/mypy/test/testgraph.py +3 -18
  430. jaclang/vendor/mypy/test/testinfer.py +13 -55
  431. jaclang/vendor/mypy/test/testipc.py +3 -9
  432. jaclang/vendor/mypy/test/testmerge.py +5 -17
  433. jaclang/vendor/mypy/test/testmodulefinder.py +8 -30
  434. jaclang/vendor/mypy/test/testmypyc.py +1 -3
  435. jaclang/vendor/mypy/test/testparse.py +1 -3
  436. jaclang/vendor/mypy/test/testpep561.py +4 -13
  437. jaclang/vendor/mypy/test/testpythoneval.py +2 -6
  438. jaclang/vendor/mypy/test/testreports.py +1 -2
  439. jaclang/vendor/mypy/test/testsemanal.py +3 -10
  440. jaclang/vendor/mypy/test/testsolve.py +5 -15
  441. jaclang/vendor/mypy/test/teststubgen.py +69 -210
  442. jaclang/vendor/mypy/test/teststubtest.py +123 -163
  443. jaclang/vendor/mypy/test/testsubtypes.py +14 -34
  444. jaclang/vendor/mypy/test/testtransform.py +2 -8
  445. jaclang/vendor/mypy/test/testtypegen.py +2 -8
  446. jaclang/vendor/mypy/test/testtypes.py +77 -253
  447. jaclang/vendor/mypy/test/testutil.py +1 -3
  448. jaclang/vendor/mypy/test/typefixture.py +11 -38
  449. jaclang/vendor/mypy/test/update_data.py +4 -15
  450. jaclang/vendor/mypy/test/visitors.py +1 -9
  451. jaclang/vendor/mypy/treetransform.py +8 -25
  452. jaclang/vendor/mypy/tvar_scope.py +23 -3
  453. jaclang/vendor/mypy/type_visitor.py +3 -10
  454. jaclang/vendor/mypy/typeanal.py +183 -309
  455. jaclang/vendor/mypy/typeops.py +27 -73
  456. jaclang/vendor/mypy/types.py +77 -185
  457. jaclang/vendor/mypy/types_utils.py +7 -20
  458. jaclang/vendor/mypy/typeshed/LICENSE +237 -0
  459. jaclang/vendor/mypy/typeshed/stdlib/VERSIONS +309 -0
  460. jaclang/vendor/mypy/typeshed/stdlib/__future__.pyi +36 -0
  461. jaclang/vendor/mypy/typeshed/stdlib/__main__.pyi +3 -0
  462. jaclang/vendor/mypy/typeshed/stdlib/_ast.pyi +591 -0
  463. jaclang/vendor/mypy/typeshed/stdlib/_bisect.pyi +84 -0
  464. jaclang/vendor/mypy/typeshed/stdlib/_bootlocale.pyi +1 -0
  465. jaclang/vendor/mypy/typeshed/stdlib/_codecs.pyi +133 -0
  466. jaclang/vendor/mypy/typeshed/stdlib/_collections_abc.pyi +94 -0
  467. jaclang/vendor/mypy/typeshed/stdlib/_compat_pickle.pyi +8 -0
  468. jaclang/vendor/mypy/typeshed/stdlib/_compression.pyi +25 -0
  469. jaclang/vendor/mypy/typeshed/stdlib/_csv.pyi +90 -0
  470. jaclang/vendor/mypy/typeshed/stdlib/_ctypes.pyi +207 -0
  471. jaclang/vendor/mypy/typeshed/stdlib/_curses.pyi +566 -0
  472. jaclang/vendor/mypy/typeshed/stdlib/_decimal.pyi +281 -0
  473. jaclang/vendor/mypy/typeshed/stdlib/_dummy_thread.pyi +33 -0
  474. jaclang/vendor/mypy/typeshed/stdlib/_dummy_threading.pyi +164 -0
  475. jaclang/vendor/mypy/typeshed/stdlib/_heapq.pyi +11 -0
  476. jaclang/vendor/mypy/typeshed/stdlib/_imp.pyi +28 -0
  477. jaclang/vendor/mypy/typeshed/stdlib/_json.pyi +49 -0
  478. jaclang/vendor/mypy/typeshed/stdlib/_locale.pyi +100 -0
  479. jaclang/vendor/mypy/typeshed/stdlib/_lsprof.pyi +35 -0
  480. jaclang/vendor/mypy/typeshed/stdlib/_markupbase.pyi +16 -0
  481. jaclang/vendor/mypy/typeshed/stdlib/_msi.pyi +92 -0
  482. jaclang/vendor/mypy/typeshed/stdlib/_operator.pyi +147 -0
  483. jaclang/vendor/mypy/typeshed/stdlib/_osx_support.pyi +34 -0
  484. jaclang/vendor/mypy/typeshed/stdlib/_posixsubprocess.pyi +33 -0
  485. jaclang/vendor/mypy/typeshed/stdlib/_py_abc.pyi +14 -0
  486. jaclang/vendor/mypy/typeshed/stdlib/_pydecimal.pyi +43 -0
  487. jaclang/vendor/mypy/typeshed/stdlib/_random.pyi +12 -0
  488. jaclang/vendor/mypy/typeshed/stdlib/_sitebuiltins.pyi +16 -0
  489. jaclang/vendor/mypy/typeshed/stdlib/_socket.pyi +803 -0
  490. jaclang/vendor/mypy/typeshed/stdlib/_stat.pyi +103 -0
  491. jaclang/vendor/mypy/typeshed/stdlib/_thread.pyi +59 -0
  492. jaclang/vendor/mypy/typeshed/stdlib/_threading_local.pyi +17 -0
  493. jaclang/vendor/mypy/typeshed/stdlib/_tkinter.pyi +121 -0
  494. jaclang/vendor/mypy/typeshed/stdlib/_tracemalloc.pyi +17 -0
  495. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/__init__.pyi +347 -0
  496. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/dbapi.pyi +37 -0
  497. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/wsgi.pyi +44 -0
  498. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/xml.pyi +9 -0
  499. jaclang/vendor/mypy/typeshed/stdlib/_warnings.pyi +55 -0
  500. jaclang/vendor/mypy/typeshed/stdlib/_weakref.pyi +41 -0
  501. jaclang/vendor/mypy/typeshed/stdlib/_weakrefset.pyi +51 -0
  502. jaclang/vendor/mypy/typeshed/stdlib/_winapi.pyi +255 -0
  503. jaclang/vendor/mypy/typeshed/stdlib/abc.pyi +51 -0
  504. jaclang/vendor/mypy/typeshed/stdlib/aifc.pyi +91 -0
  505. jaclang/vendor/mypy/typeshed/stdlib/antigravity.pyi +3 -0
  506. jaclang/vendor/mypy/typeshed/stdlib/argparse.pyi +595 -0
  507. jaclang/vendor/mypy/typeshed/stdlib/array.pyi +92 -0
  508. jaclang/vendor/mypy/typeshed/stdlib/ast.pyi +277 -0
  509. jaclang/vendor/mypy/typeshed/stdlib/asynchat.pyi +21 -0
  510. jaclang/vendor/mypy/typeshed/stdlib/asyncio/__init__.pyi +41 -0
  511. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_events.pyi +440 -0
  512. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_futures.pyi +19 -0
  513. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_subprocess.pyi +63 -0
  514. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_tasks.pyi +9 -0
  515. jaclang/vendor/mypy/typeshed/stdlib/asyncio/constants.pyi +20 -0
  516. jaclang/vendor/mypy/typeshed/stdlib/asyncio/coroutines.pyi +26 -0
  517. jaclang/vendor/mypy/typeshed/stdlib/asyncio/events.pyi +580 -0
  518. jaclang/vendor/mypy/typeshed/stdlib/asyncio/exceptions.pyi +43 -0
  519. jaclang/vendor/mypy/typeshed/stdlib/asyncio/format_helpers.pyi +20 -0
  520. jaclang/vendor/mypy/typeshed/stdlib/asyncio/futures.pyi +57 -0
  521. jaclang/vendor/mypy/typeshed/stdlib/asyncio/locks.pyi +121 -0
  522. jaclang/vendor/mypy/typeshed/stdlib/asyncio/log.pyi +3 -0
  523. jaclang/vendor/mypy/typeshed/stdlib/asyncio/mixins.pyi +9 -0
  524. jaclang/vendor/mypy/typeshed/stdlib/asyncio/proactor_events.pyi +64 -0
  525. jaclang/vendor/mypy/typeshed/stdlib/asyncio/protocols.pyi +34 -0
  526. jaclang/vendor/mypy/typeshed/stdlib/asyncio/queues.pyi +47 -0
  527. jaclang/vendor/mypy/typeshed/stdlib/asyncio/runners.pyi +32 -0
  528. jaclang/vendor/mypy/typeshed/stdlib/asyncio/selector_events.pyi +8 -0
  529. jaclang/vendor/mypy/typeshed/stdlib/asyncio/sslproto.pyi +165 -0
  530. jaclang/vendor/mypy/typeshed/stdlib/asyncio/staggered.pyi +10 -0
  531. jaclang/vendor/mypy/typeshed/stdlib/asyncio/streams.pyi +153 -0
  532. jaclang/vendor/mypy/typeshed/stdlib/asyncio/subprocess.pyi +229 -0
  533. jaclang/vendor/mypy/typeshed/stdlib/asyncio/taskgroups.pyi +25 -0
  534. jaclang/vendor/mypy/typeshed/stdlib/asyncio/tasks.pyi +497 -0
  535. jaclang/vendor/mypy/typeshed/stdlib/asyncio/threads.pyi +9 -0
  536. jaclang/vendor/mypy/typeshed/stdlib/asyncio/timeouts.pyi +19 -0
  537. jaclang/vendor/mypy/typeshed/stdlib/asyncio/transports.pyi +47 -0
  538. jaclang/vendor/mypy/typeshed/stdlib/asyncio/trsock.pyi +94 -0
  539. jaclang/vendor/mypy/typeshed/stdlib/asyncio/unix_events.pyi +196 -0
  540. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_events.pyi +85 -0
  541. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_utils.pyi +49 -0
  542. jaclang/vendor/mypy/typeshed/stdlib/asyncore.pyi +90 -0
  543. jaclang/vendor/mypy/typeshed/stdlib/atexit.pyi +12 -0
  544. jaclang/vendor/mypy/typeshed/stdlib/audioop.pyi +43 -0
  545. jaclang/vendor/mypy/typeshed/stdlib/base64.pyi +59 -0
  546. jaclang/vendor/mypy/typeshed/stdlib/bdb.pyi +102 -0
  547. jaclang/vendor/mypy/typeshed/stdlib/binascii.pyi +36 -0
  548. jaclang/vendor/mypy/typeshed/stdlib/binhex.pyi +45 -0
  549. jaclang/vendor/mypy/typeshed/stdlib/bisect.pyi +4 -0
  550. jaclang/vendor/mypy/typeshed/stdlib/builtins.pyi +1936 -0
  551. jaclang/vendor/mypy/typeshed/stdlib/bz2.pyi +146 -0
  552. jaclang/vendor/mypy/typeshed/stdlib/cProfile.pyi +31 -0
  553. jaclang/vendor/mypy/typeshed/stdlib/calendar.pyi +208 -0
  554. jaclang/vendor/mypy/typeshed/stdlib/cgi.pyi +118 -0
  555. jaclang/vendor/mypy/typeshed/stdlib/cgitb.pyi +32 -0
  556. jaclang/vendor/mypy/typeshed/stdlib/chunk.pyi +20 -0
  557. jaclang/vendor/mypy/typeshed/stdlib/cmath.pyi +36 -0
  558. jaclang/vendor/mypy/typeshed/stdlib/cmd.pyi +45 -0
  559. jaclang/vendor/mypy/typeshed/stdlib/code.pyi +33 -0
  560. jaclang/vendor/mypy/typeshed/stdlib/codecs.pyi +285 -0
  561. jaclang/vendor/mypy/typeshed/stdlib/codeop.pyi +13 -0
  562. jaclang/vendor/mypy/typeshed/stdlib/collections/__init__.pyi +485 -0
  563. jaclang/vendor/mypy/typeshed/stdlib/collections/abc.pyi +2 -0
  564. jaclang/vendor/mypy/typeshed/stdlib/colorsys.pyi +13 -0
  565. jaclang/vendor/mypy/typeshed/stdlib/compileall.pyi +111 -0
  566. jaclang/vendor/mypy/typeshed/stdlib/concurrent/__init__.pyi +0 -0
  567. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/__init__.pyi +32 -0
  568. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/_base.pyi +126 -0
  569. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/process.pyi +233 -0
  570. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/thread.pyi +80 -0
  571. jaclang/vendor/mypy/typeshed/stdlib/configparser.pyi +313 -0
  572. jaclang/vendor/mypy/typeshed/stdlib/contextlib.pyi +208 -0
  573. jaclang/vendor/mypy/typeshed/stdlib/contextvars.pyi +63 -0
  574. jaclang/vendor/mypy/typeshed/stdlib/copy.pyi +16 -0
  575. jaclang/vendor/mypy/typeshed/stdlib/copyreg.pyi +21 -0
  576. jaclang/vendor/mypy/typeshed/stdlib/crypt.pyi +12 -0
  577. jaclang/vendor/mypy/typeshed/stdlib/csv.pyi +147 -0
  578. jaclang/vendor/mypy/typeshed/stdlib/ctypes/__init__.pyi +187 -0
  579. jaclang/vendor/mypy/typeshed/stdlib/ctypes/_endian.pyi +19 -0
  580. jaclang/vendor/mypy/typeshed/stdlib/ctypes/util.pyi +6 -0
  581. jaclang/vendor/mypy/typeshed/stdlib/ctypes/wintypes.pyi +298 -0
  582. jaclang/vendor/mypy/typeshed/stdlib/curses/__init__.pyi +22 -0
  583. jaclang/vendor/mypy/typeshed/stdlib/curses/ascii.pyi +62 -0
  584. jaclang/vendor/mypy/typeshed/stdlib/curses/has_key.pyi +1 -0
  585. jaclang/vendor/mypy/typeshed/stdlib/curses/panel.pyi +22 -0
  586. jaclang/vendor/mypy/typeshed/stdlib/curses/textpad.pyi +11 -0
  587. jaclang/vendor/mypy/typeshed/stdlib/dataclasses.pyi +315 -0
  588. jaclang/vendor/mypy/typeshed/stdlib/datetime.pyi +295 -0
  589. jaclang/vendor/mypy/typeshed/stdlib/dbm/__init__.pyi +95 -0
  590. jaclang/vendor/mypy/typeshed/stdlib/dbm/dumb.pyi +31 -0
  591. jaclang/vendor/mypy/typeshed/stdlib/dbm/gnu.pyi +41 -0
  592. jaclang/vendor/mypy/typeshed/stdlib/dbm/ndbm.pyi +37 -0
  593. jaclang/vendor/mypy/typeshed/stdlib/decimal.pyi +2 -0
  594. jaclang/vendor/mypy/typeshed/stdlib/difflib.pyi +140 -0
  595. jaclang/vendor/mypy/typeshed/stdlib/dis.pyi +144 -0
  596. jaclang/vendor/mypy/typeshed/stdlib/distutils/__init__.pyi +5 -0
  597. jaclang/vendor/mypy/typeshed/stdlib/distutils/archive_util.pyi +20 -0
  598. jaclang/vendor/mypy/typeshed/stdlib/distutils/bcppcompiler.pyi +3 -0
  599. jaclang/vendor/mypy/typeshed/stdlib/distutils/ccompiler.pyi +152 -0
  600. jaclang/vendor/mypy/typeshed/stdlib/distutils/cmd.pyi +66 -0
  601. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/__init__.pyi +0 -0
  602. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist.pyi +25 -0
  603. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_dumb.pyi +21 -0
  604. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_msi.pyi +45 -0
  605. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_packager.pyi +0 -0
  606. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_rpm.pyi +52 -0
  607. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_wininst.pyi +16 -0
  608. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build.pyi +31 -0
  609. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_clib.pyi +27 -0
  610. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_ext.pyi +50 -0
  611. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_py.pyi +44 -0
  612. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_scripts.pyi +24 -0
  613. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/check.pyi +39 -0
  614. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/clean.pyi +17 -0
  615. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/config.pyi +83 -0
  616. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install.pyi +63 -0
  617. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_data.pyi +19 -0
  618. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_egg_info.pyi +18 -0
  619. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_headers.pyi +16 -0
  620. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_lib.pyi +25 -0
  621. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_scripts.pyi +18 -0
  622. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/register.pyi +18 -0
  623. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/sdist.pyi +42 -0
  624. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/upload.pyi +17 -0
  625. jaclang/vendor/mypy/typeshed/stdlib/distutils/config.pyi +17 -0
  626. jaclang/vendor/mypy/typeshed/stdlib/distutils/core.pyi +57 -0
  627. jaclang/vendor/mypy/typeshed/stdlib/distutils/cygwinccompiler.pyi +20 -0
  628. jaclang/vendor/mypy/typeshed/stdlib/distutils/debug.pyi +1 -0
  629. jaclang/vendor/mypy/typeshed/stdlib/distutils/dep_util.pyi +3 -0
  630. jaclang/vendor/mypy/typeshed/stdlib/distutils/dir_util.pyi +13 -0
  631. jaclang/vendor/mypy/typeshed/stdlib/distutils/dist.pyi +146 -0
  632. jaclang/vendor/mypy/typeshed/stdlib/distutils/errors.pyi +19 -0
  633. jaclang/vendor/mypy/typeshed/stdlib/distutils/extension.pyi +36 -0
  634. jaclang/vendor/mypy/typeshed/stdlib/distutils/fancy_getopt.pyi +34 -0
  635. jaclang/vendor/mypy/typeshed/stdlib/distutils/file_util.pyi +14 -0
  636. jaclang/vendor/mypy/typeshed/stdlib/distutils/filelist.pyi +50 -0
  637. jaclang/vendor/mypy/typeshed/stdlib/distutils/log.pyi +25 -0
  638. jaclang/vendor/mypy/typeshed/stdlib/distutils/msvccompiler.pyi +3 -0
  639. jaclang/vendor/mypy/typeshed/stdlib/distutils/spawn.pyi +2 -0
  640. jaclang/vendor/mypy/typeshed/stdlib/distutils/sysconfig.pyi +31 -0
  641. jaclang/vendor/mypy/typeshed/stdlib/distutils/text_file.pyi +21 -0
  642. jaclang/vendor/mypy/typeshed/stdlib/distutils/unixccompiler.pyi +3 -0
  643. jaclang/vendor/mypy/typeshed/stdlib/distutils/util.pyi +46 -0
  644. jaclang/vendor/mypy/typeshed/stdlib/distutils/version.pyi +36 -0
  645. jaclang/vendor/mypy/typeshed/stdlib/doctest.pyi +248 -0
  646. jaclang/vendor/mypy/typeshed/stdlib/dummy_threading.pyi +2 -0
  647. jaclang/vendor/mypy/typeshed/stdlib/email/__init__.pyi +29 -0
  648. jaclang/vendor/mypy/typeshed/stdlib/email/_header_value_parser.pyi +392 -0
  649. jaclang/vendor/mypy/typeshed/stdlib/email/_policybase.pyi +51 -0
  650. jaclang/vendor/mypy/typeshed/stdlib/email/base64mime.pyi +13 -0
  651. jaclang/vendor/mypy/typeshed/stdlib/email/charset.pyi +34 -0
  652. jaclang/vendor/mypy/typeshed/stdlib/email/contentmanager.pyi +11 -0
  653. jaclang/vendor/mypy/typeshed/stdlib/email/encoders.pyi +8 -0
  654. jaclang/vendor/mypy/typeshed/stdlib/email/errors.pyi +39 -0
  655. jaclang/vendor/mypy/typeshed/stdlib/email/feedparser.pyi +23 -0
  656. jaclang/vendor/mypy/typeshed/stdlib/email/generator.pyi +40 -0
  657. jaclang/vendor/mypy/typeshed/stdlib/email/header.pyi +31 -0
  658. jaclang/vendor/mypy/typeshed/stdlib/email/headerregistry.pyi +178 -0
  659. jaclang/vendor/mypy/typeshed/stdlib/email/iterators.pyi +12 -0
  660. jaclang/vendor/mypy/typeshed/stdlib/email/message.pyi +165 -0
  661. jaclang/vendor/mypy/typeshed/stdlib/email/mime/__init__.pyi +0 -0
  662. jaclang/vendor/mypy/typeshed/stdlib/email/mime/application.pyi +17 -0
  663. jaclang/vendor/mypy/typeshed/stdlib/email/mime/audio.pyi +17 -0
  664. jaclang/vendor/mypy/typeshed/stdlib/email/mime/base.pyi +8 -0
  665. jaclang/vendor/mypy/typeshed/stdlib/email/mime/image.pyi +17 -0
  666. jaclang/vendor/mypy/typeshed/stdlib/email/mime/message.pyi +8 -0
  667. jaclang/vendor/mypy/typeshed/stdlib/email/mime/multipart.pyi +18 -0
  668. jaclang/vendor/mypy/typeshed/stdlib/email/mime/nonmultipart.pyi +5 -0
  669. jaclang/vendor/mypy/typeshed/stdlib/email/mime/text.pyi +9 -0
  670. jaclang/vendor/mypy/typeshed/stdlib/email/parser.pyi +26 -0
  671. jaclang/vendor/mypy/typeshed/stdlib/email/policy.pyi +38 -0
  672. jaclang/vendor/mypy/typeshed/stdlib/email/quoprimime.pyi +28 -0
  673. jaclang/vendor/mypy/typeshed/stdlib/email/utils.pyi +70 -0
  674. jaclang/vendor/mypy/typeshed/stdlib/encodings/__init__.pyi +10 -0
  675. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8.pyi +21 -0
  676. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8_sig.pyi +22 -0
  677. jaclang/vendor/mypy/typeshed/stdlib/ensurepip/__init__.pyi +12 -0
  678. jaclang/vendor/mypy/typeshed/stdlib/enum.pyi +320 -0
  679. jaclang/vendor/mypy/typeshed/stdlib/errno.pyi +222 -0
  680. jaclang/vendor/mypy/typeshed/stdlib/faulthandler.pyi +13 -0
  681. jaclang/vendor/mypy/typeshed/stdlib/fcntl.pyi +127 -0
  682. jaclang/vendor/mypy/typeshed/stdlib/filecmp.pyi +57 -0
  683. jaclang/vendor/mypy/typeshed/stdlib/fileinput.pyi +213 -0
  684. jaclang/vendor/mypy/typeshed/stdlib/fnmatch.pyi +9 -0
  685. jaclang/vendor/mypy/typeshed/stdlib/formatter.pyi +88 -0
  686. jaclang/vendor/mypy/typeshed/stdlib/fractions.pyi +150 -0
  687. jaclang/vendor/mypy/typeshed/stdlib/ftplib.pyi +178 -0
  688. jaclang/vendor/mypy/typeshed/stdlib/functools.pyi +213 -0
  689. jaclang/vendor/mypy/typeshed/stdlib/gc.pyi +37 -0
  690. jaclang/vendor/mypy/typeshed/stdlib/genericpath.pyi +52 -0
  691. jaclang/vendor/mypy/typeshed/stdlib/getopt.pyi +11 -0
  692. jaclang/vendor/mypy/typeshed/stdlib/getpass.pyi +8 -0
  693. jaclang/vendor/mypy/typeshed/stdlib/gettext.pyi +169 -0
  694. jaclang/vendor/mypy/typeshed/stdlib/glob.pyi +42 -0
  695. jaclang/vendor/mypy/typeshed/stdlib/graphlib.pyi +28 -0
  696. jaclang/vendor/mypy/typeshed/stdlib/grp.pyi +22 -0
  697. jaclang/vendor/mypy/typeshed/stdlib/gzip.pyi +160 -0
  698. jaclang/vendor/mypy/typeshed/stdlib/hashlib.pyi +167 -0
  699. jaclang/vendor/mypy/typeshed/stdlib/heapq.pyi +17 -0
  700. jaclang/vendor/mypy/typeshed/stdlib/hmac.pyi +38 -0
  701. jaclang/vendor/mypy/typeshed/stdlib/html/__init__.pyi +6 -0
  702. jaclang/vendor/mypy/typeshed/stdlib/html/entities.pyi +6 -0
  703. jaclang/vendor/mypy/typeshed/stdlib/html/parser.pyi +34 -0
  704. jaclang/vendor/mypy/typeshed/stdlib/http/__init__.pyi +105 -0
  705. jaclang/vendor/mypy/typeshed/stdlib/http/client.pyi +259 -0
  706. jaclang/vendor/mypy/typeshed/stdlib/http/cookiejar.pyi +159 -0
  707. jaclang/vendor/mypy/typeshed/stdlib/http/cookies.pyi +60 -0
  708. jaclang/vendor/mypy/typeshed/stdlib/http/server.pyi +83 -0
  709. jaclang/vendor/mypy/typeshed/stdlib/imaplib.pyi +168 -0
  710. jaclang/vendor/mypy/typeshed/stdlib/imghdr.pyi +17 -0
  711. jaclang/vendor/mypy/typeshed/stdlib/imp.pyi +62 -0
  712. jaclang/vendor/mypy/typeshed/stdlib/importlib/__init__.pyi +24 -0
  713. jaclang/vendor/mypy/typeshed/stdlib/importlib/_abc.pyi +15 -0
  714. jaclang/vendor/mypy/typeshed/stdlib/importlib/abc.pyi +172 -0
  715. jaclang/vendor/mypy/typeshed/stdlib/importlib/machinery.pyi +179 -0
  716. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/__init__.pyi +285 -0
  717. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/_meta.pyi +49 -0
  718. jaclang/vendor/mypy/typeshed/stdlib/importlib/readers.pyi +68 -0
  719. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/__init__.pyi +46 -0
  720. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/abc.pyi +12 -0
  721. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/readers.pyi +14 -0
  722. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/simple.pyi +56 -0
  723. jaclang/vendor/mypy/typeshed/stdlib/importlib/simple.pyi +11 -0
  724. jaclang/vendor/mypy/typeshed/stdlib/importlib/util.pyi +43 -0
  725. jaclang/vendor/mypy/typeshed/stdlib/inspect.pyi +632 -0
  726. jaclang/vendor/mypy/typeshed/stdlib/io.pyi +238 -0
  727. jaclang/vendor/mypy/typeshed/stdlib/ipaddress.pyi +208 -0
  728. jaclang/vendor/mypy/typeshed/stdlib/itertools.pyi +273 -0
  729. jaclang/vendor/mypy/typeshed/stdlib/json/__init__.pyi +61 -0
  730. jaclang/vendor/mypy/typeshed/stdlib/json/decoder.pyi +32 -0
  731. jaclang/vendor/mypy/typeshed/stdlib/json/encoder.pyi +40 -0
  732. jaclang/vendor/mypy/typeshed/stdlib/json/tool.pyi +1 -0
  733. jaclang/vendor/mypy/typeshed/stdlib/keyword.pyi +21 -0
  734. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/__init__.pyi +0 -0
  735. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/btm_matcher.pyi +28 -0
  736. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixer_base.pyi +42 -0
  737. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/__init__.pyi +0 -0
  738. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_apply.pyi +8 -0
  739. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_asserts.pyi +10 -0
  740. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_basestring.pyi +8 -0
  741. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_buffer.pyi +8 -0
  742. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_dict.pyi +16 -0
  743. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_except.pyi +14 -0
  744. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exec.pyi +8 -0
  745. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_execfile.pyi +8 -0
  746. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exitfunc.pyi +13 -0
  747. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_filter.pyi +9 -0
  748. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_funcattrs.pyi +8 -0
  749. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_future.pyi +8 -0
  750. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_getcwdu.pyi +8 -0
  751. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_has_key.pyi +8 -0
  752. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_idioms.pyi +15 -0
  753. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_import.pyi +16 -0
  754. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports.pyi +21 -0
  755. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports2.pyi +6 -0
  756. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_input.pyi +11 -0
  757. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_intern.pyi +9 -0
  758. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_isinstance.pyi +8 -0
  759. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools.pyi +9 -0
  760. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools_imports.pyi +7 -0
  761. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_long.pyi +7 -0
  762. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_map.pyi +9 -0
  763. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_metaclass.pyi +17 -0
  764. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_methodattrs.pyi +10 -0
  765. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ne.pyi +8 -0
  766. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_next.pyi +19 -0
  767. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_nonzero.pyi +8 -0
  768. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_numliterals.pyi +8 -0
  769. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_operator.pyi +12 -0
  770. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_paren.pyi +8 -0
  771. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_print.pyi +12 -0
  772. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raise.pyi +8 -0
  773. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raw_input.pyi +8 -0
  774. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reduce.pyi +8 -0
  775. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reload.pyi +9 -0
  776. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_renames.pyi +17 -0
  777. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_repr.pyi +8 -0
  778. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_set_literal.pyi +7 -0
  779. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_standarderror.pyi +8 -0
  780. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_sys_exc.pyi +9 -0
  781. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_throw.pyi +8 -0
  782. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_tuple_params.pyi +17 -0
  783. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_types.pyi +8 -0
  784. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_unicode.pyi +12 -0
  785. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_urllib.pyi +15 -0
  786. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ws_comma.pyi +12 -0
  787. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xrange.pyi +20 -0
  788. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xreadlines.pyi +8 -0
  789. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_zip.pyi +9 -0
  790. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/main.pyi +42 -0
  791. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/__init__.pyi +9 -0
  792. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/driver.pyi +27 -0
  793. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/grammar.pyi +24 -0
  794. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/literals.pyi +7 -0
  795. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/parse.pyi +30 -0
  796. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/pgen.pyi +50 -0
  797. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/token.pyi +67 -0
  798. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/tokenize.pyi +96 -0
  799. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pygram.pyi +114 -0
  800. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pytree.pyi +117 -0
  801. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/refactor.pyi +82 -0
  802. jaclang/vendor/mypy/typeshed/stdlib/linecache.pyi +23 -0
  803. jaclang/vendor/mypy/typeshed/stdlib/locale.pyi +152 -0
  804. jaclang/vendor/mypy/typeshed/stdlib/logging/__init__.pyi +658 -0
  805. jaclang/vendor/mypy/typeshed/stdlib/logging/config.pyi +134 -0
  806. jaclang/vendor/mypy/typeshed/stdlib/logging/handlers.pyi +275 -0
  807. jaclang/vendor/mypy/typeshed/stdlib/lzma.pyi +197 -0
  808. jaclang/vendor/mypy/typeshed/stdlib/mailbox.pyi +256 -0
  809. jaclang/vendor/mypy/typeshed/stdlib/mailcap.pyi +11 -0
  810. jaclang/vendor/mypy/typeshed/stdlib/marshal.pyi +33 -0
  811. jaclang/vendor/mypy/typeshed/stdlib/math.pyi +125 -0
  812. jaclang/vendor/mypy/typeshed/stdlib/mimetypes.pyi +46 -0
  813. jaclang/vendor/mypy/typeshed/stdlib/mmap.pyi +113 -0
  814. jaclang/vendor/mypy/typeshed/stdlib/modulefinder.pyi +66 -0
  815. jaclang/vendor/mypy/typeshed/stdlib/msilib/__init__.pyi +177 -0
  816. jaclang/vendor/mypy/typeshed/stdlib/msilib/schema.pyi +94 -0
  817. jaclang/vendor/mypy/typeshed/stdlib/msilib/sequence.pyi +13 -0
  818. jaclang/vendor/mypy/typeshed/stdlib/msilib/text.pyi +7 -0
  819. jaclang/vendor/mypy/typeshed/stdlib/msvcrt.pyi +32 -0
  820. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/__init__.pyi +90 -0
  821. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/connection.pyi +75 -0
  822. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/context.pyi +189 -0
  823. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/__init__.pyi +77 -0
  824. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/connection.pyi +39 -0
  825. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/forkserver.pyi +31 -0
  826. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/heap.pyi +36 -0
  827. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/managers.pyi +212 -0
  828. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/pool.pyi +103 -0
  829. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_fork.pyi +23 -0
  830. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_forkserver.pyi +16 -0
  831. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_posix.pyi +20 -0
  832. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_win32.pyi +30 -0
  833. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/process.pyi +39 -0
  834. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/queues.pyi +41 -0
  835. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/reduction.pyi +90 -0
  836. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_sharer.pyi +20 -0
  837. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_tracker.pyi +18 -0
  838. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/shared_memory.pyi +40 -0
  839. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/sharedctypes.pyi +107 -0
  840. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/spawn.pyi +32 -0
  841. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/synchronize.pyi +54 -0
  842. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/util.pyi +98 -0
  843. jaclang/vendor/mypy/typeshed/stdlib/netrc.pyi +23 -0
  844. jaclang/vendor/mypy/typeshed/stdlib/nis.pyi +9 -0
  845. jaclang/vendor/mypy/typeshed/stdlib/nntplib.pyi +125 -0
  846. jaclang/vendor/mypy/typeshed/stdlib/nt.pyi +111 -0
  847. jaclang/vendor/mypy/typeshed/stdlib/ntpath.pyi +119 -0
  848. jaclang/vendor/mypy/typeshed/stdlib/nturl2path.pyi +2 -0
  849. jaclang/vendor/mypy/typeshed/stdlib/numbers.pyi +209 -0
  850. jaclang/vendor/mypy/typeshed/stdlib/opcode.pyi +59 -0
  851. jaclang/vendor/mypy/typeshed/stdlib/operator.pyi +110 -0
  852. jaclang/vendor/mypy/typeshed/stdlib/optparse.pyi +255 -0
  853. jaclang/vendor/mypy/typeshed/stdlib/os/__init__.pyi +1157 -0
  854. jaclang/vendor/mypy/typeshed/stdlib/os/path.pyi +8 -0
  855. jaclang/vendor/mypy/typeshed/stdlib/ossaudiodev.pyi +131 -0
  856. jaclang/vendor/mypy/typeshed/stdlib/parser.pyi +24 -0
  857. jaclang/vendor/mypy/typeshed/stdlib/pathlib.pyi +232 -0
  858. jaclang/vendor/mypy/typeshed/stdlib/pdb.pyi +181 -0
  859. jaclang/vendor/mypy/typeshed/stdlib/pickle.pyi +271 -0
  860. jaclang/vendor/mypy/typeshed/stdlib/pickletools.pyi +167 -0
  861. jaclang/vendor/mypy/typeshed/stdlib/pipes.pyi +16 -0
  862. jaclang/vendor/mypy/typeshed/stdlib/pkgutil.pyi +53 -0
  863. jaclang/vendor/mypy/typeshed/stdlib/platform.pyi +42 -0
  864. jaclang/vendor/mypy/typeshed/stdlib/plistlib.pyi +113 -0
  865. jaclang/vendor/mypy/typeshed/stdlib/poplib.pyi +71 -0
  866. jaclang/vendor/mypy/typeshed/stdlib/posix.pyi +361 -0
  867. jaclang/vendor/mypy/typeshed/stdlib/posixpath.pyi +161 -0
  868. jaclang/vendor/mypy/typeshed/stdlib/pprint.pyi +112 -0
  869. jaclang/vendor/mypy/typeshed/stdlib/profile.pyi +31 -0
  870. jaclang/vendor/mypy/typeshed/stdlib/pstats.pyi +80 -0
  871. jaclang/vendor/mypy/typeshed/stdlib/pty.pyi +19 -0
  872. jaclang/vendor/mypy/typeshed/stdlib/pwd.pyi +28 -0
  873. jaclang/vendor/mypy/typeshed/stdlib/py_compile.pyi +34 -0
  874. jaclang/vendor/mypy/typeshed/stdlib/pyclbr.pyi +74 -0
  875. jaclang/vendor/mypy/typeshed/stdlib/pydoc.pyi +261 -0
  876. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/__init__.pyi +0 -0
  877. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/topics.pyi +1 -0
  878. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/__init__.pyi +85 -0
  879. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/errors.pyi +49 -0
  880. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/model.pyi +11 -0
  881. jaclang/vendor/mypy/typeshed/stdlib/queue.pyi +66 -0
  882. jaclang/vendor/mypy/typeshed/stdlib/quopri.pyi +11 -0
  883. jaclang/vendor/mypy/typeshed/stdlib/random.pyi +138 -0
  884. jaclang/vendor/mypy/typeshed/stdlib/re.pyi +290 -0
  885. jaclang/vendor/mypy/typeshed/stdlib/readline.pyi +36 -0
  886. jaclang/vendor/mypy/typeshed/stdlib/reprlib.pyi +65 -0
  887. jaclang/vendor/mypy/typeshed/stdlib/resource.pyi +94 -0
  888. jaclang/vendor/mypy/typeshed/stdlib/rlcompleter.pyi +9 -0
  889. jaclang/vendor/mypy/typeshed/stdlib/runpy.pyi +24 -0
  890. jaclang/vendor/mypy/typeshed/stdlib/sched.pyi +42 -0
  891. jaclang/vendor/mypy/typeshed/stdlib/secrets.pyi +15 -0
  892. jaclang/vendor/mypy/typeshed/stdlib/select.pyi +155 -0
  893. jaclang/vendor/mypy/typeshed/stdlib/selectors.pyi +67 -0
  894. jaclang/vendor/mypy/typeshed/stdlib/shelve.pyi +46 -0
  895. jaclang/vendor/mypy/typeshed/stdlib/shlex.pyi +63 -0
  896. jaclang/vendor/mypy/typeshed/stdlib/shutil.pyi +185 -0
  897. jaclang/vendor/mypy/typeshed/stdlib/signal.pyi +188 -0
  898. jaclang/vendor/mypy/typeshed/stdlib/site.pyi +27 -0
  899. jaclang/vendor/mypy/typeshed/stdlib/smtpd.pyi +91 -0
  900. jaclang/vendor/mypy/typeshed/stdlib/smtplib.pyi +204 -0
  901. jaclang/vendor/mypy/typeshed/stdlib/sndhdr.pyi +14 -0
  902. jaclang/vendor/mypy/typeshed/stdlib/socket.pyi +825 -0
  903. jaclang/vendor/mypy/typeshed/stdlib/socketserver.pyi +168 -0
  904. jaclang/vendor/mypy/typeshed/stdlib/spwd.pyi +41 -0
  905. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/__init__.pyi +1 -0
  906. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/dbapi2.pyi +551 -0
  907. jaclang/vendor/mypy/typeshed/stdlib/sre_compile.pyi +11 -0
  908. jaclang/vendor/mypy/typeshed/stdlib/sre_constants.pyi +130 -0
  909. jaclang/vendor/mypy/typeshed/stdlib/sre_parse.pyi +104 -0
  910. jaclang/vendor/mypy/typeshed/stdlib/ssl.pyi +537 -0
  911. jaclang/vendor/mypy/typeshed/stdlib/stat.pyi +1 -0
  912. jaclang/vendor/mypy/typeshed/stdlib/statistics.pyi +132 -0
  913. jaclang/vendor/mypy/typeshed/stdlib/string.pyi +83 -0
  914. jaclang/vendor/mypy/typeshed/stdlib/stringprep.pyi +27 -0
  915. jaclang/vendor/mypy/typeshed/stdlib/struct.pyi +26 -0
  916. jaclang/vendor/mypy/typeshed/stdlib/subprocess.pyi +2615 -0
  917. jaclang/vendor/mypy/typeshed/stdlib/sunau.pyi +86 -0
  918. jaclang/vendor/mypy/typeshed/stdlib/symbol.pyi +93 -0
  919. jaclang/vendor/mypy/typeshed/stdlib/symtable.pyi +58 -0
  920. jaclang/vendor/mypy/typeshed/stdlib/sys/__init__.pyi +373 -0
  921. jaclang/vendor/mypy/typeshed/stdlib/sys/_monitoring.pyi +52 -0
  922. jaclang/vendor/mypy/typeshed/stdlib/sysconfig.pyi +48 -0
  923. jaclang/vendor/mypy/typeshed/stdlib/syslog.pyi +46 -0
  924. jaclang/vendor/mypy/typeshed/stdlib/tabnanny.pyi +16 -0
  925. jaclang/vendor/mypy/typeshed/stdlib/tarfile.pyi +441 -0
  926. jaclang/vendor/mypy/typeshed/stdlib/telnetlib.pyi +122 -0
  927. jaclang/vendor/mypy/typeshed/stdlib/tempfile.pyi +477 -0
  928. jaclang/vendor/mypy/typeshed/stdlib/termios.pyi +267 -0
  929. jaclang/vendor/mypy/typeshed/stdlib/textwrap.pyi +103 -0
  930. jaclang/vendor/mypy/typeshed/stdlib/this.pyi +2 -0
  931. jaclang/vendor/mypy/typeshed/stdlib/threading.pyi +187 -0
  932. jaclang/vendor/mypy/typeshed/stdlib/time.pyi +108 -0
  933. jaclang/vendor/mypy/typeshed/stdlib/timeit.pyi +32 -0
  934. jaclang/vendor/mypy/typeshed/stdlib/tkinter/__init__.pyi +3654 -0
  935. jaclang/vendor/mypy/typeshed/stdlib/tkinter/colorchooser.pyi +20 -0
  936. jaclang/vendor/mypy/typeshed/stdlib/tkinter/commondialog.pyi +14 -0
  937. jaclang/vendor/mypy/typeshed/stdlib/tkinter/constants.pyi +80 -0
  938. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dialog.pyi +16 -0
  939. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dnd.pyi +20 -0
  940. jaclang/vendor/mypy/typeshed/stdlib/tkinter/filedialog.pyi +151 -0
  941. jaclang/vendor/mypy/typeshed/stdlib/tkinter/font.pyi +116 -0
  942. jaclang/vendor/mypy/typeshed/stdlib/tkinter/messagebox.pyi +44 -0
  943. jaclang/vendor/mypy/typeshed/stdlib/tkinter/scrolledtext.pyi +9 -0
  944. jaclang/vendor/mypy/typeshed/stdlib/tkinter/simpledialog.pyi +54 -0
  945. jaclang/vendor/mypy/typeshed/stdlib/tkinter/tix.pyi +299 -0
  946. jaclang/vendor/mypy/typeshed/stdlib/tkinter/ttk.pyi +1204 -0
  947. jaclang/vendor/mypy/typeshed/stdlib/token.pyi +159 -0
  948. jaclang/vendor/mypy/typeshed/stdlib/tokenize.pyi +177 -0
  949. jaclang/vendor/mypy/typeshed/stdlib/tomllib.pyi +10 -0
  950. jaclang/vendor/mypy/typeshed/stdlib/trace.pyi +79 -0
  951. jaclang/vendor/mypy/typeshed/stdlib/traceback.pyi +262 -0
  952. jaclang/vendor/mypy/typeshed/stdlib/tracemalloc.pyi +124 -0
  953. jaclang/vendor/mypy/typeshed/stdlib/tty.pyi +30 -0
  954. jaclang/vendor/mypy/typeshed/stdlib/turtle.pyi +713 -0
  955. jaclang/vendor/mypy/typeshed/stdlib/types.pyi +614 -0
  956. jaclang/vendor/mypy/typeshed/stdlib/typing.pyi +976 -0
  957. jaclang/vendor/mypy/typeshed/stdlib/typing_extensions.pyi +509 -0
  958. jaclang/vendor/mypy/typeshed/stdlib/unicodedata.pyi +73 -0
  959. jaclang/vendor/mypy/typeshed/stdlib/unittest/__init__.pyi +67 -0
  960. jaclang/vendor/mypy/typeshed/stdlib/unittest/_log.pyi +27 -0
  961. jaclang/vendor/mypy/typeshed/stdlib/unittest/async_case.pyi +21 -0
  962. jaclang/vendor/mypy/typeshed/stdlib/unittest/case.pyi +342 -0
  963. jaclang/vendor/mypy/typeshed/stdlib/unittest/loader.pyi +51 -0
  964. jaclang/vendor/mypy/typeshed/stdlib/unittest/main.pyi +69 -0
  965. jaclang/vendor/mypy/typeshed/stdlib/unittest/mock.pyi +430 -0
  966. jaclang/vendor/mypy/typeshed/stdlib/unittest/result.pyi +47 -0
  967. jaclang/vendor/mypy/typeshed/stdlib/unittest/runner.pyi +72 -0
  968. jaclang/vendor/mypy/typeshed/stdlib/unittest/signals.pyi +15 -0
  969. jaclang/vendor/mypy/typeshed/stdlib/unittest/suite.pyi +22 -0
  970. jaclang/vendor/mypy/typeshed/stdlib/unittest/util.pyi +23 -0
  971. jaclang/vendor/mypy/typeshed/stdlib/urllib/__init__.pyi +0 -0
  972. jaclang/vendor/mypy/typeshed/stdlib/urllib/error.pyi +23 -0
  973. jaclang/vendor/mypy/typeshed/stdlib/urllib/parse.pyi +210 -0
  974. jaclang/vendor/mypy/typeshed/stdlib/urllib/request.pyi +400 -0
  975. jaclang/vendor/mypy/typeshed/stdlib/urllib/response.pyi +43 -0
  976. jaclang/vendor/mypy/typeshed/stdlib/urllib/robotparser.pyi +20 -0
  977. jaclang/vendor/mypy/typeshed/stdlib/uu.pyi +13 -0
  978. jaclang/vendor/mypy/typeshed/stdlib/uuid.pyi +100 -0
  979. jaclang/vendor/mypy/typeshed/stdlib/warnings.pyi +112 -0
  980. jaclang/vendor/mypy/typeshed/stdlib/wave.pyi +85 -0
  981. jaclang/vendor/mypy/typeshed/stdlib/weakref.pyi +149 -0
  982. jaclang/vendor/mypy/typeshed/stdlib/webbrowser.pyi +74 -0
  983. jaclang/vendor/mypy/typeshed/stdlib/winreg.pyi +132 -0
  984. jaclang/vendor/mypy/typeshed/stdlib/winsound.pyi +28 -0
  985. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/__init__.pyi +0 -0
  986. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/handlers.pyi +91 -0
  987. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/headers.pyi +26 -0
  988. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/simple_server.pyi +37 -0
  989. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/types.pyi +32 -0
  990. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/util.pyi +24 -0
  991. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/validate.pyi +50 -0
  992. jaclang/vendor/mypy/typeshed/stdlib/xdrlib.pyi +57 -0
  993. jaclang/vendor/mypy/typeshed/stdlib/xml/__init__.pyi +1 -0
  994. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/NodeFilter.pyi +19 -0
  995. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/__init__.pyi +69 -0
  996. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/domreg.pyi +8 -0
  997. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/expatbuilder.pyi +100 -0
  998. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minicompat.pyi +22 -0
  999. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minidom.pyi +404 -0
  1000. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/pulldom.pyi +94 -0
  1001. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/xmlbuilder.pyi +108 -0
  1002. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementInclude.pyi +28 -0
  1003. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementPath.pyi +34 -0
  1004. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementTree.pyi +327 -0
  1005. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/__init__.pyi +0 -0
  1006. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/cElementTree.pyi +1 -0
  1007. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/__init__.pyi +1 -0
  1008. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/__init__.pyi +1 -0
  1009. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/errors.pyi +1 -0
  1010. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/model.pyi +1 -0
  1011. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/__init__.pyi +25 -0
  1012. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/_exceptions.pyi +19 -0
  1013. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/handler.pyi +55 -0
  1014. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/saxutils.pyi +60 -0
  1015. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/xmlreader.pyi +87 -0
  1016. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/__init__.pyi +0 -0
  1017. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/client.pyi +296 -0
  1018. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/server.pyi +143 -0
  1019. jaclang/vendor/mypy/typeshed/stdlib/xxlimited.pyi +22 -0
  1020. jaclang/vendor/mypy/typeshed/stdlib/zipapp.pyi +20 -0
  1021. jaclang/vendor/mypy/typeshed/stdlib/zipfile/__init__.pyi +306 -0
  1022. jaclang/vendor/mypy/typeshed/stdlib/zipfile/_path.pyi +95 -0
  1023. jaclang/vendor/mypy/typeshed/stdlib/zipimport.pyi +32 -0
  1024. jaclang/vendor/mypy/typeshed/stdlib/zlib.pyi +56 -0
  1025. jaclang/vendor/mypy/typeshed/stdlib/zoneinfo/__init__.pyi +38 -0
  1026. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/mypy_extensions.pyi +218 -0
  1027. jaclang/vendor/mypy/typestate.py +5 -15
  1028. jaclang/vendor/mypy/typetraverser.py +9 -3
  1029. jaclang/vendor/mypy/typevars.py +2 -8
  1030. jaclang/vendor/mypy/util.py +14 -45
  1031. jaclang/vendor/mypy/version.py +1 -19
  1032. jaclang/vendor/mypy/visitor.py +3 -9
  1033. jaclang/vendor/mypy/xml/mypy-html.css +104 -0
  1034. jaclang/vendor/mypy/xml/mypy-html.xslt +81 -0
  1035. jaclang/vendor/mypy/xml/mypy-txt.xslt +100 -0
  1036. jaclang/vendor/mypy/xml/mypy.xsd +50 -0
  1037. jaclang/vendor/mypy-1.10.0.dist-info/LICENSE +229 -0
  1038. jaclang/vendor/mypy-1.10.0.dist-info/METADATA +48 -0
  1039. jaclang/vendor/mypy-1.10.0.dist-info/RECORD +1241 -0
  1040. jaclang/vendor/mypy-1.10.0.dist-info/WHEEL +6 -0
  1041. jaclang/vendor/mypy-1.10.0.dist-info/entry_points.txt +6 -0
  1042. jaclang/vendor/mypy-1.10.0.dist-info/top_level.txt +3 -0
  1043. jaclang/vendor/mypy_extensions-1.0.0.dist-info/LICENSE +27 -0
  1044. jaclang/vendor/mypy_extensions-1.0.0.dist-info/METADATA +29 -0
  1045. jaclang/vendor/mypy_extensions-1.0.0.dist-info/RECORD +6 -0
  1046. jaclang/vendor/mypy_extensions-1.0.0.dist-info/WHEEL +5 -0
  1047. jaclang/vendor/mypy_extensions-1.0.0.dist-info/top_level.txt +1 -0
  1048. jaclang/vendor/mypy_extensions.py +21 -40
  1049. jaclang/vendor/mypyc/README.md +133 -0
  1050. jaclang/vendor/mypyc/__main__.py +1 -3
  1051. jaclang/vendor/mypyc/analysis/attrdefined.py +6 -22
  1052. jaclang/vendor/mypyc/analysis/dataflow.py +5 -3
  1053. jaclang/vendor/mypyc/analysis/ircheck.py +13 -26
  1054. jaclang/vendor/mypyc/analysis/selfleaks.py +4 -0
  1055. jaclang/vendor/mypyc/build.py +6 -19
  1056. jaclang/vendor/mypyc/codegen/emit.py +20 -73
  1057. jaclang/vendor/mypyc/codegen/emitclass.py +22 -72
  1058. jaclang/vendor/mypyc/codegen/emitfunc.py +20 -62
  1059. jaclang/vendor/mypyc/codegen/emitmodule.py +50 -117
  1060. jaclang/vendor/mypyc/codegen/emitwrapper.py +22 -78
  1061. jaclang/vendor/mypyc/codegen/literals.py +1 -3
  1062. jaclang/vendor/mypyc/common.py +1 -3
  1063. jaclang/vendor/mypyc/doc/Makefile +20 -0
  1064. jaclang/vendor/mypyc/doc/bool_operations.rst +27 -0
  1065. jaclang/vendor/mypyc/doc/compilation_units.rst +20 -0
  1066. jaclang/vendor/mypyc/doc/conf.py +59 -0
  1067. jaclang/vendor/mypyc/doc/cpython-timings.md +25 -0
  1068. jaclang/vendor/mypyc/doc/dev-intro.md +548 -0
  1069. jaclang/vendor/mypyc/doc/dict_operations.rst +59 -0
  1070. jaclang/vendor/mypyc/doc/differences_from_python.rst +332 -0
  1071. jaclang/vendor/mypyc/doc/float_operations.rst +50 -0
  1072. jaclang/vendor/mypyc/doc/future.md +42 -0
  1073. jaclang/vendor/mypyc/doc/getting_started.rst +240 -0
  1074. jaclang/vendor/mypyc/doc/index.rst +61 -0
  1075. jaclang/vendor/mypyc/doc/int_operations.rst +162 -0
  1076. jaclang/vendor/mypyc/doc/introduction.rst +150 -0
  1077. jaclang/vendor/mypyc/doc/list_operations.rst +65 -0
  1078. jaclang/vendor/mypyc/doc/make.bat +35 -0
  1079. jaclang/vendor/mypyc/doc/native_classes.rst +206 -0
  1080. jaclang/vendor/mypyc/doc/native_operations.rst +55 -0
  1081. jaclang/vendor/mypyc/doc/performance_tips_and_tricks.rst +244 -0
  1082. jaclang/vendor/mypyc/doc/set_operations.rst +47 -0
  1083. jaclang/vendor/mypyc/doc/str_operations.rst +35 -0
  1084. jaclang/vendor/mypyc/doc/tuple_operations.rst +33 -0
  1085. jaclang/vendor/mypyc/doc/using_type_annotations.rst +398 -0
  1086. jaclang/vendor/mypyc/external/googletest/LICENSE +28 -0
  1087. jaclang/vendor/mypyc/external/googletest/README.md +280 -0
  1088. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-death-test.h +294 -0
  1089. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-message.h +250 -0
  1090. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h +1444 -0
  1091. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h.pump +510 -0
  1092. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-printers.h +993 -0
  1093. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-spi.h +232 -0
  1094. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-test-part.h +179 -0
  1095. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-typed-test.h +263 -0
  1096. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest.h +2236 -0
  1097. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_pred_impl.h +358 -0
  1098. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_prod.h +58 -0
  1099. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-port.h +69 -0
  1100. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-printers.h +42 -0
  1101. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest.h +41 -0
  1102. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-death-test-internal.h +319 -0
  1103. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-filepath.h +206 -0
  1104. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-internal.h +1238 -0
  1105. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-linked_ptr.h +243 -0
  1106. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h +5146 -0
  1107. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +286 -0
  1108. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util.h +731 -0
  1109. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port-arch.h +93 -0
  1110. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port.h +2560 -0
  1111. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-string.h +167 -0
  1112. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h +1020 -0
  1113. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h.pump +347 -0
  1114. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h +3331 -0
  1115. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h.pump +297 -0
  1116. jaclang/vendor/mypyc/external/googletest/make/Makefile +61 -0
  1117. jaclang/vendor/mypyc/external/googletest/src/gtest-all.cc +48 -0
  1118. jaclang/vendor/mypyc/external/googletest/src/gtest-death-test.cc +1342 -0
  1119. jaclang/vendor/mypyc/external/googletest/src/gtest-filepath.cc +387 -0
  1120. jaclang/vendor/mypyc/external/googletest/src/gtest-internal-inl.h +1183 -0
  1121. jaclang/vendor/mypyc/external/googletest/src/gtest-port.cc +1259 -0
  1122. jaclang/vendor/mypyc/external/googletest/src/gtest-printers.cc +373 -0
  1123. jaclang/vendor/mypyc/external/googletest/src/gtest-test-part.cc +110 -0
  1124. jaclang/vendor/mypyc/external/googletest/src/gtest-typed-test.cc +118 -0
  1125. jaclang/vendor/mypyc/external/googletest/src/gtest.cc +5388 -0
  1126. jaclang/vendor/mypyc/external/googletest/src/gtest_main.cc +38 -0
  1127. jaclang/vendor/mypyc/ir/class_ir.py +8 -24
  1128. jaclang/vendor/mypyc/ir/func_ir.py +3 -16
  1129. jaclang/vendor/mypyc/ir/module_ir.py +2 -6
  1130. jaclang/vendor/mypyc/ir/ops.py +103 -66
  1131. jaclang/vendor/mypyc/ir/pprint.py +35 -55
  1132. jaclang/vendor/mypyc/ir/rtypes.py +16 -48
  1133. jaclang/vendor/mypyc/irbuild/ast_helpers.py +4 -1
  1134. jaclang/vendor/mypyc/irbuild/builder.py +46 -148
  1135. jaclang/vendor/mypyc/irbuild/callable_class.py +5 -19
  1136. jaclang/vendor/mypyc/irbuild/classdef.py +27 -83
  1137. jaclang/vendor/mypyc/irbuild/env_class.py +3 -9
  1138. jaclang/vendor/mypyc/irbuild/expression.py +42 -100
  1139. jaclang/vendor/mypyc/irbuild/for_helpers.py +56 -105
  1140. jaclang/vendor/mypyc/irbuild/format_str_tokenizer.py +1 -4
  1141. jaclang/vendor/mypyc/irbuild/function.py +40 -132
  1142. jaclang/vendor/mypyc/irbuild/generator.py +14 -49
  1143. jaclang/vendor/mypyc/irbuild/ll_builder.py +197 -426
  1144. jaclang/vendor/mypyc/irbuild/mapper.py +2 -13
  1145. jaclang/vendor/mypyc/irbuild/match.py +11 -36
  1146. jaclang/vendor/mypyc/irbuild/nonlocalcontrol.py +2 -7
  1147. jaclang/vendor/mypyc/irbuild/prebuildvisitor.py +1 -4
  1148. jaclang/vendor/mypyc/irbuild/prepare.py +25 -83
  1149. jaclang/vendor/mypyc/irbuild/specialize.py +22 -72
  1150. jaclang/vendor/mypyc/irbuild/statement.py +30 -96
  1151. jaclang/vendor/mypyc/irbuild/targets.py +1 -3
  1152. jaclang/vendor/mypyc/irbuild/util.py +2 -8
  1153. jaclang/vendor/mypyc/irbuild/vtable.py +1 -3
  1154. jaclang/vendor/mypyc/lib-rt/CPy.h +638 -0
  1155. jaclang/vendor/mypyc/lib-rt/bytes_ops.c +143 -0
  1156. jaclang/vendor/mypyc/lib-rt/dict_ops.c +446 -0
  1157. jaclang/vendor/mypyc/lib-rt/exc_ops.c +259 -0
  1158. jaclang/vendor/mypyc/lib-rt/float_ops.c +192 -0
  1159. jaclang/vendor/mypyc/lib-rt/generic_ops.c +64 -0
  1160. jaclang/vendor/mypyc/lib-rt/getargs.c +450 -0
  1161. jaclang/vendor/mypyc/lib-rt/getargsfast.c +569 -0
  1162. jaclang/vendor/mypyc/lib-rt/init.c +13 -0
  1163. jaclang/vendor/mypyc/lib-rt/int_ops.c +803 -0
  1164. jaclang/vendor/mypyc/lib-rt/list_ops.c +335 -0
  1165. jaclang/vendor/mypyc/lib-rt/misc_ops.c +942 -0
  1166. jaclang/vendor/mypyc/lib-rt/module_shim.tmpl +18 -0
  1167. jaclang/vendor/mypyc/lib-rt/mypyc_util.h +118 -0
  1168. jaclang/vendor/mypyc/lib-rt/pythoncapi_compat.h +497 -0
  1169. jaclang/vendor/mypyc/lib-rt/pythonsupport.h +533 -0
  1170. jaclang/vendor/mypyc/lib-rt/set_ops.c +17 -0
  1171. jaclang/vendor/mypyc/lib-rt/setup.py +70 -0
  1172. jaclang/vendor/mypyc/lib-rt/str_ops.c +241 -0
  1173. jaclang/vendor/mypyc/lib-rt/test_capi.cc +585 -0
  1174. jaclang/vendor/mypyc/lib-rt/tuple_ops.c +61 -0
  1175. jaclang/vendor/mypyc/lower/__init__.py +0 -0
  1176. jaclang/vendor/mypyc/lower/int_ops.py +113 -0
  1177. jaclang/vendor/mypyc/lower/list_ops.py +45 -0
  1178. jaclang/vendor/mypyc/lower/misc_ops.py +12 -0
  1179. jaclang/vendor/mypyc/lower/registry.py +26 -0
  1180. jaclang/vendor/mypyc/options.py +1 -3
  1181. jaclang/vendor/mypyc/primitives/dict_ops.py +1 -4
  1182. jaclang/vendor/mypyc/primitives/exc_ops.py +3 -12
  1183. jaclang/vendor/mypyc/primitives/int_ops.py +22 -32
  1184. jaclang/vendor/mypyc/primitives/list_ops.py +10 -0
  1185. jaclang/vendor/mypyc/primitives/misc_ops.py +28 -22
  1186. jaclang/vendor/mypyc/primitives/registry.py +56 -19
  1187. jaclang/vendor/mypyc/primitives/set_ops.py +1 -3
  1188. jaclang/vendor/mypyc/rt_subtype.py +1 -2
  1189. jaclang/vendor/mypyc/sametype.py +2 -5
  1190. jaclang/vendor/mypyc/subtype.py +3 -12
  1191. jaclang/vendor/mypyc/test/test_alwaysdefined.py +2 -6
  1192. jaclang/vendor/mypyc/test/test_analysis.py +8 -24
  1193. jaclang/vendor/mypyc/test/test_cheader.py +12 -4
  1194. jaclang/vendor/mypyc/test/test_emit.py +4 -14
  1195. jaclang/vendor/mypyc/test/test_emitclass.py +1 -8
  1196. jaclang/vendor/mypyc/test/test_emitfunc.py +30 -77
  1197. jaclang/vendor/mypyc/test/test_emitwrapper.py +1 -3
  1198. jaclang/vendor/mypyc/test/test_exceptions.py +4 -12
  1199. jaclang/vendor/mypyc/test/test_external.py +1 -5
  1200. jaclang/vendor/mypyc/test/test_irbuild.py +2 -6
  1201. jaclang/vendor/mypyc/test/test_ircheck.py +6 -17
  1202. jaclang/vendor/mypyc/test/test_literals.py +1 -4
  1203. jaclang/vendor/mypyc/test/test_lowering.py +56 -0
  1204. jaclang/vendor/mypyc/test/test_namegen.py +1 -4
  1205. jaclang/vendor/mypyc/test/test_optimizations.py +68 -0
  1206. jaclang/vendor/mypyc/test/test_refcount.py +3 -9
  1207. jaclang/vendor/mypyc/test/test_run.py +12 -38
  1208. jaclang/vendor/mypyc/test/test_serialization.py +1 -3
  1209. jaclang/vendor/mypyc/test/test_struct.py +3 -11
  1210. jaclang/vendor/mypyc/test/test_tuplename.py +4 -13
  1211. jaclang/vendor/mypyc/test/test_typeops.py +1 -4
  1212. jaclang/vendor/mypyc/test/testutil.py +2 -6
  1213. jaclang/vendor/mypyc/test-data/alwaysdefined.test +732 -0
  1214. jaclang/vendor/mypyc/test-data/analysis.test +470 -0
  1215. jaclang/vendor/mypyc/test-data/commandline.test +245 -0
  1216. jaclang/vendor/mypyc/test-data/driver/driver.py +48 -0
  1217. jaclang/vendor/mypyc/test-data/exceptions-freq.test +125 -0
  1218. jaclang/vendor/mypyc/test-data/exceptions.test +699 -0
  1219. jaclang/vendor/mypyc/test-data/fixtures/ir.py +373 -0
  1220. jaclang/vendor/mypyc/test-data/fixtures/testutil.py +103 -0
  1221. jaclang/vendor/mypyc/test-data/fixtures/typing-full.pyi +169 -0
  1222. jaclang/vendor/mypyc/test-data/irbuild-any.test +236 -0
  1223. jaclang/vendor/mypyc/test-data/irbuild-basic.test +3399 -0
  1224. jaclang/vendor/mypyc/test-data/irbuild-bool.test +424 -0
  1225. jaclang/vendor/mypyc/test-data/irbuild-bytes.test +181 -0
  1226. jaclang/vendor/mypyc/test-data/irbuild-classes.test +1302 -0
  1227. jaclang/vendor/mypyc/test-data/irbuild-constant-fold.test +480 -0
  1228. jaclang/vendor/mypyc/test-data/irbuild-dict.test +584 -0
  1229. jaclang/vendor/mypyc/test-data/irbuild-dunders.test +215 -0
  1230. jaclang/vendor/mypyc/test-data/irbuild-float.test +497 -0
  1231. jaclang/vendor/mypyc/test-data/irbuild-generics.test +150 -0
  1232. jaclang/vendor/mypyc/test-data/irbuild-glue-methods.test +437 -0
  1233. jaclang/vendor/mypyc/test-data/irbuild-i16.test +526 -0
  1234. jaclang/vendor/mypyc/test-data/irbuild-i32.test +598 -0
  1235. jaclang/vendor/mypyc/test-data/irbuild-i64.test +2144 -0
  1236. jaclang/vendor/mypyc/test-data/irbuild-int.test +194 -0
  1237. jaclang/vendor/mypyc/test-data/irbuild-isinstance.test +109 -0
  1238. jaclang/vendor/mypyc/test-data/irbuild-lists.test +513 -0
  1239. jaclang/vendor/mypyc/test-data/irbuild-match.test +1717 -0
  1240. jaclang/vendor/mypyc/test-data/irbuild-math.test +64 -0
  1241. jaclang/vendor/mypyc/test-data/irbuild-nested.test +807 -0
  1242. jaclang/vendor/mypyc/test-data/irbuild-optional.test +536 -0
  1243. jaclang/vendor/mypyc/test-data/irbuild-set.test +806 -0
  1244. jaclang/vendor/mypyc/test-data/irbuild-singledispatch.test +257 -0
  1245. jaclang/vendor/mypyc/test-data/irbuild-statements.test +1060 -0
  1246. jaclang/vendor/mypyc/test-data/irbuild-str.test +312 -0
  1247. jaclang/vendor/mypyc/test-data/irbuild-strip-asserts.test +12 -0
  1248. jaclang/vendor/mypyc/test-data/irbuild-try.test +523 -0
  1249. jaclang/vendor/mypyc/test-data/irbuild-tuple.test +386 -0
  1250. jaclang/vendor/mypyc/test-data/irbuild-u8.test +543 -0
  1251. jaclang/vendor/mypyc/test-data/irbuild-unreachable.test +241 -0
  1252. jaclang/vendor/mypyc/test-data/irbuild-vectorcall.test +153 -0
  1253. jaclang/vendor/mypyc/test-data/lowering-int.test +377 -0
  1254. jaclang/vendor/mypyc/test-data/lowering-list.test +33 -0
  1255. jaclang/vendor/mypyc/test-data/opt-copy-propagation.test +400 -0
  1256. jaclang/vendor/mypyc/test-data/opt-flag-elimination.test +296 -0
  1257. jaclang/vendor/mypyc/test-data/refcount.test +1482 -0
  1258. jaclang/vendor/mypyc/test-data/run-async.test +173 -0
  1259. jaclang/vendor/mypyc/test-data/run-attrs.test +318 -0
  1260. jaclang/vendor/mypyc/test-data/run-bench.test +196 -0
  1261. jaclang/vendor/mypyc/test-data/run-bools.test +229 -0
  1262. jaclang/vendor/mypyc/test-data/run-bytes.test +302 -0
  1263. jaclang/vendor/mypyc/test-data/run-classes.test +2505 -0
  1264. jaclang/vendor/mypyc/test-data/run-dicts.test +334 -0
  1265. jaclang/vendor/mypyc/test-data/run-dunders.test +945 -0
  1266. jaclang/vendor/mypyc/test-data/run-exceptions.test +448 -0
  1267. jaclang/vendor/mypyc/test-data/run-floats.test +516 -0
  1268. jaclang/vendor/mypyc/test-data/run-functions.test +1310 -0
  1269. jaclang/vendor/mypyc/test-data/run-generators.test +682 -0
  1270. jaclang/vendor/mypyc/test-data/run-i16.test +338 -0
  1271. jaclang/vendor/mypyc/test-data/run-i32.test +336 -0
  1272. jaclang/vendor/mypyc/test-data/run-i64.test +1519 -0
  1273. jaclang/vendor/mypyc/test-data/run-imports.test +265 -0
  1274. jaclang/vendor/mypyc/test-data/run-integers.test +540 -0
  1275. jaclang/vendor/mypyc/test-data/run-lists.test +411 -0
  1276. jaclang/vendor/mypyc/test-data/run-loops.test +485 -0
  1277. jaclang/vendor/mypyc/test-data/run-match.test +283 -0
  1278. jaclang/vendor/mypyc/test-data/run-math.test +106 -0
  1279. jaclang/vendor/mypyc/test-data/run-misc.test +1170 -0
  1280. jaclang/vendor/mypyc/test-data/run-multimodule.test +887 -0
  1281. jaclang/vendor/mypyc/test-data/run-mypy-sim.test +138 -0
  1282. jaclang/vendor/mypyc/test-data/run-primitives.test +375 -0
  1283. jaclang/vendor/mypyc/test-data/run-python37.test +159 -0
  1284. jaclang/vendor/mypyc/test-data/run-python38.test +88 -0
  1285. jaclang/vendor/mypyc/test-data/run-sets.test +150 -0
  1286. jaclang/vendor/mypyc/test-data/run-singledispatch.test +698 -0
  1287. jaclang/vendor/mypyc/test-data/run-strings.test +641 -0
  1288. jaclang/vendor/mypyc/test-data/run-traits.test +411 -0
  1289. jaclang/vendor/mypyc/test-data/run-tuples.test +258 -0
  1290. jaclang/vendor/mypyc/test-data/run-u8.test +303 -0
  1291. jaclang/vendor/mypyc/transform/copy_propagation.py +94 -0
  1292. jaclang/vendor/mypyc/transform/exceptions.py +1 -5
  1293. jaclang/vendor/mypyc/transform/flag_elimination.py +108 -0
  1294. jaclang/vendor/mypyc/transform/ir_transform.py +368 -0
  1295. jaclang/vendor/mypyc/transform/lower.py +33 -0
  1296. jaclang/vendor/mypyc/transform/refcount.py +7 -30
  1297. jaclang/vendor/mypyc/transform/uninit.py +4 -15
  1298. jaclang/vendor/pluggy/__init__.py +15 -11
  1299. jaclang/vendor/pluggy/_callers.py +34 -5
  1300. jaclang/vendor/pluggy/_hooks.py +35 -7
  1301. jaclang/vendor/pluggy/_manager.py +26 -3
  1302. jaclang/vendor/pluggy/_result.py +0 -15
  1303. jaclang/vendor/pluggy/_version.py +16 -0
  1304. jaclang/vendor/pluggy/_warnings.py +27 -0
  1305. jaclang/vendor/pluggy-1.5.0.dist-info/LICENSE +21 -0
  1306. jaclang/vendor/pluggy-1.5.0.dist-info/METADATA +155 -0
  1307. jaclang/vendor/pluggy-1.5.0.dist-info/RECORD +14 -0
  1308. jaclang/vendor/pluggy-1.5.0.dist-info/top_level.txt +1 -0
  1309. jaclang/vendor/pygls/__init__.py +25 -0
  1310. jaclang/vendor/pygls/capabilities.py +460 -0
  1311. jaclang/vendor/pygls/client.py +176 -0
  1312. jaclang/vendor/pygls/constants.py +26 -0
  1313. jaclang/vendor/pygls/exceptions.py +215 -0
  1314. jaclang/vendor/pygls/feature_manager.py +244 -0
  1315. jaclang/vendor/pygls/lsp/__init__.py +139 -0
  1316. jaclang/vendor/pygls/lsp/client.py +1961 -0
  1317. jaclang/vendor/pygls/progress.py +79 -0
  1318. jaclang/vendor/pygls/protocol/__init__.py +78 -0
  1319. jaclang/vendor/pygls/protocol/json_rpc.py +560 -0
  1320. jaclang/vendor/pygls/protocol/language_server.py +569 -0
  1321. jaclang/vendor/pygls/protocol/lsp_meta.py +51 -0
  1322. jaclang/vendor/pygls/py.typed +2 -0
  1323. jaclang/vendor/pygls/server.py +616 -0
  1324. jaclang/vendor/pygls/uris.py +184 -0
  1325. jaclang/vendor/pygls/workspace/__init__.py +97 -0
  1326. jaclang/vendor/pygls/workspace/position_codec.py +206 -0
  1327. jaclang/vendor/pygls/workspace/text_document.py +238 -0
  1328. jaclang/vendor/pygls/workspace/workspace.py +323 -0
  1329. jaclang/vendor/pygls-1.3.1.dist-info/LICENSE.txt +201 -0
  1330. jaclang/vendor/pygls-1.3.1.dist-info/METADATA +105 -0
  1331. jaclang/vendor/pygls-1.3.1.dist-info/RECORD +24 -0
  1332. jaclang/vendor/pygls-1.3.1.dist-info/WHEEL +4 -0
  1333. jaclang/vendor/typing_extensions-4.12.2.dist-info/LICENSE +279 -0
  1334. jaclang/vendor/typing_extensions-4.12.2.dist-info/METADATA +67 -0
  1335. jaclang/vendor/typing_extensions-4.12.2.dist-info/RECORD +5 -0
  1336. jaclang/vendor/typing_extensions-4.12.2.dist-info/WHEEL +4 -0
  1337. jaclang/vendor/typing_extensions.py +1209 -641
  1338. jaclang-0.6.5.dist-info/METADATA +106 -0
  1339. jaclang-0.6.5.dist-info/RECORD +1476 -0
  1340. jaclang-0.6.5.dist-info/WHEEL +4 -0
  1341. jaclang-0.6.5.dist-info/entry_points.txt +3 -0
  1342. jaclang/compiler/generated/jac_parser.py +0 -4069
  1343. jaclang-0.6.0.dist-info/METADATA +0 -17
  1344. jaclang-0.6.0.dist-info/RECORD +0 -426
  1345. jaclang-0.6.0.dist-info/entry_points.txt +0 -2
  1346. jaclang-0.6.0.dist-info/top_level.txt +0 -1
  1347. /jaclang/{compiler/generated/__init__.py → vendor/attr/py.typed} +0 -0
  1348. {jaclang-0.6.0.dist-info → jaclang/vendor/pluggy-1.5.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,206 @@
1
+ .. _native-classes:
2
+
3
+ Native classes
4
+ ==============
5
+
6
+ Classes in compiled modules are *native classes* by default (some
7
+ exceptions are discussed below). Native classes are compiled to C
8
+ extension classes, which have some important differences from normal
9
+ Python classes. Native classes are similar in many ways to built-in
10
+ types, such as ``int``, ``str``, and ``list``.
11
+
12
+ Immutable namespaces
13
+ --------------------
14
+
15
+ The type object namespace of native classes is mostly immutable (but
16
+ class variables can be assigned to)::
17
+
18
+ class Cls:
19
+ def method1(self) -> None:
20
+ print("method1")
21
+
22
+ def method2(self) -> None:
23
+ print("method2")
24
+
25
+ Cls.method1 = Cls.method2 # Error
26
+ Cls.new_method = Cls.method2 # Error
27
+
28
+ Only attributes defined within a class definition (or in a base class)
29
+ can be assigned to (similar to using ``__slots__``)::
30
+
31
+ class Cls:
32
+ x: int
33
+
34
+ def __init__(self, y: int) -> None:
35
+ self.x = 0
36
+ self.y = y
37
+
38
+ def method(self) -> None:
39
+ self.z = "x"
40
+
41
+ o = Cls(0)
42
+ print(o.x, o.y) # OK
43
+ o.z = "y" # OK
44
+ o.extra = 3 # Error: no attribute "extra"
45
+
46
+ .. _inheritance:
47
+
48
+ Inheritance
49
+ -----------
50
+
51
+ Only single inheritance is supported (except for :ref:`traits
52
+ <trait-types>`). Most non-native classes can't be used as base
53
+ classes.
54
+
55
+ These non-native classes can be used as base classes of native
56
+ classes:
57
+
58
+ * ``object``
59
+ * ``dict`` (and ``Dict[k, v]``)
60
+ * ``BaseException``
61
+ * ``Exception``
62
+ * ``ValueError``
63
+ * ``IndexError``
64
+ * ``LookupError``
65
+ * ``UserWarning``
66
+ * ``typing.NamedTuple``
67
+ * ``enum.Enum``
68
+
69
+ By default, a non-native class can't inherit a native class, and you
70
+ can't inherit from a native class outside the compilation unit that
71
+ defines the class. You can enable these through
72
+ ``mypy_extensions.mypyc_attr``::
73
+
74
+ from mypy_extensions import mypyc_attr
75
+
76
+ @mypyc_attr(allow_interpreted_subclasses=True)
77
+ class Cls:
78
+ ...
79
+
80
+ Allowing interpreted subclasses has only minor impact on performance
81
+ of instances of the native class. Accessing methods and attributes of
82
+ a *non-native* subclass (or a subclass defined in another compilation
83
+ unit) will be slower, since it needs to use the normal Python
84
+ attribute access mechanism.
85
+
86
+ You need to install ``mypy-extensions`` to use ``@mypyc_attr``:
87
+
88
+ .. code-block:: text
89
+
90
+ pip install --upgrade mypy-extensions
91
+
92
+ Class variables
93
+ ---------------
94
+
95
+ Class variables must be explicitly declared using ``attr: ClassVar``
96
+ or ``attr: ClassVar[<type>]``. You can't assign to a class variable
97
+ through an instance. Example::
98
+
99
+ from typing import ClassVar
100
+
101
+ class Cls:
102
+ cv: ClassVar = 0
103
+
104
+ Cls.cv = 2 # OK
105
+ o = Cls()
106
+ print(o.cv) # OK (2)
107
+ o.cv = 3 # Error!
108
+
109
+ .. tip::
110
+
111
+ Constant class variables can be declared using ``typing.Final`` or
112
+ ``typing.Final[<type>]``.
113
+
114
+ Generic native classes
115
+ ----------------------
116
+
117
+ Native classes can be generic. Type variables are *erased* at runtime,
118
+ and instances don't keep track of type variable values.
119
+
120
+ Compiled code thus can't check the values of type variables when
121
+ performing runtime type checks. These checks are delayed to when
122
+ reading a value with a type variable type::
123
+
124
+ from typing import TypeVar, Generic, cast
125
+
126
+ T = TypeVar('T')
127
+
128
+ class Box(Generic[T]):
129
+ def __init__(self, item: T) -> None:
130
+ self.item = item
131
+
132
+ x = Box(1) # Box[int]
133
+ y = cast(Box[str], x) # OK (type variable value not checked)
134
+ y.item # Runtime error: item is "int", but "str" expected
135
+
136
+ Metaclasses
137
+ -----------
138
+
139
+ Most metaclasses aren't supported with native classes, since their
140
+ behavior is too dynamic. You can use these metaclasses, however:
141
+
142
+ * ``abc.ABCMeta``
143
+ * ``typing.GenericMeta`` (used by ``typing.Generic``)
144
+
145
+ .. note::
146
+
147
+ If a class definition uses an unsupported metaclass, *mypyc
148
+ compiles the class into a regular Python class*.
149
+
150
+ Class decorators
151
+ ----------------
152
+
153
+ Similar to metaclasses, most class decorators aren't supported with
154
+ native classes, as they are usually too dynamic. These class
155
+ decorators can be used with native classes, however:
156
+
157
+ * ``mypy_extensions.trait`` (for defining :ref:`trait types <trait-types>`)
158
+ * ``mypy_extensions.mypyc_attr`` (see :ref:`above <inheritance>`)
159
+ * ``dataclasses.dataclass``
160
+ * ``@attr.s(auto_attribs=True)``
161
+
162
+ Dataclasses and attrs classes have partial native support, and they aren't as
163
+ efficient as pure native classes.
164
+
165
+ .. note::
166
+
167
+ If a class definition uses an unsupported class decorator, *mypyc
168
+ compiles the class into a regular Python class*.
169
+
170
+ Deleting attributes
171
+ -------------------
172
+
173
+ By default, attributes defined in native classes can't be deleted. You
174
+ can explicitly allow certain attributes to be deleted by using
175
+ ``__deletable__``::
176
+
177
+ class Cls:
178
+ x: int = 0
179
+ y: int = 0
180
+ other: int = 0
181
+
182
+ __deletable__ = ['x', 'y'] # 'x' and 'y' can be deleted
183
+
184
+ o = Cls()
185
+ del o.x # OK
186
+ del o.y # OK
187
+ del o.other # Error
188
+
189
+ You must initialize the ``__deletable__`` attribute in the class body,
190
+ using a list or a tuple expression with only string literal items that
191
+ refer to attributes. These are not valid::
192
+
193
+ a = ['x', 'y']
194
+
195
+ class Cls:
196
+ x: int
197
+ y: int
198
+
199
+ __deletable__ = a # Error: cannot use variable 'a'
200
+
201
+ __deletable__ = ('a',) # Error: not in a class body
202
+
203
+ Other properties
204
+ ----------------
205
+
206
+ Instances of native classes don't usually have a ``__dict__`` attribute.
@@ -0,0 +1,55 @@
1
+ Miscellaneous native operations
2
+ ===============================
3
+
4
+ This is a list of various non-type-specific operations that have
5
+ custom native implementations. If an operation has no native
6
+ implementation, mypyc will use fallback generic implementations that
7
+ are often not as fast.
8
+
9
+ .. note::
10
+
11
+ Operations specific to various primitive types are described
12
+ in the following sections.
13
+
14
+ Operators
15
+ ---------
16
+
17
+ * ``x is y`` (this is very fast for all types)
18
+
19
+ Functions
20
+ ---------
21
+
22
+ * ``isinstance(obj, type: type)``
23
+ * ``isinstance(obj, type: tuple)``
24
+ * ``cast(<type>, obj)``
25
+ * ``type(obj)``
26
+ * ``len(obj)``
27
+ * ``abs(obj)``
28
+ * ``id(obj)``
29
+ * ``iter(obj)``
30
+ * ``next(iter: Iterator)``
31
+ * ``hash(obj)``
32
+ * ``getattr(obj, attr)``
33
+ * ``getattr(obj, attr, default)``
34
+ * ``setattr(obj, attr, value)``
35
+ * ``hasattr(obj, attr)``
36
+ * ``delattr(obj, name)``
37
+ * ``slice(start, stop, step)``
38
+ * ``globals()``
39
+
40
+ Method decorators
41
+ -----------------
42
+
43
+ * ``@property``
44
+ * ``@staticmethod``
45
+ * ``@classmethod``
46
+ * ``@abc.abstractmethod``
47
+
48
+ Statements
49
+ ----------
50
+
51
+ These variants of statements have custom implementations:
52
+
53
+ * ``for ... in seq:`` (for loop over a sequence)
54
+ * ``for ... in enumerate(...):``
55
+ * ``for ... in zip(...):``
@@ -0,0 +1,244 @@
1
+ .. _performance-tips:
2
+
3
+ Performance tips and tricks
4
+ ===========================
5
+
6
+ Performance optimization is part art, part science. Just using mypyc
7
+ in a simple manner will likely make your code faster, but squeezing
8
+ the most performance out of your code requires the use of some
9
+ techniques we'll summarize below.
10
+
11
+ Profiling
12
+ ---------
13
+
14
+ If you are speeding up existing code, understanding where time is
15
+ spent is important. Mypyc speeds up code that you compile. If most of
16
+ the time is spent elsewhere, you may come back disappointed. For
17
+ example, if you spend 40% of time outside compiled code, even if
18
+ compiled code would go 100x faster, overall performance will only be
19
+ 2.5x faster.
20
+
21
+ A simple (but often effective) approach is to record the time in
22
+ various points of program execution using ``time.time()``, and to
23
+ print out elapsed time (or to write it to a log file).
24
+
25
+ The stdlib modules ``profile`` and ``cProfile`` can provide much more
26
+ detailed data. (But these only work well with non-compiled code.)
27
+
28
+ Avoiding slow libraries
29
+ -----------------------
30
+
31
+ If profiling indicates that a lot of time is spent in the stdlib or
32
+ third-party libraries, you still have several options.
33
+
34
+ First, if most time is spent in a few library features, you can
35
+ perhaps easily reimplement them in type-annotated Python, or extract
36
+ the relevant code and annotate it. Now it may be easy to compile this
37
+ code to speed it up.
38
+
39
+ Second, you may be able to avoid the library altogether, or use an
40
+ alternative, more efficient library to achieve the same purpose.
41
+
42
+ Type annotations
43
+ ----------------
44
+
45
+ As discussed earlier, type annotations are key to major performance
46
+ gains. You should at least consider adding annotations to any
47
+ performance-critical functions and classes. It may also be helpful to
48
+ annotate code called by this code, even if it's not compiled, since
49
+ this may help mypy infer better types in the compile code. If you use
50
+ libraries, ensure they have stub files with decent type annotation
51
+ coverage. Writing a stub file is often easy, and you only need to
52
+ annotate features you use a lot.
53
+
54
+ If annotating external code or writing stubs feel too burdensome, a
55
+ simple workaround is to annotate variables explicitly. For example,
56
+ here we call ``acme.get_items()``, but it has no type annotation. We
57
+ can use an explicit type annotation for the variable to which we
58
+ assign the result::
59
+
60
+ from typing import List, Tuple
61
+ import acme
62
+
63
+ def work() -> None:
64
+ # Annotate "items" to help mypyc
65
+ items: List[Tuple[int, str]] = acme.get_items()
66
+ for item in items:
67
+ ... # Do some work here
68
+
69
+ Without the annotation on ``items``, the type would be ``Any`` (since
70
+ ``acme`` has no type annotation), resulting in slower, generic
71
+ operations being used later in the function.
72
+
73
+ Avoiding slow Python features
74
+ -----------------------------
75
+
76
+ Mypyc can optimize some features more effectively than others. Here
77
+ the difference is sometimes big -- some things only get marginally
78
+ faster at best, while others can get 10x faster, or more. Avoiding
79
+ these slow features in performance-critical parts of your code can
80
+ help a lot.
81
+
82
+ These are some of the most important things to avoid:
83
+
84
+ * Using class decorators or metaclasses in compiled code (that aren't
85
+ properly supported by mypyc)
86
+
87
+ * Heavy reliance on interpreted Python libraries (C extensions are
88
+ usually fine)
89
+
90
+ These things also tend to be relatively slow:
91
+
92
+ * Using Python classes and instances of Python classes (native classes
93
+ are much faster)
94
+
95
+ * Calling decorated functions (``@property``, ``@staticmethod``, and
96
+ ``@classmethod`` are special cased and thus fast)
97
+
98
+ * Calling nested functions
99
+
100
+ * Calling functions or methods defined in other compilation units
101
+
102
+ * Using ``*args`` or ``**kwargs``
103
+
104
+ * Using generator functions
105
+
106
+ * Using callable values (i.e. not leveraging early binding to call
107
+ functions or methods)
108
+
109
+ Nested functions can often be replaced with module-level functions or
110
+ methods of native classes.
111
+
112
+ Callable values and nested functions can sometimes be replaced with an
113
+ instance of a native class with a single method only, such as
114
+ ``call(...)``. You can derive the class from an ABC, if there are
115
+ multiple possible functions.
116
+
117
+ .. note::
118
+
119
+ Some slow features will likely get efficient implementations in the
120
+ future. You should check this section every once in a while to see
121
+ if some additional operations are fast.
122
+
123
+ Using fast native features
124
+ --------------------------
125
+
126
+ Some native operations are particularly quick relative to the
127
+ corresponding interpreted operations. Using them as much as possible
128
+ may allow you to see 10x or more in performance gains.
129
+
130
+ Some things are not much (or any) faster in compiled code, such as set
131
+ math operations. In contrast, calling a method of a native class is
132
+ much faster in compiled code.
133
+
134
+ If you are used to optimizing for CPython, you might have replaced
135
+ some class instances with dictionaries, as they can be
136
+ faster. However, in compiled code, this "optimization" would likely
137
+ slow down your code.
138
+
139
+ Similarly, caching a frequently called method in a local variable can
140
+ help in CPython, but it can slow things down in compiled code, since
141
+ the code won't use :ref:`early binding <early-binding>`::
142
+
143
+ def squares(n: int) -> List[int]:
144
+ a = []
145
+ append = a.append # Not a good idea in compiled code!
146
+ for i in range(n):
147
+ append(i * i)
148
+ return a
149
+
150
+ Here are examples of features that are fast, in no particular order
151
+ (this list is *not* exhaustive):
152
+
153
+ * Calling compiled functions directly defined in the same compilation
154
+ unit (with positional and/or keyword arguments)
155
+
156
+ * Calling methods of native classes defined in the same compilation
157
+ unit (with positional and/or keyword arguments)
158
+
159
+ * Many integer operations
160
+
161
+ * Many ``float`` operations
162
+
163
+ * Booleans
164
+
165
+ * :ref:`Native list operations <list-ops>`, such as indexing,
166
+ ``append``, and list comprehensions
167
+
168
+ * While loops
169
+
170
+ * For loops over ranges and lists, and with ``enumerate`` or ``zip``
171
+
172
+ * Reading dictionary items
173
+
174
+ * ``isinstance()`` checks against native classes and instances of
175
+ primitive types (and unions of them)
176
+
177
+ * Accessing local variables
178
+
179
+ * Accessing attributes of native classes
180
+
181
+ * Accessing final module-level attributes
182
+
183
+ * Comparing strings for equality
184
+
185
+ These features are also fast, but somewhat less so (relative to other
186
+ related operations):
187
+
188
+ * Constructing instances of native classes
189
+
190
+ * Constructing dictionaries
191
+
192
+ * Setting dictionary items
193
+
194
+ * Native :ref:`dict <dict-ops>` and :ref:`set <set-ops>` operations
195
+
196
+ * Accessing module-level variables
197
+
198
+ Generally anything documented as a native operation is fast, even if
199
+ it's not explicitly mentioned here
200
+
201
+ Adjusting garbage collection
202
+ ----------------------------
203
+
204
+ Compilation does not speed up cyclic garbage collection. If everything
205
+ else gets much faster, it's possible that garbage collection will take
206
+ a big fraction of time. You can use ``gc.set_threshold()`` to adjust
207
+ the garbage collector to run less often::
208
+
209
+ import gc
210
+
211
+ # Spend less time in gc; do this before significant computation
212
+ gc.set_threshold(150000)
213
+
214
+ ... # Actual work happens here
215
+
216
+ Fast interpreter shutdown
217
+ -------------------------
218
+
219
+ If you allocate many objects, it's possible that your program spends a
220
+ lot of time cleaning up when the Python runtime shuts down. Mypyc
221
+ won't speed up the shutdown of a Python process much.
222
+
223
+ You can call ``os._exit(code)`` to immediately terminate the Python
224
+ process, skipping normal cleanup. This can give a nice boost to a
225
+ batch process or a command-line tool.
226
+
227
+ .. note::
228
+
229
+ This can be dangerous and can lose data. You need to ensure
230
+ that all streams are flushed and everything is otherwise cleaned up
231
+ properly.
232
+
233
+ Work smarter
234
+ ------------
235
+
236
+ Usually there are many things you can do to improve performance, even
237
+ if most tweaks will yield only minor gains. The key to being effective
238
+ is to focus on things that give a large gain with a small effort.
239
+
240
+ For example, low-level optimizations, such as avoiding a nested
241
+ function, can be pointless, if you could instead avoid a metaclass --
242
+ to allow a key class to be compiled as a native class. The latter
243
+ optimization could speed up numerous method calls and attribute
244
+ accesses, just like that.
@@ -0,0 +1,47 @@
1
+ .. _set-ops:
2
+
3
+ Native set operations
4
+ ======================
5
+
6
+ These ``set`` operations have fast, optimized implementations. Other
7
+ set operations use generic implementations that are often slower.
8
+
9
+ Construction
10
+ ------------
11
+
12
+ Construct set with specific items:
13
+
14
+ * ``{item0, ..., itemN}``
15
+
16
+ Construct empty set:
17
+
18
+ * ``set()``
19
+
20
+ Construct set from iterable:
21
+
22
+ * ``set(x: Iterable)``
23
+
24
+ Set comprehensions:
25
+
26
+ * ``{... for ... in ...}``
27
+ * ``{... for ... in ... if ...}``
28
+
29
+ Operators
30
+ ---------
31
+
32
+ * ``item in s``
33
+
34
+ Methods
35
+ -------
36
+
37
+ * ``s.add(item)``
38
+ * ``s.remove(item)``
39
+ * ``s.discard(item)``
40
+ * ``s.update(x: Iterable)``
41
+ * ``s.clear()``
42
+ * ``s.pop()``
43
+
44
+ Functions
45
+ ---------
46
+
47
+ * ``len(s: set)``
@@ -0,0 +1,35 @@
1
+ .. _str-ops:
2
+
3
+ Native string operations
4
+ ========================
5
+
6
+ These ``str`` operations have fast, optimized implementations. Other
7
+ string operations use generic implementations that are often slower.
8
+
9
+ Construction
10
+ ------------
11
+
12
+ * String literal
13
+ * ``str(x: int)``
14
+ * ``str(x: object)``
15
+
16
+ Operators
17
+ ---------
18
+
19
+ * Concatenation (``s1 + s2``)
20
+ * Indexing (``s[n]``)
21
+ * Slicing (``s[n:m]``, ``s[n:]``, ``s[:m]``)
22
+ * Comparisons (``==``, ``!=``)
23
+ * Augmented assignment (``s1 += s2``)
24
+
25
+ Methods
26
+ -------
27
+
28
+ * ``s1.endswith(s2: str)``
29
+ * ``s.join(x: Iterable)``
30
+ * ``s.replace(old: str, new: str)``
31
+ * ``s.replace(old: str, new: str, count: int)``
32
+ * ``s.split()``
33
+ * ``s.split(sep: str)``
34
+ * ``s.split(sep: str, maxsplit: int)``
35
+ * ``s1.startswith(s2: str)``
@@ -0,0 +1,33 @@
1
+ .. _tuple-ops:
2
+
3
+ Native tuple operations
4
+ =======================
5
+
6
+ These ``tuple`` operations have fast, optimized implementations. Other
7
+ tuple operations use generic implementations that are often slower.
8
+
9
+ Unless mentioned otherwise, these operations apply to both fixed-length
10
+ tuples and variable-length tuples.
11
+
12
+ Construction
13
+ ------------
14
+
15
+ * ``item0, ..., itemN`` (construct a tuple)
16
+ * ``tuple(lst: list)`` (construct a variable-length tuple)
17
+ * ``tuple(lst: Iterable)`` (construct a variable-length tuple)
18
+
19
+ Operators
20
+ ---------
21
+
22
+ * ``tup[n]`` (integer index)
23
+ * ``tup[n:m]``, ``tup[n:]``, ``tup[:m]`` (slicing)
24
+
25
+ Statements
26
+ ----------
27
+
28
+ * ``item0, ..., itemN = tup`` (for fixed-length tuples)
29
+
30
+ Functions
31
+ ---------
32
+
33
+ * ``len(tup: tuple)``