jaclang 0.6.1__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 (889) hide show
  1. jaclang/cli/.gitignore +3 -0
  2. jaclang/cli/cli.md +190 -0
  3. jaclang/compiler/.gitignore +1 -0
  4. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl/getme.impl.jac +3 -0
  5. jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl.jac +3 -0
  6. jaclang/compiler/passes/main/tests/fixtures/autoimpl.jac +9 -0
  7. jaclang/compiler/passes/main/tests/fixtures/autoimpl.something.else.impl.jac +3 -0
  8. jaclang/compiler/passes/main/tests/fixtures/base.jac +13 -0
  9. jaclang/compiler/passes/main/tests/fixtures/base2.jac +14 -0
  10. jaclang/compiler/passes/main/tests/fixtures/blip.jac +2 -0
  11. jaclang/compiler/passes/main/tests/fixtures/codegentext.jac +31 -0
  12. jaclang/compiler/passes/main/tests/fixtures/decls.jac +10 -0
  13. jaclang/compiler/passes/main/tests/fixtures/defs_and_uses.jac +44 -0
  14. jaclang/compiler/passes/main/tests/fixtures/fstrings.jac +4 -0
  15. jaclang/compiler/passes/main/tests/fixtures/func.jac +18 -0
  16. jaclang/compiler/passes/main/tests/fixtures/func2.jac +8 -0
  17. jaclang/compiler/passes/main/tests/fixtures/game1.jac +15 -0
  18. jaclang/compiler/passes/main/tests/fixtures/impl/defs1.jac +8 -0
  19. jaclang/compiler/passes/main/tests/fixtures/impl/defs2.jac +8 -0
  20. jaclang/compiler/passes/main/tests/fixtures/impl/imps.jac +11 -0
  21. jaclang/compiler/passes/main/tests/fixtures/multi_def_err.jac +7 -0
  22. jaclang/compiler/passes/main/tests/fixtures/registry.jac +36 -0
  23. jaclang/compiler/passes/tool/tests/fixtures/corelib.jac +480 -0
  24. jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac +480 -0
  25. jaclang/compiler/passes/tool/tests/fixtures/genai/essay_review.jac +36 -0
  26. jaclang/compiler/passes/tool/tests/fixtures/genai/expert_answer.jac +17 -0
  27. jaclang/compiler/passes/tool/tests/fixtures/genai/joke_gen.jac +32 -0
  28. jaclang/compiler/passes/tool/tests/fixtures/genai/odd_word_out.jac +27 -0
  29. jaclang/compiler/passes/tool/tests/fixtures/genai/personality_finder.jac +35 -0
  30. jaclang/compiler/passes/tool/tests/fixtures/genai/text_to_type.jac +25 -0
  31. jaclang/compiler/passes/tool/tests/fixtures/genai/translator.jac +13 -0
  32. jaclang/compiler/passes/tool/tests/fixtures/genai/wikipedia.jac +63 -0
  33. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.dot +39 -0
  34. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.jac +7 -0
  35. jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.txt +20 -0
  36. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/ability_impl_long_comprehension.jac +15 -0
  37. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/call_with_many_parameters.jac +24 -0
  38. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/entry_main.jac +4 -0
  39. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/long_line_nested_dict_access.jac +10 -0
  40. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/multiline_fstrings.jac +16 -0
  41. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_dict.jac +15 -0
  42. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/nested_loop_and_incrementer.jac +13 -0
  43. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/simple_walker.jac +25 -0
  44. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/try_block_and_walker_spawn_and_fstrings.jac +26 -0
  45. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/tuple_iteration_and_not_negation.jac +20 -0
  46. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/type_annotation.jac +3 -0
  47. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_decl_only.jac +12 -0
  48. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_default_values_types_and_docstrings.jac +18 -0
  49. jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_inline_ability_impl.jac +8 -0
  50. jaclang/compiler/passes/tool/tests/fixtures/simple_walk.jac +47 -0
  51. jaclang/compiler/passes/tool/tests/fixtures/simple_walk_fmt.jac +47 -0
  52. jaclang/compiler/tests/fixtures/fam.jac +67 -0
  53. jaclang/compiler/tests/fixtures/hello_world.jac +5 -0
  54. jaclang/compiler/tests/fixtures/kwesc.jac +5 -0
  55. jaclang/compiler/tests/fixtures/mod_doc_test.jac +1 -0
  56. jaclang/compiler/tests/fixtures/staticcheck.jac +20 -0
  57. jaclang/compiler/tests/fixtures/stuff.jac +6 -0
  58. jaclang/plugin/tests/fixtures/impl_match.jac +9 -0
  59. jaclang/plugin/tests/fixtures/impl_match_impl.jac +3 -0
  60. jaclang/plugin/tests/fixtures/simple_node_connection.jac +55 -0
  61. jaclang/plugin/tests/fixtures/simple_persistent.jac +41 -0
  62. jaclang/tests/fixtures/abc.jac +73 -0
  63. jaclang/tests/fixtures/access_checker.jac +19 -0
  64. jaclang/tests/fixtures/access_modifier.jac +49 -0
  65. jaclang/tests/fixtures/aott_raise.jac +25 -0
  66. jaclang/tests/fixtures/arithmetic_bug.jac +13 -0
  67. jaclang/tests/fixtures/assign_compr.jac +15 -0
  68. jaclang/tests/fixtures/assign_compr_dup.jac +15 -0
  69. jaclang/tests/fixtures/builtin_dotgen.jac +41 -0
  70. jaclang/tests/fixtures/chandra_bugs.jac +11 -0
  71. jaclang/tests/fixtures/chandra_bugs2.jac +26 -0
  72. jaclang/tests/fixtures/circle_pysolo.py +91 -0
  73. jaclang/tests/fixtures/deep/deeper/deep_outer_import.jac +9 -0
  74. jaclang/tests/fixtures/deep/deeper/deep_outer_import2.jac +9 -0
  75. jaclang/tests/fixtures/deep/deeper/snd_lev.jac +6 -0
  76. jaclang/tests/fixtures/deep/mycode.jac +4 -0
  77. jaclang/tests/fixtures/deep/one_lev.jac +6 -0
  78. jaclang/tests/fixtures/deep/one_lev_dup.jac +6 -0
  79. jaclang/tests/fixtures/deep/one_lev_dup_py.py +6 -0
  80. jaclang/tests/fixtures/deep_import.jac +7 -0
  81. jaclang/tests/fixtures/deferred_field.jac +13 -0
  82. jaclang/tests/fixtures/disconn.jac +29 -0
  83. jaclang/tests/fixtures/edge_node_walk.jac +46 -0
  84. jaclang/tests/fixtures/edge_ops.jac +45 -0
  85. jaclang/tests/fixtures/edges_walk.jac +38 -0
  86. jaclang/tests/fixtures/enum_inside_archtype.jac +20 -0
  87. jaclang/tests/fixtures/err.jac +5 -0
  88. jaclang/tests/fixtures/err2.jac +5 -0
  89. jaclang/tests/fixtures/game1.jac +15 -0
  90. jaclang/tests/fixtures/gendot_bubble_sort.jac +77 -0
  91. jaclang/tests/fixtures/guess_game.jac +47 -0
  92. jaclang/tests/fixtures/has_goodness.jac +15 -0
  93. jaclang/tests/fixtures/hashcheck.jac +12 -0
  94. jaclang/tests/fixtures/hashcheck_dup.jac +12 -0
  95. jaclang/tests/fixtures/hello.jac +5 -0
  96. jaclang/tests/fixtures/hello_nc.jac +5 -0
  97. jaclang/tests/fixtures/ignore.jac +43 -0
  98. jaclang/tests/fixtures/ignore_dup.jac +43 -0
  99. jaclang/tests/fixtures/impl_grab.impl.jac +4 -0
  100. jaclang/tests/fixtures/impl_grab.jac +2 -0
  101. jaclang/tests/fixtures/inherit_check.jac +33 -0
  102. jaclang/tests/fixtures/jacsamp.jac +6 -0
  103. jaclang/tests/fixtures/jp_importer.jac +17 -0
  104. jaclang/tests/fixtures/lambda.jac +6 -0
  105. jaclang/tests/fixtures/maxfail_run_test.jac +5 -0
  106. jaclang/tests/fixtures/mtest.impl.jac +6 -0
  107. jaclang/tests/fixtures/mtest.jac +6 -0
  108. jaclang/tests/fixtures/needs_import.jac +18 -0
  109. jaclang/tests/fixtures/needs_import_1.jac +6 -0
  110. jaclang/tests/fixtures/needs_import_2.jac +6 -0
  111. jaclang/tests/fixtures/needs_import_3.jac +6 -0
  112. jaclang/tests/fixtures/needs_import_dup.jac +18 -0
  113. jaclang/tests/fixtures/package_import.jac +6 -0
  114. jaclang/tests/fixtures/pyfunc.py +11 -0
  115. jaclang/tests/fixtures/pyfunc_1.py +311 -0
  116. jaclang/tests/fixtures/pyfunc_2.py +279 -0
  117. jaclang/tests/fixtures/pyfunc_3.py +310 -0
  118. jaclang/tests/fixtures/random_check.jac +70 -0
  119. jaclang/tests/fixtures/raw_byte_string.jac +18 -0
  120. jaclang/tests/fixtures/registry.jac +37 -0
  121. jaclang/tests/fixtures/run_test.jac +5 -0
  122. jaclang/tests/fixtures/semstr.jac +33 -0
  123. jaclang/tests/fixtures/simple_archs.jac +26 -0
  124. jaclang/tests/fixtures/slice_vals.jac +7 -0
  125. jaclang/tests/fixtures/sub_abil_sep.jac +15 -0
  126. jaclang/tests/fixtures/sub_abil_sep_multilev.jac +17 -0
  127. jaclang/tests/fixtures/try_finally.jac +34 -0
  128. jaclang/tests/fixtures/tupleunpack.jac +6 -0
  129. jaclang/tests/fixtures/tuplytuples.jac +8 -0
  130. jaclang/tests/fixtures/type_info.jac +19 -0
  131. jaclang/tests/fixtures/with_context.jac +30 -0
  132. jaclang/tests/fixtures/with_llm_function.jac +33 -0
  133. jaclang/tests/fixtures/with_llm_lower.jac +45 -0
  134. jaclang/tests/fixtures/with_llm_method.jac +51 -0
  135. jaclang/tests/fixtures/with_llm_type.jac +52 -0
  136. jaclang/tests/test_cli.py +239 -0
  137. jaclang/tests/test_language.py +807 -0
  138. jaclang/tests/test_man_code.py +148 -0
  139. jaclang/tests/test_reference.py +95 -0
  140. jaclang/tests/test_settings.py +46 -0
  141. jaclang/vendor/LICENSE +18 -0
  142. jaclang/vendor/mypy/stubgen.py +0 -0
  143. jaclang/vendor/mypy/stubgenc.py +0 -0
  144. jaclang/vendor/mypy/typeshed/LICENSE +237 -0
  145. jaclang/vendor/mypy/typeshed/stdlib/VERSIONS +308 -0
  146. jaclang/vendor/mypy/typeshed/stdlib/__future__.pyi +41 -0
  147. jaclang/vendor/mypy/typeshed/stdlib/__main__.pyi +3 -0
  148. jaclang/vendor/mypy/typeshed/stdlib/_ast.pyi +632 -0
  149. jaclang/vendor/mypy/typeshed/stdlib/_bisect.pyi +106 -0
  150. jaclang/vendor/mypy/typeshed/stdlib/_bootlocale.pyi +1 -0
  151. jaclang/vendor/mypy/typeshed/stdlib/_codecs.pyi +198 -0
  152. jaclang/vendor/mypy/typeshed/stdlib/_collections_abc.pyi +94 -0
  153. jaclang/vendor/mypy/typeshed/stdlib/_compat_pickle.pyi +8 -0
  154. jaclang/vendor/mypy/typeshed/stdlib/_compression.pyi +25 -0
  155. jaclang/vendor/mypy/typeshed/stdlib/_csv.pyi +90 -0
  156. jaclang/vendor/mypy/typeshed/stdlib/_ctypes.pyi +219 -0
  157. jaclang/vendor/mypy/typeshed/stdlib/_curses.pyi +600 -0
  158. jaclang/vendor/mypy/typeshed/stdlib/_decimal.pyi +316 -0
  159. jaclang/vendor/mypy/typeshed/stdlib/_dummy_thread.pyi +43 -0
  160. jaclang/vendor/mypy/typeshed/stdlib/_dummy_threading.pyi +185 -0
  161. jaclang/vendor/mypy/typeshed/stdlib/_heapq.pyi +11 -0
  162. jaclang/vendor/mypy/typeshed/stdlib/_imp.pyi +32 -0
  163. jaclang/vendor/mypy/typeshed/stdlib/_json.pyi +49 -0
  164. jaclang/vendor/mypy/typeshed/stdlib/_locale.pyi +100 -0
  165. jaclang/vendor/mypy/typeshed/stdlib/_markupbase.pyi +16 -0
  166. jaclang/vendor/mypy/typeshed/stdlib/_msi.pyi +92 -0
  167. jaclang/vendor/mypy/typeshed/stdlib/_operator.pyi +172 -0
  168. jaclang/vendor/mypy/typeshed/stdlib/_osx_support.pyi +55 -0
  169. jaclang/vendor/mypy/typeshed/stdlib/_posixsubprocess.pyi +32 -0
  170. jaclang/vendor/mypy/typeshed/stdlib/_py_abc.pyi +17 -0
  171. jaclang/vendor/mypy/typeshed/stdlib/_pydecimal.pyi +43 -0
  172. jaclang/vendor/mypy/typeshed/stdlib/_random.pyi +12 -0
  173. jaclang/vendor/mypy/typeshed/stdlib/_sitebuiltins.pyi +18 -0
  174. jaclang/vendor/mypy/typeshed/stdlib/_socket.pyi +851 -0
  175. jaclang/vendor/mypy/typeshed/stdlib/_stat.pyi +103 -0
  176. jaclang/vendor/mypy/typeshed/stdlib/_thread.pyi +63 -0
  177. jaclang/vendor/mypy/typeshed/stdlib/_threading_local.pyi +17 -0
  178. jaclang/vendor/mypy/typeshed/stdlib/_tkinter.pyi +120 -0
  179. jaclang/vendor/mypy/typeshed/stdlib/_tracemalloc.pyi +17 -0
  180. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/README.md +34 -0
  181. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/__init__.pyi +374 -0
  182. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/dbapi.pyi +45 -0
  183. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/wsgi.pyi +51 -0
  184. jaclang/vendor/mypy/typeshed/stdlib/_typeshed/xml.pyi +13 -0
  185. jaclang/vendor/mypy/typeshed/stdlib/_warnings.pyi +65 -0
  186. jaclang/vendor/mypy/typeshed/stdlib/_weakref.pyi +45 -0
  187. jaclang/vendor/mypy/typeshed/stdlib/_weakrefset.pyi +51 -0
  188. jaclang/vendor/mypy/typeshed/stdlib/_winapi.pyi +275 -0
  189. jaclang/vendor/mypy/typeshed/stdlib/abc.pyi +61 -0
  190. jaclang/vendor/mypy/typeshed/stdlib/aifc.pyi +99 -0
  191. jaclang/vendor/mypy/typeshed/stdlib/antigravity.pyi +3 -0
  192. jaclang/vendor/mypy/typeshed/stdlib/argparse.pyi +675 -0
  193. jaclang/vendor/mypy/typeshed/stdlib/array.pyi +111 -0
  194. jaclang/vendor/mypy/typeshed/stdlib/ast.pyi +287 -0
  195. jaclang/vendor/mypy/typeshed/stdlib/asynchat.pyi +21 -0
  196. jaclang/vendor/mypy/typeshed/stdlib/asyncio/__init__.pyi +41 -0
  197. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_events.pyi +519 -0
  198. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_futures.pyi +21 -0
  199. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_subprocess.pyi +71 -0
  200. jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_tasks.pyi +13 -0
  201. jaclang/vendor/mypy/typeshed/stdlib/asyncio/constants.pyi +20 -0
  202. jaclang/vendor/mypy/typeshed/stdlib/asyncio/coroutines.pyi +32 -0
  203. jaclang/vendor/mypy/typeshed/stdlib/asyncio/events.pyi +669 -0
  204. jaclang/vendor/mypy/typeshed/stdlib/asyncio/exceptions.pyi +43 -0
  205. jaclang/vendor/mypy/typeshed/stdlib/asyncio/format_helpers.pyi +26 -0
  206. jaclang/vendor/mypy/typeshed/stdlib/asyncio/futures.pyi +61 -0
  207. jaclang/vendor/mypy/typeshed/stdlib/asyncio/locks.pyi +131 -0
  208. jaclang/vendor/mypy/typeshed/stdlib/asyncio/log.pyi +3 -0
  209. jaclang/vendor/mypy/typeshed/stdlib/asyncio/mixins.pyi +9 -0
  210. jaclang/vendor/mypy/typeshed/stdlib/asyncio/proactor_events.pyi +72 -0
  211. jaclang/vendor/mypy/typeshed/stdlib/asyncio/protocols.pyi +40 -0
  212. jaclang/vendor/mypy/typeshed/stdlib/asyncio/queues.pyi +49 -0
  213. jaclang/vendor/mypy/typeshed/stdlib/asyncio/runners.pyi +44 -0
  214. jaclang/vendor/mypy/typeshed/stdlib/asyncio/selector_events.pyi +8 -0
  215. jaclang/vendor/mypy/typeshed/stdlib/asyncio/sslproto.pyi +189 -0
  216. jaclang/vendor/mypy/typeshed/stdlib/asyncio/staggered.pyi +13 -0
  217. jaclang/vendor/mypy/typeshed/stdlib/asyncio/streams.pyi +172 -0
  218. jaclang/vendor/mypy/typeshed/stdlib/asyncio/subprocess.pyi +234 -0
  219. jaclang/vendor/mypy/typeshed/stdlib/asyncio/taskgroups.pyi +36 -0
  220. jaclang/vendor/mypy/typeshed/stdlib/asyncio/tasks.pyi +566 -0
  221. jaclang/vendor/mypy/typeshed/stdlib/asyncio/threads.pyi +11 -0
  222. jaclang/vendor/mypy/typeshed/stdlib/asyncio/timeouts.pyi +22 -0
  223. jaclang/vendor/mypy/typeshed/stdlib/asyncio/transports.pyi +64 -0
  224. jaclang/vendor/mypy/typeshed/stdlib/asyncio/trsock.pyi +140 -0
  225. jaclang/vendor/mypy/typeshed/stdlib/asyncio/unix_events.pyi +268 -0
  226. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_events.pyi +108 -0
  227. jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_utils.pyi +59 -0
  228. jaclang/vendor/mypy/typeshed/stdlib/asyncore.pyi +99 -0
  229. jaclang/vendor/mypy/typeshed/stdlib/atexit.pyi +14 -0
  230. jaclang/vendor/mypy/typeshed/stdlib/audioop.pyi +50 -0
  231. jaclang/vendor/mypy/typeshed/stdlib/base64.pyi +76 -0
  232. jaclang/vendor/mypy/typeshed/stdlib/bdb.pyi +133 -0
  233. jaclang/vendor/mypy/typeshed/stdlib/binascii.pyi +45 -0
  234. jaclang/vendor/mypy/typeshed/stdlib/binhex.pyi +47 -0
  235. jaclang/vendor/mypy/typeshed/stdlib/bisect.pyi +4 -0
  236. jaclang/vendor/mypy/typeshed/stdlib/builtins.pyi +2310 -0
  237. jaclang/vendor/mypy/typeshed/stdlib/bz2.pyi +177 -0
  238. jaclang/vendor/mypy/typeshed/stdlib/cProfile.pyi +49 -0
  239. jaclang/vendor/mypy/typeshed/stdlib/calendar.pyi +248 -0
  240. jaclang/vendor/mypy/typeshed/stdlib/cgi.pyi +122 -0
  241. jaclang/vendor/mypy/typeshed/stdlib/cgitb.pyi +44 -0
  242. jaclang/vendor/mypy/typeshed/stdlib/chunk.pyi +26 -0
  243. jaclang/vendor/mypy/typeshed/stdlib/cmath.pyi +38 -0
  244. jaclang/vendor/mypy/typeshed/stdlib/cmd.pyi +52 -0
  245. jaclang/vendor/mypy/typeshed/stdlib/code.pyi +46 -0
  246. jaclang/vendor/mypy/typeshed/stdlib/codecs.pyi +344 -0
  247. jaclang/vendor/mypy/typeshed/stdlib/codeop.pyi +17 -0
  248. jaclang/vendor/mypy/typeshed/stdlib/collections/__init__.pyi +571 -0
  249. jaclang/vendor/mypy/typeshed/stdlib/collections/abc.pyi +2 -0
  250. jaclang/vendor/mypy/typeshed/stdlib/colorsys.pyi +20 -0
  251. jaclang/vendor/mypy/typeshed/stdlib/compileall.pyi +111 -0
  252. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/__init__.pyi +32 -0
  253. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/_base.pyi +137 -0
  254. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/process.pyi +272 -0
  255. jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/thread.pyi +86 -0
  256. jaclang/vendor/mypy/typeshed/stdlib/configparser.pyi +449 -0
  257. jaclang/vendor/mypy/typeshed/stdlib/contextlib.pyi +274 -0
  258. jaclang/vendor/mypy/typeshed/stdlib/contextvars.pyi +67 -0
  259. jaclang/vendor/mypy/typeshed/stdlib/copy.pyi +16 -0
  260. jaclang/vendor/mypy/typeshed/stdlib/copyreg.pyi +32 -0
  261. jaclang/vendor/mypy/typeshed/stdlib/crypt.pyi +12 -0
  262. jaclang/vendor/mypy/typeshed/stdlib/csv.pyi +147 -0
  263. jaclang/vendor/mypy/typeshed/stdlib/ctypes/__init__.pyi +211 -0
  264. jaclang/vendor/mypy/typeshed/stdlib/ctypes/_endian.pyi +29 -0
  265. jaclang/vendor/mypy/typeshed/stdlib/ctypes/util.pyi +6 -0
  266. jaclang/vendor/mypy/typeshed/stdlib/ctypes/wintypes.pyi +298 -0
  267. jaclang/vendor/mypy/typeshed/stdlib/curses/__init__.pyi +25 -0
  268. jaclang/vendor/mypy/typeshed/stdlib/curses/ascii.pyi +63 -0
  269. jaclang/vendor/mypy/typeshed/stdlib/curses/has_key.pyi +4 -0
  270. jaclang/vendor/mypy/typeshed/stdlib/curses/panel.pyi +25 -0
  271. jaclang/vendor/mypy/typeshed/stdlib/curses/textpad.pyi +15 -0
  272. jaclang/vendor/mypy/typeshed/stdlib/dataclasses.pyi +323 -0
  273. jaclang/vendor/mypy/typeshed/stdlib/datetime.pyi +334 -0
  274. jaclang/vendor/mypy/typeshed/stdlib/dbm/__init__.pyi +98 -0
  275. jaclang/vendor/mypy/typeshed/stdlib/dbm/dumb.pyi +34 -0
  276. jaclang/vendor/mypy/typeshed/stdlib/dbm/gnu.pyi +44 -0
  277. jaclang/vendor/mypy/typeshed/stdlib/dbm/ndbm.pyi +40 -0
  278. jaclang/vendor/mypy/typeshed/stdlib/decimal.pyi +5 -0
  279. jaclang/vendor/mypy/typeshed/stdlib/difflib.pyi +169 -0
  280. jaclang/vendor/mypy/typeshed/stdlib/dis.pyi +190 -0
  281. jaclang/vendor/mypy/typeshed/stdlib/distutils/__init__.pyi +5 -0
  282. jaclang/vendor/mypy/typeshed/stdlib/distutils/archive_util.pyi +22 -0
  283. jaclang/vendor/mypy/typeshed/stdlib/distutils/bcppcompiler.pyi +3 -0
  284. jaclang/vendor/mypy/typeshed/stdlib/distutils/ccompiler.pyi +183 -0
  285. jaclang/vendor/mypy/typeshed/stdlib/distutils/cmd.pyi +88 -0
  286. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/__init__.pyi +0 -0
  287. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist.pyi +25 -0
  288. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_dumb.pyi +21 -0
  289. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_msi.pyi +45 -0
  290. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_packager.pyi +0 -0
  291. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_rpm.pyi +52 -0
  292. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_wininst.pyi +21 -0
  293. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build.pyi +31 -0
  294. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_clib.pyi +27 -0
  295. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_ext.pyi +50 -0
  296. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_py.pyi +44 -0
  297. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_scripts.pyi +24 -0
  298. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/check.pyi +39 -0
  299. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/clean.pyi +17 -0
  300. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/config.pyi +91 -0
  301. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install.pyi +63 -0
  302. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_data.pyi +19 -0
  303. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_egg_info.pyi +18 -0
  304. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_headers.pyi +16 -0
  305. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_lib.pyi +25 -0
  306. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_scripts.pyi +18 -0
  307. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/register.pyi +18 -0
  308. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/sdist.pyi +42 -0
  309. jaclang/vendor/mypy/typeshed/stdlib/distutils/command/upload.pyi +17 -0
  310. jaclang/vendor/mypy/typeshed/stdlib/distutils/config.pyi +17 -0
  311. jaclang/vendor/mypy/typeshed/stdlib/distutils/core.pyi +59 -0
  312. jaclang/vendor/mypy/typeshed/stdlib/distutils/cygwinccompiler.pyi +20 -0
  313. jaclang/vendor/mypy/typeshed/stdlib/distutils/debug.pyi +1 -0
  314. jaclang/vendor/mypy/typeshed/stdlib/distutils/dep_util.pyi +3 -0
  315. jaclang/vendor/mypy/typeshed/stdlib/distutils/dir_util.pyi +21 -0
  316. jaclang/vendor/mypy/typeshed/stdlib/distutils/dist.pyi +155 -0
  317. jaclang/vendor/mypy/typeshed/stdlib/distutils/errors.pyi +19 -0
  318. jaclang/vendor/mypy/typeshed/stdlib/distutils/extension.pyi +36 -0
  319. jaclang/vendor/mypy/typeshed/stdlib/distutils/fancy_getopt.pyi +37 -0
  320. jaclang/vendor/mypy/typeshed/stdlib/distutils/file_util.pyi +14 -0
  321. jaclang/vendor/mypy/typeshed/stdlib/distutils/filelist.pyi +78 -0
  322. jaclang/vendor/mypy/typeshed/stdlib/distutils/log.pyi +25 -0
  323. jaclang/vendor/mypy/typeshed/stdlib/distutils/msvccompiler.pyi +3 -0
  324. jaclang/vendor/mypy/typeshed/stdlib/distutils/spawn.pyi +4 -0
  325. jaclang/vendor/mypy/typeshed/stdlib/distutils/sysconfig.pyi +24 -0
  326. jaclang/vendor/mypy/typeshed/stdlib/distutils/text_file.pyi +23 -0
  327. jaclang/vendor/mypy/typeshed/stdlib/distutils/unixccompiler.pyi +3 -0
  328. jaclang/vendor/mypy/typeshed/stdlib/distutils/util.pyi +50 -0
  329. jaclang/vendor/mypy/typeshed/stdlib/distutils/version.pyi +36 -0
  330. jaclang/vendor/mypy/typeshed/stdlib/doctest.pyi +282 -0
  331. jaclang/vendor/mypy/typeshed/stdlib/dummy_threading.pyi +2 -0
  332. jaclang/vendor/mypy/typeshed/stdlib/email/__init__.pyi +37 -0
  333. jaclang/vendor/mypy/typeshed/stdlib/email/_header_value_parser.pyi +392 -0
  334. jaclang/vendor/mypy/typeshed/stdlib/email/_policybase.pyi +51 -0
  335. jaclang/vendor/mypy/typeshed/stdlib/email/base64mime.pyi +22 -0
  336. jaclang/vendor/mypy/typeshed/stdlib/email/charset.pyi +39 -0
  337. jaclang/vendor/mypy/typeshed/stdlib/email/contentmanager.pyi +11 -0
  338. jaclang/vendor/mypy/typeshed/stdlib/email/encoders.pyi +8 -0
  339. jaclang/vendor/mypy/typeshed/stdlib/email/errors.pyi +39 -0
  340. jaclang/vendor/mypy/typeshed/stdlib/email/feedparser.pyi +31 -0
  341. jaclang/vendor/mypy/typeshed/stdlib/email/generator.pyi +42 -0
  342. jaclang/vendor/mypy/typeshed/stdlib/email/header.pyi +41 -0
  343. jaclang/vendor/mypy/typeshed/stdlib/email/headerregistry.pyi +214 -0
  344. jaclang/vendor/mypy/typeshed/stdlib/email/iterators.pyi +19 -0
  345. jaclang/vendor/mypy/typeshed/stdlib/email/message.pyi +220 -0
  346. jaclang/vendor/mypy/typeshed/stdlib/email/mime/__init__.pyi +0 -0
  347. jaclang/vendor/mypy/typeshed/stdlib/email/mime/application.pyi +17 -0
  348. jaclang/vendor/mypy/typeshed/stdlib/email/mime/audio.pyi +17 -0
  349. jaclang/vendor/mypy/typeshed/stdlib/email/mime/base.pyi +15 -0
  350. jaclang/vendor/mypy/typeshed/stdlib/email/mime/image.pyi +17 -0
  351. jaclang/vendor/mypy/typeshed/stdlib/email/mime/message.pyi +10 -0
  352. jaclang/vendor/mypy/typeshed/stdlib/email/mime/multipart.pyi +18 -0
  353. jaclang/vendor/mypy/typeshed/stdlib/email/mime/nonmultipart.pyi +5 -0
  354. jaclang/vendor/mypy/typeshed/stdlib/email/mime/text.pyi +14 -0
  355. jaclang/vendor/mypy/typeshed/stdlib/email/parser.pyi +44 -0
  356. jaclang/vendor/mypy/typeshed/stdlib/email/policy.pyi +51 -0
  357. jaclang/vendor/mypy/typeshed/stdlib/email/quoprimime.pyi +30 -0
  358. jaclang/vendor/mypy/typeshed/stdlib/email/utils.pyi +84 -0
  359. jaclang/vendor/mypy/typeshed/stdlib/encodings/__init__.pyi +10 -0
  360. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8.pyi +25 -0
  361. jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8_sig.pyi +28 -0
  362. jaclang/vendor/mypy/typeshed/stdlib/ensurepip/__init__.pyi +12 -0
  363. jaclang/vendor/mypy/typeshed/stdlib/enum.pyi +347 -0
  364. jaclang/vendor/mypy/typeshed/stdlib/errno.pyi +222 -0
  365. jaclang/vendor/mypy/typeshed/stdlib/faulthandler.pyi +20 -0
  366. jaclang/vendor/mypy/typeshed/stdlib/fcntl.pyi +155 -0
  367. jaclang/vendor/mypy/typeshed/stdlib/filecmp.pyi +62 -0
  368. jaclang/vendor/mypy/typeshed/stdlib/fileinput.pyi +246 -0
  369. jaclang/vendor/mypy/typeshed/stdlib/fnmatch.pyi +9 -0
  370. jaclang/vendor/mypy/typeshed/stdlib/formatter.pyi +92 -0
  371. jaclang/vendor/mypy/typeshed/stdlib/fractions.pyi +152 -0
  372. jaclang/vendor/mypy/typeshed/stdlib/ftplib.pyi +214 -0
  373. jaclang/vendor/mypy/typeshed/stdlib/functools.pyi +261 -0
  374. jaclang/vendor/mypy/typeshed/stdlib/gc.pyi +39 -0
  375. jaclang/vendor/mypy/typeshed/stdlib/genericpath.pyi +62 -0
  376. jaclang/vendor/mypy/typeshed/stdlib/getopt.pyi +15 -0
  377. jaclang/vendor/mypy/typeshed/stdlib/getpass.pyi +8 -0
  378. jaclang/vendor/mypy/typeshed/stdlib/gettext.pyi +200 -0
  379. jaclang/vendor/mypy/typeshed/stdlib/glob.pyi +50 -0
  380. jaclang/vendor/mypy/typeshed/stdlib/graphlib.pyi +28 -0
  381. jaclang/vendor/mypy/typeshed/stdlib/grp.pyi +22 -0
  382. jaclang/vendor/mypy/typeshed/stdlib/gzip.pyi +162 -0
  383. jaclang/vendor/mypy/typeshed/stdlib/hashlib.pyi +191 -0
  384. jaclang/vendor/mypy/typeshed/stdlib/heapq.pyi +36 -0
  385. jaclang/vendor/mypy/typeshed/stdlib/hmac.pyi +45 -0
  386. jaclang/vendor/mypy/typeshed/stdlib/html/__init__.pyi +6 -0
  387. jaclang/vendor/mypy/typeshed/stdlib/html/entities.pyi +6 -0
  388. jaclang/vendor/mypy/typeshed/stdlib/html/parser.pyi +40 -0
  389. jaclang/vendor/mypy/typeshed/stdlib/http/__init__.pyi +105 -0
  390. jaclang/vendor/mypy/typeshed/stdlib/http/client.pyi +283 -0
  391. jaclang/vendor/mypy/typeshed/stdlib/http/cookiejar.pyi +206 -0
  392. jaclang/vendor/mypy/typeshed/stdlib/http/cookies.pyi +67 -0
  393. jaclang/vendor/mypy/typeshed/stdlib/http/server.pyi +93 -0
  394. jaclang/vendor/mypy/typeshed/stdlib/imaplib.pyi +221 -0
  395. jaclang/vendor/mypy/typeshed/stdlib/imghdr.pyi +17 -0
  396. jaclang/vendor/mypy/typeshed/stdlib/imp.pyi +75 -0
  397. jaclang/vendor/mypy/typeshed/stdlib/importlib/__init__.pyi +24 -0
  398. jaclang/vendor/mypy/typeshed/stdlib/importlib/_abc.pyi +15 -0
  399. jaclang/vendor/mypy/typeshed/stdlib/importlib/abc.pyi +195 -0
  400. jaclang/vendor/mypy/typeshed/stdlib/importlib/machinery.pyi +214 -0
  401. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/__init__.pyi +310 -0
  402. jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/_meta.pyi +40 -0
  403. jaclang/vendor/mypy/typeshed/stdlib/importlib/readers.pyi +68 -0
  404. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/__init__.pyi +66 -0
  405. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/abc.pyi +12 -0
  406. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/readers.pyi +14 -0
  407. jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/simple.pyi +55 -0
  408. jaclang/vendor/mypy/typeshed/stdlib/importlib/simple.pyi +16 -0
  409. jaclang/vendor/mypy/typeshed/stdlib/importlib/util.pyi +57 -0
  410. jaclang/vendor/mypy/typeshed/stdlib/inspect.pyi +709 -0
  411. jaclang/vendor/mypy/typeshed/stdlib/io.pyi +222 -0
  412. jaclang/vendor/mypy/typeshed/stdlib/ipaddress.pyi +229 -0
  413. jaclang/vendor/mypy/typeshed/stdlib/itertools.pyi +394 -0
  414. jaclang/vendor/mypy/typeshed/stdlib/json/__init__.pyi +69 -0
  415. jaclang/vendor/mypy/typeshed/stdlib/json/decoder.pyi +34 -0
  416. jaclang/vendor/mypy/typeshed/stdlib/json/encoder.pyi +38 -0
  417. jaclang/vendor/mypy/typeshed/stdlib/json/tool.pyi +1 -0
  418. jaclang/vendor/mypy/typeshed/stdlib/keyword.pyi +21 -0
  419. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/__init__.pyi +0 -0
  420. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/btm_matcher.pyi +32 -0
  421. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixer_base.pyi +44 -0
  422. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/__init__.pyi +0 -0
  423. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_apply.pyi +8 -0
  424. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_asserts.pyi +10 -0
  425. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_basestring.pyi +8 -0
  426. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_buffer.pyi +8 -0
  427. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_dict.pyi +16 -0
  428. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_except.pyi +14 -0
  429. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exec.pyi +8 -0
  430. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_execfile.pyi +8 -0
  431. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exitfunc.pyi +13 -0
  432. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_filter.pyi +9 -0
  433. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_funcattrs.pyi +8 -0
  434. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_future.pyi +8 -0
  435. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_getcwdu.pyi +8 -0
  436. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_has_key.pyi +8 -0
  437. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_idioms.pyi +15 -0
  438. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_import.pyi +16 -0
  439. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports.pyi +21 -0
  440. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports2.pyi +6 -0
  441. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_input.pyi +11 -0
  442. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_intern.pyi +9 -0
  443. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_isinstance.pyi +8 -0
  444. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools.pyi +9 -0
  445. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools_imports.pyi +7 -0
  446. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_long.pyi +7 -0
  447. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_map.pyi +9 -0
  448. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_metaclass.pyi +17 -0
  449. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_methodattrs.pyi +10 -0
  450. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ne.pyi +8 -0
  451. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_next.pyi +19 -0
  452. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_nonzero.pyi +8 -0
  453. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_numliterals.pyi +8 -0
  454. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_operator.pyi +12 -0
  455. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_paren.pyi +8 -0
  456. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_print.pyi +12 -0
  457. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raise.pyi +8 -0
  458. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raw_input.pyi +8 -0
  459. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reduce.pyi +8 -0
  460. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reload.pyi +9 -0
  461. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_renames.pyi +17 -0
  462. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_repr.pyi +8 -0
  463. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_set_literal.pyi +7 -0
  464. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_standarderror.pyi +8 -0
  465. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_sys_exc.pyi +9 -0
  466. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_throw.pyi +8 -0
  467. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_tuple_params.pyi +17 -0
  468. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_types.pyi +8 -0
  469. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_unicode.pyi +12 -0
  470. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_urllib.pyi +18 -0
  471. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ws_comma.pyi +12 -0
  472. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xrange.pyi +20 -0
  473. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xreadlines.pyi +8 -0
  474. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_zip.pyi +9 -0
  475. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/main.pyi +46 -0
  476. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/__init__.pyi +9 -0
  477. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/driver.pyi +40 -0
  478. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/grammar.pyi +24 -0
  479. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/literals.pyi +7 -0
  480. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/parse.pyi +36 -0
  481. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/pgen.pyi +52 -0
  482. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/token.pyi +67 -0
  483. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/tokenize.pyi +98 -0
  484. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pygram.pyi +114 -0
  485. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pytree.pyi +142 -0
  486. jaclang/vendor/mypy/typeshed/stdlib/lib2to3/refactor.pyi +122 -0
  487. jaclang/vendor/mypy/typeshed/stdlib/linecache.pyi +29 -0
  488. jaclang/vendor/mypy/typeshed/stdlib/locale.pyi +165 -0
  489. jaclang/vendor/mypy/typeshed/stdlib/logging/__init__.pyi +685 -0
  490. jaclang/vendor/mypy/typeshed/stdlib/logging/config.pyi +161 -0
  491. jaclang/vendor/mypy/typeshed/stdlib/logging/handlers.pyi +315 -0
  492. jaclang/vendor/mypy/typeshed/stdlib/lzma.pyi +213 -0
  493. jaclang/vendor/mypy/typeshed/stdlib/mailbox.pyi +306 -0
  494. jaclang/vendor/mypy/typeshed/stdlib/mailcap.pyi +15 -0
  495. jaclang/vendor/mypy/typeshed/stdlib/marshal.pyi +35 -0
  496. jaclang/vendor/mypy/typeshed/stdlib/math.pyi +134 -0
  497. jaclang/vendor/mypy/typeshed/stdlib/mimetypes.pyi +50 -0
  498. jaclang/vendor/mypy/typeshed/stdlib/mmap.pyi +126 -0
  499. jaclang/vendor/mypy/typeshed/stdlib/modulefinder.pyi +84 -0
  500. jaclang/vendor/mypy/typeshed/stdlib/msilib/__init__.pyi +237 -0
  501. jaclang/vendor/mypy/typeshed/stdlib/msilib/schema.pyi +107 -0
  502. jaclang/vendor/mypy/typeshed/stdlib/msilib/sequence.pyi +13 -0
  503. jaclang/vendor/mypy/typeshed/stdlib/msilib/text.pyi +7 -0
  504. jaclang/vendor/mypy/typeshed/stdlib/msvcrt.pyi +32 -0
  505. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/__init__.pyi +94 -0
  506. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/connection.pyi +94 -0
  507. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/context.pyi +235 -0
  508. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/__init__.pyi +83 -0
  509. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/connection.pyi +50 -0
  510. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/forkserver.pyi +36 -0
  511. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/heap.pyi +38 -0
  512. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/managers.pyi +270 -0
  513. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/pool.pyi +137 -0
  514. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_fork.pyi +23 -0
  515. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_forkserver.pyi +16 -0
  516. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_posix.pyi +20 -0
  517. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_win32.pyi +30 -0
  518. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/process.pyi +39 -0
  519. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/queues.pyi +43 -0
  520. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/reduction.pyi +118 -0
  521. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_sharer.pyi +20 -0
  522. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_tracker.pyi +18 -0
  523. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/shared_memory.pyi +44 -0
  524. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/sharedctypes.pyi +140 -0
  525. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/spawn.pyi +34 -0
  526. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/synchronize.pyi +66 -0
  527. jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/util.pyi +83 -0
  528. jaclang/vendor/mypy/typeshed/stdlib/netrc.pyi +28 -0
  529. jaclang/vendor/mypy/typeshed/stdlib/nis.pyi +9 -0
  530. jaclang/vendor/mypy/typeshed/stdlib/nntplib.pyi +151 -0
  531. jaclang/vendor/mypy/typeshed/stdlib/nt.pyi +114 -0
  532. jaclang/vendor/mypy/typeshed/stdlib/ntpath.pyi +119 -0
  533. jaclang/vendor/mypy/typeshed/stdlib/nturl2path.pyi +2 -0
  534. jaclang/vendor/mypy/typeshed/stdlib/numbers.pyi +154 -0
  535. jaclang/vendor/mypy/typeshed/stdlib/opcode.pyi +68 -0
  536. jaclang/vendor/mypy/typeshed/stdlib/operator.pyi +110 -0
  537. jaclang/vendor/mypy/typeshed/stdlib/optparse.pyi +290 -0
  538. jaclang/vendor/mypy/typeshed/stdlib/os/__init__.pyi +1317 -0
  539. jaclang/vendor/mypy/typeshed/stdlib/os/path.pyi +8 -0
  540. jaclang/vendor/mypy/typeshed/stdlib/ossaudiodev.pyi +131 -0
  541. jaclang/vendor/mypy/typeshed/stdlib/parser.pyi +28 -0
  542. jaclang/vendor/mypy/typeshed/stdlib/pathlib.pyi +282 -0
  543. jaclang/vendor/mypy/typeshed/stdlib/pdb.pyi +223 -0
  544. jaclang/vendor/mypy/typeshed/stdlib/pickle.pyi +286 -0
  545. jaclang/vendor/mypy/typeshed/stdlib/pickletools.pyi +173 -0
  546. jaclang/vendor/mypy/typeshed/stdlib/pipes.pyi +16 -0
  547. jaclang/vendor/mypy/typeshed/stdlib/pkgutil.pyi +61 -0
  548. jaclang/vendor/mypy/typeshed/stdlib/platform.pyi +56 -0
  549. jaclang/vendor/mypy/typeshed/stdlib/plistlib.pyi +176 -0
  550. jaclang/vendor/mypy/typeshed/stdlib/poplib.pyi +78 -0
  551. jaclang/vendor/mypy/typeshed/stdlib/posix.pyi +363 -0
  552. jaclang/vendor/mypy/typeshed/stdlib/posixpath.pyi +171 -0
  553. jaclang/vendor/mypy/typeshed/stdlib/pprint.pyi +122 -0
  554. jaclang/vendor/mypy/typeshed/stdlib/profile.pyi +43 -0
  555. jaclang/vendor/mypy/typeshed/stdlib/pstats.pyi +85 -0
  556. jaclang/vendor/mypy/typeshed/stdlib/pty.pyi +21 -0
  557. jaclang/vendor/mypy/typeshed/stdlib/pwd.pyi +36 -0
  558. jaclang/vendor/mypy/typeshed/stdlib/py_compile.pyi +40 -0
  559. jaclang/vendor/mypy/typeshed/stdlib/pyclbr.pyi +97 -0
  560. jaclang/vendor/mypy/typeshed/stdlib/pydoc.pyi +309 -0
  561. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/__init__.pyi +0 -0
  562. jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/topics.pyi +1 -0
  563. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/__init__.pyi +94 -0
  564. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/errors.pyi +49 -0
  565. jaclang/vendor/mypy/typeshed/stdlib/pyexpat/model.pyi +11 -0
  566. jaclang/vendor/mypy/typeshed/stdlib/queue.pyi +62 -0
  567. jaclang/vendor/mypy/typeshed/stdlib/quopri.pyi +17 -0
  568. jaclang/vendor/mypy/typeshed/stdlib/random.pyi +160 -0
  569. jaclang/vendor/mypy/typeshed/stdlib/re.pyi +376 -0
  570. jaclang/vendor/mypy/typeshed/stdlib/readline.pyi +40 -0
  571. jaclang/vendor/mypy/typeshed/stdlib/reprlib.pyi +65 -0
  572. jaclang/vendor/mypy/typeshed/stdlib/resource.pyi +116 -0
  573. jaclang/vendor/mypy/typeshed/stdlib/rlcompleter.pyi +9 -0
  574. jaclang/vendor/mypy/typeshed/stdlib/runpy.pyi +31 -0
  575. jaclang/vendor/mypy/typeshed/stdlib/sched.pyi +56 -0
  576. jaclang/vendor/mypy/typeshed/stdlib/secrets.pyi +24 -0
  577. jaclang/vendor/mypy/typeshed/stdlib/select.pyi +162 -0
  578. jaclang/vendor/mypy/typeshed/stdlib/selectors.pyi +85 -0
  579. jaclang/vendor/mypy/typeshed/stdlib/shelve.pyi +64 -0
  580. jaclang/vendor/mypy/typeshed/stdlib/shlex.pyi +47 -0
  581. jaclang/vendor/mypy/typeshed/stdlib/shutil.pyi +239 -0
  582. jaclang/vendor/mypy/typeshed/stdlib/signal.pyi +208 -0
  583. jaclang/vendor/mypy/typeshed/stdlib/site.pyi +33 -0
  584. jaclang/vendor/mypy/typeshed/stdlib/smtpd.pyi +102 -0
  585. jaclang/vendor/mypy/typeshed/stdlib/smtplib.pyi +223 -0
  586. jaclang/vendor/mypy/typeshed/stdlib/sndhdr.pyi +14 -0
  587. jaclang/vendor/mypy/typeshed/stdlib/socket.pyi +881 -0
  588. jaclang/vendor/mypy/typeshed/stdlib/socketserver.pyi +195 -0
  589. jaclang/vendor/mypy/typeshed/stdlib/spwd.pyi +43 -0
  590. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/__init__.pyi +1 -0
  591. jaclang/vendor/mypy/typeshed/stdlib/sqlite3/dbapi2.pyi +519 -0
  592. jaclang/vendor/mypy/typeshed/stdlib/sre_compile.pyi +11 -0
  593. jaclang/vendor/mypy/typeshed/stdlib/sre_constants.pyi +132 -0
  594. jaclang/vendor/mypy/typeshed/stdlib/sre_parse.pyi +110 -0
  595. jaclang/vendor/mypy/typeshed/stdlib/ssl.pyi +559 -0
  596. jaclang/vendor/mypy/typeshed/stdlib/stat.pyi +1 -0
  597. jaclang/vendor/mypy/typeshed/stdlib/statistics.pyi +151 -0
  598. jaclang/vendor/mypy/typeshed/stdlib/string.pyi +112 -0
  599. jaclang/vendor/mypy/typeshed/stdlib/stringprep.pyi +27 -0
  600. jaclang/vendor/mypy/typeshed/stdlib/struct.pyi +43 -0
  601. jaclang/vendor/mypy/typeshed/stdlib/subprocess.pyi +2638 -0
  602. jaclang/vendor/mypy/typeshed/stdlib/sunau.pyi +86 -0
  603. jaclang/vendor/mypy/typeshed/stdlib/symbol.pyi +93 -0
  604. jaclang/vendor/mypy/typeshed/stdlib/symtable.pyi +63 -0
  605. jaclang/vendor/mypy/typeshed/stdlib/sys/__init__.pyi +396 -0
  606. jaclang/vendor/mypy/typeshed/stdlib/sys/_monitoring.pyi +54 -0
  607. jaclang/vendor/mypy/typeshed/stdlib/sysconfig.pyi +52 -0
  608. jaclang/vendor/mypy/typeshed/stdlib/syslog.pyi +48 -0
  609. jaclang/vendor/mypy/typeshed/stdlib/tabnanny.pyi +18 -0
  610. jaclang/vendor/mypy/typeshed/stdlib/tarfile.pyi +486 -0
  611. jaclang/vendor/mypy/typeshed/stdlib/telnetlib.pyi +129 -0
  612. jaclang/vendor/mypy/typeshed/stdlib/tempfile.pyi +521 -0
  613. jaclang/vendor/mypy/typeshed/stdlib/termios.pyi +273 -0
  614. jaclang/vendor/mypy/typeshed/stdlib/textwrap.pyi +107 -0
  615. jaclang/vendor/mypy/typeshed/stdlib/this.pyi +2 -0
  616. jaclang/vendor/mypy/typeshed/stdlib/threading.pyi +212 -0
  617. jaclang/vendor/mypy/typeshed/stdlib/time.pyi +122 -0
  618. jaclang/vendor/mypy/typeshed/stdlib/timeit.pyi +46 -0
  619. jaclang/vendor/mypy/typeshed/stdlib/tkinter/__init__.pyi +3950 -0
  620. jaclang/vendor/mypy/typeshed/stdlib/tkinter/colorchooser.pyi +28 -0
  621. jaclang/vendor/mypy/typeshed/stdlib/tkinter/commondialog.pyi +16 -0
  622. jaclang/vendor/mypy/typeshed/stdlib/tkinter/constants.pyi +80 -0
  623. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dialog.pyi +21 -0
  624. jaclang/vendor/mypy/typeshed/stdlib/tkinter/dnd.pyi +20 -0
  625. jaclang/vendor/mypy/typeshed/stdlib/tkinter/filedialog.pyi +173 -0
  626. jaclang/vendor/mypy/typeshed/stdlib/tkinter/font.pyi +148 -0
  627. jaclang/vendor/mypy/typeshed/stdlib/tkinter/messagebox.pyi +60 -0
  628. jaclang/vendor/mypy/typeshed/stdlib/tkinter/scrolledtext.pyi +10 -0
  629. jaclang/vendor/mypy/typeshed/stdlib/tkinter/simpledialog.pyi +54 -0
  630. jaclang/vendor/mypy/typeshed/stdlib/tkinter/tix.pyi +395 -0
  631. jaclang/vendor/mypy/typeshed/stdlib/tkinter/ttk.pyi +1276 -0
  632. jaclang/vendor/mypy/typeshed/stdlib/token.pyi +159 -0
  633. jaclang/vendor/mypy/typeshed/stdlib/tokenize.pyi +185 -0
  634. jaclang/vendor/mypy/typeshed/stdlib/tomllib.pyi +12 -0
  635. jaclang/vendor/mypy/typeshed/stdlib/trace.pyi +114 -0
  636. jaclang/vendor/mypy/typeshed/stdlib/traceback.pyi +297 -0
  637. jaclang/vendor/mypy/typeshed/stdlib/tracemalloc.pyi +142 -0
  638. jaclang/vendor/mypy/typeshed/stdlib/tty.pyi +30 -0
  639. jaclang/vendor/mypy/typeshed/stdlib/turtle.pyi +830 -0
  640. jaclang/vendor/mypy/typeshed/stdlib/types.pyi +647 -0
  641. jaclang/vendor/mypy/typeshed/stdlib/typing.pyi +1059 -0
  642. jaclang/vendor/mypy/typeshed/stdlib/typing_extensions.pyi +524 -0
  643. jaclang/vendor/mypy/typeshed/stdlib/unicodedata.pyi +71 -0
  644. jaclang/vendor/mypy/typeshed/stdlib/unittest/__init__.pyi +72 -0
  645. jaclang/vendor/mypy/typeshed/stdlib/unittest/_log.pyi +34 -0
  646. jaclang/vendor/mypy/typeshed/stdlib/unittest/async_case.pyi +28 -0
  647. jaclang/vendor/mypy/typeshed/stdlib/unittest/case.pyi +481 -0
  648. jaclang/vendor/mypy/typeshed/stdlib/unittest/loader.pyi +71 -0
  649. jaclang/vendor/mypy/typeshed/stdlib/unittest/main.pyi +75 -0
  650. jaclang/vendor/mypy/typeshed/stdlib/unittest/mock.pyi +468 -0
  651. jaclang/vendor/mypy/typeshed/stdlib/unittest/result.pyi +59 -0
  652. jaclang/vendor/mypy/typeshed/stdlib/unittest/runner.pyi +83 -0
  653. jaclang/vendor/mypy/typeshed/stdlib/unittest/signals.pyi +15 -0
  654. jaclang/vendor/mypy/typeshed/stdlib/unittest/suite.pyi +26 -0
  655. jaclang/vendor/mypy/typeshed/stdlib/unittest/util.pyi +31 -0
  656. jaclang/vendor/mypy/typeshed/stdlib/urllib/__init__.pyi +0 -0
  657. jaclang/vendor/mypy/typeshed/stdlib/urllib/error.pyi +27 -0
  658. jaclang/vendor/mypy/typeshed/stdlib/urllib/parse.pyi +245 -0
  659. jaclang/vendor/mypy/typeshed/stdlib/urllib/request.pyi +544 -0
  660. jaclang/vendor/mypy/typeshed/stdlib/urllib/response.pyi +50 -0
  661. jaclang/vendor/mypy/typeshed/stdlib/urllib/robotparser.pyi +20 -0
  662. jaclang/vendor/mypy/typeshed/stdlib/uu.pyi +23 -0
  663. jaclang/vendor/mypy/typeshed/stdlib/uuid.pyi +100 -0
  664. jaclang/vendor/mypy/typeshed/stdlib/warnings.pyi +144 -0
  665. jaclang/vendor/mypy/typeshed/stdlib/wave.pyi +87 -0
  666. jaclang/vendor/mypy/typeshed/stdlib/weakref.pyi +173 -0
  667. jaclang/vendor/mypy/typeshed/stdlib/webbrowser.pyi +80 -0
  668. jaclang/vendor/mypy/typeshed/stdlib/winreg.pyi +120 -0
  669. jaclang/vendor/mypy/typeshed/stdlib/winsound.pyi +28 -0
  670. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/__init__.pyi +0 -0
  671. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/handlers.pyi +109 -0
  672. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/headers.pyi +28 -0
  673. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/simple_server.pyi +49 -0
  674. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/types.pyi +44 -0
  675. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/util.pyi +31 -0
  676. jaclang/vendor/mypy/typeshed/stdlib/wsgiref/validate.pyi +52 -0
  677. jaclang/vendor/mypy/typeshed/stdlib/xdrlib.pyi +63 -0
  678. jaclang/vendor/mypy/typeshed/stdlib/xml/__init__.pyi +1 -0
  679. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/NodeFilter.pyi +19 -0
  680. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/__init__.pyi +72 -0
  681. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/domreg.pyi +12 -0
  682. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/expatbuilder.pyi +111 -0
  683. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minicompat.pyi +22 -0
  684. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minidom.pyi +467 -0
  685. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/pulldom.pyi +101 -0
  686. jaclang/vendor/mypy/typeshed/stdlib/xml/dom/xmlbuilder.pyi +110 -0
  687. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementInclude.pyi +35 -0
  688. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementPath.pyi +49 -0
  689. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementTree.pyi +367 -0
  690. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/__init__.pyi +0 -0
  691. jaclang/vendor/mypy/typeshed/stdlib/xml/etree/cElementTree.pyi +1 -0
  692. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/__init__.pyi +1 -0
  693. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/__init__.pyi +1 -0
  694. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/errors.pyi +1 -0
  695. jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/model.pyi +1 -0
  696. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/__init__.pyi +34 -0
  697. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/_exceptions.pyi +21 -0
  698. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/handler.pyi +59 -0
  699. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/saxutils.pyi +71 -0
  700. jaclang/vendor/mypy/typeshed/stdlib/xml/sax/xmlreader.pyi +89 -0
  701. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/__init__.pyi +0 -0
  702. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/client.pyi +348 -0
  703. jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/server.pyi +186 -0
  704. jaclang/vendor/mypy/typeshed/stdlib/xxlimited.pyi +22 -0
  705. jaclang/vendor/mypy/typeshed/stdlib/zipapp.pyi +20 -0
  706. jaclang/vendor/mypy/typeshed/stdlib/zipfile/__init__.pyi +355 -0
  707. jaclang/vendor/mypy/typeshed/stdlib/zipfile/_path.pyi +105 -0
  708. jaclang/vendor/mypy/typeshed/stdlib/zipimport.pyi +40 -0
  709. jaclang/vendor/mypy/typeshed/stdlib/zlib.pyi +63 -0
  710. jaclang/vendor/mypy/typeshed/stdlib/zoneinfo/__init__.pyi +45 -0
  711. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/@tests/stubtest_allowlist.txt +2 -0
  712. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/METADATA.toml +4 -0
  713. jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/mypy_extensions.pyi +238 -0
  714. jaclang/vendor/mypy/xml/mypy-html.css +104 -0
  715. jaclang/vendor/mypy/xml/mypy-html.xslt +81 -0
  716. jaclang/vendor/mypy/xml/mypy-txt.xslt +100 -0
  717. jaclang/vendor/mypy/xml/mypy.xsd +50 -0
  718. jaclang/vendor/mypyc/.readthedocs.yaml +18 -0
  719. jaclang/vendor/mypyc/README.md +133 -0
  720. jaclang/vendor/mypyc/doc/Makefile +20 -0
  721. jaclang/vendor/mypyc/doc/bool_operations.rst +27 -0
  722. jaclang/vendor/mypyc/doc/compilation_units.rst +20 -0
  723. jaclang/vendor/mypyc/doc/conf.py +59 -0
  724. jaclang/vendor/mypyc/doc/cpython-timings.md +25 -0
  725. jaclang/vendor/mypyc/doc/dev-intro.md +548 -0
  726. jaclang/vendor/mypyc/doc/dict_operations.rst +59 -0
  727. jaclang/vendor/mypyc/doc/differences_from_python.rst +332 -0
  728. jaclang/vendor/mypyc/doc/float_operations.rst +50 -0
  729. jaclang/vendor/mypyc/doc/future.md +42 -0
  730. jaclang/vendor/mypyc/doc/getting_started.rst +240 -0
  731. jaclang/vendor/mypyc/doc/index.rst +61 -0
  732. jaclang/vendor/mypyc/doc/int_operations.rst +162 -0
  733. jaclang/vendor/mypyc/doc/introduction.rst +150 -0
  734. jaclang/vendor/mypyc/doc/list_operations.rst +65 -0
  735. jaclang/vendor/mypyc/doc/make.bat +35 -0
  736. jaclang/vendor/mypyc/doc/native_classes.rst +206 -0
  737. jaclang/vendor/mypyc/doc/native_operations.rst +55 -0
  738. jaclang/vendor/mypyc/doc/performance_tips_and_tricks.rst +244 -0
  739. jaclang/vendor/mypyc/doc/set_operations.rst +47 -0
  740. jaclang/vendor/mypyc/doc/str_operations.rst +35 -0
  741. jaclang/vendor/mypyc/doc/tuple_operations.rst +33 -0
  742. jaclang/vendor/mypyc/doc/using_type_annotations.rst +398 -0
  743. jaclang/vendor/mypyc/external/googletest/LICENSE +28 -0
  744. jaclang/vendor/mypyc/external/googletest/README.md +280 -0
  745. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-death-test.h +294 -0
  746. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-message.h +250 -0
  747. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h +1444 -0
  748. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h.pump +510 -0
  749. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-printers.h +993 -0
  750. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-spi.h +232 -0
  751. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-test-part.h +179 -0
  752. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-typed-test.h +263 -0
  753. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest.h +2236 -0
  754. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_pred_impl.h +358 -0
  755. jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_prod.h +58 -0
  756. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-port.h +69 -0
  757. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-printers.h +42 -0
  758. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest.h +41 -0
  759. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-death-test-internal.h +319 -0
  760. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-filepath.h +206 -0
  761. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-internal.h +1238 -0
  762. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-linked_ptr.h +243 -0
  763. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h +5146 -0
  764. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +286 -0
  765. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util.h +731 -0
  766. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port-arch.h +93 -0
  767. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port.h +2560 -0
  768. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-string.h +167 -0
  769. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h +1020 -0
  770. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h.pump +347 -0
  771. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h +3331 -0
  772. jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h.pump +297 -0
  773. jaclang/vendor/mypyc/external/googletest/make/Makefile +61 -0
  774. jaclang/vendor/mypyc/external/googletest/src/gtest-all.cc +48 -0
  775. jaclang/vendor/mypyc/external/googletest/src/gtest-death-test.cc +1342 -0
  776. jaclang/vendor/mypyc/external/googletest/src/gtest-filepath.cc +387 -0
  777. jaclang/vendor/mypyc/external/googletest/src/gtest-internal-inl.h +1183 -0
  778. jaclang/vendor/mypyc/external/googletest/src/gtest-port.cc +1259 -0
  779. jaclang/vendor/mypyc/external/googletest/src/gtest-printers.cc +373 -0
  780. jaclang/vendor/mypyc/external/googletest/src/gtest-test-part.cc +110 -0
  781. jaclang/vendor/mypyc/external/googletest/src/gtest-typed-test.cc +118 -0
  782. jaclang/vendor/mypyc/external/googletest/src/gtest.cc +5388 -0
  783. jaclang/vendor/mypyc/external/googletest/src/gtest_main.cc +38 -0
  784. jaclang/vendor/mypyc/lib-rt/CPy.h +643 -0
  785. jaclang/vendor/mypyc/lib-rt/bytes_ops.c +143 -0
  786. jaclang/vendor/mypyc/lib-rt/dict_ops.c +446 -0
  787. jaclang/vendor/mypyc/lib-rt/exc_ops.c +259 -0
  788. jaclang/vendor/mypyc/lib-rt/float_ops.c +192 -0
  789. jaclang/vendor/mypyc/lib-rt/generic_ops.c +64 -0
  790. jaclang/vendor/mypyc/lib-rt/getargs.c +450 -0
  791. jaclang/vendor/mypyc/lib-rt/getargsfast.c +569 -0
  792. jaclang/vendor/mypyc/lib-rt/init.c +13 -0
  793. jaclang/vendor/mypyc/lib-rt/int_ops.c +803 -0
  794. jaclang/vendor/mypyc/lib-rt/list_ops.c +335 -0
  795. jaclang/vendor/mypyc/lib-rt/misc_ops.c +942 -0
  796. jaclang/vendor/mypyc/lib-rt/module_shim.tmpl +18 -0
  797. jaclang/vendor/mypyc/lib-rt/mypyc_util.h +118 -0
  798. jaclang/vendor/mypyc/lib-rt/pythoncapi_compat.h +497 -0
  799. jaclang/vendor/mypyc/lib-rt/pythonsupport.h +548 -0
  800. jaclang/vendor/mypyc/lib-rt/set_ops.c +17 -0
  801. jaclang/vendor/mypyc/lib-rt/setup.py +76 -0
  802. jaclang/vendor/mypyc/lib-rt/str_ops.c +241 -0
  803. jaclang/vendor/mypyc/lib-rt/test_capi.cc +585 -0
  804. jaclang/vendor/mypyc/lib-rt/tuple_ops.c +61 -0
  805. jaclang/vendor/mypyc/test-data/alwaysdefined.test +732 -0
  806. jaclang/vendor/mypyc/test-data/analysis.test +603 -0
  807. jaclang/vendor/mypyc/test-data/commandline.test +245 -0
  808. jaclang/vendor/mypyc/test-data/driver/driver.py +50 -0
  809. jaclang/vendor/mypyc/test-data/exceptions-freq.test +125 -0
  810. jaclang/vendor/mypyc/test-data/exceptions.test +713 -0
  811. jaclang/vendor/mypyc/test-data/fixtures/ir.py +850 -0
  812. jaclang/vendor/mypyc/test-data/fixtures/testutil.py +117 -0
  813. jaclang/vendor/mypyc/test-data/fixtures/typing-full.pyi +212 -0
  814. jaclang/vendor/mypyc/test-data/irbuild-any.test +238 -0
  815. jaclang/vendor/mypyc/test-data/irbuild-basic.test +3690 -0
  816. jaclang/vendor/mypyc/test-data/irbuild-bool.test +463 -0
  817. jaclang/vendor/mypyc/test-data/irbuild-bytes.test +184 -0
  818. jaclang/vendor/mypyc/test-data/irbuild-classes.test +1303 -0
  819. jaclang/vendor/mypyc/test-data/irbuild-constant-fold.test +480 -0
  820. jaclang/vendor/mypyc/test-data/irbuild-dict.test +585 -0
  821. jaclang/vendor/mypyc/test-data/irbuild-dunders.test +223 -0
  822. jaclang/vendor/mypyc/test-data/irbuild-float.test +497 -0
  823. jaclang/vendor/mypyc/test-data/irbuild-generics.test +151 -0
  824. jaclang/vendor/mypyc/test-data/irbuild-glue-methods.test +437 -0
  825. jaclang/vendor/mypyc/test-data/irbuild-i16.test +526 -0
  826. jaclang/vendor/mypyc/test-data/irbuild-i32.test +598 -0
  827. jaclang/vendor/mypyc/test-data/irbuild-i64.test +2164 -0
  828. jaclang/vendor/mypyc/test-data/irbuild-int.test +235 -0
  829. jaclang/vendor/mypyc/test-data/irbuild-isinstance.test +109 -0
  830. jaclang/vendor/mypyc/test-data/irbuild-lists.test +547 -0
  831. jaclang/vendor/mypyc/test-data/irbuild-match.test +1708 -0
  832. jaclang/vendor/mypyc/test-data/irbuild-math.test +64 -0
  833. jaclang/vendor/mypyc/test-data/irbuild-nested.test +807 -0
  834. jaclang/vendor/mypyc/test-data/irbuild-optional.test +536 -0
  835. jaclang/vendor/mypyc/test-data/irbuild-set.test +838 -0
  836. jaclang/vendor/mypyc/test-data/irbuild-singledispatch.test +257 -0
  837. jaclang/vendor/mypyc/test-data/irbuild-statements.test +1149 -0
  838. jaclang/vendor/mypyc/test-data/irbuild-str.test +314 -0
  839. jaclang/vendor/mypyc/test-data/irbuild-strip-asserts.test +12 -0
  840. jaclang/vendor/mypyc/test-data/irbuild-try.test +523 -0
  841. jaclang/vendor/mypyc/test-data/irbuild-tuple.test +462 -0
  842. jaclang/vendor/mypyc/test-data/irbuild-u8.test +543 -0
  843. jaclang/vendor/mypyc/test-data/irbuild-unreachable.test +241 -0
  844. jaclang/vendor/mypyc/test-data/irbuild-vectorcall.test +153 -0
  845. jaclang/vendor/mypyc/test-data/refcount.test +1588 -0
  846. jaclang/vendor/mypyc/test-data/run-async.test +145 -0
  847. jaclang/vendor/mypyc/test-data/run-attrs.test +318 -0
  848. jaclang/vendor/mypyc/test-data/run-bench.test +196 -0
  849. jaclang/vendor/mypyc/test-data/run-bools.test +229 -0
  850. jaclang/vendor/mypyc/test-data/run-bytes.test +302 -0
  851. jaclang/vendor/mypyc/test-data/run-classes.test +2505 -0
  852. jaclang/vendor/mypyc/test-data/run-dicts.test +334 -0
  853. jaclang/vendor/mypyc/test-data/run-dunders.test +945 -0
  854. jaclang/vendor/mypyc/test-data/run-exceptions.test +448 -0
  855. jaclang/vendor/mypyc/test-data/run-floats.test +516 -0
  856. jaclang/vendor/mypyc/test-data/run-functions.test +1310 -0
  857. jaclang/vendor/mypyc/test-data/run-generators.test +681 -0
  858. jaclang/vendor/mypyc/test-data/run-i16.test +338 -0
  859. jaclang/vendor/mypyc/test-data/run-i32.test +336 -0
  860. jaclang/vendor/mypyc/test-data/run-i64.test +1519 -0
  861. jaclang/vendor/mypyc/test-data/run-imports.test +265 -0
  862. jaclang/vendor/mypyc/test-data/run-integers.test +540 -0
  863. jaclang/vendor/mypyc/test-data/run-lists.test +411 -0
  864. jaclang/vendor/mypyc/test-data/run-loops.test +485 -0
  865. jaclang/vendor/mypyc/test-data/run-match.test +283 -0
  866. jaclang/vendor/mypyc/test-data/run-math.test +106 -0
  867. jaclang/vendor/mypyc/test-data/run-misc.test +1168 -0
  868. jaclang/vendor/mypyc/test-data/run-multimodule.test +887 -0
  869. jaclang/vendor/mypyc/test-data/run-mypy-sim.test +138 -0
  870. jaclang/vendor/mypyc/test-data/run-primitives.test +375 -0
  871. jaclang/vendor/mypyc/test-data/run-python37.test +159 -0
  872. jaclang/vendor/mypyc/test-data/run-python38.test +88 -0
  873. jaclang/vendor/mypyc/test-data/run-sets.test +150 -0
  874. jaclang/vendor/mypyc/test-data/run-singledispatch.test +698 -0
  875. jaclang/vendor/mypyc/test-data/run-strings.test +641 -0
  876. jaclang/vendor/mypyc/test-data/run-traits.test +411 -0
  877. jaclang/vendor/mypyc/test-data/run-tuples.test +258 -0
  878. jaclang/vendor/mypyc/test-data/run-u8.test +303 -0
  879. jaclang/vendor/pluggy/LICENSE +21 -0
  880. jaclang-0.6.2.dist-info/METADATA +110 -0
  881. jaclang-0.6.2.dist-info/RECORD +1305 -0
  882. {jaclang-0.6.1.dist-info → jaclang-0.6.2.dist-info}/WHEEL +1 -2
  883. jaclang-0.6.2.dist-info/entry_points.txt +3 -0
  884. jaclang/compiler/generated/jac_parser.py +0 -4069
  885. jaclang-0.6.1.dist-info/METADATA +0 -17
  886. jaclang-0.6.1.dist-info/RECORD +0 -430
  887. jaclang-0.6.1.dist-info/entry_points.txt +0 -2
  888. jaclang-0.6.1.dist-info/top_level.txt +0 -1
  889. /jaclang/{compiler/generated/__init__.py → vendor/mypy/typeshed/stdlib/concurrent/__init__.pyi} +0 -0
