jaclang 0.6.0__py3-none-any.whl → 0.6.2__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.
Files changed (913) hide show
  1. jaclang/cli/.gitignore +3 -0
  2. jaclang/cli/cli.md +190 -0
  3. jaclang/cli/cli.py +90 -3
  4. jaclang/cli/cmdreg.py +18 -6
  5. jaclang/compiler/.gitignore +1 -0
  6. jaclang/compiler/absyntree.py +1 -2
  7. jaclang/compiler/parser.py +1 -1
  8. jaclang/compiler/passes/main/def_impl_match_pass.py +4 -1
  9. jaclang/compiler/passes/main/fuse_typeinfo_pass.py +10 -7
  10. jaclang/compiler/passes/main/import_pass.py +39 -22
  11. jaclang/compiler/passes/main/pyast_gen_pass.py +6 -57
  12. jaclang/compiler/passes/main/pyjac_ast_link_pass.py +218 -0
  13. jaclang/compiler/passes/main/schedules.py +2 -0
  14. jaclang/compiler/passes/main/sym_tab_build_pass.py +9 -3
  15. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl/getme.impl.jac +3 -0
  16. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl.jac +3 -0
  17. jaclang/compiler/passes/main/tests/fixtures/autoimpl.jac +9 -0
  18. jaclang/compiler/passes/main/tests/fixtures/autoimpl.something.else.impl.jac +3 -0
  19. jaclang/compiler/passes/main/tests/fixtures/base.jac +13 -0
  20. jaclang/compiler/passes/main/tests/fixtures/base2.jac +14 -0
  21. jaclang/compiler/passes/main/tests/fixtures/blip.jac +2 -0
  22. jaclang/compiler/passes/main/tests/fixtures/codegentext.jac +31 -0
  23. jaclang/compiler/passes/main/tests/fixtures/decls.jac +10 -0
  24. jaclang/compiler/passes/main/tests/fixtures/defs_and_uses.jac +44 -0
  25. jaclang/compiler/passes/main/tests/fixtures/fstrings.jac +4 -0
  26. jaclang/compiler/passes/main/tests/fixtures/func.jac +18 -0
  27. jaclang/compiler/passes/main/tests/fixtures/func2.jac +8 -0
  28. jaclang/compiler/passes/main/tests/fixtures/game1.jac +15 -0
  29. jaclang/compiler/passes/main/tests/fixtures/impl/defs1.jac +8 -0
  30. jaclang/compiler/passes/main/tests/fixtures/impl/defs2.jac +8 -0
  31. jaclang/compiler/passes/main/tests/fixtures/impl/imps.jac +11 -0
  32. jaclang/compiler/passes/main/tests/fixtures/multi_def_err.jac +7 -0
  33. jaclang/compiler/passes/main/tests/fixtures/registry.jac +36 -0
  34. jaclang/compiler/passes/main/tests/test_import_pass.py +11 -0
  35. jaclang/compiler/passes/tool/tests/fixtures/corelib.jac +480 -0
  36. jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac +480 -0
  37. jaclang/compiler/passes/tool/tests/fixtures/genai/essay_review.jac +36 -0
  38. jaclang/compiler/passes/tool/tests/fixtures/genai/expert_answer.jac +17 -0
  39. jaclang/compiler/passes/tool/tests/fixtures/genai/joke_gen.jac +32 -0
  40. jaclang/compiler/passes/tool/tests/fixtures/genai/odd_word_out.jac +27 -0
  41. jaclang/compiler/passes/tool/tests/fixtures/genai/personality_finder.jac +35 -0
  42. jaclang/compiler/passes/tool/tests/fixtures/genai/text_to_type.jac +25 -0
  43. jaclang/compiler/passes/tool/tests/fixtures/genai/translator.jac +13 -0
  44. jaclang/compiler/passes/tool/tests/fixtures/genai/wikipedia.jac +63 -0
  45. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.dot +39 -0
  46. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.jac +7 -0
  47. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.txt +20 -0
  48. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/ability_impl_long_comprehension.jac +15 -0
  49. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/call_with_many_parameters.jac +24 -0
  50. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/entry_main.jac +4 -0
  51. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/long_line_nested_dict_access.jac +10 -0
  52. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/multiline_fstrings.jac +16 -0
  53. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_dict.jac +15 -0
  54. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_loop_and_incrementer.jac +13 -0
  55. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/simple_walker.jac +25 -0
  56. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/try_block_and_walker_spawn_and_fstrings.jac +26 -0
  57. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/tuple_iteration_and_not_negation.jac +20 -0
  58. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/type_annotation.jac +3 -0
  59. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_decl_only.jac +12 -0
  60. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_default_values_types_and_docstrings.jac +18 -0
  61. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_inline_ability_impl.jac +8 -0
  62. jaclang/compiler/passes/tool/tests/fixtures/simple_walk.jac +47 -0
  63. jaclang/compiler/passes/tool/tests/fixtures/simple_walk_fmt.jac +47 -0
  64. jaclang/compiler/tests/fixtures/fam.jac +67 -0
  65. jaclang/compiler/tests/fixtures/hello_world.jac +5 -0
  66. jaclang/compiler/tests/fixtures/kwesc.jac +5 -0
  67. jaclang/compiler/tests/fixtures/mod_doc_test.jac +1 -0
  68. jaclang/compiler/tests/fixtures/staticcheck.jac +20 -0
  69. jaclang/compiler/tests/fixtures/stuff.jac +6 -0
  70. jaclang/core/aott.py +10 -1
  71. jaclang/core/construct.py +157 -21
  72. jaclang/core/importer.py +6 -2
  73. jaclang/core/memory.py +48 -0
  74. jaclang/core/shelve_storage.py +55 -0
  75. jaclang/plugin/__init__.py +1 -2
  76. jaclang/plugin/builtin.py +1 -1
  77. jaclang/plugin/default.py +97 -4
  78. jaclang/plugin/feature.py +28 -9
  79. jaclang/plugin/spec.py +45 -10
  80. jaclang/plugin/tests/fixtures/impl_match.jac +9 -0
  81. jaclang/plugin/tests/fixtures/impl_match_impl.jac +3 -0
  82. jaclang/plugin/tests/fixtures/simple_node_connection.jac +55 -0
  83. jaclang/plugin/tests/fixtures/simple_persistent.jac +41 -0
  84. jaclang/plugin/tests/test_jaseci.py +219 -0
  85. jaclang/tests/fixtures/abc.jac +73 -0
  86. jaclang/tests/fixtures/access_checker.jac +19 -0
  87. jaclang/tests/fixtures/access_modifier.jac +49 -0
  88. jaclang/tests/fixtures/aott_raise.jac +25 -0
  89. jaclang/tests/fixtures/arithmetic_bug.jac +13 -0
  90. jaclang/tests/fixtures/assign_compr.jac +15 -0
  91. jaclang/tests/fixtures/assign_compr_dup.jac +15 -0
  92. jaclang/tests/fixtures/builtin_dotgen.jac +41 -0
  93. jaclang/tests/fixtures/chandra_bugs.jac +11 -0
  94. jaclang/tests/fixtures/chandra_bugs2.jac +26 -0
  95. jaclang/tests/fixtures/circle_pysolo.py +91 -0
  96. jaclang/tests/fixtures/deep/deeper/deep_outer_import.jac +9 -0
  97. jaclang/tests/fixtures/deep/deeper/deep_outer_import2.jac +9 -0
  98. jaclang/tests/fixtures/deep/deeper/snd_lev.jac +6 -0
  99. jaclang/tests/fixtures/deep/mycode.jac +4 -0
  100. jaclang/tests/fixtures/deep/one_lev.jac +6 -0
  101. jaclang/tests/fixtures/deep/one_lev_dup.jac +6 -0
  102. jaclang/tests/fixtures/deep/one_lev_dup_py.py +6 -0
  103. jaclang/tests/fixtures/deep_import.jac +7 -0
  104. jaclang/tests/fixtures/deferred_field.jac +13 -0
  105. jaclang/tests/fixtures/disconn.jac +29 -0
  106. jaclang/tests/fixtures/edge_node_walk.jac +46 -0
  107. jaclang/tests/fixtures/edge_ops.jac +45 -0
  108. jaclang/tests/fixtures/edges_walk.jac +38 -0
  109. jaclang/tests/fixtures/enum_inside_archtype.jac +20 -0
  110. jaclang/tests/fixtures/err.jac +5 -0
  111. jaclang/tests/fixtures/err2.jac +5 -0
  112. jaclang/tests/fixtures/game1.jac +15 -0
  113. jaclang/tests/fixtures/gendot_bubble_sort.jac +77 -0
  114. jaclang/tests/fixtures/guess_game.jac +47 -0
  115. jaclang/tests/fixtures/has_goodness.jac +15 -0
  116. jaclang/tests/fixtures/hashcheck.jac +12 -0
  117. jaclang/tests/fixtures/hashcheck_dup.jac +12 -0
  118. jaclang/tests/fixtures/hello.jac +5 -0
  119. jaclang/tests/fixtures/hello_nc.jac +5 -0
  120. jaclang/tests/fixtures/ignore.jac +43 -0
  121. jaclang/tests/fixtures/ignore_dup.jac +43 -0
  122. jaclang/tests/fixtures/impl_grab.impl.jac +4 -0
  123. jaclang/tests/fixtures/impl_grab.jac +2 -0
  124. jaclang/tests/fixtures/inherit_check.jac +33 -0
  125. jaclang/tests/fixtures/jacsamp.jac +6 -0
  126. jaclang/tests/fixtures/jp_importer.jac +17 -0
  127. jaclang/tests/fixtures/lambda.jac +6 -0
  128. jaclang/tests/fixtures/maxfail_run_test.jac +5 -0
  129. jaclang/tests/fixtures/mtest.impl.jac +6 -0
  130. jaclang/tests/fixtures/mtest.jac +6 -0
  131. jaclang/tests/fixtures/needs_import.jac +18 -0
  132. jaclang/tests/fixtures/needs_import_1.jac +6 -0
  133. jaclang/tests/fixtures/needs_import_2.jac +6 -0
  134. jaclang/tests/fixtures/needs_import_3.jac +6 -0
  135. jaclang/tests/fixtures/needs_import_dup.jac +18 -0
  136. jaclang/tests/fixtures/package_import.jac +6 -0
  137. jaclang/tests/fixtures/pyfunc.py +11 -0
  138. jaclang/tests/fixtures/pyfunc_1.py +311 -0
  139. jaclang/tests/fixtures/pyfunc_2.py +279 -0
  140. jaclang/tests/fixtures/pyfunc_3.py +310 -0
  141. jaclang/tests/fixtures/random_check.jac +70 -0
  142. jaclang/tests/fixtures/raw_byte_string.jac +18 -0
  143. jaclang/tests/fixtures/registry.jac +37 -0
  144. jaclang/tests/fixtures/run_test.jac +5 -0
  145. jaclang/tests/fixtures/semstr.jac +33 -0
  146. jaclang/tests/fixtures/simple_archs.jac +26 -0
  147. jaclang/tests/fixtures/slice_vals.jac +7 -0
  148. jaclang/tests/fixtures/sub_abil_sep.jac +15 -0
  149. jaclang/tests/fixtures/sub_abil_sep_multilev.jac +17 -0
  150. jaclang/tests/fixtures/try_finally.jac +34 -0
  151. jaclang/tests/fixtures/tupleunpack.jac +6 -0
  152. jaclang/tests/fixtures/tuplytuples.jac +8 -0
  153. jaclang/tests/fixtures/type_info.jac +19 -0
  154. jaclang/tests/fixtures/with_context.jac +30 -0
  155. jaclang/tests/fixtures/with_llm_function.jac +33 -0
  156. jaclang/tests/fixtures/with_llm_lower.jac +45 -0
  157. jaclang/tests/fixtures/with_llm_method.jac +51 -0
  158. jaclang/tests/fixtures/with_llm_type.jac +52 -0
  159. jaclang/tests/test_cli.py +239 -0
  160. jaclang/tests/test_language.py +807 -0
  161. jaclang/tests/test_man_code.py +148 -0
  162. jaclang/tests/test_reference.py +95 -0
  163. jaclang/tests/test_settings.py +46 -0
  164. jaclang/utils/treeprinter.py +7 -2
  165. jaclang/vendor/LICENSE +18 -0
  166. jaclang/vendor/mypy/stubgen.py +0 -0
  167. jaclang/vendor/mypy/stubgenc.py +0 -0
  168. jaclang/vendor/mypy/typeshed/LICENSE +237 -0
  169. jaclang/vendor/mypy/typeshed/stdlib/VERSIONS +308 -0
  170. jaclang/vendor/mypy/typeshed/stdlib/__future__.pyi +41 -0
  171. jaclang/vendor/mypy/typeshed/stdlib/__main__.pyi +3 -0
  172. jaclang/vendor/mypy/typeshed/stdlib/_ast.pyi +632 -0
  173. jaclang/vendor/mypy/typeshed/stdlib/_bisect.pyi +106 -0
  174. jaclang/vendor/mypy/typeshed/stdlib/_bootlocale.pyi +1 -0
  175. jaclang/vendor/mypy/typeshed/stdlib/_codecs.pyi +198 -0
  176. jaclang/vendor/mypy/typeshed/stdlib/_collections_abc.pyi +94 -0
  177. jaclang/vendor/mypy/typeshed/stdlib/_compat_pickle.pyi +8 -0
  178. jaclang/vendor/mypy/typeshed/stdlib/_compression.pyi +25 -0
  179. jaclang/vendor/mypy/typeshed/stdlib/_csv.pyi +90 -0
  180. jaclang/vendor/mypy/typeshed/stdlib/_ctypes.pyi +219 -0
  181. jaclang/vendor/mypy/typeshed/stdlib/_curses.pyi +600 -0
  182. jaclang/vendor/mypy/typeshed/stdlib/_decimal.pyi +316 -0
  183. jaclang/vendor/mypy/typeshed/stdlib/_dummy_thread.pyi +43 -0
  184. jaclang/vendor/mypy/typeshed/stdlib/_dummy_threading.pyi +185 -0
  185. jaclang/vendor/mypy/typeshed/stdlib/_heapq.pyi +11 -0
  186. jaclang/vendor/mypy/typeshed/stdlib/_imp.pyi +32 -0
  187. jaclang/vendor/mypy/typeshed/stdlib/_json.pyi +49 -0
  188. jaclang/vendor/mypy/typeshed/stdlib/_locale.pyi +100 -0
  189. jaclang/vendor/mypy/typeshed/stdlib/_markupbase.pyi +16 -0
  190. jaclang/vendor/mypy/typeshed/stdlib/_msi.pyi +92 -0
  191. jaclang/vendor/mypy/typeshed/stdlib/_operator.pyi +172 -0
  192. jaclang/vendor/mypy/typeshed/stdlib/_osx_support.pyi +55 -0
  193. jaclang/vendor/mypy/typeshed/stdlib/_posixsubprocess.pyi +32 -0
  194. jaclang/vendor/mypy/typeshed/stdlib/_py_abc.pyi +17 -0
  195. jaclang/vendor/mypy/typeshed/stdlib/_pydecimal.pyi +43 -0
  196. jaclang/vendor/mypy/typeshed/stdlib/_random.pyi +12 -0
  197. jaclang/vendor/mypy/typeshed/stdlib/_sitebuiltins.pyi +18 -0
  198. jaclang/vendor/mypy/typeshed/stdlib/_socket.pyi +851 -0
  199. jaclang/vendor/mypy/typeshed/stdlib/_stat.pyi +103 -0
  200. jaclang/vendor/mypy/typeshed/stdlib/_thread.pyi +63 -0
  201. jaclang/vendor/mypy/typeshed/stdlib/_threading_local.pyi +17 -0
  202. jaclang/vendor/mypy/typeshed/stdlib/_tkinter.pyi +120 -0
  203. jaclang/vendor/mypy/typeshed/stdlib/_tracemalloc.pyi +17 -0
  204. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/README.md +34 -0
  205. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/__init__.pyi +374 -0
  206. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/dbapi.pyi +45 -0
  207. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/wsgi.pyi +51 -0
  208. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/xml.pyi +13 -0
  209. jaclang/vendor/mypy/typeshed/stdlib/_warnings.pyi +65 -0
  210. jaclang/vendor/mypy/typeshed/stdlib/_weakref.pyi +45 -0
  211. jaclang/vendor/mypy/typeshed/stdlib/_weakrefset.pyi +51 -0
  212. jaclang/vendor/mypy/typeshed/stdlib/_winapi.pyi +275 -0
  213. jaclang/vendor/mypy/typeshed/stdlib/abc.pyi +61 -0
  214. jaclang/vendor/mypy/typeshed/stdlib/aifc.pyi +99 -0
  215. jaclang/vendor/mypy/typeshed/stdlib/antigravity.pyi +3 -0
  216. jaclang/vendor/mypy/typeshed/stdlib/argparse.pyi +675 -0
  217. jaclang/vendor/mypy/typeshed/stdlib/array.pyi +111 -0
  218. jaclang/vendor/mypy/typeshed/stdlib/ast.pyi +287 -0
  219. jaclang/vendor/mypy/typeshed/stdlib/asynchat.pyi +21 -0
  220. jaclang/vendor/mypy/typeshed/stdlib/asyncio/__init__.pyi +41 -0
  221. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_events.pyi +519 -0
  222. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_futures.pyi +21 -0
  223. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_subprocess.pyi +71 -0
  224. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_tasks.pyi +13 -0
  225. jaclang/vendor/mypy/typeshed/stdlib/asyncio/constants.pyi +20 -0
  226. jaclang/vendor/mypy/typeshed/stdlib/asyncio/coroutines.pyi +32 -0
  227. jaclang/vendor/mypy/typeshed/stdlib/asyncio/events.pyi +669 -0
  228. jaclang/vendor/mypy/typeshed/stdlib/asyncio/exceptions.pyi +43 -0
  229. jaclang/vendor/mypy/typeshed/stdlib/asyncio/format_helpers.pyi +26 -0
  230. jaclang/vendor/mypy/typeshed/stdlib/asyncio/futures.pyi +61 -0
  231. jaclang/vendor/mypy/typeshed/stdlib/asyncio/locks.pyi +131 -0
  232. jaclang/vendor/mypy/typeshed/stdlib/asyncio/log.pyi +3 -0
  233. jaclang/vendor/mypy/typeshed/stdlib/asyncio/mixins.pyi +9 -0
  234. jaclang/vendor/mypy/typeshed/stdlib/asyncio/proactor_events.pyi +72 -0
  235. jaclang/vendor/mypy/typeshed/stdlib/asyncio/protocols.pyi +40 -0
  236. jaclang/vendor/mypy/typeshed/stdlib/asyncio/queues.pyi +49 -0
  237. jaclang/vendor/mypy/typeshed/stdlib/asyncio/runners.pyi +44 -0
  238. jaclang/vendor/mypy/typeshed/stdlib/asyncio/selector_events.pyi +8 -0
  239. jaclang/vendor/mypy/typeshed/stdlib/asyncio/sslproto.pyi +189 -0
  240. jaclang/vendor/mypy/typeshed/stdlib/asyncio/staggered.pyi +13 -0
  241. jaclang/vendor/mypy/typeshed/stdlib/asyncio/streams.pyi +172 -0
  242. jaclang/vendor/mypy/typeshed/stdlib/asyncio/subprocess.pyi +234 -0
  243. jaclang/vendor/mypy/typeshed/stdlib/asyncio/taskgroups.pyi +36 -0
  244. jaclang/vendor/mypy/typeshed/stdlib/asyncio/tasks.pyi +566 -0
  245. jaclang/vendor/mypy/typeshed/stdlib/asyncio/threads.pyi +11 -0
  246. jaclang/vendor/mypy/typeshed/stdlib/asyncio/timeouts.pyi +22 -0
  247. jaclang/vendor/mypy/typeshed/stdlib/asyncio/transports.pyi +64 -0
  248. jaclang/vendor/mypy/typeshed/stdlib/asyncio/trsock.pyi +140 -0
  249. jaclang/vendor/mypy/typeshed/stdlib/asyncio/unix_events.pyi +268 -0
  250. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_events.pyi +108 -0
  251. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_utils.pyi +59 -0
  252. jaclang/vendor/mypy/typeshed/stdlib/asyncore.pyi +99 -0
  253. jaclang/vendor/mypy/typeshed/stdlib/atexit.pyi +14 -0
  254. jaclang/vendor/mypy/typeshed/stdlib/audioop.pyi +50 -0
  255. jaclang/vendor/mypy/typeshed/stdlib/base64.pyi +76 -0
  256. jaclang/vendor/mypy/typeshed/stdlib/bdb.pyi +133 -0
  257. jaclang/vendor/mypy/typeshed/stdlib/binascii.pyi +45 -0
  258. jaclang/vendor/mypy/typeshed/stdlib/binhex.pyi +47 -0
  259. jaclang/vendor/mypy/typeshed/stdlib/bisect.pyi +4 -0
  260. jaclang/vendor/mypy/typeshed/stdlib/builtins.pyi +2310 -0
  261. jaclang/vendor/mypy/typeshed/stdlib/bz2.pyi +177 -0
  262. jaclang/vendor/mypy/typeshed/stdlib/cProfile.pyi +49 -0
  263. jaclang/vendor/mypy/typeshed/stdlib/calendar.pyi +248 -0
  264. jaclang/vendor/mypy/typeshed/stdlib/cgi.pyi +122 -0
  265. jaclang/vendor/mypy/typeshed/stdlib/cgitb.pyi +44 -0
  266. jaclang/vendor/mypy/typeshed/stdlib/chunk.pyi +26 -0
  267. jaclang/vendor/mypy/typeshed/stdlib/cmath.pyi +38 -0
  268. jaclang/vendor/mypy/typeshed/stdlib/cmd.pyi +52 -0
  269. jaclang/vendor/mypy/typeshed/stdlib/code.pyi +46 -0
  270. jaclang/vendor/mypy/typeshed/stdlib/codecs.pyi +344 -0
  271. jaclang/vendor/mypy/typeshed/stdlib/codeop.pyi +17 -0
  272. jaclang/vendor/mypy/typeshed/stdlib/collections/__init__.pyi +571 -0
  273. jaclang/vendor/mypy/typeshed/stdlib/collections/abc.pyi +2 -0
  274. jaclang/vendor/mypy/typeshed/stdlib/colorsys.pyi +20 -0
  275. jaclang/vendor/mypy/typeshed/stdlib/compileall.pyi +111 -0
  276. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/__init__.pyi +32 -0
  277. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/_base.pyi +137 -0
  278. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/process.pyi +272 -0
  279. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/thread.pyi +86 -0
  280. jaclang/vendor/mypy/typeshed/stdlib/configparser.pyi +449 -0
  281. jaclang/vendor/mypy/typeshed/stdlib/contextlib.pyi +274 -0
  282. jaclang/vendor/mypy/typeshed/stdlib/contextvars.pyi +67 -0
  283. jaclang/vendor/mypy/typeshed/stdlib/copy.pyi +16 -0
  284. jaclang/vendor/mypy/typeshed/stdlib/copyreg.pyi +32 -0
  285. jaclang/vendor/mypy/typeshed/stdlib/crypt.pyi +12 -0
  286. jaclang/vendor/mypy/typeshed/stdlib/csv.pyi +147 -0
  287. jaclang/vendor/mypy/typeshed/stdlib/ctypes/__init__.pyi +211 -0
  288. jaclang/vendor/mypy/typeshed/stdlib/ctypes/_endian.pyi +29 -0
  289. jaclang/vendor/mypy/typeshed/stdlib/ctypes/util.pyi +6 -0
  290. jaclang/vendor/mypy/typeshed/stdlib/ctypes/wintypes.pyi +298 -0
  291. jaclang/vendor/mypy/typeshed/stdlib/curses/__init__.pyi +25 -0
  292. jaclang/vendor/mypy/typeshed/stdlib/curses/ascii.pyi +63 -0
  293. jaclang/vendor/mypy/typeshed/stdlib/curses/has_key.pyi +4 -0
  294. jaclang/vendor/mypy/typeshed/stdlib/curses/panel.pyi +25 -0
  295. jaclang/vendor/mypy/typeshed/stdlib/curses/textpad.pyi +15 -0
  296. jaclang/vendor/mypy/typeshed/stdlib/dataclasses.pyi +323 -0
  297. jaclang/vendor/mypy/typeshed/stdlib/datetime.pyi +334 -0
  298. jaclang/vendor/mypy/typeshed/stdlib/dbm/__init__.pyi +98 -0
  299. jaclang/vendor/mypy/typeshed/stdlib/dbm/dumb.pyi +34 -0
  300. jaclang/vendor/mypy/typeshed/stdlib/dbm/gnu.pyi +44 -0
  301. jaclang/vendor/mypy/typeshed/stdlib/dbm/ndbm.pyi +40 -0
  302. jaclang/vendor/mypy/typeshed/stdlib/decimal.pyi +5 -0
  303. jaclang/vendor/mypy/typeshed/stdlib/difflib.pyi +169 -0
  304. jaclang/vendor/mypy/typeshed/stdlib/dis.pyi +190 -0
  305. jaclang/vendor/mypy/typeshed/stdlib/distutils/__init__.pyi +5 -0
  306. jaclang/vendor/mypy/typeshed/stdlib/distutils/archive_util.pyi +22 -0
  307. jaclang/vendor/mypy/typeshed/stdlib/distutils/bcppcompiler.pyi +3 -0
  308. jaclang/vendor/mypy/typeshed/stdlib/distutils/ccompiler.pyi +183 -0
  309. jaclang/vendor/mypy/typeshed/stdlib/distutils/cmd.pyi +88 -0
  310. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/__init__.pyi +0 -0
  311. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist.pyi +25 -0
  312. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_dumb.pyi +21 -0
  313. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_msi.pyi +45 -0
  314. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_packager.pyi +0 -0
  315. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_rpm.pyi +52 -0
  316. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_wininst.pyi +21 -0
  317. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build.pyi +31 -0
  318. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_clib.pyi +27 -0
  319. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_ext.pyi +50 -0
  320. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_py.pyi +44 -0
  321. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_scripts.pyi +24 -0
  322. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/check.pyi +39 -0
  323. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/clean.pyi +17 -0
  324. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/config.pyi +91 -0
  325. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install.pyi +63 -0
  326. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_data.pyi +19 -0
  327. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_egg_info.pyi +18 -0
  328. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_headers.pyi +16 -0
  329. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_lib.pyi +25 -0
  330. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_scripts.pyi +18 -0
  331. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/register.pyi +18 -0
  332. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/sdist.pyi +42 -0
  333. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/upload.pyi +17 -0
  334. jaclang/vendor/mypy/typeshed/stdlib/distutils/config.pyi +17 -0
  335. jaclang/vendor/mypy/typeshed/stdlib/distutils/core.pyi +59 -0
  336. jaclang/vendor/mypy/typeshed/stdlib/distutils/cygwinccompiler.pyi +20 -0
  337. jaclang/vendor/mypy/typeshed/stdlib/distutils/debug.pyi +1 -0
  338. jaclang/vendor/mypy/typeshed/stdlib/distutils/dep_util.pyi +3 -0
  339. jaclang/vendor/mypy/typeshed/stdlib/distutils/dir_util.pyi +21 -0
  340. jaclang/vendor/mypy/typeshed/stdlib/distutils/dist.pyi +155 -0
  341. jaclang/vendor/mypy/typeshed/stdlib/distutils/errors.pyi +19 -0
  342. jaclang/vendor/mypy/typeshed/stdlib/distutils/extension.pyi +36 -0
  343. jaclang/vendor/mypy/typeshed/stdlib/distutils/fancy_getopt.pyi +37 -0
  344. jaclang/vendor/mypy/typeshed/stdlib/distutils/file_util.pyi +14 -0
  345. jaclang/vendor/mypy/typeshed/stdlib/distutils/filelist.pyi +78 -0
  346. jaclang/vendor/mypy/typeshed/stdlib/distutils/log.pyi +25 -0
  347. jaclang/vendor/mypy/typeshed/stdlib/distutils/msvccompiler.pyi +3 -0
  348. jaclang/vendor/mypy/typeshed/stdlib/distutils/spawn.pyi +4 -0
  349. jaclang/vendor/mypy/typeshed/stdlib/distutils/sysconfig.pyi +24 -0
  350. jaclang/vendor/mypy/typeshed/stdlib/distutils/text_file.pyi +23 -0
  351. jaclang/vendor/mypy/typeshed/stdlib/distutils/unixccompiler.pyi +3 -0
  352. jaclang/vendor/mypy/typeshed/stdlib/distutils/util.pyi +50 -0
  353. jaclang/vendor/mypy/typeshed/stdlib/distutils/version.pyi +36 -0
  354. jaclang/vendor/mypy/typeshed/stdlib/doctest.pyi +282 -0
  355. jaclang/vendor/mypy/typeshed/stdlib/dummy_threading.pyi +2 -0
  356. jaclang/vendor/mypy/typeshed/stdlib/email/__init__.pyi +37 -0
  357. jaclang/vendor/mypy/typeshed/stdlib/email/_header_value_parser.pyi +392 -0
  358. jaclang/vendor/mypy/typeshed/stdlib/email/_policybase.pyi +51 -0
  359. jaclang/vendor/mypy/typeshed/stdlib/email/base64mime.pyi +22 -0
  360. jaclang/vendor/mypy/typeshed/stdlib/email/charset.pyi +39 -0
  361. jaclang/vendor/mypy/typeshed/stdlib/email/contentmanager.pyi +11 -0
  362. jaclang/vendor/mypy/typeshed/stdlib/email/encoders.pyi +8 -0
  363. jaclang/vendor/mypy/typeshed/stdlib/email/errors.pyi +39 -0
  364. jaclang/vendor/mypy/typeshed/stdlib/email/feedparser.pyi +31 -0
  365. jaclang/vendor/mypy/typeshed/stdlib/email/generator.pyi +42 -0
  366. jaclang/vendor/mypy/typeshed/stdlib/email/header.pyi +41 -0
  367. jaclang/vendor/mypy/typeshed/stdlib/email/headerregistry.pyi +214 -0
  368. jaclang/vendor/mypy/typeshed/stdlib/email/iterators.pyi +19 -0
  369. jaclang/vendor/mypy/typeshed/stdlib/email/message.pyi +220 -0
  370. jaclang/vendor/mypy/typeshed/stdlib/email/mime/__init__.pyi +0 -0
  371. jaclang/vendor/mypy/typeshed/stdlib/email/mime/application.pyi +17 -0
  372. jaclang/vendor/mypy/typeshed/stdlib/email/mime/audio.pyi +17 -0
  373. jaclang/vendor/mypy/typeshed/stdlib/email/mime/base.pyi +15 -0
  374. jaclang/vendor/mypy/typeshed/stdlib/email/mime/image.pyi +17 -0
  375. jaclang/vendor/mypy/typeshed/stdlib/email/mime/message.pyi +10 -0
  376. jaclang/vendor/mypy/typeshed/stdlib/email/mime/multipart.pyi +18 -0
  377. jaclang/vendor/mypy/typeshed/stdlib/email/mime/nonmultipart.pyi +5 -0
  378. jaclang/vendor/mypy/typeshed/stdlib/email/mime/text.pyi +14 -0
  379. jaclang/vendor/mypy/typeshed/stdlib/email/parser.pyi +44 -0
  380. jaclang/vendor/mypy/typeshed/stdlib/email/policy.pyi +51 -0
  381. jaclang/vendor/mypy/typeshed/stdlib/email/quoprimime.pyi +30 -0
  382. jaclang/vendor/mypy/typeshed/stdlib/email/utils.pyi +84 -0
  383. jaclang/vendor/mypy/typeshed/stdlib/encodings/__init__.pyi +10 -0
  384. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8.pyi +25 -0
  385. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8_sig.pyi +28 -0
  386. jaclang/vendor/mypy/typeshed/stdlib/ensurepip/__init__.pyi +12 -0
  387. jaclang/vendor/mypy/typeshed/stdlib/enum.pyi +347 -0
  388. jaclang/vendor/mypy/typeshed/stdlib/errno.pyi +222 -0
  389. jaclang/vendor/mypy/typeshed/stdlib/faulthandler.pyi +20 -0
  390. jaclang/vendor/mypy/typeshed/stdlib/fcntl.pyi +155 -0
  391. jaclang/vendor/mypy/typeshed/stdlib/filecmp.pyi +62 -0
  392. jaclang/vendor/mypy/typeshed/stdlib/fileinput.pyi +246 -0
  393. jaclang/vendor/mypy/typeshed/stdlib/fnmatch.pyi +9 -0
  394. jaclang/vendor/mypy/typeshed/stdlib/formatter.pyi +92 -0
  395. jaclang/vendor/mypy/typeshed/stdlib/fractions.pyi +152 -0
  396. jaclang/vendor/mypy/typeshed/stdlib/ftplib.pyi +214 -0
  397. jaclang/vendor/mypy/typeshed/stdlib/functools.pyi +261 -0
  398. jaclang/vendor/mypy/typeshed/stdlib/gc.pyi +39 -0
  399. jaclang/vendor/mypy/typeshed/stdlib/genericpath.pyi +62 -0
  400. jaclang/vendor/mypy/typeshed/stdlib/getopt.pyi +15 -0
  401. jaclang/vendor/mypy/typeshed/stdlib/getpass.pyi +8 -0
  402. jaclang/vendor/mypy/typeshed/stdlib/gettext.pyi +200 -0
  403. jaclang/vendor/mypy/typeshed/stdlib/glob.pyi +50 -0
  404. jaclang/vendor/mypy/typeshed/stdlib/graphlib.pyi +28 -0
  405. jaclang/vendor/mypy/typeshed/stdlib/grp.pyi +22 -0
  406. jaclang/vendor/mypy/typeshed/stdlib/gzip.pyi +162 -0
  407. jaclang/vendor/mypy/typeshed/stdlib/hashlib.pyi +191 -0
  408. jaclang/vendor/mypy/typeshed/stdlib/heapq.pyi +36 -0
  409. jaclang/vendor/mypy/typeshed/stdlib/hmac.pyi +45 -0
  410. jaclang/vendor/mypy/typeshed/stdlib/html/__init__.pyi +6 -0
  411. jaclang/vendor/mypy/typeshed/stdlib/html/entities.pyi +6 -0
  412. jaclang/vendor/mypy/typeshed/stdlib/html/parser.pyi +40 -0
  413. jaclang/vendor/mypy/typeshed/stdlib/http/__init__.pyi +105 -0
  414. jaclang/vendor/mypy/typeshed/stdlib/http/client.pyi +283 -0
  415. jaclang/vendor/mypy/typeshed/stdlib/http/cookiejar.pyi +206 -0
  416. jaclang/vendor/mypy/typeshed/stdlib/http/cookies.pyi +67 -0
  417. jaclang/vendor/mypy/typeshed/stdlib/http/server.pyi +93 -0
  418. jaclang/vendor/mypy/typeshed/stdlib/imaplib.pyi +221 -0
  419. jaclang/vendor/mypy/typeshed/stdlib/imghdr.pyi +17 -0
  420. jaclang/vendor/mypy/typeshed/stdlib/imp.pyi +75 -0
  421. jaclang/vendor/mypy/typeshed/stdlib/importlib/__init__.pyi +24 -0
  422. jaclang/vendor/mypy/typeshed/stdlib/importlib/_abc.pyi +15 -0
  423. jaclang/vendor/mypy/typeshed/stdlib/importlib/abc.pyi +195 -0
  424. jaclang/vendor/mypy/typeshed/stdlib/importlib/machinery.pyi +214 -0
  425. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/__init__.pyi +310 -0
  426. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/_meta.pyi +40 -0
  427. jaclang/vendor/mypy/typeshed/stdlib/importlib/readers.pyi +68 -0
  428. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/__init__.pyi +66 -0
  429. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/abc.pyi +12 -0
  430. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/readers.pyi +14 -0
  431. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/simple.pyi +55 -0
  432. jaclang/vendor/mypy/typeshed/stdlib/importlib/simple.pyi +16 -0
  433. jaclang/vendor/mypy/typeshed/stdlib/importlib/util.pyi +57 -0
  434. jaclang/vendor/mypy/typeshed/stdlib/inspect.pyi +709 -0
  435. jaclang/vendor/mypy/typeshed/stdlib/io.pyi +222 -0
  436. jaclang/vendor/mypy/typeshed/stdlib/ipaddress.pyi +229 -0
  437. jaclang/vendor/mypy/typeshed/stdlib/itertools.pyi +394 -0
  438. jaclang/vendor/mypy/typeshed/stdlib/json/__init__.pyi +69 -0
  439. jaclang/vendor/mypy/typeshed/stdlib/json/decoder.pyi +34 -0
  440. jaclang/vendor/mypy/typeshed/stdlib/json/encoder.pyi +38 -0
  441. jaclang/vendor/mypy/typeshed/stdlib/json/tool.pyi +1 -0
  442. jaclang/vendor/mypy/typeshed/stdlib/keyword.pyi +21 -0
  443. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/__init__.pyi +0 -0
  444. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/btm_matcher.pyi +32 -0
  445. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixer_base.pyi +44 -0
  446. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/__init__.pyi +0 -0
  447. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_apply.pyi +8 -0
  448. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_asserts.pyi +10 -0
  449. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_basestring.pyi +8 -0
  450. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_buffer.pyi +8 -0
  451. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_dict.pyi +16 -0
  452. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_except.pyi +14 -0
  453. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exec.pyi +8 -0
  454. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_execfile.pyi +8 -0
  455. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exitfunc.pyi +13 -0
  456. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_filter.pyi +9 -0
  457. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_funcattrs.pyi +8 -0
  458. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_future.pyi +8 -0
  459. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_getcwdu.pyi +8 -0
  460. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_has_key.pyi +8 -0
  461. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_idioms.pyi +15 -0
  462. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_import.pyi +16 -0
  463. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports.pyi +21 -0
  464. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports2.pyi +6 -0
  465. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_input.pyi +11 -0
  466. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_intern.pyi +9 -0
  467. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_isinstance.pyi +8 -0
  468. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools.pyi +9 -0
  469. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools_imports.pyi +7 -0
  470. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_long.pyi +7 -0
  471. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_map.pyi +9 -0
  472. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_metaclass.pyi +17 -0
  473. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_methodattrs.pyi +10 -0
  474. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ne.pyi +8 -0
  475. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_next.pyi +19 -0
  476. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_nonzero.pyi +8 -0
  477. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_numliterals.pyi +8 -0
  478. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_operator.pyi +12 -0
  479. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_paren.pyi +8 -0
  480. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_print.pyi +12 -0
  481. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raise.pyi +8 -0
  482. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raw_input.pyi +8 -0
  483. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reduce.pyi +8 -0
  484. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reload.pyi +9 -0
  485. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_renames.pyi +17 -0
  486. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_repr.pyi +8 -0
  487. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_set_literal.pyi +7 -0
  488. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_standarderror.pyi +8 -0
  489. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_sys_exc.pyi +9 -0
  490. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_throw.pyi +8 -0
  491. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_tuple_params.pyi +17 -0
  492. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_types.pyi +8 -0
  493. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_unicode.pyi +12 -0
  494. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_urllib.pyi +18 -0
  495. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ws_comma.pyi +12 -0
  496. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xrange.pyi +20 -0
  497. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xreadlines.pyi +8 -0
  498. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_zip.pyi +9 -0
  499. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/main.pyi +46 -0
  500. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/__init__.pyi +9 -0
  501. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/driver.pyi +40 -0
  502. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/grammar.pyi +24 -0
  503. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/literals.pyi +7 -0
  504. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/parse.pyi +36 -0
  505. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/pgen.pyi +52 -0
  506. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/token.pyi +67 -0
  507. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/tokenize.pyi +98 -0
  508. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pygram.pyi +114 -0
  509. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pytree.pyi +142 -0
  510. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/refactor.pyi +122 -0
  511. jaclang/vendor/mypy/typeshed/stdlib/linecache.pyi +29 -0
  512. jaclang/vendor/mypy/typeshed/stdlib/locale.pyi +165 -0
  513. jaclang/vendor/mypy/typeshed/stdlib/logging/__init__.pyi +685 -0
  514. jaclang/vendor/mypy/typeshed/stdlib/logging/config.pyi +161 -0
  515. jaclang/vendor/mypy/typeshed/stdlib/logging/handlers.pyi +315 -0
  516. jaclang/vendor/mypy/typeshed/stdlib/lzma.pyi +213 -0
  517. jaclang/vendor/mypy/typeshed/stdlib/mailbox.pyi +306 -0
  518. jaclang/vendor/mypy/typeshed/stdlib/mailcap.pyi +15 -0
  519. jaclang/vendor/mypy/typeshed/stdlib/marshal.pyi +35 -0
  520. jaclang/vendor/mypy/typeshed/stdlib/math.pyi +134 -0
  521. jaclang/vendor/mypy/typeshed/stdlib/mimetypes.pyi +50 -0
  522. jaclang/vendor/mypy/typeshed/stdlib/mmap.pyi +126 -0
  523. jaclang/vendor/mypy/typeshed/stdlib/modulefinder.pyi +84 -0
  524. jaclang/vendor/mypy/typeshed/stdlib/msilib/__init__.pyi +237 -0
  525. jaclang/vendor/mypy/typeshed/stdlib/msilib/schema.pyi +107 -0
  526. jaclang/vendor/mypy/typeshed/stdlib/msilib/sequence.pyi +13 -0
  527. jaclang/vendor/mypy/typeshed/stdlib/msilib/text.pyi +7 -0
  528. jaclang/vendor/mypy/typeshed/stdlib/msvcrt.pyi +32 -0
  529. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/__init__.pyi +94 -0
  530. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/connection.pyi +94 -0
  531. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/context.pyi +235 -0
  532. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/__init__.pyi +83 -0
  533. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/connection.pyi +50 -0
  534. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/forkserver.pyi +36 -0
  535. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/heap.pyi +38 -0
  536. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/managers.pyi +270 -0
  537. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/pool.pyi +137 -0
  538. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_fork.pyi +23 -0
  539. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_forkserver.pyi +16 -0
  540. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_posix.pyi +20 -0
  541. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_win32.pyi +30 -0
  542. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/process.pyi +39 -0
  543. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/queues.pyi +43 -0
  544. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/reduction.pyi +118 -0
  545. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_sharer.pyi +20 -0
  546. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_tracker.pyi +18 -0
  547. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/shared_memory.pyi +44 -0
  548. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/sharedctypes.pyi +140 -0
  549. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/spawn.pyi +34 -0
  550. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/synchronize.pyi +66 -0
  551. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/util.pyi +83 -0
  552. jaclang/vendor/mypy/typeshed/stdlib/netrc.pyi +28 -0
  553. jaclang/vendor/mypy/typeshed/stdlib/nis.pyi +9 -0
  554. jaclang/vendor/mypy/typeshed/stdlib/nntplib.pyi +151 -0
  555. jaclang/vendor/mypy/typeshed/stdlib/nt.pyi +114 -0
  556. jaclang/vendor/mypy/typeshed/stdlib/ntpath.pyi +119 -0
  557. jaclang/vendor/mypy/typeshed/stdlib/nturl2path.pyi +2 -0
  558. jaclang/vendor/mypy/typeshed/stdlib/numbers.pyi +154 -0
  559. jaclang/vendor/mypy/typeshed/stdlib/opcode.pyi +68 -0
  560. jaclang/vendor/mypy/typeshed/stdlib/operator.pyi +110 -0
  561. jaclang/vendor/mypy/typeshed/stdlib/optparse.pyi +290 -0
  562. jaclang/vendor/mypy/typeshed/stdlib/os/__init__.pyi +1317 -0
  563. jaclang/vendor/mypy/typeshed/stdlib/os/path.pyi +8 -0
  564. jaclang/vendor/mypy/typeshed/stdlib/ossaudiodev.pyi +131 -0
  565. jaclang/vendor/mypy/typeshed/stdlib/parser.pyi +28 -0
  566. jaclang/vendor/mypy/typeshed/stdlib/pathlib.pyi +282 -0
  567. jaclang/vendor/mypy/typeshed/stdlib/pdb.pyi +223 -0
  568. jaclang/vendor/mypy/typeshed/stdlib/pickle.pyi +286 -0
  569. jaclang/vendor/mypy/typeshed/stdlib/pickletools.pyi +173 -0
  570. jaclang/vendor/mypy/typeshed/stdlib/pipes.pyi +16 -0
  571. jaclang/vendor/mypy/typeshed/stdlib/pkgutil.pyi +61 -0
  572. jaclang/vendor/mypy/typeshed/stdlib/platform.pyi +56 -0
  573. jaclang/vendor/mypy/typeshed/stdlib/plistlib.pyi +176 -0
  574. jaclang/vendor/mypy/typeshed/stdlib/poplib.pyi +78 -0
  575. jaclang/vendor/mypy/typeshed/stdlib/posix.pyi +363 -0
  576. jaclang/vendor/mypy/typeshed/stdlib/posixpath.pyi +171 -0
  577. jaclang/vendor/mypy/typeshed/stdlib/pprint.pyi +122 -0
  578. jaclang/vendor/mypy/typeshed/stdlib/profile.pyi +43 -0
  579. jaclang/vendor/mypy/typeshed/stdlib/pstats.pyi +85 -0
  580. jaclang/vendor/mypy/typeshed/stdlib/pty.pyi +21 -0
  581. jaclang/vendor/mypy/typeshed/stdlib/pwd.pyi +36 -0
  582. jaclang/vendor/mypy/typeshed/stdlib/py_compile.pyi +40 -0
  583. jaclang/vendor/mypy/typeshed/stdlib/pyclbr.pyi +97 -0
  584. jaclang/vendor/mypy/typeshed/stdlib/pydoc.pyi +309 -0
  585. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/__init__.pyi +0 -0
  586. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/topics.pyi +1 -0
  587. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/__init__.pyi +94 -0
  588. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/errors.pyi +49 -0
  589. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/model.pyi +11 -0
  590. jaclang/vendor/mypy/typeshed/stdlib/queue.pyi +62 -0
  591. jaclang/vendor/mypy/typeshed/stdlib/quopri.pyi +17 -0
  592. jaclang/vendor/mypy/typeshed/stdlib/random.pyi +160 -0
  593. jaclang/vendor/mypy/typeshed/stdlib/re.pyi +376 -0
  594. jaclang/vendor/mypy/typeshed/stdlib/readline.pyi +40 -0
  595. jaclang/vendor/mypy/typeshed/stdlib/reprlib.pyi +65 -0
  596. jaclang/vendor/mypy/typeshed/stdlib/resource.pyi +116 -0
  597. jaclang/vendor/mypy/typeshed/stdlib/rlcompleter.pyi +9 -0
  598. jaclang/vendor/mypy/typeshed/stdlib/runpy.pyi +31 -0
  599. jaclang/vendor/mypy/typeshed/stdlib/sched.pyi +56 -0
  600. jaclang/vendor/mypy/typeshed/stdlib/secrets.pyi +24 -0
  601. jaclang/vendor/mypy/typeshed/stdlib/select.pyi +162 -0
  602. jaclang/vendor/mypy/typeshed/stdlib/selectors.pyi +85 -0
  603. jaclang/vendor/mypy/typeshed/stdlib/shelve.pyi +64 -0
  604. jaclang/vendor/mypy/typeshed/stdlib/shlex.pyi +47 -0
  605. jaclang/vendor/mypy/typeshed/stdlib/shutil.pyi +239 -0
  606. jaclang/vendor/mypy/typeshed/stdlib/signal.pyi +208 -0
  607. jaclang/vendor/mypy/typeshed/stdlib/site.pyi +33 -0
  608. jaclang/vendor/mypy/typeshed/stdlib/smtpd.pyi +102 -0
  609. jaclang/vendor/mypy/typeshed/stdlib/smtplib.pyi +223 -0
  610. jaclang/vendor/mypy/typeshed/stdlib/sndhdr.pyi +14 -0
  611. jaclang/vendor/mypy/typeshed/stdlib/socket.pyi +881 -0
  612. jaclang/vendor/mypy/typeshed/stdlib/socketserver.pyi +195 -0
  613. jaclang/vendor/mypy/typeshed/stdlib/spwd.pyi +43 -0
  614. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/__init__.pyi +1 -0
  615. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/dbapi2.pyi +519 -0
  616. jaclang/vendor/mypy/typeshed/stdlib/sre_compile.pyi +11 -0
  617. jaclang/vendor/mypy/typeshed/stdlib/sre_constants.pyi +132 -0
  618. jaclang/vendor/mypy/typeshed/stdlib/sre_parse.pyi +110 -0
  619. jaclang/vendor/mypy/typeshed/stdlib/ssl.pyi +559 -0
  620. jaclang/vendor/mypy/typeshed/stdlib/stat.pyi +1 -0
  621. jaclang/vendor/mypy/typeshed/stdlib/statistics.pyi +151 -0
  622. jaclang/vendor/mypy/typeshed/stdlib/string.pyi +112 -0
  623. jaclang/vendor/mypy/typeshed/stdlib/stringprep.pyi +27 -0
  624. jaclang/vendor/mypy/typeshed/stdlib/struct.pyi +43 -0
  625. jaclang/vendor/mypy/typeshed/stdlib/subprocess.pyi +2638 -0
  626. jaclang/vendor/mypy/typeshed/stdlib/sunau.pyi +86 -0
  627. jaclang/vendor/mypy/typeshed/stdlib/symbol.pyi +93 -0
  628. jaclang/vendor/mypy/typeshed/stdlib/symtable.pyi +63 -0
  629. jaclang/vendor/mypy/typeshed/stdlib/sys/__init__.pyi +396 -0
  630. jaclang/vendor/mypy/typeshed/stdlib/sys/_monitoring.pyi +54 -0
  631. jaclang/vendor/mypy/typeshed/stdlib/sysconfig.pyi +52 -0
  632. jaclang/vendor/mypy/typeshed/stdlib/syslog.pyi +48 -0
  633. jaclang/vendor/mypy/typeshed/stdlib/tabnanny.pyi +18 -0
  634. jaclang/vendor/mypy/typeshed/stdlib/tarfile.pyi +486 -0
  635. jaclang/vendor/mypy/typeshed/stdlib/telnetlib.pyi +129 -0
  636. jaclang/vendor/mypy/typeshed/stdlib/tempfile.pyi +521 -0
  637. jaclang/vendor/mypy/typeshed/stdlib/termios.pyi +273 -0
  638. jaclang/vendor/mypy/typeshed/stdlib/textwrap.pyi +107 -0
  639. jaclang/vendor/mypy/typeshed/stdlib/this.pyi +2 -0
  640. jaclang/vendor/mypy/typeshed/stdlib/threading.pyi +212 -0
  641. jaclang/vendor/mypy/typeshed/stdlib/time.pyi +122 -0
  642. jaclang/vendor/mypy/typeshed/stdlib/timeit.pyi +46 -0
  643. jaclang/vendor/mypy/typeshed/stdlib/tkinter/__init__.pyi +3950 -0
  644. jaclang/vendor/mypy/typeshed/stdlib/tkinter/colorchooser.pyi +28 -0
  645. jaclang/vendor/mypy/typeshed/stdlib/tkinter/commondialog.pyi +16 -0
  646. jaclang/vendor/mypy/typeshed/stdlib/tkinter/constants.pyi +80 -0
  647. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dialog.pyi +21 -0
  648. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dnd.pyi +20 -0
  649. jaclang/vendor/mypy/typeshed/stdlib/tkinter/filedialog.pyi +173 -0
  650. jaclang/vendor/mypy/typeshed/stdlib/tkinter/font.pyi +148 -0
  651. jaclang/vendor/mypy/typeshed/stdlib/tkinter/messagebox.pyi +60 -0
  652. jaclang/vendor/mypy/typeshed/stdlib/tkinter/scrolledtext.pyi +10 -0
  653. jaclang/vendor/mypy/typeshed/stdlib/tkinter/simpledialog.pyi +54 -0
  654. jaclang/vendor/mypy/typeshed/stdlib/tkinter/tix.pyi +395 -0
  655. jaclang/vendor/mypy/typeshed/stdlib/tkinter/ttk.pyi +1276 -0
  656. jaclang/vendor/mypy/typeshed/stdlib/token.pyi +159 -0
  657. jaclang/vendor/mypy/typeshed/stdlib/tokenize.pyi +185 -0
  658. jaclang/vendor/mypy/typeshed/stdlib/tomllib.pyi +12 -0
  659. jaclang/vendor/mypy/typeshed/stdlib/trace.pyi +114 -0
  660. jaclang/vendor/mypy/typeshed/stdlib/traceback.pyi +297 -0
  661. jaclang/vendor/mypy/typeshed/stdlib/tracemalloc.pyi +142 -0
  662. jaclang/vendor/mypy/typeshed/stdlib/tty.pyi +30 -0
  663. jaclang/vendor/mypy/typeshed/stdlib/turtle.pyi +830 -0
  664. jaclang/vendor/mypy/typeshed/stdlib/types.pyi +647 -0
  665. jaclang/vendor/mypy/typeshed/stdlib/typing.pyi +1059 -0
  666. jaclang/vendor/mypy/typeshed/stdlib/typing_extensions.pyi +524 -0
  667. jaclang/vendor/mypy/typeshed/stdlib/unicodedata.pyi +71 -0
  668. jaclang/vendor/mypy/typeshed/stdlib/unittest/__init__.pyi +72 -0
  669. jaclang/vendor/mypy/typeshed/stdlib/unittest/_log.pyi +34 -0
  670. jaclang/vendor/mypy/typeshed/stdlib/unittest/async_case.pyi +28 -0
  671. jaclang/vendor/mypy/typeshed/stdlib/unittest/case.pyi +481 -0
  672. jaclang/vendor/mypy/typeshed/stdlib/unittest/loader.pyi +71 -0
  673. jaclang/vendor/mypy/typeshed/stdlib/unittest/main.pyi +75 -0
  674. jaclang/vendor/mypy/typeshed/stdlib/unittest/mock.pyi +468 -0
  675. jaclang/vendor/mypy/typeshed/stdlib/unittest/result.pyi +59 -0
  676. jaclang/vendor/mypy/typeshed/stdlib/unittest/runner.pyi +83 -0
  677. jaclang/vendor/mypy/typeshed/stdlib/unittest/signals.pyi +15 -0
  678. jaclang/vendor/mypy/typeshed/stdlib/unittest/suite.pyi +26 -0
  679. jaclang/vendor/mypy/typeshed/stdlib/unittest/util.pyi +31 -0
  680. jaclang/vendor/mypy/typeshed/stdlib/urllib/__init__.pyi +0 -0
  681. jaclang/vendor/mypy/typeshed/stdlib/urllib/error.pyi +27 -0
  682. jaclang/vendor/mypy/typeshed/stdlib/urllib/parse.pyi +245 -0
  683. jaclang/vendor/mypy/typeshed/stdlib/urllib/request.pyi +544 -0
  684. jaclang/vendor/mypy/typeshed/stdlib/urllib/response.pyi +50 -0
  685. jaclang/vendor/mypy/typeshed/stdlib/urllib/robotparser.pyi +20 -0
  686. jaclang/vendor/mypy/typeshed/stdlib/uu.pyi +23 -0
  687. jaclang/vendor/mypy/typeshed/stdlib/uuid.pyi +100 -0
  688. jaclang/vendor/mypy/typeshed/stdlib/warnings.pyi +144 -0
  689. jaclang/vendor/mypy/typeshed/stdlib/wave.pyi +87 -0
  690. jaclang/vendor/mypy/typeshed/stdlib/weakref.pyi +173 -0
  691. jaclang/vendor/mypy/typeshed/stdlib/webbrowser.pyi +80 -0
  692. jaclang/vendor/mypy/typeshed/stdlib/winreg.pyi +120 -0
  693. jaclang/vendor/mypy/typeshed/stdlib/winsound.pyi +28 -0
  694. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/__init__.pyi +0 -0
  695. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/handlers.pyi +109 -0
  696. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/headers.pyi +28 -0
  697. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/simple_server.pyi +49 -0
  698. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/types.pyi +44 -0
  699. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/util.pyi +31 -0
  700. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/validate.pyi +52 -0
  701. jaclang/vendor/mypy/typeshed/stdlib/xdrlib.pyi +63 -0
  702. jaclang/vendor/mypy/typeshed/stdlib/xml/__init__.pyi +1 -0
  703. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/NodeFilter.pyi +19 -0
  704. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/__init__.pyi +72 -0
  705. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/domreg.pyi +12 -0
  706. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/expatbuilder.pyi +111 -0
  707. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minicompat.pyi +22 -0
  708. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minidom.pyi +467 -0
  709. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/pulldom.pyi +101 -0
  710. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/xmlbuilder.pyi +110 -0
  711. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementInclude.pyi +35 -0
  712. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementPath.pyi +49 -0
  713. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementTree.pyi +367 -0
  714. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/__init__.pyi +0 -0
  715. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/cElementTree.pyi +1 -0
  716. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/__init__.pyi +1 -0
  717. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/__init__.pyi +1 -0
  718. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/errors.pyi +1 -0
  719. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/model.pyi +1 -0
  720. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/__init__.pyi +34 -0
  721. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/_exceptions.pyi +21 -0
  722. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/handler.pyi +59 -0
  723. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/saxutils.pyi +71 -0
  724. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/xmlreader.pyi +89 -0
  725. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/__init__.pyi +0 -0
  726. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/client.pyi +348 -0
  727. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/server.pyi +186 -0
  728. jaclang/vendor/mypy/typeshed/stdlib/xxlimited.pyi +22 -0
  729. jaclang/vendor/mypy/typeshed/stdlib/zipapp.pyi +20 -0
  730. jaclang/vendor/mypy/typeshed/stdlib/zipfile/__init__.pyi +355 -0
  731. jaclang/vendor/mypy/typeshed/stdlib/zipfile/_path.pyi +105 -0
  732. jaclang/vendor/mypy/typeshed/stdlib/zipimport.pyi +40 -0
  733. jaclang/vendor/mypy/typeshed/stdlib/zlib.pyi +63 -0
  734. jaclang/vendor/mypy/typeshed/stdlib/zoneinfo/__init__.pyi +45 -0
  735. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/@tests/stubtest_allowlist.txt +2 -0
  736. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/METADATA.toml +4 -0
  737. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/mypy_extensions.pyi +238 -0
  738. jaclang/vendor/mypy/xml/mypy-html.css +104 -0
  739. jaclang/vendor/mypy/xml/mypy-html.xslt +81 -0
  740. jaclang/vendor/mypy/xml/mypy-txt.xslt +100 -0
  741. jaclang/vendor/mypy/xml/mypy.xsd +50 -0
  742. jaclang/vendor/mypyc/.readthedocs.yaml +18 -0
  743. jaclang/vendor/mypyc/README.md +133 -0
  744. jaclang/vendor/mypyc/doc/Makefile +20 -0
  745. jaclang/vendor/mypyc/doc/bool_operations.rst +27 -0
  746. jaclang/vendor/mypyc/doc/compilation_units.rst +20 -0
  747. jaclang/vendor/mypyc/doc/conf.py +59 -0
  748. jaclang/vendor/mypyc/doc/cpython-timings.md +25 -0
  749. jaclang/vendor/mypyc/doc/dev-intro.md +548 -0
  750. jaclang/vendor/mypyc/doc/dict_operations.rst +59 -0
  751. jaclang/vendor/mypyc/doc/differences_from_python.rst +332 -0
  752. jaclang/vendor/mypyc/doc/float_operations.rst +50 -0
  753. jaclang/vendor/mypyc/doc/future.md +42 -0
  754. jaclang/vendor/mypyc/doc/getting_started.rst +240 -0
  755. jaclang/vendor/mypyc/doc/index.rst +61 -0
  756. jaclang/vendor/mypyc/doc/int_operations.rst +162 -0
  757. jaclang/vendor/mypyc/doc/introduction.rst +150 -0
  758. jaclang/vendor/mypyc/doc/list_operations.rst +65 -0
  759. jaclang/vendor/mypyc/doc/make.bat +35 -0
  760. jaclang/vendor/mypyc/doc/native_classes.rst +206 -0
  761. jaclang/vendor/mypyc/doc/native_operations.rst +55 -0
  762. jaclang/vendor/mypyc/doc/performance_tips_and_tricks.rst +244 -0
  763. jaclang/vendor/mypyc/doc/set_operations.rst +47 -0
  764. jaclang/vendor/mypyc/doc/str_operations.rst +35 -0
  765. jaclang/vendor/mypyc/doc/tuple_operations.rst +33 -0
  766. jaclang/vendor/mypyc/doc/using_type_annotations.rst +398 -0
  767. jaclang/vendor/mypyc/external/googletest/LICENSE +28 -0
  768. jaclang/vendor/mypyc/external/googletest/README.md +280 -0
  769. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-death-test.h +294 -0
  770. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-message.h +250 -0
  771. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h +1444 -0
  772. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h.pump +510 -0
  773. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-printers.h +993 -0
  774. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-spi.h +232 -0
  775. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-test-part.h +179 -0
  776. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-typed-test.h +263 -0
  777. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest.h +2236 -0
  778. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_pred_impl.h +358 -0
  779. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_prod.h +58 -0
  780. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-port.h +69 -0
  781. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-printers.h +42 -0
  782. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest.h +41 -0
  783. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-death-test-internal.h +319 -0
  784. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-filepath.h +206 -0
  785. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-internal.h +1238 -0
  786. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-linked_ptr.h +243 -0
  787. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h +5146 -0
  788. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +286 -0
  789. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util.h +731 -0
  790. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port-arch.h +93 -0
  791. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port.h +2560 -0
  792. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-string.h +167 -0
  793. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h +1020 -0
  794. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h.pump +347 -0
  795. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h +3331 -0
  796. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h.pump +297 -0
  797. jaclang/vendor/mypyc/external/googletest/make/Makefile +61 -0
  798. jaclang/vendor/mypyc/external/googletest/src/gtest-all.cc +48 -0
  799. jaclang/vendor/mypyc/external/googletest/src/gtest-death-test.cc +1342 -0
  800. jaclang/vendor/mypyc/external/googletest/src/gtest-filepath.cc +387 -0
  801. jaclang/vendor/mypyc/external/googletest/src/gtest-internal-inl.h +1183 -0
  802. jaclang/vendor/mypyc/external/googletest/src/gtest-port.cc +1259 -0
  803. jaclang/vendor/mypyc/external/googletest/src/gtest-printers.cc +373 -0
  804. jaclang/vendor/mypyc/external/googletest/src/gtest-test-part.cc +110 -0
  805. jaclang/vendor/mypyc/external/googletest/src/gtest-typed-test.cc +118 -0
  806. jaclang/vendor/mypyc/external/googletest/src/gtest.cc +5388 -0
  807. jaclang/vendor/mypyc/external/googletest/src/gtest_main.cc +38 -0
  808. jaclang/vendor/mypyc/lib-rt/CPy.h +643 -0
  809. jaclang/vendor/mypyc/lib-rt/bytes_ops.c +143 -0
  810. jaclang/vendor/mypyc/lib-rt/dict_ops.c +446 -0
  811. jaclang/vendor/mypyc/lib-rt/exc_ops.c +259 -0
  812. jaclang/vendor/mypyc/lib-rt/float_ops.c +192 -0
  813. jaclang/vendor/mypyc/lib-rt/generic_ops.c +64 -0
  814. jaclang/vendor/mypyc/lib-rt/getargs.c +450 -0
  815. jaclang/vendor/mypyc/lib-rt/getargsfast.c +569 -0
  816. jaclang/vendor/mypyc/lib-rt/init.c +13 -0
  817. jaclang/vendor/mypyc/lib-rt/int_ops.c +803 -0
  818. jaclang/vendor/mypyc/lib-rt/list_ops.c +335 -0
  819. jaclang/vendor/mypyc/lib-rt/misc_ops.c +942 -0
  820. jaclang/vendor/mypyc/lib-rt/module_shim.tmpl +18 -0
  821. jaclang/vendor/mypyc/lib-rt/mypyc_util.h +118 -0
  822. jaclang/vendor/mypyc/lib-rt/pythoncapi_compat.h +497 -0
  823. jaclang/vendor/mypyc/lib-rt/pythonsupport.h +548 -0
  824. jaclang/vendor/mypyc/lib-rt/set_ops.c +17 -0
  825. jaclang/vendor/mypyc/lib-rt/setup.py +76 -0
  826. jaclang/vendor/mypyc/lib-rt/str_ops.c +241 -0
  827. jaclang/vendor/mypyc/lib-rt/test_capi.cc +585 -0
  828. jaclang/vendor/mypyc/lib-rt/tuple_ops.c +61 -0
  829. jaclang/vendor/mypyc/test-data/alwaysdefined.test +732 -0
  830. jaclang/vendor/mypyc/test-data/analysis.test +603 -0
  831. jaclang/vendor/mypyc/test-data/commandline.test +245 -0
  832. jaclang/vendor/mypyc/test-data/driver/driver.py +50 -0
  833. jaclang/vendor/mypyc/test-data/exceptions-freq.test +125 -0
  834. jaclang/vendor/mypyc/test-data/exceptions.test +713 -0
  835. jaclang/vendor/mypyc/test-data/fixtures/ir.py +850 -0
  836. jaclang/vendor/mypyc/test-data/fixtures/testutil.py +117 -0
  837. jaclang/vendor/mypyc/test-data/fixtures/typing-full.pyi +212 -0
  838. jaclang/vendor/mypyc/test-data/irbuild-any.test +238 -0
  839. jaclang/vendor/mypyc/test-data/irbuild-basic.test +3690 -0
  840. jaclang/vendor/mypyc/test-data/irbuild-bool.test +463 -0
  841. jaclang/vendor/mypyc/test-data/irbuild-bytes.test +184 -0
  842. jaclang/vendor/mypyc/test-data/irbuild-classes.test +1303 -0
  843. jaclang/vendor/mypyc/test-data/irbuild-constant-fold.test +480 -0
  844. jaclang/vendor/mypyc/test-data/irbuild-dict.test +585 -0
  845. jaclang/vendor/mypyc/test-data/irbuild-dunders.test +223 -0
  846. jaclang/vendor/mypyc/test-data/irbuild-float.test +497 -0
  847. jaclang/vendor/mypyc/test-data/irbuild-generics.test +151 -0
  848. jaclang/vendor/mypyc/test-data/irbuild-glue-methods.test +437 -0
  849. jaclang/vendor/mypyc/test-data/irbuild-i16.test +526 -0
  850. jaclang/vendor/mypyc/test-data/irbuild-i32.test +598 -0
  851. jaclang/vendor/mypyc/test-data/irbuild-i64.test +2164 -0
  852. jaclang/vendor/mypyc/test-data/irbuild-int.test +235 -0
  853. jaclang/vendor/mypyc/test-data/irbuild-isinstance.test +109 -0
  854. jaclang/vendor/mypyc/test-data/irbuild-lists.test +547 -0
  855. jaclang/vendor/mypyc/test-data/irbuild-match.test +1708 -0
  856. jaclang/vendor/mypyc/test-data/irbuild-math.test +64 -0
  857. jaclang/vendor/mypyc/test-data/irbuild-nested.test +807 -0
  858. jaclang/vendor/mypyc/test-data/irbuild-optional.test +536 -0
  859. jaclang/vendor/mypyc/test-data/irbuild-set.test +838 -0
  860. jaclang/vendor/mypyc/test-data/irbuild-singledispatch.test +257 -0
  861. jaclang/vendor/mypyc/test-data/irbuild-statements.test +1149 -0
  862. jaclang/vendor/mypyc/test-data/irbuild-str.test +314 -0
  863. jaclang/vendor/mypyc/test-data/irbuild-strip-asserts.test +12 -0
  864. jaclang/vendor/mypyc/test-data/irbuild-try.test +523 -0
  865. jaclang/vendor/mypyc/test-data/irbuild-tuple.test +462 -0
  866. jaclang/vendor/mypyc/test-data/irbuild-u8.test +543 -0
  867. jaclang/vendor/mypyc/test-data/irbuild-unreachable.test +241 -0
  868. jaclang/vendor/mypyc/test-data/irbuild-vectorcall.test +153 -0
  869. jaclang/vendor/mypyc/test-data/refcount.test +1588 -0
  870. jaclang/vendor/mypyc/test-data/run-async.test +145 -0
  871. jaclang/vendor/mypyc/test-data/run-attrs.test +318 -0
  872. jaclang/vendor/mypyc/test-data/run-bench.test +196 -0
  873. jaclang/vendor/mypyc/test-data/run-bools.test +229 -0
  874. jaclang/vendor/mypyc/test-data/run-bytes.test +302 -0
  875. jaclang/vendor/mypyc/test-data/run-classes.test +2505 -0
  876. jaclang/vendor/mypyc/test-data/run-dicts.test +334 -0
  877. jaclang/vendor/mypyc/test-data/run-dunders.test +945 -0
  878. jaclang/vendor/mypyc/test-data/run-exceptions.test +448 -0
  879. jaclang/vendor/mypyc/test-data/run-floats.test +516 -0
  880. jaclang/vendor/mypyc/test-data/run-functions.test +1310 -0
  881. jaclang/vendor/mypyc/test-data/run-generators.test +681 -0
  882. jaclang/vendor/mypyc/test-data/run-i16.test +338 -0
  883. jaclang/vendor/mypyc/test-data/run-i32.test +336 -0
  884. jaclang/vendor/mypyc/test-data/run-i64.test +1519 -0
  885. jaclang/vendor/mypyc/test-data/run-imports.test +265 -0
  886. jaclang/vendor/mypyc/test-data/run-integers.test +540 -0
  887. jaclang/vendor/mypyc/test-data/run-lists.test +411 -0
  888. jaclang/vendor/mypyc/test-data/run-loops.test +485 -0
  889. jaclang/vendor/mypyc/test-data/run-match.test +283 -0
  890. jaclang/vendor/mypyc/test-data/run-math.test +106 -0
  891. jaclang/vendor/mypyc/test-data/run-misc.test +1168 -0
  892. jaclang/vendor/mypyc/test-data/run-multimodule.test +887 -0
  893. jaclang/vendor/mypyc/test-data/run-mypy-sim.test +138 -0
  894. jaclang/vendor/mypyc/test-data/run-primitives.test +375 -0
  895. jaclang/vendor/mypyc/test-data/run-python37.test +159 -0
  896. jaclang/vendor/mypyc/test-data/run-python38.test +88 -0
  897. jaclang/vendor/mypyc/test-data/run-sets.test +150 -0
  898. jaclang/vendor/mypyc/test-data/run-singledispatch.test +698 -0
  899. jaclang/vendor/mypyc/test-data/run-strings.test +641 -0
  900. jaclang/vendor/mypyc/test-data/run-traits.test +411 -0
  901. jaclang/vendor/mypyc/test-data/run-tuples.test +258 -0
  902. jaclang/vendor/mypyc/test-data/run-u8.test +303 -0
  903. jaclang/vendor/pluggy/LICENSE +21 -0
  904. jaclang-0.6.2.dist-info/METADATA +110 -0
  905. jaclang-0.6.2.dist-info/RECORD +1305 -0
  906. {jaclang-0.6.0.dist-info → jaclang-0.6.2.dist-info}/WHEEL +1 -2
  907. jaclang-0.6.2.dist-info/entry_points.txt +3 -0
  908. jaclang/compiler/generated/jac_parser.py +0 -4069
  909. jaclang-0.6.0.dist-info/METADATA +0 -17
  910. jaclang-0.6.0.dist-info/RECORD +0 -426
  911. jaclang-0.6.0.dist-info/entry_points.txt +0 -2
  912. jaclang-0.6.0.dist-info/top_level.txt +0 -1
  913. /jaclang/{compiler/generated/__init__.py → vendor/mypy/typeshed/stdlib/concurrent/__init__.pyi} +0 -0