@@ -0,0 +1,398 @@
1
+ .. _using-type-annotations:
2
+
3
+ Using type annotations
4
+ ======================
5
+
6
+ You will get the most out of mypyc if you compile code with precise
7
+ type annotations. Not all type annotations will help performance
8
+ equally, however. Using types such as :ref:`primitive types
9
+ <primitive-types>`, :ref:`native classes <native-class-intro>`,
10
+ :ref:`union types <union-types>`, :ref:`trait types <trait-types>`,
11
+ and :ref:`tuple types <tuple-types>` as much as possible is a key to
12
+ major performance gains over CPython.
13
+
14
+ In contrast, some other types, including ``Any``, are treated as
15
+ :ref:`erased types <erased-types>`. Operations on erased types use
16
+ generic operations that work with arbitrary objects, similar to how
17
+ the CPython interpreter works. If you only use erased types, the only
18
+ notable benefits over CPython will be the removal of interpreter
19
+ overhead (from compilation) and a bit of :ref:`early binding
20
+ <early-binding>`, which will usually only give minor performance
21
+ gains.
22
+
23
+ .. _primitive-types:
24
+
25
+ Primitive types
26
+ ---------------
27
+
28
+ The following built-in types are treated as *primitive types* by
29
+ mypyc, and many operations on these types have efficient
30
+ implementations:
31
+
32
+ * ``int`` (:ref:`native operations <int-ops>`)
33
+ * ``i64`` (:ref:`documentation <native-ints>`, :ref:`native operations <int-ops>`)
34
+ * ``i32`` (:ref:`documentation <native-ints>`, :ref:`native operations <int-ops>`)
35
+ * ``i16`` (:ref:`documentation <native-ints>`, :ref:`native operations <int-ops>`)
36
+ * ``u8`` (:ref:`documentation <native-ints>`, :ref:`native operations <int-ops>`)
37
+ * ``float`` (:ref:`native operations <float-ops>`)
38
+ * ``bool`` (:ref:`native operations <bool-ops>`)
39
+ * ``str`` (:ref:`native operations <str-ops>`)
40
+ * ``List[T]`` (:ref:`native operations <list-ops>`)
41
+ * ``Dict[K, V]`` (:ref:`native operations <dict-ops>`)
42
+ * ``Set[T]`` (:ref:`native operations <set-ops>`)
43
+ * ``Tuple[T, ...]`` (variable-length tuple; :ref:`native operations <tuple-ops>`)
44
+ * ``None``
45
+
46
+ The link after each type lists all supported native, optimized
47
+ operations for the type. You can use all operations supported by
48
+ Python, but *native operations* will have custom, optimized
49
+ implementations.
50
+
51
+ Primitive containers
52
+ --------------------
53
+
54
+ Primitive container objects such as ``list`` and ``dict`` don't
55
+ maintain knowledge of the item types at runtime -- the item type is
56
+ *erased*.
57
+
58
+ This means that item types are checked when items are accessed, not
59
+ when a container is passed as an argument or assigned to another
60
+ variable. For example, here we have a runtime type error on the final
61
+ line of ``example`` (the ``Any`` type means an arbitrary, unchecked
62
+ value)::
63
+
64
+ from typing import List, Any
65
+
66
+ def example(a: List[Any]) -> None:
67
+ b: List[int] = a # No error -- items are not checked
68
+ print(b[0]) # Error here -- got str, but expected int
69
+
70
+ example(["x"])
71
+
72
+ .. _native-class-intro:
73
+
74
+ Native classes
75
+ --------------
76
+
77
+ Classes that get compiled to C extensions are called native
78
+ classes. Most common operations on instances of these classes are
79
+ optimized, including construction, attribute access and method calls.
80
+
81
+ Native class definitions look exactly like normal Python class
82
+ definitions. A class is usually native if it's in a compiled module
83
+ (though there are some exceptions).
84
+
85
+ Consider this example:
86
+
87
+ .. code-block::
88
+
89
+ class Point:
90
+ def __init__(self, x: int, y: int) -> None:
91
+ self.x = x
92
+ self.y = y
93
+
94
+ def shift(p: Point) -> Point:
95
+ return Point(p.x + 1, p.y + 1)
96
+
97
+ All operations in the above example use native operations, if the file
98
+ is compiled.
99
+
100
+ Native classes have some notable different from Python classes:
101
+
102
+ * Only attributes and methods defined in the class body or methods are
103
+ supported. If you try to assign to an undefined attribute outside
104
+ the class definition, ``AttributeError`` will be raised. This enables
105
+ an efficient memory layout and fast method calls for native classes.
106
+
107
+ * Native classes usually don't define the ``__dict__`` attribute (they
108
+ don't have an attribute dictionary). This follows from only having
109
+ a specific set of attributes.
110
+
111
+ * Native classes can't have an arbitrary metaclass or use most class
112
+ decorators.
113
+
114
+ Native classes only support single inheritance. A limited form of
115
+ multiple inheritance is supported through *trait types*. You generally
116
+ must inherit from another native class (or ``object``). By default,
117
+ you can't inherit a Python class from a native class (but there's
118
+ an :ref:`override <inheritance>` to allow that).
119
+
120
+ See :ref:`native-classes` for more details.
121
+
122
+ .. _tuple-types:
123
+
124
+ Tuple types
125
+ -----------
126
+
127
+ Fixed-length
128
+ `tuple types <https://mypy.readthedocs.io/en/stable/kinds_of_types.html#tuple-types>`_
129
+ such as ``Tuple[int, str]`` are represented
130
+ as :ref:`value types <value-and-heap-types>` when stored in variables,
131
+ passed as arguments, or returned from functions. Value types are
132
+ allocated in the low-level machine stack or in CPU registers, as
133
+ opposed to *heap types*, which are allocated dynamically from the
134
+ heap.
135
+
136
+ Like all value types, tuples will be *boxed*, i.e. converted to
137
+ corresponding heap types, when stored in Python containers, or passed
138
+ to non-native code. A boxed tuple value will be a regular Python tuple
139
+ object.
140
+
141
+ .. _union-types:
142
+
143
+ Union types
144
+ -----------
145
+
146
+ `Union types <https://mypy.readthedocs.io/en/stable/kinds_of_types.html#union-types>`_
147
+ and
148
+ `optional types <https://mypy.readthedocs.io/en/stable/kinds_of_types.html#optional-types-and-the-none-type>`_
149
+ that contain primitive types, native class types and
150
+ trait types are also efficient. If a union type has
151
+ :ref:`erased <erased-types>` items, accessing items with
152
+ non-erased types is often still quite efficient.
153
+
154
+ A value with a union types is always :ref:`boxed <value-and-heap-types>`,
155
+ even if it contains a value that also has an unboxed representation, such
156
+ as an integer or a boolean.
157
+
158
+ For example, using ``Optional[int]`` is quite efficient, but the value
159
+ will always be boxed. A plain ``int`` value will usually be faster, since
160
+ it has an unboxed representation.
161
+
162
+ .. _trait-types:
163
+
164
+ Trait types
165
+ -----------
166
+
167
+ Trait types enable a form of multiple inheritance for native classes.
168
+ A native class can inherit any number of traits. Trait types are
169
+ defined as classes using the ``mypy_extensions.trait`` decorator::
170
+
171
+ from mypy_extensions import trait
172
+
173
+ @trait
174
+ class MyTrait:
175
+ def method(self) -> None:
176
+ ...
177
+
178
+ Traits can define methods, properties and attributes. They often
179
+ define abstract methods. Traits can be generic.
180
+
181
+ If a class subclasses both a non-trait class and traits, the traits
182
+ must be placed at the end of the base class list::
183
+
184
+ class Base: ...
185
+
186
+ class Derived(Base, MyTrait, FooTrait): # OK
187
+ ...
188
+
189
+ class Derived2(MyTrait, FooTrait, Base):
190
+ # Error: traits should come last
191
+ ...
192
+
193
+ Traits have some special properties:
194
+
195
+ * You shouldn't create instances of traits (though mypyc does not
196
+ prevent it yet).
197
+
198
+ * Traits can subclass other traits or native classes, but the MRO must be
199
+ linear (just like with native classes).
200
+
201
+ * Accessing methods or attributes through a trait type is somewhat
202
+ less efficient than through a native class type, but this is much
203
+ faster than through Python class types or other
204
+ :ref:`erased types <erased-types>`.
205
+
206
+ You need to install ``mypy-extensions`` to use ``@trait``:
207
+
208
+ .. code-block:: text
209
+
210
+ pip install --upgrade mypy-extensions
211
+
212
+ .. _erased-types:
213
+
214
+ Erased types
215
+ ------------
216
+
217
+ Mypyc supports many other kinds of types as well, beyond those
218
+ described above. However, these types don't have customized
219
+ operations, and they are implemented using *type erasure*. Type
220
+ erasure means that all other types are equivalent to untyped values at
221
+ runtime, i.e. they are the equivalent of the type ``Any``. Erased
222
+ types include these:
223
+
224
+ * Python classes (including ABCs)
225
+
226
+ * Non-mypyc extension types and primitive types (including built-in
227
+ types that are not primitives)
228
+
229
+ * `Callable types <https://mypy.readthedocs.io/en/stable/kinds_of_types.html#callable-types-and-lambdas>`_
230
+
231
+ * `Type variable types <https://mypy.readthedocs.io/en/stable/generics.html>`_
232
+
233
+ * Type `Any <https://mypy.readthedocs.io/en/stable/dynamic_typing.html>`_
234
+
235
+ * Protocol types
236
+
237
+ Using erased types can still improve performance, since they can
238
+ enable better types to be inferred for expressions that use these
239
+ types. For example, a value with type ``Callable[[], int]`` will not
240
+ allow native calls. However, the return type is a primitive type, and
241
+ we can use fast operations on the return value::
242
+
243
+ from typing import Callable
244
+
245
+ def call_and_inc(f: Callable[[], int]) -> int:
246
+ # Slow call, since f has an erased type
247
+ n = f()
248
+ # Fast increment; inferred type of n is int (primitive type)
249
+ n += 1
250
+ return n
251
+
252
+ If the type of the argument ``f`` was ``Any``, the type of ``n`` would
253
+ also be ``Any``, resulting in a generic, slower increment operation
254
+ being used.
255
+
256
+ Strict runtime type checking
257
+ ----------------------------
258
+
259
+ Compiled code ensures that any variable or expression with a
260
+ non-erased type only has compatible values at runtime. This is in
261
+ contrast with using *optional static typing*, such as by using mypy,
262
+ when type annotations are not enforced at runtime. Mypyc ensures
263
+ type safety both statically and at runtime.
264
+
265
+ ``Any`` types and erased types in general can compromise type safety,
266
+ and this is by design. Inserting strict runtime type checks for all
267
+ possible values would be too expensive and against the goal of
268
+ high performance.
269
+
270
+ .. _value-and-heap-types:
271
+
272
+ Value and heap types
273
+ --------------------
274
+
275
+ In CPython, memory for all objects is dynamically allocated on the
276
+ heap. All Python types are thus *heap types*. In compiled code, some
277
+ types are *value types* -- no object is (necessarily) allocated on the
278
+ heap. ``bool``, ``float``, ``None``, :ref:`native integer types <native-ints>`
279
+ and fixed-length tuples are value types.
280
+
281
+ ``int`` is a hybrid. For typical integer values, it is a value
282
+ type. Large enough integer values, those that require more than 63
283
+ bits (or 31 bits on 32-bit platforms) to represent, use a heap-based
284
+ representation (same as CPython).
285
+
286
+ Value types have a few differences from heap types:
287
+
288
+ * When an instance of a value type is used in a context that expects a
289
+ heap value, for example as a list item, it will transparently switch
290
+ to a heap-based representation (boxing) as needed.
291
+
292
+ * Similarly, mypyc transparently changes from a heap-based
293
+ representation to a value representation (unboxing).
294
+
295
+ * Object identity of integers, floating point values and tuples is not
296
+ preserved. You should use ``==`` instead of ``is`` if you are comparing
297
+ two integers, floats or fixed-length tuples.
298
+
299
+ * When an instance of a subclass of a value type is converted to the
300
+ base type, it is implicitly converted to an instance of the target
301
+ type. For example, a ``bool`` value assigned to a variable with an
302
+ ``int`` type will be converted to the corresponding integer.
303
+
304
+ The latter conversion is the only implicit type conversion that
305
+ happens in mypyc programs.
306
+
307
+ Example::
308
+
309
+ def example() -> None:
310
+ # A small integer uses the value (unboxed) representation
311
+ x = 5
312
+ # A large integer uses the heap (boxed) representation
313
+ x = 2**500
314
+ # Lists always contain boxed integers
315
+ a = [55]
316
+ # When reading from a list, the object is automatically unboxed
317
+ x = a[0]
318
+ # True is converted to 1 on assignment
319
+ x = True
320
+
321
+ Since integers and floating point values have a different runtime
322
+ representations and neither can represent all the values of the other
323
+ type, type narrowing of floating point values through assignment is
324
+ disallowed in compiled code. For consistency, mypyc rejects assigning
325
+ an integer value to a float variable even in variable initialization.
326
+ An explicit conversion is required.
327
+
328
+ Examples::
329
+
330
+ def narrowing(n: int) -> None:
331
+ # Error: Incompatible value representations in assignment
332
+ # (expression has type "int", variable has type "float")
333
+ x: float = 0
334
+
335
+ y: float = 0.0 # Ok
336
+
337
+ if f():
338
+ y = n # Error
339
+ if f():
340
+ y = float(n) # Ok
341
+
342
+ .. _native-ints:
343
+
344
+ Native integer types
345
+ --------------------
346
+
347
+ You can use the native integer types ``i64`` (64-bit signed integer),
348
+ ``i32`` (32-bit signed integer), ``i16`` (16-bit signed integer), and
349
+ ``u8`` (8-bit unsigned integer) if you know that integer values will
350
+ always fit within fixed bounds. These types are faster than the
351
+ arbitrary-precision ``int`` type, since they don't require overflow
352
+ checks on operations. They may also use less memory than ``int``
353
+ values. The types are imported from the ``mypy_extensions`` module
354
+ (installed via ``pip install mypy_extensions``).
355
+
356
+ Example::
357
+
358
+ from mypy_extensions import i64
359
+
360
+ def sum_list(l: list[i64]) -> i64:
361
+ s: i64 = 0
362
+ for n in l:
363
+ s += n
364
+ return s
365
+
366
+ # Implicit conversions from int to i64
367
+ print(sum_list([1, 3, 5]))
368
+
369
+ .. note::
370
+
371
+ Since there are no overflow checks when performing native integer
372
+ arithmetic, the above function could result in an overflow or other
373
+ undefined behavior if the sum might not fit within 64 bits.
374
+
375
+ The behavior when running as interpreted Python program will be
376
+ different if there are overflows. Declaring native integer types
377
+ have no effect unless code is compiled. Native integer types are
378
+ effectively equivalent to ``int`` when interpreted.
379
+
380
+ Native integer types have these additional properties:
381
+
382
+ * Values can be implicitly converted between ``int`` and a native
383
+ integer type (both ways).
384
+
385
+ * Conversions between different native integer types must be explicit.
386
+ A conversion to a narrower native integer type truncates the value
387
+ without a runtime overflow check.
388
+
389
+ * If a binary operation (such as ``+``) or an augmented assignment
390
+ (such as ``+=``) mixes native integer and ``int`` values, the
391
+ ``int`` operand is implicitly coerced to the native integer type
392
+ (native integer types are "sticky").
393
+
394
+ * You can't mix different native integer types in binary
395
+ operations. Instead, convert between types explicitly.
396
+
397
+ For more information about native integer types, refer to
398
+ :ref:`native integer operations <int-ops>`.
@@ -0,0 +1,28 @@
1
+ Copyright 2008, Google Inc.
2
+ All rights reserved.
3
+
4
+ Redistribution and use in source and binary forms, with or without
5
+ modification, are permitted provided that the following conditions are
6
+ met:
7
+
8
+ * Redistributions of source code must retain the above copyright
9
+ notice, this list of conditions and the following disclaimer.
10
+ * Redistributions in binary form must reproduce the above
11
+ copyright notice, this list of conditions and the following disclaimer
12
+ in the documentation and/or other materials provided with the
13
+ distribution.
14
+ * Neither the name of Google Inc. nor the names of its
15
+ contributors may be used to endorse or promote products derived from
16
+ this software without specific prior written permission.
17
+
18
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,280 @@
1
+
2
+ ### Generic Build Instructions ###
3
+
4
+ #### Setup ####
5
+
6
+ To build Google Test and your tests that use it, you need to tell your
7
+ build system where to find its headers and source files. The exact
8
+ way to do it depends on which build system you use, and is usually
9
+ straightforward.
10
+
11
+ #### Build ####
12
+
13
+ Suppose you put Google Test in directory `${GTEST_DIR}`. To build it,
14
+ create a library build target (or a project as called by Visual Studio
15
+ and Xcode) to compile
16
+
17
+ ${GTEST_DIR}/src/gtest-all.cc
18
+
19
+ with `${GTEST_DIR}/include` in the system header search path and `${GTEST_DIR}`
20
+ in the normal header search path. Assuming a Linux-like system and gcc,
21
+ something like the following will do:
22
+
23
+ g++ -isystem ${GTEST_DIR}/include -I${GTEST_DIR} \
24
+ -pthread -c ${GTEST_DIR}/src/gtest-all.cc
25
+ ar -rv libgtest.a gtest-all.o
26
+
27
+ (We need `-pthread` as Google Test uses threads.)
28
+
29
+ Next, you should compile your test source file with
30
+ `${GTEST_DIR}/include` in the system header search path, and link it
31
+ with gtest and any other necessary libraries:
32
+
33
+ g++ -isystem ${GTEST_DIR}/include -pthread path/to/your_test.cc libgtest.a \
34
+ -o your_test
35
+
36
+ As an example, the make/ directory contains a Makefile that you can
37
+ use to build Google Test on systems where GNU make is available
38
+ (e.g. Linux, Mac OS X, and Cygwin). It doesn't try to build Google
39
+ Test's own tests. Instead, it just builds the Google Test library and
40
+ a sample test. You can use it as a starting point for your own build
41
+ script.
42
+
43
+ If the default settings are correct for your environment, the
44
+ following commands should succeed:
45
+
46
+ cd ${GTEST_DIR}/make
47
+ make
48
+ ./sample1_unittest
49
+
50
+ If you see errors, try to tweak the contents of `make/Makefile` to make
51
+ them go away. There are instructions in `make/Makefile` on how to do
52
+ it.
53
+
54
+ ### Using CMake ###
55
+
56
+ Google Test comes with a CMake build script (
57
+ [CMakeLists.txt](CMakeLists.txt)) that can be used on a wide range of platforms ("C" stands for
58
+ cross-platform.). If you don't have CMake installed already, you can
59
+ download it for free from <http://www.cmake.org/>.
60
+
61
+ CMake works by generating native makefiles or build projects that can
62
+ be used in the compiler environment of your choice. The typical
63
+ workflow starts with:
64
+
65
+ mkdir mybuild # Create a directory to hold the build output.
66
+ cd mybuild
67
+ cmake ${GTEST_DIR} # Generate native build scripts.
68
+
69
+ If you want to build Google Test's samples, you should replace the
70
+ last command with
71
+
72
+ cmake -Dgtest_build_samples=ON ${GTEST_DIR}
73
+
74
+ If you are on a \*nix system, you should now see a Makefile in the
75
+ current directory. Just type 'make' to build gtest.
76
+
77
+ If you use Windows and have Visual Studio installed, a `gtest.sln` file
78
+ and several `.vcproj` files will be created. You can then build them
79
+ using Visual Studio.
80
+
81
+ On Mac OS X with Xcode installed, a `.xcodeproj` file will be generated.
82
+
83
+ ### Legacy Build Scripts ###
84
+
85
+ Before settling on CMake, we have been providing hand-maintained build
86
+ projects/scripts for Visual Studio, Xcode, and Autotools. While we
87
+ continue to provide them for convenience, they are not actively
88
+ maintained any more. We highly recommend that you follow the
89
+ instructions in the previous two sections to integrate Google Test
90
+ with your existing build system.
91
+
92
+ If you still need to use the legacy build scripts, here's how:
93
+
94
+ The msvc\ folder contains two solutions with Visual C++ projects.
95
+ Open the `gtest.sln` or `gtest-md.sln` file using Visual Studio, and you
96
+ are ready to build Google Test the same way you build any Visual
97
+ Studio project. Files that have names ending with -md use DLL
98
+ versions of Microsoft runtime libraries (the /MD or the /MDd compiler
99
+ option). Files without that suffix use static versions of the runtime
100
+ libraries (the /MT or the /MTd option). Please note that one must use
101
+ the same option to compile both gtest and the test code. If you use
102
+ Visual Studio 2005 or above, we recommend the -md version as /MD is
103
+ the default for new projects in these versions of Visual Studio.
104
+
105
+ On Mac OS X, open the `gtest.xcodeproj` in the `xcode/` folder using
106
+ Xcode. Build the "gtest" target. The universal binary framework will
107
+ end up in your selected build directory (selected in the Xcode
108
+ "Preferences..." -> "Building" pane and defaults to xcode/build).
109
+ Alternatively, at the command line, enter:
110
+
111
+ xcodebuild
112
+
113
+ This will build the "Release" configuration of gtest.framework in your
114
+ default build location. See the "xcodebuild" man page for more
115
+ information about building different configurations and building in
116
+ different locations.
117
+
118
+ If you wish to use the Google Test Xcode project with Xcode 4.x and
119
+ above, you need to either:
120
+
121
+ * update the SDK configuration options in xcode/Config/General.xconfig.
122
+ Comment options `SDKROOT`, `MACOS_DEPLOYMENT_TARGET`, and `GCC_VERSION`. If
123
+ you choose this route you lose the ability to target earlier versions
124
+ of MacOS X.
125
+ * Install an SDK for an earlier version. This doesn't appear to be
126
+ supported by Apple, but has been reported to work
127
+ (http://stackoverflow.com/questions/5378518).
128
+
129
+ ### Tweaking Google Test ###
130
+
131
+ Google Test can be used in diverse environments. The default
132
+ configuration may not work (or may not work well) out of the box in
133
+ some environments. However, you can easily tweak Google Test by
134
+ defining control macros on the compiler command line. Generally,
135
+ these macros are named like `GTEST_XYZ` and you define them to either 1
136
+ or 0 to enable or disable a certain feature.
137
+
138
+ We list the most frequently used macros below. For a complete list,
139
+ see file [include/gtest/internal/gtest-port.h](include/gtest/internal/gtest-port.h).
140
+
141
+ ### Choosing a TR1 Tuple Library ###
142
+
143
+ Some Google Test features require the C++ Technical Report 1 (TR1)
144
+ tuple library, which is not yet available with all compilers. The
145
+ good news is that Google Test implements a subset of TR1 tuple that's
146
+ enough for its own need, and will automatically use this when the
147
+ compiler doesn't provide TR1 tuple.
148
+
149
+ Usually you don't need to care about which tuple library Google Test
150
+ uses. However, if your project already uses TR1 tuple, you need to
151
+ tell Google Test to use the same TR1 tuple library the rest of your
152
+ project uses, or the two tuple implementations will clash. To do
153
+ that, add
154
+
155
+ -DGTEST_USE_OWN_TR1_TUPLE=0
156
+
157
+ to the compiler flags while compiling Google Test and your tests. If
158
+ you want to force Google Test to use its own tuple library, just add
159
+
160
+ -DGTEST_USE_OWN_TR1_TUPLE=1
161
+
162
+ to the compiler flags instead.
163
+
164
+ If you don't want Google Test to use tuple at all, add
165
+
166
+ -DGTEST_HAS_TR1_TUPLE=0
167
+
168
+ and all features using tuple will be disabled.
169
+
170
+ ### Multi-threaded Tests ###
171
+
172
+ Google Test is thread-safe where the pthread library is available.
173
+ After `#include "gtest/gtest.h"`, you can check the `GTEST_IS_THREADSAFE`
174
+ macro to see whether this is the case (yes if the macro is `#defined` to
175
+ 1, no if it's undefined.).
176
+
177
+ If Google Test doesn't correctly detect whether pthread is available
178
+ in your environment, you can force it with
179
+
180
+ -DGTEST_HAS_PTHREAD=1
181
+
182
+ or
183
+
184
+ -DGTEST_HAS_PTHREAD=0
185
+
186
+ When Google Test uses pthread, you may need to add flags to your
187
+ compiler and/or linker to select the pthread library, or you'll get
188
+ link errors. If you use the CMake script or the deprecated Autotools
189
+ script, this is taken care of for you. If you use your own build
190
+ script, you'll need to read your compiler and linker's manual to
191
+ figure out what flags to add.
192
+
193
+ ### As a Shared Library (DLL) ###
194
+
195
+ Google Test is compact, so most users can build and link it as a
196
+ static library for the simplicity. You can choose to use Google Test
197
+ as a shared library (known as a DLL on Windows) if you prefer.
198
+
199
+ To compile *gtest* as a shared library, add
200
+
201
+ -DGTEST_CREATE_SHARED_LIBRARY=1
202
+
203
+ to the compiler flags. You'll also need to tell the linker to produce
204
+ a shared library instead - consult your linker's manual for how to do
205
+ it.
206
+
207
+ To compile your *tests* that use the gtest shared library, add
208
+
209
+ -DGTEST_LINKED_AS_SHARED_LIBRARY=1
210
+
211
+ to the compiler flags.
212
+
213
+ Note: while the above steps aren't technically necessary today when
214
+ using some compilers (e.g. GCC), they may become necessary in the
215
+ future, if we decide to improve the speed of loading the library (see
216
+ <http://gcc.gnu.org/wiki/Visibility> for details). Therefore you are
217
+ recommended to always add the above flags when using Google Test as a
218
+ shared library. Otherwise a future release of Google Test may break
219
+ your build script.
220
+
221
+ ### Avoiding Macro Name Clashes ###
222
+
223
+ In C++, macros don't obey namespaces. Therefore two libraries that
224
+ both define a macro of the same name will clash if you `#include` both
225
+ definitions. In case a Google Test macro clashes with another
226
+ library, you can force Google Test to rename its macro to avoid the
227
+ conflict.
228
+
229
+ Specifically, if both Google Test and some other code define macro
230
+ FOO, you can add
231
+
232
+ -DGTEST_DONT_DEFINE_FOO=1
233
+
234
+ to the compiler flags to tell Google Test to change the macro's name
235
+ from `FOO` to `GTEST_FOO`. Currently `FOO` can be `FAIL`, `SUCCEED`,
236
+ or `TEST`. For example, with `-DGTEST_DONT_DEFINE_TEST=1`, you'll
237
+ need to write
238
+
239
+ GTEST_TEST(SomeTest, DoesThis) { ... }
240
+
241
+ instead of
242
+
243
+ TEST(SomeTest, DoesThis) { ... }
244
+
245
+ in order to define a test.
246
+
247
+ ## Developing Google Test ##
248
+
249
+ This section discusses how to make your own changes to Google Test.
250
+
251
+ ### Testing Google Test Itself ###
252
+
253
+ To make sure your changes work as intended and don't break existing
254
+ functionality, you'll want to compile and run Google Test's own tests.
255
+ For that you can use CMake:
256
+
257
+ mkdir mybuild
258
+ cd mybuild
259
+ cmake -Dgtest_build_tests=ON ${GTEST_DIR}
260
+
261
+ Make sure you have Python installed, as some of Google Test's tests
262
+ are written in Python. If the cmake command complains about not being
263
+ able to find Python (`Could NOT find PythonInterp (missing:
264
+ PYTHON_EXECUTABLE)`), try telling it explicitly where your Python
265
+ executable can be found:
266
+
267
+ cmake -DPYTHON_EXECUTABLE=path/to/python -Dgtest_build_tests=ON ${GTEST_DIR}
268
+
269
+ Next, you can build Google Test and all of its own tests. On \*nix,
270
+ this is usually done by 'make'. To run the tests, do
271
+
272
+ make test
273
+
274
+ All tests should pass.
275
+
276
+ Normally you don't need to worry about regenerating the source files,
277
+ unless you need to modify them. In that case, you should modify the
278
+ corresponding .pump files instead and run the pump.py Python script to
279
+ regenerate them. You can find pump.py in the [scripts/](scripts/) directory.
280
+ Read the [Pump manual](docs/PumpManual.md) for how to use it.