@@ -0,0 +1,516 @@
1
+ # Test cases for floats (compile and run)
2
+
3
+ [case testFloatOps]
4
+ from __future__ import annotations
5
+ from typing import Any, cast
6
+ from typing_extensions import Final
7
+ from testutil import assertRaises, float_vals, FLOAT_MAGIC
8
+ import math
9
+
10
+ def test_arithmetic() -> None:
11
+ zero = float(0.0)
12
+ one = zero + 1.0
13
+ x = one + one / 2.0
14
+ assert x == 1.5
15
+ assert x - one == 0.5
16
+ assert x * x == 2.25
17
+ assert x / 2.0 == 0.75
18
+ assert x * (-0.5) == -0.75
19
+ assert -x == -1.5
20
+ for x in float_vals:
21
+ assert repr(-x) == repr(getattr(x, "__neg__")())
22
+
23
+ for y in float_vals:
24
+ assert repr(x + y) == repr(getattr(x, "__add__")(y))
25
+ assert repr(x - y) == repr(getattr(x, "__sub__")(y))
26
+ assert repr(x * y) == repr(getattr(x, "__mul__")(y))
27
+ if y != 0:
28
+ assert repr(x / y) == repr(getattr(x, "__truediv__")(y))
29
+
30
+ def test_mod() -> None:
31
+ zero = float(0.0)
32
+ one = zero + 1.0
33
+ x = one + one / 2.0
34
+ assert x % 0.4 == 0.29999999999999993
35
+ assert (-x) % 0.4 == 0.10000000000000009
36
+ assert x % -0.4 == -0.10000000000000009
37
+ assert (-x) % -0.4 == -0.29999999999999993
38
+ for x in float_vals:
39
+ for y in float_vals:
40
+ if y != 0:
41
+ assert repr(x % y) == repr(getattr(x, "__mod__")(y))
42
+
43
+ def test_floor_div() -> None:
44
+ for x in float_vals:
45
+ for y in float_vals:
46
+ if y != 0:
47
+ assert repr(x // y) == repr(getattr(x, "__floordiv__")(y))
48
+ else:
49
+ with assertRaises(ZeroDivisionError, "float floor division by zero"):
50
+ x // y
51
+
52
+ def test_mixed_arithmetic() -> None:
53
+ zf = float(0.0)
54
+ zn = int()
55
+ assert (zf + 5.5) + (zn + 1) == 6.5
56
+ assert (zn - 2) - (zf - 5.5) == 3.5
57
+ x = zf + 3.4
58
+ x += zn + 2
59
+ assert x == 5.4
60
+
61
+ def test_arithmetic_errors() -> None:
62
+ zero = float(0.0)
63
+ one = zero + 1.0
64
+ with assertRaises(ZeroDivisionError, "float division by zero"):
65
+ print(one / zero)
66
+ with assertRaises(ZeroDivisionError, "float modulo"):
67
+ print(one % zero)
68
+
69
+ def test_comparisons() -> None:
70
+ zero = float(0.0)
71
+ one = zero + 1.0
72
+ x = one + one / 2.0
73
+ assert x < (1.51 + zero)
74
+ assert not (x < (1.49 + zero))
75
+ assert x > (1.49 + zero)
76
+ assert not (x > (1.51 + zero))
77
+ assert x <= (1.5 + zero)
78
+ assert not (x <= (1.49 + zero))
79
+ assert x >= (1.5 + zero)
80
+ assert not (x >= (1.51 + zero))
81
+ for x in float_vals:
82
+ for y in float_vals:
83
+ assert (x <= y) == getattr(x, "__le__")(y)
84
+ assert (x < y) == getattr(x, "__lt__")(y)
85
+ assert (x >= y) == getattr(x, "__ge__")(y)
86
+ assert (x > y) == getattr(x, "__gt__")(y)
87
+ assert (x == y) == getattr(x, "__eq__")(y)
88
+ assert (x != y) == getattr(x, "__ne__")(y)
89
+
90
+ def test_mixed_comparisons() -> None:
91
+ zf = float(0.0)
92
+ zn = int()
93
+ if (zf + 1.0) == (zn + 1):
94
+ assert True
95
+ else:
96
+ assert False
97
+ if (zf + 1.1) == (zn + 1):
98
+ assert False
99
+ else:
100
+ assert True
101
+ assert (zf + 1.1) != (zn + 1)
102
+ assert (zf + 1.1) > (zn + 1)
103
+ assert not (zf + 0.9) > (zn + 1)
104
+ assert (zn + 1) < (zf + 1.1)
105
+
106
+ def test_boxing_and_unboxing() -> None:
107
+ x = 1.5
108
+ boxed: Any = x
109
+ assert repr(boxed) == "1.5"
110
+ assert type(boxed) is float
111
+ y: float = boxed
112
+ assert y == x
113
+ boxed_int: Any = 5
114
+ assert [type(boxed_int)] == [int] # Avoid mypy type narrowing
115
+ z: float = boxed_int
116
+ assert z == 5.0
117
+ for xx in float_vals:
118
+ bb: Any = xx
119
+ yy: float = bb
120
+ assert repr(xx) == repr(bb)
121
+ assert repr(xx) == repr(yy)
122
+ for b in True, False:
123
+ boxed_bool: Any = b
124
+ assert type(boxed_bool) is bool
125
+ zz: float = boxed_bool
126
+ assert zz == int(b)
127
+
128
+ def test_unboxing_failure() -> None:
129
+ boxed: Any = '1.5'
130
+ with assertRaises(TypeError):
131
+ x: float = boxed
132
+
133
+ def identity(x: float) -> float:
134
+ return x
135
+
136
+ def test_coerce_from_int_literal() -> None:
137
+ assert identity(34) == 34.0
138
+ assert identity(-1) == -1.0
139
+
140
+ def test_coerce_from_short_tagged_int() -> None:
141
+ n = int() - 17
142
+ assert identity(n) == -17.0
143
+ for i in range(-300, 300):
144
+ assert identity(i) == float(i)
145
+
146
+ def test_coerce_from_long_tagged_int() -> None:
147
+ n = int() + 2**100
148
+ x = identity(n)
149
+ assert repr(x) == '1.2676506002282294e+30'
150
+ n = int() - 2**100
151
+ y = identity(n)
152
+ assert repr(y) == '-1.2676506002282294e+30'
153
+
154
+ def test_coerce_from_very_long_tagged_int() -> None:
155
+ n = int() + 10**1000
156
+ with assertRaises(OverflowError, "int too large to convert to float"):
157
+ identity(n)
158
+ with assertRaises(OverflowError, "int too large to convert to float"):
159
+ identity(int(n))
160
+ n = int() - 10**1000
161
+ with assertRaises(OverflowError, "int too large to convert to float"):
162
+ identity(n)
163
+ with assertRaises(OverflowError, "int too large to convert to float"):
164
+ identity(int(n))
165
+
166
+ def test_explicit_conversion_from_int() -> None:
167
+ float_any: Any = float
168
+ a = [0, 1, 2, 3, -1, -2, 13257, -928745]
169
+ for n in range(1, 100):
170
+ for delta in -1, 0, 1, 2342345:
171
+ a.append(2**n + delta)
172
+ a.append(-2**n + delta)
173
+ for x in a:
174
+ assert repr(float(x)) == repr(float_any(x))
175
+
176
+ def test_explicit_conversion_to_int() -> None:
177
+ int_any: Any = int
178
+ for x in float_vals:
179
+ if math.isinf(x):
180
+ with assertRaises(OverflowError, "cannot convert float infinity to integer"):
181
+ int(x)
182
+ elif math.isnan(x):
183
+ with assertRaises(ValueError, "cannot convert float NaN to integer"):
184
+ int(x)
185
+ else:
186
+ assert repr(int(x)) == repr(int_any(x))
187
+
188
+ # Test some edge cases
189
+ assert 2**30 == int(2.0**30 + int())
190
+ assert 2**30 - 1 == int(1073741823.9999999 + int()) # math.nextafter(2.0**30, 0))
191
+ assert -2**30 - 1 == int(-2.0**30 - 1 + int())
192
+ assert -2**30 == int(-1073741824.9999998 + int()) # math.nextafter(-2.0**30 - 1, 0)
193
+ assert 2**62 == int(2.0**62 + int())
194
+ assert 2**62 == int(2.0**62 - 1 + int())
195
+ assert -2**62 == int(-2.0**62 + int())
196
+ assert -2**62 == int(-2.0**62 - 1 + int())
197
+
198
+ def str_to_float(x: str) -> float:
199
+ return float(x)
200
+
201
+ def test_str_to_float() -> None:
202
+ assert str_to_float("1") == 1.0
203
+ assert str_to_float("1.234567") == 1.234567
204
+ assert str_to_float("44324") == 44324.0
205
+ assert str_to_float("23.4") == 23.4
206
+ assert str_to_float("-43.44e-4") == -43.44e-4
207
+ assert str_to_float("-43.44e-4") == -43.44e-4
208
+ assert math.isinf(str_to_float("inf"))
209
+ assert math.isinf(str_to_float("-inf"))
210
+ assert str_to_float("inf") > 0.0
211
+ assert str_to_float("-inf") < 0.0
212
+ assert math.isnan(str_to_float("nan"))
213
+ assert math.isnan(str_to_float("NaN"))
214
+ assert repr(str_to_float("-0.0")) == "-0.0"
215
+
216
+ def test_abs() -> None:
217
+ assert abs(0.0) == 0.0
218
+ assert abs(-1.234567) == 1.234567
219
+ assert abs(44324.732) == 44324.732
220
+ assert abs(-23.4) == 23.4
221
+ assert abs(-43.44e-4) == 43.44e-4
222
+ abs_any: Any = abs
223
+ for x in float_vals:
224
+ assert repr(abs(x)) == repr(abs_any(x))
225
+
226
+ def test_float_min_max() -> None:
227
+ for x in float_vals:
228
+ for y in float_vals:
229
+ min_any: Any = min
230
+ assert repr(min(x, y)) == repr(min_any(x, y))
231
+ max_any: Any = max
232
+ assert repr(max(x, y)) == repr(max_any(x, y))
233
+
234
+ def default(x: float = 2) -> float:
235
+ return x + 1
236
+
237
+ def test_float_default_value() -> None:
238
+ assert default(1.2) == 2.2
239
+ for i in range(-200, 200):
240
+ assert default(float(i)) == i + 1
241
+ assert default() == 3.0
242
+
243
+ def test_float_default_value_wrapper() -> None:
244
+ f: Any = default
245
+ assert f(1.2) == 2.2
246
+ for i in range(-200, 200):
247
+ assert f(float(i)) == i + 1
248
+ assert f() == 3.0
249
+
250
+ class C:
251
+ def __init__(self, x: float) -> None:
252
+ self.x = x
253
+
254
+ def test_float_attr() -> None:
255
+ for i in range(-200, 200):
256
+ f = float(i)
257
+ c = C(f)
258
+ assert c.x == f
259
+ a: Any = c
260
+ assert a.x == f
261
+ c.x = FLOAT_MAGIC
262
+ assert c.x == FLOAT_MAGIC
263
+ assert a.x == FLOAT_MAGIC
264
+ a.x = 1.0
265
+ assert a.x == 1.0
266
+ a.x = FLOAT_MAGIC
267
+ assert a.x == FLOAT_MAGIC
268
+
269
+ class D:
270
+ def __init__(self, x: float) -> None:
271
+ if x:
272
+ self.x = x
273
+
274
+ def test_float_attr_maybe_undefned() -> None:
275
+ for i in range(-200, 200):
276
+ if i == 0:
277
+ d = D(0.0)
278
+ with assertRaises(AttributeError):
279
+ d.x
280
+ a: Any = d
281
+ with assertRaises(AttributeError):
282
+ a.x
283
+ d.x = FLOAT_MAGIC
284
+ assert d.x == FLOAT_MAGIC
285
+ assert a.x == FLOAT_MAGIC
286
+ d.x = 0.0
287
+ assert d.x == 0.0
288
+ assert a.x == 0.0
289
+ a.x = FLOAT_MAGIC
290
+ assert a.x == FLOAT_MAGIC
291
+ d = D(0.0)
292
+ a = cast(Any, d)
293
+ a.x = FLOAT_MAGIC
294
+ assert d.x == FLOAT_MAGIC
295
+ else:
296
+ f = float(i)
297
+ d = D(f)
298
+ assert d.x == f
299
+ a2: Any = d
300
+ assert a2.x == f
301
+
302
+ def f(x: float) -> float:
303
+ return x + 1
304
+
305
+ def test_return_values() -> None:
306
+ a: Any = f
307
+ for i in range(-200, 200):
308
+ x = float(i)
309
+ assert f(x) == x + 1
310
+ assert a(x) == x + 1
311
+ for x in float_vals:
312
+ if not math.isnan(x):
313
+ assert f(x) == x + 1
314
+ else:
315
+ assert math.isnan(f(x))
316
+
317
+ def exc() -> float:
318
+ raise IndexError('x')
319
+
320
+ def test_exception() -> None:
321
+ with assertRaises(IndexError):
322
+ exc()
323
+ a: Any = exc
324
+ with assertRaises(IndexError):
325
+ a()
326
+
327
+ def test_undefined_local_var() -> None:
328
+ if not int():
329
+ x = -113.0
330
+ assert x == -113.0
331
+ if int():
332
+ y = -113.0
333
+ with assertRaises(UnboundLocalError, 'local variable "y" referenced before assignment'):
334
+ print(y)
335
+ if not int():
336
+ x2 = -1.0
337
+ assert x2 == -1.0
338
+ if int():
339
+ y2 = -1.0
340
+ with assertRaises(UnboundLocalError, 'local variable "y2" referenced before assignment'):
341
+ print(y2)
342
+
343
+ def test_tuples() -> None:
344
+ t1: tuple[float, float] = (1.5, 2.5)
345
+ assert t1 == tuple([1.5, 2.5])
346
+ n = int() + 5
347
+ t2: tuple[float, float, float, float] = (n, 1.5, -7, -113)
348
+ assert t2 == tuple([5.0, 1.5, -7.0, -113.0])
349
+
350
+ [case testFloatGlueMethodsAndInheritance]
351
+ from typing import Any
352
+ from typing_extensions import Final
353
+
354
+ from mypy_extensions import trait
355
+
356
+ from testutil import assertRaises
357
+
358
+ MAGIC: Final = -113.0
359
+
360
+ class Base:
361
+ def foo(self) -> float:
362
+ return 5.0
363
+
364
+ def bar(self, x: float = 2.0) -> float:
365
+ return x + 1
366
+
367
+ def hoho(self, x: float) -> float:
368
+ return x - 1
369
+
370
+ class Derived(Base):
371
+ def foo(self, x: float = 5.0) -> float:
372
+ return x + 10
373
+
374
+ def bar(self, x: float = 3, y: float = 20) -> float:
375
+ return x + y + 2
376
+
377
+ def hoho(self, x: float = 7) -> float:
378
+ return x - 2
379
+
380
+ def test_derived_adds_bitmap() -> None:
381
+ b: Base = Derived()
382
+ assert b.foo() == 15
383
+
384
+ def test_derived_adds_another_default_arg() -> None:
385
+ b: Base = Derived()
386
+ assert b.bar() == 25
387
+ assert b.bar(1) == 23
388
+ assert b.bar(MAGIC) == MAGIC + 22
389
+
390
+ def test_derived_switches_arg_to_have_default() -> None:
391
+ b: Base = Derived()
392
+ assert b.hoho(5) == 3
393
+ assert b.hoho(MAGIC) == MAGIC - 2
394
+
395
+ @trait
396
+ class T:
397
+ @property
398
+ def x(self) -> float: ...
399
+ @property
400
+ def y(self) -> float: ...
401
+
402
+ class C(T):
403
+ x: float = 1.0
404
+ y: float = 4
405
+
406
+ def test_read_only_property_in_trait_implemented_as_attribute() -> None:
407
+ c = C()
408
+ c.x = 5.5
409
+ assert c.x == 5.5
410
+ c.x = MAGIC
411
+ assert c.x == MAGIC
412
+ assert c.y == 4
413
+ c.y = 6.5
414
+ assert c.y == 6.5
415
+ t: T = C()
416
+ assert t.y == 4
417
+ t = c
418
+ assert t.x == MAGIC
419
+ c.x = 55.5
420
+ assert t.x == 55.5
421
+ assert t.y == 6.5
422
+ a: Any = c
423
+ assert a.x == 55.5
424
+ assert a.y == 6.5
425
+ a.x = 7.0
426
+ a.y = 8.0
427
+ assert a.x == 7
428
+ assert a.y == 8
429
+
430
+ class D(T):
431
+ xx: float
432
+
433
+ @property
434
+ def x(self) -> float:
435
+ return self.xx
436
+
437
+ @property
438
+ def y(self) -> float:
439
+ raise TypeError
440
+
441
+ def test_read_only_property_in_trait_implemented_as_property() -> None:
442
+ d = D()
443
+ d.xx = 5.0
444
+ assert d.x == 5
445
+ d.xx = MAGIC
446
+ assert d.x == MAGIC
447
+ with assertRaises(TypeError):
448
+ d.y
449
+ t: T = d
450
+ assert t.x == MAGIC
451
+ d.xx = 6.0
452
+ assert t.x == 6
453
+ with assertRaises(TypeError):
454
+ t.y
455
+
456
+ @trait
457
+ class T2:
458
+ x: float
459
+ y: float
460
+
461
+ class C2(T2):
462
+ pass
463
+
464
+ def test_inherit_trait_attribute() -> None:
465
+ c = C2()
466
+ c.x = 5.0
467
+ assert c.x == 5
468
+ c.x = MAGIC
469
+ assert c.x == MAGIC
470
+ with assertRaises(AttributeError):
471
+ c.y
472
+ c.y = 6.0
473
+ assert c.y == 6.0
474
+ t: T2 = C2()
475
+ with assertRaises(AttributeError):
476
+ t.y
477
+ t = c
478
+ assert t.x == MAGIC
479
+ c.x = 55.0
480
+ assert t.x == 55
481
+ assert t.y == 6
482
+ a: Any = c
483
+ assert a.x == 55
484
+ assert a.y == 6
485
+ a.x = 7.0
486
+ a.y = 8.0
487
+ assert a.x == 7
488
+ assert a.y == 8
489
+
490
+ class D2(T2):
491
+ x: float
492
+ y: float = 4
493
+
494
+ def test_implement_trait_attribute() -> None:
495
+ d = D2()
496
+ d.x = 5.0
497
+ assert d.x == 5
498
+ d.x = MAGIC
499
+ assert d.x == MAGIC
500
+ assert d.y == 4
501
+ d.y = 6.0
502
+ assert d.y == 6
503
+ t: T2 = D2()
504
+ assert t.y == 4
505
+ t = d
506
+ assert t.x == MAGIC
507
+ d.x = 55.0
508
+ assert t.x == 55
509
+ assert t.y == 6
510
+ a: Any = d
511
+ assert a.x == 55
512
+ assert a.y == 6
513
+ a.x = 7.0
514
+ a.y = 8.0
515
+ assert a.x == 7
516
+ assert a.y == 8