jaclang 0.7.34__py3-none-any.whl → 0.8.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of jaclang might be problematic. Click here for more details.
- jaclang/__init__.py +7 -414
- jaclang/cli/cli.md +5 -5
- jaclang/cli/cli.py +316 -217
- jaclang/cli/cmdreg.py +188 -31
- jaclang/compiler/__init__.py +10 -15
- jaclang/compiler/{codeloc.py → codeinfo.py} +11 -30
- jaclang/compiler/constant.py +10 -33
- jaclang/compiler/jac.lark +65 -106
- jaclang/compiler/larkparse/jac_parser.py +3444 -0
- jaclang/compiler/parser.py +1137 -1517
- jaclang/compiler/passes/__init__.py +2 -2
- jaclang/compiler/passes/main/__init__.py +33 -14
- jaclang/compiler/passes/main/annex_pass.py +85 -0
- jaclang/compiler/passes/main/cfg_build_pass.py +275 -0
- jaclang/compiler/passes/main/def_impl_match_pass.py +159 -114
- jaclang/compiler/passes/main/def_use_pass.py +66 -274
- jaclang/compiler/passes/main/import_pass.py +178 -363
- jaclang/compiler/passes/main/inheritance_pass.py +109 -107
- jaclang/compiler/passes/main/pyast_gen_pass.py +1242 -1735
- jaclang/compiler/passes/main/pyast_load_pass.py +579 -819
- jaclang/compiler/passes/main/pybc_gen_pass.py +38 -35
- jaclang/compiler/passes/main/pyjac_ast_link_pass.py +50 -163
- jaclang/compiler/passes/main/sym_tab_build_pass.py +114 -1203
- jaclang/compiler/passes/main/sym_tab_link_pass.py +141 -0
- jaclang/{tests → compiler/passes/main/tests}/fixtures/access_modifier.jac +10 -9
- jaclang/compiler/passes/main/tests/fixtures/atest.impl.jac +3 -0
- jaclang/compiler/passes/main/tests/fixtures/atest.jac +11 -0
- jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl/getme.impl.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/autoimpl.jac +3 -3
- jaclang/compiler/passes/main/tests/fixtures/autoimpl.something.else.impl.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/base.impl.jac +8 -0
- jaclang/compiler/passes/main/tests/fixtures/base.jac +4 -4
- jaclang/compiler/passes/main/tests/fixtures/base2.impl.jac +8 -0
- jaclang/compiler/passes/main/tests/fixtures/base2.jac +4 -4
- jaclang/compiler/passes/main/tests/fixtures/blip.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/cfg_ability_test.jac +23 -0
- jaclang/compiler/passes/main/tests/fixtures/cfg_gen.jac +19 -0
- jaclang/compiler/passes/main/tests/fixtures/circular_import.jac +7 -0
- jaclang/compiler/passes/main/tests/fixtures/data_spatial_types.jac +12 -12
- jaclang/compiler/passes/main/tests/fixtures/decls.jac +4 -4
- jaclang/compiler/passes/main/tests/fixtures/defn_decl_mismatch.jac +4 -4
- jaclang/compiler/passes/main/tests/fixtures/defs_and_uses.jac +6 -6
- jaclang/compiler/passes/main/tests/fixtures/enumerations.jac +13 -0
- jaclang/compiler/passes/main/tests/fixtures/fstrings.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/func.jac +2 -2
- jaclang/compiler/passes/main/tests/fixtures/func2.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/game1.jac +4 -4
- jaclang/compiler/passes/main/tests/fixtures/impl/defs1.jac +2 -2
- jaclang/compiler/passes/main/tests/fixtures/impl/defs2.jac +2 -2
- jaclang/compiler/passes/main/tests/fixtures/impl/imps.jac +0 -8
- jaclang/compiler/passes/main/tests/fixtures/impl_grab.impl.jac +5 -0
- jaclang/{tests → compiler/passes/main/tests}/fixtures/impl_grab.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/incautoimpl.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/main_err.impl.jac +6 -0
- jaclang/compiler/passes/main/tests/fixtures/main_err.jac +6 -0
- jaclang/compiler/passes/main/tests/fixtures/mod_type_assign.jac +1 -1
- jaclang/compiler/passes/main/tests/fixtures/mtest.impl.jac +6 -0
- jaclang/{tests → compiler/passes/main/tests}/fixtures/mtest.jac +1 -1
- jaclang/{tests → compiler/passes/main/tests}/fixtures/nested_impls.jac +14 -15
- jaclang/compiler/passes/main/tests/fixtures/py_imp_test.jac +7 -7
- jaclang/compiler/passes/main/tests/fixtures/second_err.jac +4 -0
- jaclang/compiler/passes/main/tests/fixtures/str2doc.py +3 -0
- jaclang/compiler/passes/main/tests/fixtures/symtab_link_tests/action/__init__.py +5 -0
- jaclang/compiler/passes/main/tests/fixtures/symtab_link_tests/action/actions.jac +19 -0
- jaclang/compiler/passes/main/tests/fixtures/symtab_link_tests/main.jac +7 -0
- jaclang/compiler/passes/main/tests/fixtures/symtab_link_tests/no_dupls.jac +35 -0
- jaclang/compiler/passes/main/tests/fixtures/symtab_link_tests/one.jac +8 -0
- jaclang/compiler/passes/main/tests/fixtures/type_info.jac +4 -4
- jaclang/compiler/passes/main/tests/test_cfg_build_pass.py +101 -0
- jaclang/compiler/passes/main/tests/test_decl_impl_match_pass.py +157 -0
- jaclang/compiler/passes/main/tests/test_def_use_pass.py +4 -6
- jaclang/compiler/passes/main/tests/test_import_pass.py +59 -46
- jaclang/compiler/passes/main/tests/test_pyast_build_pass.py +15 -0
- jaclang/compiler/passes/main/tests/test_pyast_gen_pass.py +25 -34
- jaclang/compiler/passes/main/tests/test_pybc_gen_pass.py +3 -3
- jaclang/compiler/passes/main/tests/test_sub_node_pass.py +8 -7
- jaclang/compiler/passes/main/tests/test_sym_tab_build_pass.py +4 -4
- jaclang/compiler/passes/main/tests/test_sym_tab_link_pass.py +62 -0
- jaclang/compiler/passes/tool/__init__.py +2 -0
- jaclang/compiler/passes/tool/doc_ir.py +179 -0
- jaclang/compiler/passes/tool/doc_ir_gen_pass.py +1287 -0
- jaclang/compiler/passes/tool/fuse_comments_pass.py +90 -70
- jaclang/compiler/passes/tool/jac_formatter_pass.py +122 -2554
- jaclang/compiler/passes/tool/tests/fixtures/corelib.jac +249 -97
- jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac +94 -97
- jaclang/compiler/passes/tool/tests/fixtures/doc_string.jac +2 -2
- jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/access_mod_check.jac +5 -5
- jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/archetype_test.jac +13 -0
- jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/decorator_stack.jac +7 -7
- jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/line_spacing.jac +8 -8
- jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.dot +3 -3
- jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.txt +3 -3
- jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/ability_impl_long_comprehension.jac +1 -1
- jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/call_with_many_parameters.jac +2 -2
- jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/simple_walker.jac +3 -3
- jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/try_block_and_walker_spawn_and_fstrings.jac +1 -1
- jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/type_annotation.jac +1 -1
- jaclang/compiler/passes/tool/tests/fixtures/simple_walk.jac +1 -1
- jaclang/compiler/passes/tool/tests/fixtures/simple_walk_fmt.jac +10 -4
- jaclang/compiler/passes/tool/tests/test_doc_ir_gen_pass.py +29 -0
- jaclang/compiler/passes/tool/tests/test_jac_format_pass.py +63 -88
- jaclang/compiler/passes/tool/tests/test_unparse_validate.py +27 -28
- jaclang/compiler/passes/transform.py +56 -16
- jaclang/compiler/passes/{ir_pass.py → uni_pass.py} +35 -52
- jaclang/compiler/program.py +200 -0
- jaclang/compiler/tests/fixtures/codegentext.jac +31 -0
- jaclang/compiler/tests/fixtures/fam.jac +12 -12
- jaclang/compiler/tests/fixtures/hello_world.jac +1 -1
- jaclang/compiler/tests/fixtures/pkg_import_lib/__init__.jac +1 -0
- jaclang/compiler/tests/fixtures/pkg_import_lib/sub/__init__.jac +1 -0
- jaclang/compiler/tests/fixtures/pkg_import_lib/sub/helper.jac +3 -0
- jaclang/compiler/tests/fixtures/pkg_import_lib/tools.jac +3 -0
- jaclang/compiler/tests/fixtures/pkg_import_lib_py/__init__.py +11 -0
- jaclang/compiler/tests/fixtures/pkg_import_lib_py/sub/__init__.py +7 -0
- jaclang/compiler/tests/fixtures/pkg_import_lib_py/sub/helper.jac +3 -0
- jaclang/compiler/tests/fixtures/pkg_import_lib_py/tools.jac +3 -0
- jaclang/compiler/tests/fixtures/pkg_import_main.jac +10 -0
- jaclang/compiler/tests/fixtures/pkg_import_main_py.jac +11 -0
- jaclang/compiler/tests/fixtures/staticcheck.jac +2 -2
- jaclang/compiler/tests/test_importer.py +41 -16
- jaclang/compiler/tests/test_parser.py +39 -17
- jaclang/compiler/{absyntree.py → unitree.py} +1521 -1261
- jaclang/langserve/engine.jac +498 -0
- jaclang/langserve/sem_manager.jac +309 -0
- jaclang/langserve/server.jac +186 -0
- jaclang/langserve/tests/fixtures/base_module_structure.jac +7 -7
- jaclang/langserve/tests/fixtures/circle.jac +6 -6
- jaclang/langserve/tests/fixtures/circle_err.jac +6 -6
- jaclang/langserve/tests/fixtures/circle_pure.impl.jac +5 -5
- jaclang/langserve/tests/fixtures/circle_pure.jac +7 -7
- jaclang/langserve/tests/fixtures/circle_pure_err.impl.jac +2 -2
- jaclang/langserve/tests/fixtures/circle_pure_err.jac +7 -7
- jaclang/langserve/tests/fixtures/import_include_statements.jac +6 -6
- jaclang/langserve/tests/fixtures/rename.jac +6 -6
- jaclang/langserve/tests/server_test/test_lang_serve.py +261 -0
- jaclang/langserve/tests/server_test/utils.py +118 -0
- jaclang/langserve/tests/session.jac +294 -0
- jaclang/langserve/tests/test_sem_tokens.py +4 -4
- jaclang/langserve/tests/test_server.py +53 -30
- jaclang/langserve/utils.jac +459 -0
- jaclang/runtimelib/{architype.py → archetype.py} +86 -62
- jaclang/runtimelib/builtin.py +95 -0
- jaclang/runtimelib/constructs.py +11 -13
- jaclang/runtimelib/importer.py +83 -53
- jaclang/runtimelib/machine.py +1592 -144
- jaclang/runtimelib/memory.py +6 -6
- jaclang/{plugin → runtimelib}/tests/fixtures/graph_purger.jac +1 -1
- jaclang/{plugin → runtimelib}/tests/fixtures/impl_match.jac +2 -2
- jaclang/runtimelib/tests/fixtures/impl_match_impl.jac +3 -0
- jaclang/{plugin → runtimelib}/tests/fixtures/other_root_access.jac +7 -7
- jaclang/{plugin → runtimelib}/tests/fixtures/savable_object.jac +3 -5
- jaclang/{plugin → runtimelib}/tests/fixtures/simple_node_connection.jac +6 -6
- jaclang/{plugin → runtimelib}/tests/fixtures/simple_persistent.jac +1 -1
- jaclang/{plugin → runtimelib}/tests/fixtures/traversing_save.jac +7 -5
- jaclang/runtimelib/tests/test_features.py +72 -0
- jaclang/{plugin → runtimelib}/tests/test_jaseci.py +6 -5
- jaclang/runtimelib/utils.py +34 -66
- jaclang/settings.py +1 -6
- jaclang/tests/fixtures/{abc.jac → abc_check.jac} +6 -6
- jaclang/tests/fixtures/arch_rel_import_creation.jac +4 -4
- jaclang/tests/fixtures/async_ability.jac +18 -0
- jaclang/tests/fixtures/async_walker.jac +23 -0
- jaclang/tests/fixtures/backward_edge_visit.jac +31 -0
- jaclang/tests/fixtures/baddy.jac +1 -1
- jaclang/tests/fixtures/base_class1.jac +2 -2
- jaclang/tests/fixtures/base_class2.jac +2 -2
- jaclang/tests/fixtures/base_class_complex_expr.jac +3 -3
- jaclang/tests/fixtures/builtin_printgraph.jac +85 -0
- jaclang/tests/fixtures/builtin_printgraph_json.jac +21 -0
- jaclang/tests/fixtures/builtin_printgraph_mermaid.jac +16 -0
- jaclang/tests/fixtures/byllmissue.jac +1 -1
- jaclang/tests/fixtures/chandra_bugs.jac +1 -1
- jaclang/tests/fixtures/chandra_bugs2.jac +21 -14
- jaclang/tests/fixtures/cls_method.jac +6 -6
- jaclang/tests/fixtures/concurrency.jac +39 -0
- jaclang/tests/fixtures/connect_traverse_syntax.jac +18 -0
- jaclang/tests/fixtures/create_dynamic_archetype.jac +35 -0
- jaclang/tests/fixtures/decl_defn_param_name.jac +4 -4
- jaclang/tests/fixtures/deep/deeper/__init__.jac +1 -0
- jaclang/tests/fixtures/deep/deeper/deep_outer_import.jac +2 -3
- jaclang/tests/fixtures/deep/deeper/deep_outer_import2.jac +3 -3
- jaclang/tests/fixtures/deep/deeper/snd_lev.jac +2 -2
- jaclang/tests/fixtures/deep/mycode.jac +1 -1
- jaclang/tests/fixtures/deep/one_lev.jac +3 -4
- jaclang/tests/fixtures/deep/one_lev_dup.jac +2 -2
- jaclang/tests/fixtures/deep_convert.jac +1 -1
- jaclang/tests/fixtures/deep_import.jac +2 -2
- jaclang/tests/fixtures/deep_import_interp.jac +8 -0
- jaclang/tests/fixtures/deep_import_mods.jac +3 -3
- jaclang/tests/fixtures/deferred_field.jac +1 -1
- jaclang/tests/fixtures/del_clean.jac +7 -0
- jaclang/tests/fixtures/disconn.jac +2 -2
- jaclang/tests/fixtures/dynamic_archetype.jac +34 -0
- jaclang/tests/fixtures/edge_ability.jac +49 -0
- jaclang/tests/fixtures/edge_node_walk.jac +12 -12
- jaclang/tests/fixtures/edge_ops.jac +7 -7
- jaclang/tests/fixtures/edges_walk.jac +10 -10
- jaclang/tests/fixtures/edgetypeissue.jac +1 -1
- jaclang/tests/fixtures/enum_inside_archtype.jac +4 -4
- jaclang/tests/fixtures/err.impl.jac +1 -1
- jaclang/tests/fixtures/err.jac +2 -2
- jaclang/tests/fixtures/err_runtime.jac +2 -2
- jaclang/tests/fixtures/foo.jac +7 -7
- jaclang/tests/fixtures/game1.jac +4 -4
- jaclang/tests/fixtures/gendot_bubble_sort.jac +4 -4
- jaclang/tests/fixtures/glob_multivar_statement.jac +1 -1
- jaclang/tests/fixtures/guess_game.jac +6 -6
- jaclang/tests/fixtures/has_goodness.jac +1 -1
- jaclang/tests/fixtures/hash_init_check.jac +3 -3
- jaclang/tests/fixtures/hello.jac +1 -1
- jaclang/tests/fixtures/here_usage_error.jac +21 -0
- jaclang/tests/fixtures/here_visitor_usage.jac +21 -0
- jaclang/tests/fixtures/ignore.jac +3 -3
- jaclang/tests/fixtures/ignore_dup.jac +3 -3
- jaclang/tests/fixtures/impl_match_confused.impl.jac +1 -1
- jaclang/tests/fixtures/import.jac +9 -9
- jaclang/tests/fixtures/import_all.jac +1 -1
- jaclang/tests/fixtures/index_slice.jac +1 -1
- jaclang/tests/fixtures/inherit_check.jac +3 -3
- jaclang/tests/fixtures/jac_from_py.py +4 -0
- jaclang/tests/fixtures/jacsamp.jac +1 -1
- jaclang/tests/fixtures/jactest_main.jac +1 -1
- jaclang/tests/fixtures/jp_importer.jac +7 -8
- jaclang/tests/fixtures/jp_importer_auto.jac +3 -3
- jaclang/tests/fixtures/lambda.jac +2 -2
- jaclang/tests/fixtures/needs_import.jac +6 -6
- jaclang/tests/fixtures/needs_import_1.jac +1 -1
- jaclang/tests/fixtures/needs_import_2.jac +1 -1
- jaclang/tests/fixtures/needs_import_3.jac +1 -1
- jaclang/tests/fixtures/needs_import_dup.jac +6 -6
- jaclang/tests/fixtures/node_del.jac +54 -0
- jaclang/tests/fixtures/nosigself.jac +3 -3
- jaclang/tests/fixtures/py2jac.py +30 -0
- jaclang/tests/fixtures/py_bool_expr.py +7 -0
- jaclang/tests/fixtures/py_namedexpr.py +7 -0
- jaclang/tests/fixtures/pyfunc_3.py +0 -2
- jaclang/tests/fixtures/random_check.jac +5 -5
- jaclang/tests/fixtures/simple_archs.jac +2 -2
- jaclang/tests/fixtures/simple_walk.jac +52 -0
- jaclang/tests/fixtures/slice_vals.jac +3 -3
- jaclang/tests/fixtures/sub_abil_sep.jac +3 -3
- jaclang/tests/fixtures/sub_abil_sep_multilev.jac +3 -3
- jaclang/tests/fixtures/trailing_comma.jac +4 -4
- jaclang/tests/fixtures/type_info.jac +5 -5
- jaclang/{compiler/passes/main/tests → tests}/fixtures/uninitialized_hasvars.jac +1 -1
- jaclang/tests/fixtures/visit_order.jac +4 -4
- jaclang/tests/fixtures/visit_traversal.jac +47 -0
- jaclang/tests/fixtures/walker_override.jac +2 -2
- jaclang/tests/fixtures/walker_update.jac +5 -5
- jaclang/tests/fixtures/with_context.jac +4 -4
- jaclang/tests/test_bugs.py +2 -2
- jaclang/tests/test_cli.py +127 -227
- jaclang/tests/test_language.py +542 -474
- jaclang/tests/test_man_code.py +2 -2
- jaclang/tests/test_reference.py +4 -4
- jaclang/tests/test_settings.py +16 -16
- jaclang/tests/test_typecheck.py +555 -0
- jaclang/utils/__init__.py +4 -0
- jaclang/utils/helpers.py +24 -31
- jaclang/utils/lang_tools.py +84 -75
- jaclang/utils/module_resolver.py +69 -0
- jaclang/utils/test.py +8 -5
- jaclang/utils/tests/test_lang_tools.py +40 -14
- jaclang/utils/treeprinter.py +178 -42
- jaclang/vendor/__init__.py +1 -2
- jaclang/vendor/attr/__init__.py +14 -44
- jaclang/vendor/attr/__init__.pyi +155 -321
- jaclang/vendor/attr/_cmp.py +25 -15
- jaclang/vendor/attr/_cmp.pyi +7 -7
- jaclang/vendor/attr/_compat.py +15 -8
- jaclang/vendor/attr/_config.py +1 -1
- jaclang/vendor/attr/_funcs.py +148 -163
- jaclang/vendor/attr/_make.py +859 -855
- jaclang/vendor/attr/_next_gen.py +426 -32
- jaclang/vendor/attr/converters.py +67 -49
- jaclang/vendor/attr/converters.pyi +13 -7
- jaclang/vendor/attr/filters.py +17 -11
- jaclang/vendor/attr/filters.pyi +3 -3
- jaclang/vendor/attr/setters.py +11 -5
- jaclang/vendor/attr/setters.pyi +2 -1
- jaclang/vendor/attr/validators.py +191 -162
- jaclang/vendor/attr/validators.pyi +25 -27
- jaclang/vendor/attrs/__init__.py +9 -5
- jaclang/vendor/attrs/__init__.pyi +225 -29
- jaclang/vendor/attrs-25.3.0.dist-info/INSTALLER +1 -0
- jaclang/vendor/{attrs-23.2.0.dist-info → attrs-25.3.0.dist-info}/METADATA +83 -53
- jaclang/vendor/attrs-25.3.0.dist-info/RECORD +56 -0
- jaclang/vendor/{attrs-23.2.0.dist-info → attrs-25.3.0.dist-info}/WHEEL +1 -1
- jaclang/vendor/bin/dmypy +8 -0
- jaclang/vendor/bin/mypy +8 -0
- jaclang/vendor/bin/mypyc +8 -0
- jaclang/vendor/bin/stubgen +8 -0
- jaclang/vendor/bin/stubtest +8 -0
- jaclang/vendor/cattr/gen.py +2 -2
- jaclang/vendor/cattr/preconf/bson.py +1 -0
- jaclang/vendor/cattr/preconf/json.py +1 -0
- jaclang/vendor/cattr/preconf/msgpack.py +1 -0
- jaclang/vendor/cattr/preconf/orjson.py +1 -0
- jaclang/vendor/cattr/preconf/pyyaml.py +1 -0
- jaclang/vendor/cattr/preconf/tomlkit.py +1 -0
- jaclang/vendor/cattr/preconf/ujson.py +1 -0
- jaclang/vendor/cattrs/__init__.py +21 -21
- jaclang/vendor/cattrs/_compat.py +176 -62
- jaclang/vendor/cattrs/_generics.py +5 -3
- jaclang/vendor/cattrs/cols.py +289 -0
- jaclang/vendor/cattrs/converters.py +505 -187
- jaclang/vendor/cattrs/disambiguators.py +118 -45
- jaclang/vendor/cattrs/dispatch.py +66 -36
- jaclang/vendor/cattrs/fns.py +6 -1
- jaclang/vendor/cattrs/gen/__init__.py +365 -202
- jaclang/vendor/cattrs/gen/_generics.py +41 -5
- jaclang/vendor/cattrs/gen/_lc.py +3 -2
- jaclang/vendor/cattrs/gen/_shared.py +39 -32
- jaclang/vendor/cattrs/gen/typeddicts.py +75 -88
- jaclang/vendor/cattrs/preconf/__init__.py +20 -0
- jaclang/vendor/cattrs/preconf/bson.py +7 -8
- jaclang/vendor/cattrs/preconf/cbor2.py +3 -0
- jaclang/vendor/cattrs/preconf/json.py +8 -4
- jaclang/vendor/cattrs/preconf/msgpack.py +3 -0
- jaclang/vendor/cattrs/preconf/msgspec.py +185 -0
- jaclang/vendor/cattrs/preconf/orjson.py +20 -7
- jaclang/vendor/cattrs/preconf/pyyaml.py +15 -3
- jaclang/vendor/cattrs/preconf/tomlkit.py +3 -1
- jaclang/vendor/cattrs/preconf/ujson.py +3 -0
- jaclang/vendor/cattrs/strategies/__init__.py +1 -0
- jaclang/vendor/cattrs/strategies/_class_methods.py +1 -1
- jaclang/vendor/cattrs/strategies/_subclasses.py +43 -29
- jaclang/vendor/cattrs/strategies/_unions.py +47 -24
- jaclang/vendor/cattrs/v.py +1 -0
- jaclang/vendor/cattrs-24.1.3.dist-info/INSTALLER +1 -0
- jaclang/vendor/cattrs-24.1.3.dist-info/METADATA +161 -0
- jaclang/vendor/cattrs-24.1.3.dist-info/RECORD +96 -0
- jaclang/vendor/{cattrs-23.2.3.dist-info → cattrs-24.1.3.dist-info}/WHEEL +1 -1
- jaclang/vendor/lark/__init__.py +38 -38
- jaclang/vendor/lark/__pyinstaller/__init__.py +6 -6
- jaclang/vendor/lark/__pyinstaller/hook-lark.py +14 -14
- jaclang/vendor/lark/ast_utils.py +59 -59
- jaclang/vendor/lark/common.py +86 -89
- jaclang/vendor/lark/exceptions.py +292 -292
- jaclang/vendor/lark/grammar.py +130 -130
- jaclang/vendor/lark/grammars/common.lark +59 -59
- jaclang/vendor/lark/grammars/lark.lark +62 -62
- jaclang/vendor/lark/grammars/python.lark +302 -302
- jaclang/vendor/lark/grammars/unicode.lark +7 -7
- jaclang/vendor/lark/indenter.py +143 -112
- jaclang/vendor/lark/lark.py +658 -661
- jaclang/vendor/lark/lexer.py +678 -678
- jaclang/vendor/lark/load_grammar.py +1428 -1428
- jaclang/vendor/lark/parse_tree_builder.py +391 -391
- jaclang/vendor/lark/parser_frontends.py +257 -257
- jaclang/vendor/lark/parsers/cyk.py +340 -340
- jaclang/vendor/lark/parsers/earley.py +317 -308
- jaclang/vendor/lark/parsers/earley_common.py +42 -42
- jaclang/vendor/lark/parsers/earley_forest.py +802 -810
- jaclang/vendor/lark/parsers/grammar_analysis.py +203 -203
- jaclang/vendor/lark/parsers/lalr_analysis.py +332 -332
- jaclang/vendor/lark/parsers/lalr_interactive_parser.py +158 -157
- jaclang/vendor/lark/parsers/lalr_parser.py +122 -122
- jaclang/vendor/lark/parsers/lalr_parser_state.py +110 -110
- jaclang/vendor/lark/parsers/xearley.py +165 -165
- jaclang/vendor/lark/reconstruct.py +107 -107
- jaclang/vendor/lark/tools/__init__.py +70 -71
- jaclang/vendor/lark/tools/nearley.py +202 -202
- jaclang/vendor/lark/tools/serialize.py +32 -32
- jaclang/vendor/lark/tools/standalone.py +196 -196
- jaclang/vendor/lark/tree.py +267 -272
- jaclang/vendor/lark/tree_matcher.py +186 -186
- jaclang/vendor/lark/utils.py +346 -361
- jaclang/vendor/lark/visitors.py +596 -593
- jaclang/vendor/lark-1.2.2.dist-info/INSTALLER +1 -0
- jaclang/vendor/{lark-1.1.9.dist-info → lark-1.2.2.dist-info}/METADATA +48 -47
- jaclang/vendor/lark-1.2.2.dist-info/RECORD +83 -0
- jaclang/vendor/{mypy_extensions-1.0.0.dist-info → lark-1.2.2.dist-info}/WHEEL +1 -1
- jaclang/vendor/{lark-1.1.9.dist-info → lark-1.2.2.dist-info/licenses}/LICENSE +18 -18
- jaclang/vendor/lsprotocol-2023.0.1.dist-info/INSTALLER +1 -0
- jaclang/vendor/lsprotocol-2023.0.1.dist-info/METADATA +2 -1
- jaclang/vendor/lsprotocol-2023.0.1.dist-info/RECORD +17 -10
- jaclang/vendor/lsprotocol-2023.0.1.dist-info/WHEEL +1 -1
- jaclang/vendor/pluggy/_version.py +7 -2
- jaclang/vendor/pluggy-1.5.0.dist-info/INSTALLER +1 -0
- jaclang/vendor/pluggy-1.5.0.dist-info/METADATA +6 -5
- jaclang/vendor/pluggy-1.5.0.dist-info/RECORD +24 -14
- jaclang/vendor/pluggy-1.5.0.dist-info/WHEEL +1 -1
- jaclang/vendor/pygls-1.3.1.dist-info/INSTALLER +1 -0
- jaclang/vendor/pygls-1.3.1.dist-info/METADATA +2 -2
- jaclang/vendor/pygls-1.3.1.dist-info/RECORD +45 -24
- jaclang/vendor/pygls-1.3.1.dist-info/WHEEL +1 -1
- {jaclang-0.7.34.dist-info → jaclang-0.8.1.dist-info}/METADATA +2 -1
- jaclang-0.8.1.dist-info/RECORD +568 -0
- {jaclang-0.7.34.dist-info → jaclang-0.8.1.dist-info}/WHEEL +1 -1
- jaclang/compiler/.gitignore +0 -1
- jaclang/compiler/compile.py +0 -119
- jaclang/compiler/passes/main/access_modifier_pass.py +0 -130
- jaclang/compiler/passes/main/fuse_typeinfo_pass.py +0 -656
- jaclang/compiler/passes/main/py_collect_dep_pass.py +0 -78
- jaclang/compiler/passes/main/pyout_pass.py +0 -86
- jaclang/compiler/passes/main/registry_pass.py +0 -156
- jaclang/compiler/passes/main/schedules.py +0 -47
- jaclang/compiler/passes/main/sub_node_tab_pass.py +0 -36
- jaclang/compiler/passes/main/tests/fixtures/registry.jac +0 -36
- jaclang/compiler/passes/main/tests/test_decl_def_match_pass.py +0 -114
- jaclang/compiler/passes/main/tests/test_registry_pass.py +0 -31
- jaclang/compiler/passes/main/tests/test_type_check_pass.py +0 -91
- jaclang/compiler/passes/main/tests/test_typeinfo_pass.py +0 -29
- jaclang/compiler/passes/main/type_check_pass.py +0 -128
- jaclang/compiler/passes/tool/schedules.py +0 -18
- jaclang/compiler/passes/tool/tests/fixtures/genai/essay_review.jac +0 -36
- jaclang/compiler/passes/tool/tests/fixtures/genai/expert_answer.jac +0 -17
- jaclang/compiler/passes/tool/tests/fixtures/genai/joke_gen.jac +0 -32
- jaclang/compiler/passes/tool/tests/fixtures/genai/odd_word_out.jac +0 -27
- jaclang/compiler/passes/tool/tests/fixtures/genai/personality_finder.jac +0 -35
- jaclang/compiler/passes/tool/tests/fixtures/genai/text_to_type.jac +0 -25
- jaclang/compiler/passes/tool/tests/fixtures/genai/translator.jac +0 -13
- jaclang/compiler/passes/tool/tests/fixtures/genai/wikipedia.jac +0 -63
- jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/architype_test.jac +0 -13
- jaclang/compiler/passes/utils/mypy_ast_build.py +0 -940
- jaclang/compiler/py_info.py +0 -22
- jaclang/compiler/semtable.py +0 -159
- jaclang/compiler/symtable.py +0 -297
- jaclang/langserve/engine.py +0 -541
- jaclang/langserve/sem_manager.py +0 -379
- jaclang/langserve/server.py +0 -176
- jaclang/langserve/tests/session.py +0 -255
- jaclang/langserve/utils.py +0 -458
- jaclang/plugin/__init__.py +0 -7
- jaclang/plugin/builtin.py +0 -57
- jaclang/plugin/default.py +0 -1443
- jaclang/plugin/feature.py +0 -574
- jaclang/plugin/plugin.md +0 -471
- jaclang/plugin/spec.py +0 -536
- jaclang/plugin/tests/fixtures/impl_match_impl.jac +0 -3
- jaclang/plugin/tests/test_features.py +0 -56
- jaclang/runtimelib/context.py +0 -191
- jaclang/tests/fixtures/builtin_dotgen.jac +0 -42
- jaclang/tests/fixtures/create_dynamic_architype.jac +0 -35
- jaclang/tests/fixtures/dynamic_architype.jac +0 -34
- jaclang/tests/fixtures/impl_grab.impl.jac +0 -5
- jaclang/tests/fixtures/mtest.impl.jac +0 -6
- jaclang/tests/fixtures/registry.jac +0 -58
- jaclang/tests/fixtures/semstr.jac +0 -30
- jaclang/tests/main.jac +0 -2
- jaclang/utils/profiler.py +0 -62
- jaclang/vendor/attrs-23.2.0.dist-info/RECORD +0 -35
- jaclang/vendor/cattrs-23.2.3.dist-info/METADATA +0 -221
- jaclang/vendor/cattrs-23.2.3.dist-info/RECORD +0 -48
- jaclang/vendor/lark-1.1.9.dist-info/RECORD +0 -46
- jaclang/vendor/lark-1.1.9.dist-info/WHEEL +0 -5
- jaclang/vendor/mypy/__init__.py +0 -1
- jaclang/vendor/mypy/__main__.py +0 -37
- jaclang/vendor/mypy/api.py +0 -94
- jaclang/vendor/mypy/applytype.py +0 -172
- jaclang/vendor/mypy/argmap.py +0 -268
- jaclang/vendor/mypy/binder.py +0 -538
- jaclang/vendor/mypy/bogus_type.py +0 -27
- jaclang/vendor/mypy/build.py +0 -3562
- jaclang/vendor/mypy/checker.py +0 -8445
- jaclang/vendor/mypy/checkexpr.py +0 -6623
- jaclang/vendor/mypy/checkmember.py +0 -1363
- jaclang/vendor/mypy/checkpattern.py +0 -801
- jaclang/vendor/mypy/checkstrformat.py +0 -1109
- jaclang/vendor/mypy/config_parser.py +0 -670
- jaclang/vendor/mypy/constant_fold.py +0 -187
- jaclang/vendor/mypy/constraints.py +0 -1636
- jaclang/vendor/mypy/copytype.py +0 -133
- jaclang/vendor/mypy/defaults.py +0 -46
- jaclang/vendor/mypy/dmypy/__main__.py +0 -6
- jaclang/vendor/mypy/dmypy/client.py +0 -749
- jaclang/vendor/mypy/dmypy_os.py +0 -42
- jaclang/vendor/mypy/dmypy_server.py +0 -1107
- jaclang/vendor/mypy/dmypy_util.py +0 -117
- jaclang/vendor/mypy/erasetype.py +0 -278
- jaclang/vendor/mypy/errorcodes.py +0 -291
- jaclang/vendor/mypy/errors.py +0 -1280
- jaclang/vendor/mypy/evalexpr.py +0 -205
- jaclang/vendor/mypy/expandtype.py +0 -524
- jaclang/vendor/mypy/exprtotype.py +0 -209
- jaclang/vendor/mypy/fastparse.py +0 -2147
- jaclang/vendor/mypy/find_sources.py +0 -243
- jaclang/vendor/mypy/fixup.py +0 -428
- jaclang/vendor/mypy/freetree.py +0 -23
- jaclang/vendor/mypy/fscache.py +0 -309
- jaclang/vendor/mypy/fswatcher.py +0 -106
- jaclang/vendor/mypy/gclogger.py +0 -47
- jaclang/vendor/mypy/git.py +0 -34
- jaclang/vendor/mypy/graph_utils.py +0 -112
- jaclang/vendor/mypy/indirection.py +0 -121
- jaclang/vendor/mypy/infer.py +0 -75
- jaclang/vendor/mypy/inspections.py +0 -627
- jaclang/vendor/mypy/ipc.py +0 -310
- jaclang/vendor/mypy/join.py +0 -871
- jaclang/vendor/mypy/literals.py +0 -306
- jaclang/vendor/mypy/lookup.py +0 -61
- jaclang/vendor/mypy/main.py +0 -1574
- jaclang/vendor/mypy/maptype.py +0 -106
- jaclang/vendor/mypy/meet.py +0 -1140
- jaclang/vendor/mypy/memprofile.py +0 -121
- jaclang/vendor/mypy/message_registry.py +0 -329
- jaclang/vendor/mypy/messages.py +0 -3186
- jaclang/vendor/mypy/metastore.py +0 -225
- jaclang/vendor/mypy/mixedtraverser.py +0 -112
- jaclang/vendor/mypy/modulefinder.py +0 -875
- jaclang/vendor/mypy/moduleinspect.py +0 -184
- jaclang/vendor/mypy/mro.py +0 -62
- jaclang/vendor/mypy/nodes.py +0 -4115
- jaclang/vendor/mypy/operators.py +0 -126
- jaclang/vendor/mypy/options.py +0 -556
- jaclang/vendor/mypy/parse.py +0 -30
- jaclang/vendor/mypy/partially_defined.py +0 -675
- jaclang/vendor/mypy/patterns.py +0 -150
- jaclang/vendor/mypy/plugin.py +0 -901
- jaclang/vendor/mypy/plugins/attrs.py +0 -1166
- jaclang/vendor/mypy/plugins/common.py +0 -440
- jaclang/vendor/mypy/plugins/ctypes.py +0 -245
- jaclang/vendor/mypy/plugins/dataclasses.py +0 -1108
- jaclang/vendor/mypy/plugins/default.py +0 -531
- jaclang/vendor/mypy/plugins/enums.py +0 -259
- jaclang/vendor/mypy/plugins/functools.py +0 -104
- jaclang/vendor/mypy/plugins/proper_plugin.py +0 -175
- jaclang/vendor/mypy/plugins/singledispatch.py +0 -224
- jaclang/vendor/mypy/py.typed +0 -1
- jaclang/vendor/mypy/pyinfo.py +0 -78
- jaclang/vendor/mypy/reachability.py +0 -362
- jaclang/vendor/mypy/refinfo.py +0 -92
- jaclang/vendor/mypy/renaming.py +0 -568
- jaclang/vendor/mypy/report.py +0 -924
- jaclang/vendor/mypy/scope.py +0 -125
- jaclang/vendor/mypy/semanal.py +0 -7187
- jaclang/vendor/mypy/semanal_classprop.py +0 -187
- jaclang/vendor/mypy/semanal_enum.py +0 -253
- jaclang/vendor/mypy/semanal_infer.py +0 -128
- jaclang/vendor/mypy/semanal_main.py +0 -511
- jaclang/vendor/mypy/semanal_namedtuple.py +0 -670
- jaclang/vendor/mypy/semanal_newtype.py +0 -273
- jaclang/vendor/mypy/semanal_pass1.py +0 -156
- jaclang/vendor/mypy/semanal_shared.py +0 -490
- jaclang/vendor/mypy/semanal_typeargs.py +0 -265
- jaclang/vendor/mypy/semanal_typeddict.py +0 -575
- jaclang/vendor/mypy/server/astdiff.py +0 -518
- jaclang/vendor/mypy/server/astmerge.py +0 -562
- jaclang/vendor/mypy/server/aststrip.py +0 -281
- jaclang/vendor/mypy/server/deps.py +0 -1137
- jaclang/vendor/mypy/server/mergecheck.py +0 -83
- jaclang/vendor/mypy/server/objgraph.py +0 -101
- jaclang/vendor/mypy/server/subexpr.py +0 -198
- jaclang/vendor/mypy/server/target.py +0 -11
- jaclang/vendor/mypy/server/trigger.py +0 -26
- jaclang/vendor/mypy/server/update.py +0 -1339
- jaclang/vendor/mypy/sharedparse.py +0 -112
- jaclang/vendor/mypy/solve.py +0 -562
- jaclang/vendor/mypy/split_namespace.py +0 -35
- jaclang/vendor/mypy/state.py +0 -28
- jaclang/vendor/mypy/stats.py +0 -489
- jaclang/vendor/mypy/strconv.py +0 -641
- jaclang/vendor/mypy/stubdoc.py +0 -491
- jaclang/vendor/mypy/stubgen.py +0 -1886
- jaclang/vendor/mypy/stubgenc.py +0 -993
- jaclang/vendor/mypy/stubinfo.py +0 -173
- jaclang/vendor/mypy/stubtest.py +0 -2079
- jaclang/vendor/mypy/stubutil.py +0 -834
- jaclang/vendor/mypy/subtypes.py +0 -1980
- jaclang/vendor/mypy/suggestions.py +0 -1046
- jaclang/vendor/mypy/test/config.py +0 -28
- jaclang/vendor/mypy/test/data.py +0 -821
- jaclang/vendor/mypy/test/helpers.py +0 -476
- jaclang/vendor/mypy/test/meta/_pytest.py +0 -72
- jaclang/vendor/mypy/test/meta/test_diff_helper.py +0 -47
- jaclang/vendor/mypy/test/meta/test_parse_data.py +0 -73
- jaclang/vendor/mypy/test/meta/test_update_data.py +0 -135
- jaclang/vendor/mypy/test/test_find_sources.py +0 -376
- jaclang/vendor/mypy/test/test_ref_info.py +0 -45
- jaclang/vendor/mypy/test/testapi.py +0 -45
- jaclang/vendor/mypy/test/testargs.py +0 -77
- jaclang/vendor/mypy/test/testcheck.py +0 -322
- jaclang/vendor/mypy/test/testcmdline.py +0 -152
- jaclang/vendor/mypy/test/testconstraints.py +0 -134
- jaclang/vendor/mypy/test/testdaemon.py +0 -132
- jaclang/vendor/mypy/test/testdeps.py +0 -77
- jaclang/vendor/mypy/test/testdiff.py +0 -67
- jaclang/vendor/mypy/test/testerrorstream.py +0 -46
- jaclang/vendor/mypy/test/testfinegrained.py +0 -438
- jaclang/vendor/mypy/test/testfinegrainedcache.py +0 -18
- jaclang/vendor/mypy/test/testformatter.py +0 -85
- jaclang/vendor/mypy/test/testfscache.py +0 -101
- jaclang/vendor/mypy/test/testgraph.py +0 -83
- jaclang/vendor/mypy/test/testinfer.py +0 -373
- jaclang/vendor/mypy/test/testipc.py +0 -119
- jaclang/vendor/mypy/test/testmerge.py +0 -238
- jaclang/vendor/mypy/test/testmodulefinder.py +0 -278
- jaclang/vendor/mypy/test/testmypyc.py +0 -14
- jaclang/vendor/mypy/test/testparse.py +0 -107
- jaclang/vendor/mypy/test/testpep561.py +0 -211
- jaclang/vendor/mypy/test/testpythoneval.py +0 -117
- jaclang/vendor/mypy/test/testreports.py +0 -55
- jaclang/vendor/mypy/test/testsemanal.py +0 -209
- jaclang/vendor/mypy/test/testsolve.py +0 -285
- jaclang/vendor/mypy/test/teststubgen.py +0 -1412
- jaclang/vendor/mypy/test/teststubinfo.py +0 -12
- jaclang/vendor/mypy/test/teststubtest.py +0 -2492
- jaclang/vendor/mypy/test/testsubtypes.py +0 -303
- jaclang/vendor/mypy/test/testtransform.py +0 -64
- jaclang/vendor/mypy/test/testtypegen.py +0 -83
- jaclang/vendor/mypy/test/testtypes.py +0 -1551
- jaclang/vendor/mypy/test/testutil.py +0 -111
- jaclang/vendor/mypy/test/typefixture.py +0 -415
- jaclang/vendor/mypy/test/update_data.py +0 -87
- jaclang/vendor/mypy/test/visitors.py +0 -63
- jaclang/vendor/mypy/traverser.py +0 -961
- jaclang/vendor/mypy/treetransform.py +0 -800
- jaclang/vendor/mypy/tvar_scope.py +0 -169
- jaclang/vendor/mypy/type_visitor.py +0 -564
- jaclang/vendor/mypy/typeanal.py +0 -2596
- jaclang/vendor/mypy/typeops.py +0 -1082
- jaclang/vendor/mypy/types.py +0 -3708
- jaclang/vendor/mypy/types_utils.py +0 -166
- jaclang/vendor/mypy/typeshed/LICENSE +0 -237
- jaclang/vendor/mypy/typeshed/stdlib/VERSIONS +0 -309
- jaclang/vendor/mypy/typeshed/stdlib/__future__.pyi +0 -36
- jaclang/vendor/mypy/typeshed/stdlib/__main__.pyi +0 -3
- jaclang/vendor/mypy/typeshed/stdlib/_ast.pyi +0 -591
- jaclang/vendor/mypy/typeshed/stdlib/_bisect.pyi +0 -84
- jaclang/vendor/mypy/typeshed/stdlib/_bootlocale.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/_codecs.pyi +0 -133
- jaclang/vendor/mypy/typeshed/stdlib/_collections_abc.pyi +0 -94
- jaclang/vendor/mypy/typeshed/stdlib/_compat_pickle.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/_compression.pyi +0 -25
- jaclang/vendor/mypy/typeshed/stdlib/_csv.pyi +0 -90
- jaclang/vendor/mypy/typeshed/stdlib/_ctypes.pyi +0 -207
- jaclang/vendor/mypy/typeshed/stdlib/_curses.pyi +0 -566
- jaclang/vendor/mypy/typeshed/stdlib/_decimal.pyi +0 -281
- jaclang/vendor/mypy/typeshed/stdlib/_dummy_thread.pyi +0 -33
- jaclang/vendor/mypy/typeshed/stdlib/_dummy_threading.pyi +0 -164
- jaclang/vendor/mypy/typeshed/stdlib/_heapq.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/_imp.pyi +0 -28
- jaclang/vendor/mypy/typeshed/stdlib/_json.pyi +0 -49
- jaclang/vendor/mypy/typeshed/stdlib/_locale.pyi +0 -100
- jaclang/vendor/mypy/typeshed/stdlib/_lsprof.pyi +0 -35
- jaclang/vendor/mypy/typeshed/stdlib/_markupbase.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/_msi.pyi +0 -92
- jaclang/vendor/mypy/typeshed/stdlib/_operator.pyi +0 -147
- jaclang/vendor/mypy/typeshed/stdlib/_osx_support.pyi +0 -34
- jaclang/vendor/mypy/typeshed/stdlib/_posixsubprocess.pyi +0 -33
- jaclang/vendor/mypy/typeshed/stdlib/_py_abc.pyi +0 -14
- jaclang/vendor/mypy/typeshed/stdlib/_pydecimal.pyi +0 -43
- jaclang/vendor/mypy/typeshed/stdlib/_random.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/_sitebuiltins.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/_socket.pyi +0 -803
- jaclang/vendor/mypy/typeshed/stdlib/_stat.pyi +0 -103
- jaclang/vendor/mypy/typeshed/stdlib/_thread.pyi +0 -59
- jaclang/vendor/mypy/typeshed/stdlib/_threading_local.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/_tkinter.pyi +0 -121
- jaclang/vendor/mypy/typeshed/stdlib/_tracemalloc.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/_typeshed/__init__.pyi +0 -347
- jaclang/vendor/mypy/typeshed/stdlib/_typeshed/dbapi.pyi +0 -37
- jaclang/vendor/mypy/typeshed/stdlib/_typeshed/wsgi.pyi +0 -44
- jaclang/vendor/mypy/typeshed/stdlib/_typeshed/xml.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/_warnings.pyi +0 -55
- jaclang/vendor/mypy/typeshed/stdlib/_weakref.pyi +0 -41
- jaclang/vendor/mypy/typeshed/stdlib/_weakrefset.pyi +0 -51
- jaclang/vendor/mypy/typeshed/stdlib/_winapi.pyi +0 -255
- jaclang/vendor/mypy/typeshed/stdlib/abc.pyi +0 -51
- jaclang/vendor/mypy/typeshed/stdlib/aifc.pyi +0 -91
- jaclang/vendor/mypy/typeshed/stdlib/antigravity.pyi +0 -3
- jaclang/vendor/mypy/typeshed/stdlib/argparse.pyi +0 -595
- jaclang/vendor/mypy/typeshed/stdlib/array.pyi +0 -92
- jaclang/vendor/mypy/typeshed/stdlib/ast.pyi +0 -277
- jaclang/vendor/mypy/typeshed/stdlib/asynchat.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/__init__.pyi +0 -41
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_events.pyi +0 -440
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_futures.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_subprocess.pyi +0 -63
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/base_tasks.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/constants.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/coroutines.pyi +0 -26
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/events.pyi +0 -580
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/exceptions.pyi +0 -43
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/format_helpers.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/futures.pyi +0 -57
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/locks.pyi +0 -121
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/log.pyi +0 -3
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/mixins.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/proactor_events.pyi +0 -64
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/protocols.pyi +0 -34
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/queues.pyi +0 -47
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/runners.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/selector_events.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/sslproto.pyi +0 -165
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/staggered.pyi +0 -10
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/streams.pyi +0 -153
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/subprocess.pyi +0 -229
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/taskgroups.pyi +0 -25
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/tasks.pyi +0 -497
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/threads.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/timeouts.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/transports.pyi +0 -47
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/trsock.pyi +0 -94
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/unix_events.pyi +0 -196
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_events.pyi +0 -85
- jaclang/vendor/mypy/typeshed/stdlib/asyncio/windows_utils.pyi +0 -49
- jaclang/vendor/mypy/typeshed/stdlib/asyncore.pyi +0 -90
- jaclang/vendor/mypy/typeshed/stdlib/atexit.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/audioop.pyi +0 -43
- jaclang/vendor/mypy/typeshed/stdlib/base64.pyi +0 -59
- jaclang/vendor/mypy/typeshed/stdlib/bdb.pyi +0 -102
- jaclang/vendor/mypy/typeshed/stdlib/binascii.pyi +0 -36
- jaclang/vendor/mypy/typeshed/stdlib/binhex.pyi +0 -45
- jaclang/vendor/mypy/typeshed/stdlib/bisect.pyi +0 -4
- jaclang/vendor/mypy/typeshed/stdlib/builtins.pyi +0 -1936
- jaclang/vendor/mypy/typeshed/stdlib/bz2.pyi +0 -146
- jaclang/vendor/mypy/typeshed/stdlib/cProfile.pyi +0 -31
- jaclang/vendor/mypy/typeshed/stdlib/calendar.pyi +0 -208
- jaclang/vendor/mypy/typeshed/stdlib/cgi.pyi +0 -118
- jaclang/vendor/mypy/typeshed/stdlib/cgitb.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/chunk.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/cmath.pyi +0 -36
- jaclang/vendor/mypy/typeshed/stdlib/cmd.pyi +0 -45
- jaclang/vendor/mypy/typeshed/stdlib/code.pyi +0 -33
- jaclang/vendor/mypy/typeshed/stdlib/codecs.pyi +0 -285
- jaclang/vendor/mypy/typeshed/stdlib/codeop.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/collections/__init__.pyi +0 -485
- jaclang/vendor/mypy/typeshed/stdlib/collections/abc.pyi +0 -2
- jaclang/vendor/mypy/typeshed/stdlib/colorsys.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/compileall.pyi +0 -111
- jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/__init__.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/_base.pyi +0 -126
- jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/process.pyi +0 -233
- jaclang/vendor/mypy/typeshed/stdlib/concurrent/futures/thread.pyi +0 -80
- jaclang/vendor/mypy/typeshed/stdlib/configparser.pyi +0 -313
- jaclang/vendor/mypy/typeshed/stdlib/contextlib.pyi +0 -208
- jaclang/vendor/mypy/typeshed/stdlib/contextvars.pyi +0 -63
- jaclang/vendor/mypy/typeshed/stdlib/copy.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/copyreg.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/crypt.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/csv.pyi +0 -147
- jaclang/vendor/mypy/typeshed/stdlib/ctypes/__init__.pyi +0 -187
- jaclang/vendor/mypy/typeshed/stdlib/ctypes/_endian.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/ctypes/util.pyi +0 -6
- jaclang/vendor/mypy/typeshed/stdlib/ctypes/wintypes.pyi +0 -298
- jaclang/vendor/mypy/typeshed/stdlib/curses/__init__.pyi +0 -22
- jaclang/vendor/mypy/typeshed/stdlib/curses/ascii.pyi +0 -62
- jaclang/vendor/mypy/typeshed/stdlib/curses/has_key.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/curses/panel.pyi +0 -22
- jaclang/vendor/mypy/typeshed/stdlib/curses/textpad.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/dataclasses.pyi +0 -315
- jaclang/vendor/mypy/typeshed/stdlib/datetime.pyi +0 -295
- jaclang/vendor/mypy/typeshed/stdlib/dbm/__init__.pyi +0 -95
- jaclang/vendor/mypy/typeshed/stdlib/dbm/dumb.pyi +0 -31
- jaclang/vendor/mypy/typeshed/stdlib/dbm/gnu.pyi +0 -41
- jaclang/vendor/mypy/typeshed/stdlib/dbm/ndbm.pyi +0 -37
- jaclang/vendor/mypy/typeshed/stdlib/decimal.pyi +0 -2
- jaclang/vendor/mypy/typeshed/stdlib/difflib.pyi +0 -140
- jaclang/vendor/mypy/typeshed/stdlib/dis.pyi +0 -144
- jaclang/vendor/mypy/typeshed/stdlib/distutils/__init__.pyi +0 -5
- jaclang/vendor/mypy/typeshed/stdlib/distutils/archive_util.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/distutils/bcppcompiler.pyi +0 -3
- jaclang/vendor/mypy/typeshed/stdlib/distutils/ccompiler.pyi +0 -152
- jaclang/vendor/mypy/typeshed/stdlib/distutils/cmd.pyi +0 -66
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist.pyi +0 -25
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_dumb.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_msi.pyi +0 -45
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_rpm.pyi +0 -52
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/bdist_wininst.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build.pyi +0 -31
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_clib.pyi +0 -27
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_ext.pyi +0 -50
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_py.pyi +0 -44
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/build_scripts.pyi +0 -24
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/check.pyi +0 -39
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/clean.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/config.pyi +0 -83
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install.pyi +0 -63
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_data.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_egg_info.pyi +0 -18
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_headers.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_lib.pyi +0 -25
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/install_scripts.pyi +0 -18
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/register.pyi +0 -18
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/sdist.pyi +0 -42
- jaclang/vendor/mypy/typeshed/stdlib/distutils/command/upload.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/distutils/config.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/distutils/core.pyi +0 -57
- jaclang/vendor/mypy/typeshed/stdlib/distutils/cygwinccompiler.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/distutils/debug.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/distutils/dep_util.pyi +0 -3
- jaclang/vendor/mypy/typeshed/stdlib/distutils/dir_util.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/distutils/dist.pyi +0 -146
- jaclang/vendor/mypy/typeshed/stdlib/distutils/errors.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/distutils/extension.pyi +0 -36
- jaclang/vendor/mypy/typeshed/stdlib/distutils/fancy_getopt.pyi +0 -34
- jaclang/vendor/mypy/typeshed/stdlib/distutils/file_util.pyi +0 -14
- jaclang/vendor/mypy/typeshed/stdlib/distutils/filelist.pyi +0 -50
- jaclang/vendor/mypy/typeshed/stdlib/distutils/log.pyi +0 -25
- jaclang/vendor/mypy/typeshed/stdlib/distutils/msvccompiler.pyi +0 -3
- jaclang/vendor/mypy/typeshed/stdlib/distutils/spawn.pyi +0 -2
- jaclang/vendor/mypy/typeshed/stdlib/distutils/sysconfig.pyi +0 -31
- jaclang/vendor/mypy/typeshed/stdlib/distutils/text_file.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/distutils/unixccompiler.pyi +0 -3
- jaclang/vendor/mypy/typeshed/stdlib/distutils/util.pyi +0 -46
- jaclang/vendor/mypy/typeshed/stdlib/distutils/version.pyi +0 -36
- jaclang/vendor/mypy/typeshed/stdlib/doctest.pyi +0 -248
- jaclang/vendor/mypy/typeshed/stdlib/dummy_threading.pyi +0 -2
- jaclang/vendor/mypy/typeshed/stdlib/email/__init__.pyi +0 -29
- jaclang/vendor/mypy/typeshed/stdlib/email/_header_value_parser.pyi +0 -392
- jaclang/vendor/mypy/typeshed/stdlib/email/_policybase.pyi +0 -51
- jaclang/vendor/mypy/typeshed/stdlib/email/base64mime.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/email/charset.pyi +0 -34
- jaclang/vendor/mypy/typeshed/stdlib/email/contentmanager.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/email/encoders.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/email/errors.pyi +0 -39
- jaclang/vendor/mypy/typeshed/stdlib/email/feedparser.pyi +0 -23
- jaclang/vendor/mypy/typeshed/stdlib/email/generator.pyi +0 -40
- jaclang/vendor/mypy/typeshed/stdlib/email/header.pyi +0 -31
- jaclang/vendor/mypy/typeshed/stdlib/email/headerregistry.pyi +0 -178
- jaclang/vendor/mypy/typeshed/stdlib/email/iterators.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/email/message.pyi +0 -165
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/application.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/audio.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/base.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/image.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/message.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/multipart.pyi +0 -18
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/nonmultipart.pyi +0 -5
- jaclang/vendor/mypy/typeshed/stdlib/email/mime/text.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/email/parser.pyi +0 -26
- jaclang/vendor/mypy/typeshed/stdlib/email/policy.pyi +0 -38
- jaclang/vendor/mypy/typeshed/stdlib/email/quoprimime.pyi +0 -28
- jaclang/vendor/mypy/typeshed/stdlib/email/utils.pyi +0 -70
- jaclang/vendor/mypy/typeshed/stdlib/encodings/__init__.pyi +0 -10
- jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/encodings/utf_8_sig.pyi +0 -22
- jaclang/vendor/mypy/typeshed/stdlib/ensurepip/__init__.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/enum.pyi +0 -320
- jaclang/vendor/mypy/typeshed/stdlib/errno.pyi +0 -222
- jaclang/vendor/mypy/typeshed/stdlib/faulthandler.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/fcntl.pyi +0 -127
- jaclang/vendor/mypy/typeshed/stdlib/filecmp.pyi +0 -57
- jaclang/vendor/mypy/typeshed/stdlib/fileinput.pyi +0 -213
- jaclang/vendor/mypy/typeshed/stdlib/fnmatch.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/formatter.pyi +0 -88
- jaclang/vendor/mypy/typeshed/stdlib/fractions.pyi +0 -150
- jaclang/vendor/mypy/typeshed/stdlib/ftplib.pyi +0 -178
- jaclang/vendor/mypy/typeshed/stdlib/functools.pyi +0 -213
- jaclang/vendor/mypy/typeshed/stdlib/gc.pyi +0 -37
- jaclang/vendor/mypy/typeshed/stdlib/genericpath.pyi +0 -52
- jaclang/vendor/mypy/typeshed/stdlib/getopt.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/getpass.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/gettext.pyi +0 -169
- jaclang/vendor/mypy/typeshed/stdlib/glob.pyi +0 -42
- jaclang/vendor/mypy/typeshed/stdlib/graphlib.pyi +0 -28
- jaclang/vendor/mypy/typeshed/stdlib/grp.pyi +0 -22
- jaclang/vendor/mypy/typeshed/stdlib/gzip.pyi +0 -160
- jaclang/vendor/mypy/typeshed/stdlib/hashlib.pyi +0 -167
- jaclang/vendor/mypy/typeshed/stdlib/heapq.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/hmac.pyi +0 -38
- jaclang/vendor/mypy/typeshed/stdlib/html/__init__.pyi +0 -6
- jaclang/vendor/mypy/typeshed/stdlib/html/entities.pyi +0 -6
- jaclang/vendor/mypy/typeshed/stdlib/html/parser.pyi +0 -34
- jaclang/vendor/mypy/typeshed/stdlib/http/__init__.pyi +0 -105
- jaclang/vendor/mypy/typeshed/stdlib/http/client.pyi +0 -259
- jaclang/vendor/mypy/typeshed/stdlib/http/cookiejar.pyi +0 -159
- jaclang/vendor/mypy/typeshed/stdlib/http/cookies.pyi +0 -60
- jaclang/vendor/mypy/typeshed/stdlib/http/server.pyi +0 -83
- jaclang/vendor/mypy/typeshed/stdlib/imaplib.pyi +0 -168
- jaclang/vendor/mypy/typeshed/stdlib/imghdr.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/imp.pyi +0 -62
- jaclang/vendor/mypy/typeshed/stdlib/importlib/__init__.pyi +0 -24
- jaclang/vendor/mypy/typeshed/stdlib/importlib/_abc.pyi +0 -15
- jaclang/vendor/mypy/typeshed/stdlib/importlib/abc.pyi +0 -172
- jaclang/vendor/mypy/typeshed/stdlib/importlib/machinery.pyi +0 -179
- jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/__init__.pyi +0 -285
- jaclang/vendor/mypy/typeshed/stdlib/importlib/metadata/_meta.pyi +0 -49
- jaclang/vendor/mypy/typeshed/stdlib/importlib/readers.pyi +0 -68
- jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/__init__.pyi +0 -46
- jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/abc.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/readers.pyi +0 -14
- jaclang/vendor/mypy/typeshed/stdlib/importlib/resources/simple.pyi +0 -56
- jaclang/vendor/mypy/typeshed/stdlib/importlib/simple.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/importlib/util.pyi +0 -43
- jaclang/vendor/mypy/typeshed/stdlib/inspect.pyi +0 -632
- jaclang/vendor/mypy/typeshed/stdlib/io.pyi +0 -238
- jaclang/vendor/mypy/typeshed/stdlib/ipaddress.pyi +0 -208
- jaclang/vendor/mypy/typeshed/stdlib/itertools.pyi +0 -273
- jaclang/vendor/mypy/typeshed/stdlib/json/__init__.pyi +0 -61
- jaclang/vendor/mypy/typeshed/stdlib/json/decoder.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/json/encoder.pyi +0 -40
- jaclang/vendor/mypy/typeshed/stdlib/json/tool.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/keyword.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/btm_matcher.pyi +0 -28
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixer_base.pyi +0 -42
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_apply.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_asserts.pyi +0 -10
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_basestring.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_buffer.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_dict.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_except.pyi +0 -14
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exec.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_execfile.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_exitfunc.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_filter.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_funcattrs.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_future.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_getcwdu.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_has_key.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_idioms.pyi +0 -15
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_import.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_imports2.pyi +0 -6
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_input.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_intern.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_isinstance.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_itertools_imports.pyi +0 -7
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_long.pyi +0 -7
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_map.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_metaclass.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_methodattrs.pyi +0 -10
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ne.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_next.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_nonzero.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_numliterals.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_operator.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_paren.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_print.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raise.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_raw_input.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reduce.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_reload.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_renames.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_repr.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_set_literal.pyi +0 -7
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_standarderror.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_sys_exc.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_throw.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_tuple_params.pyi +0 -17
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_types.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_unicode.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_urllib.pyi +0 -15
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_ws_comma.pyi +0 -12
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xrange.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_xreadlines.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/fixes/fix_zip.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/main.pyi +0 -42
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/__init__.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/driver.pyi +0 -27
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/grammar.pyi +0 -24
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/literals.pyi +0 -7
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/parse.pyi +0 -30
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/pgen.pyi +0 -50
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/token.pyi +0 -67
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pgen2/tokenize.pyi +0 -96
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pygram.pyi +0 -114
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/pytree.pyi +0 -117
- jaclang/vendor/mypy/typeshed/stdlib/lib2to3/refactor.pyi +0 -82
- jaclang/vendor/mypy/typeshed/stdlib/linecache.pyi +0 -23
- jaclang/vendor/mypy/typeshed/stdlib/locale.pyi +0 -152
- jaclang/vendor/mypy/typeshed/stdlib/logging/__init__.pyi +0 -658
- jaclang/vendor/mypy/typeshed/stdlib/logging/config.pyi +0 -134
- jaclang/vendor/mypy/typeshed/stdlib/logging/handlers.pyi +0 -275
- jaclang/vendor/mypy/typeshed/stdlib/lzma.pyi +0 -197
- jaclang/vendor/mypy/typeshed/stdlib/mailbox.pyi +0 -256
- jaclang/vendor/mypy/typeshed/stdlib/mailcap.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/marshal.pyi +0 -33
- jaclang/vendor/mypy/typeshed/stdlib/math.pyi +0 -125
- jaclang/vendor/mypy/typeshed/stdlib/mimetypes.pyi +0 -46
- jaclang/vendor/mypy/typeshed/stdlib/mmap.pyi +0 -113
- jaclang/vendor/mypy/typeshed/stdlib/modulefinder.pyi +0 -66
- jaclang/vendor/mypy/typeshed/stdlib/msilib/__init__.pyi +0 -177
- jaclang/vendor/mypy/typeshed/stdlib/msilib/schema.pyi +0 -94
- jaclang/vendor/mypy/typeshed/stdlib/msilib/sequence.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/msilib/text.pyi +0 -7
- jaclang/vendor/mypy/typeshed/stdlib/msvcrt.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/__init__.pyi +0 -90
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/connection.pyi +0 -75
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/context.pyi +0 -189
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/__init__.pyi +0 -77
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/dummy/connection.pyi +0 -39
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/forkserver.pyi +0 -31
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/heap.pyi +0 -36
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/managers.pyi +0 -212
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/pool.pyi +0 -103
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_fork.pyi +0 -23
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_forkserver.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_posix.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/popen_spawn_win32.pyi +0 -30
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/process.pyi +0 -39
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/queues.pyi +0 -41
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/reduction.pyi +0 -90
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_sharer.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/resource_tracker.pyi +0 -18
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/shared_memory.pyi +0 -40
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/sharedctypes.pyi +0 -107
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/spawn.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/synchronize.pyi +0 -54
- jaclang/vendor/mypy/typeshed/stdlib/multiprocessing/util.pyi +0 -98
- jaclang/vendor/mypy/typeshed/stdlib/netrc.pyi +0 -23
- jaclang/vendor/mypy/typeshed/stdlib/nis.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/nntplib.pyi +0 -125
- jaclang/vendor/mypy/typeshed/stdlib/nt.pyi +0 -111
- jaclang/vendor/mypy/typeshed/stdlib/ntpath.pyi +0 -119
- jaclang/vendor/mypy/typeshed/stdlib/nturl2path.pyi +0 -2
- jaclang/vendor/mypy/typeshed/stdlib/numbers.pyi +0 -209
- jaclang/vendor/mypy/typeshed/stdlib/opcode.pyi +0 -59
- jaclang/vendor/mypy/typeshed/stdlib/operator.pyi +0 -110
- jaclang/vendor/mypy/typeshed/stdlib/optparse.pyi +0 -255
- jaclang/vendor/mypy/typeshed/stdlib/os/__init__.pyi +0 -1157
- jaclang/vendor/mypy/typeshed/stdlib/os/path.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/ossaudiodev.pyi +0 -131
- jaclang/vendor/mypy/typeshed/stdlib/parser.pyi +0 -24
- jaclang/vendor/mypy/typeshed/stdlib/pathlib.pyi +0 -232
- jaclang/vendor/mypy/typeshed/stdlib/pdb.pyi +0 -181
- jaclang/vendor/mypy/typeshed/stdlib/pickle.pyi +0 -271
- jaclang/vendor/mypy/typeshed/stdlib/pickletools.pyi +0 -167
- jaclang/vendor/mypy/typeshed/stdlib/pipes.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/pkgutil.pyi +0 -53
- jaclang/vendor/mypy/typeshed/stdlib/platform.pyi +0 -42
- jaclang/vendor/mypy/typeshed/stdlib/plistlib.pyi +0 -113
- jaclang/vendor/mypy/typeshed/stdlib/poplib.pyi +0 -71
- jaclang/vendor/mypy/typeshed/stdlib/posix.pyi +0 -361
- jaclang/vendor/mypy/typeshed/stdlib/posixpath.pyi +0 -161
- jaclang/vendor/mypy/typeshed/stdlib/pprint.pyi +0 -112
- jaclang/vendor/mypy/typeshed/stdlib/profile.pyi +0 -31
- jaclang/vendor/mypy/typeshed/stdlib/pstats.pyi +0 -80
- jaclang/vendor/mypy/typeshed/stdlib/pty.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/pwd.pyi +0 -28
- jaclang/vendor/mypy/typeshed/stdlib/py_compile.pyi +0 -34
- jaclang/vendor/mypy/typeshed/stdlib/pyclbr.pyi +0 -74
- jaclang/vendor/mypy/typeshed/stdlib/pydoc.pyi +0 -261
- jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/__init__.pyi +0 -0
- jaclang/vendor/mypy/typeshed/stdlib/pydoc_data/topics.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/pyexpat/__init__.pyi +0 -85
- jaclang/vendor/mypy/typeshed/stdlib/pyexpat/errors.pyi +0 -49
- jaclang/vendor/mypy/typeshed/stdlib/pyexpat/model.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/queue.pyi +0 -66
- jaclang/vendor/mypy/typeshed/stdlib/quopri.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/random.pyi +0 -138
- jaclang/vendor/mypy/typeshed/stdlib/re.pyi +0 -290
- jaclang/vendor/mypy/typeshed/stdlib/readline.pyi +0 -36
- jaclang/vendor/mypy/typeshed/stdlib/reprlib.pyi +0 -65
- jaclang/vendor/mypy/typeshed/stdlib/resource.pyi +0 -94
- jaclang/vendor/mypy/typeshed/stdlib/rlcompleter.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/runpy.pyi +0 -24
- jaclang/vendor/mypy/typeshed/stdlib/sched.pyi +0 -42
- jaclang/vendor/mypy/typeshed/stdlib/secrets.pyi +0 -15
- jaclang/vendor/mypy/typeshed/stdlib/select.pyi +0 -155
- jaclang/vendor/mypy/typeshed/stdlib/selectors.pyi +0 -67
- jaclang/vendor/mypy/typeshed/stdlib/shelve.pyi +0 -46
- jaclang/vendor/mypy/typeshed/stdlib/shlex.pyi +0 -63
- jaclang/vendor/mypy/typeshed/stdlib/shutil.pyi +0 -185
- jaclang/vendor/mypy/typeshed/stdlib/signal.pyi +0 -188
- jaclang/vendor/mypy/typeshed/stdlib/site.pyi +0 -27
- jaclang/vendor/mypy/typeshed/stdlib/smtpd.pyi +0 -91
- jaclang/vendor/mypy/typeshed/stdlib/smtplib.pyi +0 -204
- jaclang/vendor/mypy/typeshed/stdlib/sndhdr.pyi +0 -14
- jaclang/vendor/mypy/typeshed/stdlib/socket.pyi +0 -825
- jaclang/vendor/mypy/typeshed/stdlib/socketserver.pyi +0 -168
- jaclang/vendor/mypy/typeshed/stdlib/spwd.pyi +0 -41
- jaclang/vendor/mypy/typeshed/stdlib/sqlite3/__init__.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/sqlite3/dbapi2.pyi +0 -551
- jaclang/vendor/mypy/typeshed/stdlib/sre_compile.pyi +0 -11
- jaclang/vendor/mypy/typeshed/stdlib/sre_constants.pyi +0 -130
- jaclang/vendor/mypy/typeshed/stdlib/sre_parse.pyi +0 -104
- jaclang/vendor/mypy/typeshed/stdlib/ssl.pyi +0 -537
- jaclang/vendor/mypy/typeshed/stdlib/stat.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/statistics.pyi +0 -132
- jaclang/vendor/mypy/typeshed/stdlib/string.pyi +0 -83
- jaclang/vendor/mypy/typeshed/stdlib/stringprep.pyi +0 -27
- jaclang/vendor/mypy/typeshed/stdlib/struct.pyi +0 -26
- jaclang/vendor/mypy/typeshed/stdlib/subprocess.pyi +0 -2615
- jaclang/vendor/mypy/typeshed/stdlib/sunau.pyi +0 -86
- jaclang/vendor/mypy/typeshed/stdlib/symbol.pyi +0 -93
- jaclang/vendor/mypy/typeshed/stdlib/symtable.pyi +0 -58
- jaclang/vendor/mypy/typeshed/stdlib/sys/__init__.pyi +0 -373
- jaclang/vendor/mypy/typeshed/stdlib/sys/_monitoring.pyi +0 -52
- jaclang/vendor/mypy/typeshed/stdlib/sysconfig.pyi +0 -48
- jaclang/vendor/mypy/typeshed/stdlib/syslog.pyi +0 -46
- jaclang/vendor/mypy/typeshed/stdlib/tabnanny.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/tarfile.pyi +0 -441
- jaclang/vendor/mypy/typeshed/stdlib/telnetlib.pyi +0 -122
- jaclang/vendor/mypy/typeshed/stdlib/tempfile.pyi +0 -477
- jaclang/vendor/mypy/typeshed/stdlib/termios.pyi +0 -267
- jaclang/vendor/mypy/typeshed/stdlib/textwrap.pyi +0 -103
- jaclang/vendor/mypy/typeshed/stdlib/this.pyi +0 -2
- jaclang/vendor/mypy/typeshed/stdlib/threading.pyi +0 -187
- jaclang/vendor/mypy/typeshed/stdlib/time.pyi +0 -108
- jaclang/vendor/mypy/typeshed/stdlib/timeit.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/__init__.pyi +0 -3654
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/colorchooser.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/commondialog.pyi +0 -14
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/constants.pyi +0 -80
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/dialog.pyi +0 -16
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/dnd.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/filedialog.pyi +0 -151
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/font.pyi +0 -116
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/messagebox.pyi +0 -44
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/scrolledtext.pyi +0 -9
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/simpledialog.pyi +0 -54
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/tix.pyi +0 -299
- jaclang/vendor/mypy/typeshed/stdlib/tkinter/ttk.pyi +0 -1204
- jaclang/vendor/mypy/typeshed/stdlib/token.pyi +0 -159
- jaclang/vendor/mypy/typeshed/stdlib/tokenize.pyi +0 -177
- jaclang/vendor/mypy/typeshed/stdlib/tomllib.pyi +0 -10
- jaclang/vendor/mypy/typeshed/stdlib/trace.pyi +0 -79
- jaclang/vendor/mypy/typeshed/stdlib/traceback.pyi +0 -262
- jaclang/vendor/mypy/typeshed/stdlib/tracemalloc.pyi +0 -124
- jaclang/vendor/mypy/typeshed/stdlib/tty.pyi +0 -30
- jaclang/vendor/mypy/typeshed/stdlib/turtle.pyi +0 -713
- jaclang/vendor/mypy/typeshed/stdlib/types.pyi +0 -614
- jaclang/vendor/mypy/typeshed/stdlib/typing.pyi +0 -976
- jaclang/vendor/mypy/typeshed/stdlib/typing_extensions.pyi +0 -509
- jaclang/vendor/mypy/typeshed/stdlib/unicodedata.pyi +0 -73
- jaclang/vendor/mypy/typeshed/stdlib/unittest/__init__.pyi +0 -67
- jaclang/vendor/mypy/typeshed/stdlib/unittest/_log.pyi +0 -27
- jaclang/vendor/mypy/typeshed/stdlib/unittest/async_case.pyi +0 -21
- jaclang/vendor/mypy/typeshed/stdlib/unittest/case.pyi +0 -342
- jaclang/vendor/mypy/typeshed/stdlib/unittest/loader.pyi +0 -51
- jaclang/vendor/mypy/typeshed/stdlib/unittest/main.pyi +0 -69
- jaclang/vendor/mypy/typeshed/stdlib/unittest/mock.pyi +0 -430
- jaclang/vendor/mypy/typeshed/stdlib/unittest/result.pyi +0 -47
- jaclang/vendor/mypy/typeshed/stdlib/unittest/runner.pyi +0 -72
- jaclang/vendor/mypy/typeshed/stdlib/unittest/signals.pyi +0 -15
- jaclang/vendor/mypy/typeshed/stdlib/unittest/suite.pyi +0 -22
- jaclang/vendor/mypy/typeshed/stdlib/unittest/util.pyi +0 -23
- jaclang/vendor/mypy/typeshed/stdlib/urllib/__init__.pyi +0 -0
- jaclang/vendor/mypy/typeshed/stdlib/urllib/error.pyi +0 -23
- jaclang/vendor/mypy/typeshed/stdlib/urllib/parse.pyi +0 -210
- jaclang/vendor/mypy/typeshed/stdlib/urllib/request.pyi +0 -400
- jaclang/vendor/mypy/typeshed/stdlib/urllib/response.pyi +0 -43
- jaclang/vendor/mypy/typeshed/stdlib/urllib/robotparser.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/uu.pyi +0 -13
- jaclang/vendor/mypy/typeshed/stdlib/uuid.pyi +0 -100
- jaclang/vendor/mypy/typeshed/stdlib/warnings.pyi +0 -112
- jaclang/vendor/mypy/typeshed/stdlib/wave.pyi +0 -85
- jaclang/vendor/mypy/typeshed/stdlib/weakref.pyi +0 -149
- jaclang/vendor/mypy/typeshed/stdlib/webbrowser.pyi +0 -74
- jaclang/vendor/mypy/typeshed/stdlib/winreg.pyi +0 -132
- jaclang/vendor/mypy/typeshed/stdlib/winsound.pyi +0 -28
- jaclang/vendor/mypy/typeshed/stdlib/wsgiref/__init__.pyi +0 -0
- jaclang/vendor/mypy/typeshed/stdlib/wsgiref/handlers.pyi +0 -91
- jaclang/vendor/mypy/typeshed/stdlib/wsgiref/headers.pyi +0 -26
- jaclang/vendor/mypy/typeshed/stdlib/wsgiref/simple_server.pyi +0 -37
- jaclang/vendor/mypy/typeshed/stdlib/wsgiref/types.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/wsgiref/util.pyi +0 -24
- jaclang/vendor/mypy/typeshed/stdlib/wsgiref/validate.pyi +0 -50
- jaclang/vendor/mypy/typeshed/stdlib/xdrlib.pyi +0 -57
- jaclang/vendor/mypy/typeshed/stdlib/xml/__init__.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/NodeFilter.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/__init__.pyi +0 -69
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/domreg.pyi +0 -8
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/expatbuilder.pyi +0 -100
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minicompat.pyi +0 -22
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/minidom.pyi +0 -404
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/pulldom.pyi +0 -94
- jaclang/vendor/mypy/typeshed/stdlib/xml/dom/xmlbuilder.pyi +0 -108
- jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementInclude.pyi +0 -28
- jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementPath.pyi +0 -34
- jaclang/vendor/mypy/typeshed/stdlib/xml/etree/ElementTree.pyi +0 -327
- jaclang/vendor/mypy/typeshed/stdlib/xml/etree/__init__.pyi +0 -0
- jaclang/vendor/mypy/typeshed/stdlib/xml/etree/cElementTree.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/__init__.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/__init__.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/errors.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/xml/parsers/expat/model.pyi +0 -1
- jaclang/vendor/mypy/typeshed/stdlib/xml/sax/__init__.pyi +0 -25
- jaclang/vendor/mypy/typeshed/stdlib/xml/sax/_exceptions.pyi +0 -19
- jaclang/vendor/mypy/typeshed/stdlib/xml/sax/handler.pyi +0 -55
- jaclang/vendor/mypy/typeshed/stdlib/xml/sax/saxutils.pyi +0 -60
- jaclang/vendor/mypy/typeshed/stdlib/xml/sax/xmlreader.pyi +0 -87
- jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/__init__.pyi +0 -0
- jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/client.pyi +0 -296
- jaclang/vendor/mypy/typeshed/stdlib/xmlrpc/server.pyi +0 -143
- jaclang/vendor/mypy/typeshed/stdlib/xxlimited.pyi +0 -22
- jaclang/vendor/mypy/typeshed/stdlib/zipapp.pyi +0 -20
- jaclang/vendor/mypy/typeshed/stdlib/zipfile/__init__.pyi +0 -306
- jaclang/vendor/mypy/typeshed/stdlib/zipfile/_path.pyi +0 -95
- jaclang/vendor/mypy/typeshed/stdlib/zipimport.pyi +0 -32
- jaclang/vendor/mypy/typeshed/stdlib/zlib.pyi +0 -56
- jaclang/vendor/mypy/typeshed/stdlib/zoneinfo/__init__.pyi +0 -38
- jaclang/vendor/mypy/typeshed/stubs/mypy-extensions/mypy_extensions.pyi +0 -218
- jaclang/vendor/mypy/typestate.py +0 -323
- jaclang/vendor/mypy/typetraverser.py +0 -148
- jaclang/vendor/mypy/typevars.py +0 -93
- jaclang/vendor/mypy/typevartuples.py +0 -32
- jaclang/vendor/mypy/util.py +0 -869
- jaclang/vendor/mypy/version.py +0 -1
- jaclang/vendor/mypy/visitor.py +0 -621
- jaclang/vendor/mypy/xml/mypy-html.css +0 -104
- jaclang/vendor/mypy/xml/mypy-html.xslt +0 -81
- jaclang/vendor/mypy/xml/mypy-txt.xslt +0 -100
- jaclang/vendor/mypy/xml/mypy.xsd +0 -50
- jaclang/vendor/mypy-1.10.0.dist-info/LICENSE +0 -229
- jaclang/vendor/mypy-1.10.0.dist-info/METADATA +0 -48
- jaclang/vendor/mypy-1.10.0.dist-info/RECORD +0 -1241
- jaclang/vendor/mypy-1.10.0.dist-info/WHEEL +0 -6
- jaclang/vendor/mypy-1.10.0.dist-info/entry_points.txt +0 -6
- jaclang/vendor/mypy-1.10.0.dist-info/top_level.txt +0 -3
- jaclang/vendor/mypy_extensions-1.0.0.dist-info/LICENSE +0 -27
- jaclang/vendor/mypy_extensions-1.0.0.dist-info/METADATA +0 -29
- jaclang/vendor/mypy_extensions-1.0.0.dist-info/RECORD +0 -6
- jaclang/vendor/mypy_extensions-1.0.0.dist-info/top_level.txt +0 -1
- jaclang/vendor/mypy_extensions.py +0 -213
- jaclang/vendor/mypyc/README.md +0 -133
- jaclang/vendor/mypyc/__init__.py +0 -0
- jaclang/vendor/mypyc/__main__.py +0 -57
- jaclang/vendor/mypyc/analysis/__init__.py +0 -0
- jaclang/vendor/mypyc/analysis/attrdefined.py +0 -436
- jaclang/vendor/mypyc/analysis/blockfreq.py +0 -32
- jaclang/vendor/mypyc/analysis/dataflow.py +0 -628
- jaclang/vendor/mypyc/analysis/ircheck.py +0 -433
- jaclang/vendor/mypyc/analysis/selfleaks.py +0 -211
- jaclang/vendor/mypyc/build.py +0 -616
- jaclang/vendor/mypyc/codegen/__init__.py +0 -0
- jaclang/vendor/mypyc/codegen/cstring.py +0 -54
- jaclang/vendor/mypyc/codegen/emit.py +0 -1193
- jaclang/vendor/mypyc/codegen/emitclass.py +0 -1060
- jaclang/vendor/mypyc/codegen/emitfunc.py +0 -852
- jaclang/vendor/mypyc/codegen/emitmodule.py +0 -1136
- jaclang/vendor/mypyc/codegen/emitwrapper.py +0 -979
- jaclang/vendor/mypyc/codegen/literals.py +0 -302
- jaclang/vendor/mypyc/common.py +0 -136
- jaclang/vendor/mypyc/crash.py +0 -31
- jaclang/vendor/mypyc/doc/Makefile +0 -20
- jaclang/vendor/mypyc/doc/bool_operations.rst +0 -27
- jaclang/vendor/mypyc/doc/compilation_units.rst +0 -20
- jaclang/vendor/mypyc/doc/conf.py +0 -59
- jaclang/vendor/mypyc/doc/cpython-timings.md +0 -25
- jaclang/vendor/mypyc/doc/dev-intro.md +0 -548
- jaclang/vendor/mypyc/doc/dict_operations.rst +0 -59
- jaclang/vendor/mypyc/doc/differences_from_python.rst +0 -332
- jaclang/vendor/mypyc/doc/float_operations.rst +0 -50
- jaclang/vendor/mypyc/doc/future.md +0 -42
- jaclang/vendor/mypyc/doc/getting_started.rst +0 -240
- jaclang/vendor/mypyc/doc/index.rst +0 -61
- jaclang/vendor/mypyc/doc/int_operations.rst +0 -162
- jaclang/vendor/mypyc/doc/introduction.rst +0 -150
- jaclang/vendor/mypyc/doc/list_operations.rst +0 -65
- jaclang/vendor/mypyc/doc/make.bat +0 -35
- jaclang/vendor/mypyc/doc/native_classes.rst +0 -206
- jaclang/vendor/mypyc/doc/native_operations.rst +0 -55
- jaclang/vendor/mypyc/doc/performance_tips_and_tricks.rst +0 -244
- jaclang/vendor/mypyc/doc/set_operations.rst +0 -47
- jaclang/vendor/mypyc/doc/str_operations.rst +0 -35
- jaclang/vendor/mypyc/doc/tuple_operations.rst +0 -33
- jaclang/vendor/mypyc/doc/using_type_annotations.rst +0 -398
- jaclang/vendor/mypyc/errors.py +0 -29
- jaclang/vendor/mypyc/external/googletest/LICENSE +0 -28
- jaclang/vendor/mypyc/external/googletest/README.md +0 -280
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-death-test.h +0 -294
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-message.h +0 -250
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h +0 -1444
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-param-test.h.pump +0 -510
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-printers.h +0 -993
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-spi.h +0 -232
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-test-part.h +0 -179
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest-typed-test.h +0 -263
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest.h +0 -2236
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_pred_impl.h +0 -358
- jaclang/vendor/mypyc/external/googletest/include/gtest/gtest_prod.h +0 -58
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-port.h +0 -69
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest-printers.h +0 -42
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/custom/gtest.h +0 -41
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-death-test-internal.h +0 -319
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-filepath.h +0 -206
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-internal.h +0 -1238
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-linked_ptr.h +0 -243
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h +0 -5146
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util-generated.h.pump +0 -286
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-param-util.h +0 -731
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port-arch.h +0 -93
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-port.h +0 -2560
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-string.h +0 -167
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h +0 -1020
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-tuple.h.pump +0 -347
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h +0 -3331
- jaclang/vendor/mypyc/external/googletest/include/gtest/internal/gtest-type-util.h.pump +0 -297
- jaclang/vendor/mypyc/external/googletest/make/Makefile +0 -61
- jaclang/vendor/mypyc/external/googletest/src/gtest-all.cc +0 -48
- jaclang/vendor/mypyc/external/googletest/src/gtest-death-test.cc +0 -1342
- jaclang/vendor/mypyc/external/googletest/src/gtest-filepath.cc +0 -387
- jaclang/vendor/mypyc/external/googletest/src/gtest-internal-inl.h +0 -1183
- jaclang/vendor/mypyc/external/googletest/src/gtest-port.cc +0 -1259
- jaclang/vendor/mypyc/external/googletest/src/gtest-printers.cc +0 -373
- jaclang/vendor/mypyc/external/googletest/src/gtest-test-part.cc +0 -110
- jaclang/vendor/mypyc/external/googletest/src/gtest-typed-test.cc +0 -118
- jaclang/vendor/mypyc/external/googletest/src/gtest.cc +0 -5388
- jaclang/vendor/mypyc/external/googletest/src/gtest_main.cc +0 -38
- jaclang/vendor/mypyc/ir/__init__.py +0 -0
- jaclang/vendor/mypyc/ir/class_ir.py +0 -499
- jaclang/vendor/mypyc/ir/func_ir.py +0 -370
- jaclang/vendor/mypyc/ir/module_ir.py +0 -88
- jaclang/vendor/mypyc/ir/ops.py +0 -1727
- jaclang/vendor/mypyc/ir/pprint.py +0 -516
- jaclang/vendor/mypyc/ir/rtypes.py +0 -1038
- jaclang/vendor/mypyc/irbuild/__init__.py +0 -0
- jaclang/vendor/mypyc/irbuild/ast_helpers.py +0 -123
- jaclang/vendor/mypyc/irbuild/builder.py +0 -1394
- jaclang/vendor/mypyc/irbuild/callable_class.py +0 -173
- jaclang/vendor/mypyc/irbuild/classdef.py +0 -850
- jaclang/vendor/mypyc/irbuild/constant_fold.py +0 -95
- jaclang/vendor/mypyc/irbuild/context.py +0 -186
- jaclang/vendor/mypyc/irbuild/env_class.py +0 -223
- jaclang/vendor/mypyc/irbuild/expression.py +0 -1070
- jaclang/vendor/mypyc/irbuild/for_helpers.py +0 -1075
- jaclang/vendor/mypyc/irbuild/format_str_tokenizer.py +0 -250
- jaclang/vendor/mypyc/irbuild/function.py +0 -1088
- jaclang/vendor/mypyc/irbuild/generator.py +0 -346
- jaclang/vendor/mypyc/irbuild/ll_builder.py +0 -2389
- jaclang/vendor/mypyc/irbuild/main.py +0 -153
- jaclang/vendor/mypyc/irbuild/mapper.py +0 -221
- jaclang/vendor/mypyc/irbuild/match.py +0 -355
- jaclang/vendor/mypyc/irbuild/nonlocalcontrol.py +0 -197
- jaclang/vendor/mypyc/irbuild/prebuildvisitor.py +0 -203
- jaclang/vendor/mypyc/irbuild/prepare.py +0 -609
- jaclang/vendor/mypyc/irbuild/specialize.py +0 -822
- jaclang/vendor/mypyc/irbuild/statement.py +0 -1017
- jaclang/vendor/mypyc/irbuild/targets.py +0 -57
- jaclang/vendor/mypyc/irbuild/util.py +0 -189
- jaclang/vendor/mypyc/irbuild/visitor.py +0 -401
- jaclang/vendor/mypyc/irbuild/vtable.py +0 -82
- jaclang/vendor/mypyc/lib-rt/CPy.h +0 -638
- jaclang/vendor/mypyc/lib-rt/bytes_ops.c +0 -143
- jaclang/vendor/mypyc/lib-rt/dict_ops.c +0 -446
- jaclang/vendor/mypyc/lib-rt/exc_ops.c +0 -259
- jaclang/vendor/mypyc/lib-rt/float_ops.c +0 -192
- jaclang/vendor/mypyc/lib-rt/generic_ops.c +0 -64
- jaclang/vendor/mypyc/lib-rt/getargs.c +0 -450
- jaclang/vendor/mypyc/lib-rt/getargsfast.c +0 -569
- jaclang/vendor/mypyc/lib-rt/init.c +0 -13
- jaclang/vendor/mypyc/lib-rt/int_ops.c +0 -803
- jaclang/vendor/mypyc/lib-rt/list_ops.c +0 -335
- jaclang/vendor/mypyc/lib-rt/misc_ops.c +0 -942
- jaclang/vendor/mypyc/lib-rt/module_shim.tmpl +0 -18
- jaclang/vendor/mypyc/lib-rt/mypyc_util.h +0 -118
- jaclang/vendor/mypyc/lib-rt/pythoncapi_compat.h +0 -497
- jaclang/vendor/mypyc/lib-rt/pythonsupport.h +0 -533
- jaclang/vendor/mypyc/lib-rt/set_ops.c +0 -17
- jaclang/vendor/mypyc/lib-rt/setup.py +0 -70
- jaclang/vendor/mypyc/lib-rt/str_ops.c +0 -241
- jaclang/vendor/mypyc/lib-rt/test_capi.cc +0 -585
- jaclang/vendor/mypyc/lib-rt/tuple_ops.c +0 -61
- jaclang/vendor/mypyc/lower/__init__.py +0 -0
- jaclang/vendor/mypyc/lower/int_ops.py +0 -113
- jaclang/vendor/mypyc/lower/list_ops.py +0 -45
- jaclang/vendor/mypyc/lower/misc_ops.py +0 -12
- jaclang/vendor/mypyc/lower/registry.py +0 -26
- jaclang/vendor/mypyc/namegen.py +0 -115
- jaclang/vendor/mypyc/options.py +0 -32
- jaclang/vendor/mypyc/primitives/__init__.py +0 -0
- jaclang/vendor/mypyc/primitives/bytes_ops.py +0 -101
- jaclang/vendor/mypyc/primitives/dict_ops.py +0 -325
- jaclang/vendor/mypyc/primitives/exc_ops.py +0 -101
- jaclang/vendor/mypyc/primitives/float_ops.py +0 -168
- jaclang/vendor/mypyc/primitives/generic_ops.py +0 -384
- jaclang/vendor/mypyc/primitives/int_ops.py +0 -303
- jaclang/vendor/mypyc/primitives/list_ops.py +0 -310
- jaclang/vendor/mypyc/primitives/misc_ops.py +0 -267
- jaclang/vendor/mypyc/primitives/registry.py +0 -360
- jaclang/vendor/mypyc/primitives/set_ops.py +0 -121
- jaclang/vendor/mypyc/primitives/str_ops.py +0 -229
- jaclang/vendor/mypyc/primitives/tuple_ops.py +0 -83
- jaclang/vendor/mypyc/rt_subtype.py +0 -77
- jaclang/vendor/mypyc/sametype.py +0 -83
- jaclang/vendor/mypyc/subtype.py +0 -88
- jaclang/vendor/mypyc/test/__init__.py +0 -0
- jaclang/vendor/mypyc/test/config.py +0 -13
- jaclang/vendor/mypyc/test/test_alwaysdefined.py +0 -46
- jaclang/vendor/mypyc/test/test_analysis.py +0 -77
- jaclang/vendor/mypyc/test/test_cheader.py +0 -53
- jaclang/vendor/mypyc/test/test_commandline.py +0 -82
- jaclang/vendor/mypyc/test/test_emit.py +0 -69
- jaclang/vendor/mypyc/test/test_emitclass.py +0 -35
- jaclang/vendor/mypyc/test/test_emitfunc.py +0 -928
- jaclang/vendor/mypyc/test/test_emitwrapper.py +0 -60
- jaclang/vendor/mypyc/test/test_exceptions.py +0 -56
- jaclang/vendor/mypyc/test/test_external.py +0 -49
- jaclang/vendor/mypyc/test/test_irbuild.py +0 -87
- jaclang/vendor/mypyc/test/test_ircheck.py +0 -199
- jaclang/vendor/mypyc/test/test_literals.py +0 -90
- jaclang/vendor/mypyc/test/test_lowering.py +0 -56
- jaclang/vendor/mypyc/test/test_namegen.py +0 -48
- jaclang/vendor/mypyc/test/test_optimizations.py +0 -68
- jaclang/vendor/mypyc/test/test_pprint.py +0 -42
- jaclang/vendor/mypyc/test/test_rarray.py +0 -48
- jaclang/vendor/mypyc/test/test_refcount.py +0 -59
- jaclang/vendor/mypyc/test/test_run.py +0 -426
- jaclang/vendor/mypyc/test/test_serialization.py +0 -108
- jaclang/vendor/mypyc/test/test_struct.py +0 -112
- jaclang/vendor/mypyc/test/test_tuplename.py +0 -33
- jaclang/vendor/mypyc/test/test_typeops.py +0 -97
- jaclang/vendor/mypyc/test/testutil.py +0 -283
- jaclang/vendor/mypyc/test-data/alwaysdefined.test +0 -732
- jaclang/vendor/mypyc/test-data/analysis.test +0 -470
- jaclang/vendor/mypyc/test-data/commandline.test +0 -245
- jaclang/vendor/mypyc/test-data/driver/driver.py +0 -48
- jaclang/vendor/mypyc/test-data/exceptions-freq.test +0 -125
- jaclang/vendor/mypyc/test-data/exceptions.test +0 -699
- jaclang/vendor/mypyc/test-data/fixtures/ir.py +0 -373
- jaclang/vendor/mypyc/test-data/fixtures/testutil.py +0 -103
- jaclang/vendor/mypyc/test-data/fixtures/typing-full.pyi +0 -169
- jaclang/vendor/mypyc/test-data/irbuild-any.test +0 -236
- jaclang/vendor/mypyc/test-data/irbuild-basic.test +0 -3399
- jaclang/vendor/mypyc/test-data/irbuild-bool.test +0 -424
- jaclang/vendor/mypyc/test-data/irbuild-bytes.test +0 -181
- jaclang/vendor/mypyc/test-data/irbuild-classes.test +0 -1302
- jaclang/vendor/mypyc/test-data/irbuild-constant-fold.test +0 -480
- jaclang/vendor/mypyc/test-data/irbuild-dict.test +0 -584
- jaclang/vendor/mypyc/test-data/irbuild-dunders.test +0 -215
- jaclang/vendor/mypyc/test-data/irbuild-float.test +0 -497
- jaclang/vendor/mypyc/test-data/irbuild-generics.test +0 -150
- jaclang/vendor/mypyc/test-data/irbuild-glue-methods.test +0 -437
- jaclang/vendor/mypyc/test-data/irbuild-i16.test +0 -526
- jaclang/vendor/mypyc/test-data/irbuild-i32.test +0 -598
- jaclang/vendor/mypyc/test-data/irbuild-i64.test +0 -2144
- jaclang/vendor/mypyc/test-data/irbuild-int.test +0 -194
- jaclang/vendor/mypyc/test-data/irbuild-isinstance.test +0 -109
- jaclang/vendor/mypyc/test-data/irbuild-lists.test +0 -513
- jaclang/vendor/mypyc/test-data/irbuild-match.test +0 -1717
- jaclang/vendor/mypyc/test-data/irbuild-math.test +0 -64
- jaclang/vendor/mypyc/test-data/irbuild-nested.test +0 -807
- jaclang/vendor/mypyc/test-data/irbuild-optional.test +0 -536
- jaclang/vendor/mypyc/test-data/irbuild-set.test +0 -806
- jaclang/vendor/mypyc/test-data/irbuild-singledispatch.test +0 -257
- jaclang/vendor/mypyc/test-data/irbuild-statements.test +0 -1060
- jaclang/vendor/mypyc/test-data/irbuild-str.test +0 -312
- jaclang/vendor/mypyc/test-data/irbuild-strip-asserts.test +0 -12
- jaclang/vendor/mypyc/test-data/irbuild-try.test +0 -523
- jaclang/vendor/mypyc/test-data/irbuild-tuple.test +0 -386
- jaclang/vendor/mypyc/test-data/irbuild-u8.test +0 -543
- jaclang/vendor/mypyc/test-data/irbuild-unreachable.test +0 -241
- jaclang/vendor/mypyc/test-data/irbuild-vectorcall.test +0 -153
- jaclang/vendor/mypyc/test-data/lowering-int.test +0 -377
- jaclang/vendor/mypyc/test-data/lowering-list.test +0 -33
- jaclang/vendor/mypyc/test-data/opt-copy-propagation.test +0 -400
- jaclang/vendor/mypyc/test-data/opt-flag-elimination.test +0 -296
- jaclang/vendor/mypyc/test-data/refcount.test +0 -1482
- jaclang/vendor/mypyc/test-data/run-async.test +0 -173
- jaclang/vendor/mypyc/test-data/run-attrs.test +0 -318
- jaclang/vendor/mypyc/test-data/run-bench.test +0 -196
- jaclang/vendor/mypyc/test-data/run-bools.test +0 -229
- jaclang/vendor/mypyc/test-data/run-bytes.test +0 -302
- jaclang/vendor/mypyc/test-data/run-classes.test +0 -2505
- jaclang/vendor/mypyc/test-data/run-dicts.test +0 -334
- jaclang/vendor/mypyc/test-data/run-dunders.test +0 -945
- jaclang/vendor/mypyc/test-data/run-exceptions.test +0 -448
- jaclang/vendor/mypyc/test-data/run-floats.test +0 -516
- jaclang/vendor/mypyc/test-data/run-functions.test +0 -1310
- jaclang/vendor/mypyc/test-data/run-generators.test +0 -682
- jaclang/vendor/mypyc/test-data/run-i16.test +0 -338
- jaclang/vendor/mypyc/test-data/run-i32.test +0 -336
- jaclang/vendor/mypyc/test-data/run-i64.test +0 -1519
- jaclang/vendor/mypyc/test-data/run-imports.test +0 -265
- jaclang/vendor/mypyc/test-data/run-integers.test +0 -540
- jaclang/vendor/mypyc/test-data/run-lists.test +0 -411
- jaclang/vendor/mypyc/test-data/run-loops.test +0 -485
- jaclang/vendor/mypyc/test-data/run-match.test +0 -283
- jaclang/vendor/mypyc/test-data/run-math.test +0 -106
- jaclang/vendor/mypyc/test-data/run-misc.test +0 -1170
- jaclang/vendor/mypyc/test-data/run-multimodule.test +0 -887
- jaclang/vendor/mypyc/test-data/run-mypy-sim.test +0 -138
- jaclang/vendor/mypyc/test-data/run-primitives.test +0 -375
- jaclang/vendor/mypyc/test-data/run-python37.test +0 -159
- jaclang/vendor/mypyc/test-data/run-python38.test +0 -88
- jaclang/vendor/mypyc/test-data/run-sets.test +0 -150
- jaclang/vendor/mypyc/test-data/run-singledispatch.test +0 -698
- jaclang/vendor/mypyc/test-data/run-strings.test +0 -641
- jaclang/vendor/mypyc/test-data/run-traits.test +0 -411
- jaclang/vendor/mypyc/test-data/run-tuples.test +0 -258
- jaclang/vendor/mypyc/test-data/run-u8.test +0 -303
- jaclang/vendor/mypyc/transform/__init__.py +0 -0
- jaclang/vendor/mypyc/transform/copy_propagation.py +0 -94
- jaclang/vendor/mypyc/transform/exceptions.py +0 -182
- jaclang/vendor/mypyc/transform/flag_elimination.py +0 -108
- jaclang/vendor/mypyc/transform/ir_transform.py +0 -368
- jaclang/vendor/mypyc/transform/lower.py +0 -33
- jaclang/vendor/mypyc/transform/refcount.py +0 -294
- jaclang/vendor/mypyc/transform/uninit.py +0 -190
- jaclang/vendor/typing_extensions-4.12.2.dist-info/LICENSE +0 -279
- jaclang/vendor/typing_extensions-4.12.2.dist-info/METADATA +0 -67
- jaclang/vendor/typing_extensions-4.12.2.dist-info/RECORD +0 -5
- jaclang/vendor/typing_extensions-4.12.2.dist-info/WHEEL +0 -4
- jaclang/vendor/typing_extensions.py +0 -3641
- jaclang-0.7.34.dist-info/RECORD +0 -1563
- /jaclang/{vendor/mypy/dmypy → compiler/larkparse}/__init__.py +0 -0
- /jaclang/{tests → compiler/passes/main/tests}/fixtures/access_checker.jac +0 -0
- /jaclang/langserve/{__init__.py → __init__.jac} +0 -0
- /jaclang/{vendor/mypy/plugins/__init__.py → langserve/tests/fixtures/deep_check_crash.jac} +0 -0
- /jaclang/{vendor/mypy/server/__init__.py → langserve/tests/server_test/code_test.py} +0 -0
- /jaclang/{plugin → runtimelib}/tests/__init__.py +0 -0
- /jaclang/{vendor/mypy/test → tests}/__init__.py +0 -0
- /jaclang/{vendor/mypy/test/meta → tests/fixtures}/__init__.py +0 -0
- /jaclang/tests/fixtures/{architype_def_bug.jac → archetype_def_bug.jac} +0 -0
- /jaclang/vendor/{mypy/typeshed/stdlib/concurrent/__init__.pyi → attrs-25.3.0.dist-info/REQUESTED} +0 -0
- /jaclang/vendor/{attrs-23.2.0.dist-info → attrs-25.3.0.dist-info}/licenses/LICENSE +0 -0
- /jaclang/vendor/{mypy/typeshed/stdlib/distutils/command/__init__.pyi → cattrs-24.1.3.dist-info/REQUESTED} +0 -0
- /jaclang/vendor/{cattrs-23.2.3.dist-info → cattrs-24.1.3.dist-info}/licenses/LICENSE +0 -0
- /jaclang/vendor/{mypy/typeshed/stdlib/distutils/command/bdist_packager.pyi → lark-1.2.2.dist-info/REQUESTED} +0 -0
- /jaclang/vendor/{lark-1.1.9.dist-info → lark-1.2.2.dist-info}/entry_points.txt +0 -0
- /jaclang/vendor/{lark-1.1.9.dist-info → lark-1.2.2.dist-info}/top_level.txt +0 -0
- /jaclang/vendor/{mypy/typeshed/stdlib/email/mime/__init__.pyi → lsprotocol-2023.0.1.dist-info/REQUESTED} +0 -0
- /jaclang/vendor/lsprotocol-2023.0.1.dist-info/{LICENSE → licenses/LICENSE} +0 -0
- /jaclang/vendor/{mypy/typeshed/stdlib/lib2to3/__init__.pyi → pluggy-1.5.0.dist-info/REQUESTED} +0 -0
- /jaclang/vendor/pluggy-1.5.0.dist-info/{LICENSE → licenses/LICENSE} +0 -0
- /jaclang/vendor/{mypy/typeshed/stdlib/lib2to3/fixes/__init__.pyi → pygls-1.3.1.dist-info/REQUESTED} +0 -0
- {jaclang-0.7.34.dist-info → jaclang-0.8.1.dist-info}/entry_points.txt +0 -0
|
@@ -1,40 +1,36 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
1
3
|
from collections import Counter, deque
|
|
4
|
+
from collections.abc import Mapping as AbcMapping
|
|
5
|
+
from collections.abc import MutableMapping as AbcMutableMapping
|
|
2
6
|
from collections.abc import MutableSet as AbcMutableSet
|
|
3
7
|
from dataclasses import Field
|
|
4
8
|
from enum import Enum
|
|
5
|
-
from
|
|
9
|
+
from inspect import Signature
|
|
10
|
+
from inspect import signature as inspect_signature
|
|
6
11
|
from pathlib import Path
|
|
7
|
-
from typing import
|
|
8
|
-
Any,
|
|
9
|
-
Callable,
|
|
10
|
-
Deque,
|
|
11
|
-
Dict,
|
|
12
|
-
Iterable,
|
|
13
|
-
List,
|
|
14
|
-
Optional,
|
|
15
|
-
Tuple,
|
|
16
|
-
Type,
|
|
17
|
-
TypeVar,
|
|
18
|
-
Union,
|
|
19
|
-
)
|
|
12
|
+
from typing import Any, Callable, Iterable, Optional, Tuple, TypeVar, overload
|
|
20
13
|
|
|
21
|
-
from attrs import Attribute
|
|
14
|
+
from attrs import Attribute, resolve_types
|
|
22
15
|
from attrs import has as attrs_has
|
|
23
|
-
from attrs import resolve_types
|
|
24
16
|
|
|
25
17
|
from ._compat import (
|
|
18
|
+
ANIES,
|
|
26
19
|
FrozenSetSubscriptable,
|
|
27
20
|
Mapping,
|
|
28
21
|
MutableMapping,
|
|
29
22
|
MutableSequence,
|
|
23
|
+
NoneType,
|
|
30
24
|
OriginAbstractSet,
|
|
31
25
|
OriginMutableSet,
|
|
32
26
|
Sequence,
|
|
33
27
|
Set,
|
|
28
|
+
TypeAlias,
|
|
34
29
|
fields,
|
|
35
30
|
get_final_base,
|
|
36
31
|
get_newtype_base,
|
|
37
32
|
get_origin,
|
|
33
|
+
get_type_alias_base,
|
|
38
34
|
has,
|
|
39
35
|
has_with_generic,
|
|
40
36
|
is_annotated,
|
|
@@ -48,20 +44,38 @@ from ._compat import (
|
|
|
48
44
|
is_literal,
|
|
49
45
|
is_mapping,
|
|
50
46
|
is_mutable_set,
|
|
47
|
+
is_optional,
|
|
51
48
|
is_protocol,
|
|
52
49
|
is_sequence,
|
|
53
50
|
is_tuple,
|
|
51
|
+
is_type_alias,
|
|
54
52
|
is_typeddict,
|
|
55
53
|
is_union_type,
|
|
54
|
+
signature,
|
|
55
|
+
)
|
|
56
|
+
from .cols import (
|
|
57
|
+
is_namedtuple,
|
|
58
|
+
iterable_unstructure_factory,
|
|
59
|
+
list_structure_factory,
|
|
60
|
+
namedtuple_structure_factory,
|
|
61
|
+
namedtuple_unstructure_factory,
|
|
56
62
|
)
|
|
57
63
|
from .disambiguators import create_default_dis_func, is_supported_union
|
|
58
|
-
from .dispatch import
|
|
64
|
+
from .dispatch import (
|
|
65
|
+
HookFactory,
|
|
66
|
+
MultiStrategyDispatch,
|
|
67
|
+
StructuredValue,
|
|
68
|
+
StructureHook,
|
|
69
|
+
TargetType,
|
|
70
|
+
UnstructuredValue,
|
|
71
|
+
UnstructureHook,
|
|
72
|
+
)
|
|
59
73
|
from .errors import (
|
|
60
74
|
IterableValidationError,
|
|
61
75
|
IterableValidationNote,
|
|
62
76
|
StructureHandlerNotFoundError,
|
|
63
77
|
)
|
|
64
|
-
from .fns import identity, raise_error
|
|
78
|
+
from .fns import Predicate, identity, raise_error
|
|
65
79
|
from .gen import (
|
|
66
80
|
AttributeOverride,
|
|
67
81
|
DictStructureFn,
|
|
@@ -72,7 +86,6 @@ from .gen import (
|
|
|
72
86
|
make_dict_structure_fn,
|
|
73
87
|
make_dict_unstructure_fn,
|
|
74
88
|
make_hetero_tuple_unstructure_fn,
|
|
75
|
-
make_iterable_unstructure_fn,
|
|
76
89
|
make_mapping_structure_fn,
|
|
77
90
|
make_mapping_unstructure_fn,
|
|
78
91
|
)
|
|
@@ -81,10 +94,48 @@ from .gen.typeddicts import make_dict_unstructure_fn as make_typeddict_dict_unst
|
|
|
81
94
|
|
|
82
95
|
__all__ = ["UnstructureStrategy", "BaseConverter", "Converter", "GenConverter"]
|
|
83
96
|
|
|
84
|
-
NoneType = type(None)
|
|
85
97
|
T = TypeVar("T")
|
|
86
98
|
V = TypeVar("V")
|
|
87
99
|
|
|
100
|
+
UnstructureHookFactory = TypeVar(
|
|
101
|
+
"UnstructureHookFactory", bound=HookFactory[UnstructureHook]
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
# The Extended factory also takes a converter.
|
|
105
|
+
ExtendedUnstructureHookFactory: TypeAlias = Callable[[TargetType, T], UnstructureHook]
|
|
106
|
+
|
|
107
|
+
# This typevar for the BaseConverter.
|
|
108
|
+
AnyUnstructureHookFactoryBase = TypeVar(
|
|
109
|
+
"AnyUnstructureHookFactoryBase",
|
|
110
|
+
bound="HookFactory[UnstructureHook] | ExtendedUnstructureHookFactory[BaseConverter]",
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
# This typevar for the Converter.
|
|
114
|
+
AnyUnstructureHookFactory = TypeVar(
|
|
115
|
+
"AnyUnstructureHookFactory",
|
|
116
|
+
bound="HookFactory[UnstructureHook] | ExtendedUnstructureHookFactory[Converter]",
|
|
117
|
+
)
|
|
118
|
+
|
|
119
|
+
StructureHookFactory = TypeVar("StructureHookFactory", bound=HookFactory[StructureHook])
|
|
120
|
+
|
|
121
|
+
# The Extended factory also takes a converter.
|
|
122
|
+
ExtendedStructureHookFactory: TypeAlias = Callable[[TargetType, T], StructureHook]
|
|
123
|
+
|
|
124
|
+
# This typevar for the BaseConverter.
|
|
125
|
+
AnyStructureHookFactoryBase = TypeVar(
|
|
126
|
+
"AnyStructureHookFactoryBase",
|
|
127
|
+
bound="HookFactory[StructureHook] | ExtendedStructureHookFactory[BaseConverter]",
|
|
128
|
+
)
|
|
129
|
+
|
|
130
|
+
# This typevar for the Converter.
|
|
131
|
+
AnyStructureHookFactory = TypeVar(
|
|
132
|
+
"AnyStructureHookFactory",
|
|
133
|
+
bound="HookFactory[StructureHook] | ExtendedStructureHookFactory[Converter]",
|
|
134
|
+
)
|
|
135
|
+
|
|
136
|
+
UnstructureHookT = TypeVar("UnstructureHookT", bound=UnstructureHook)
|
|
137
|
+
StructureHookT = TypeVar("StructureHookT", bound=StructureHook)
|
|
138
|
+
|
|
88
139
|
|
|
89
140
|
class UnstructureStrategy(Enum):
|
|
90
141
|
"""`attrs` classes unstructuring strategies."""
|
|
@@ -93,24 +144,25 @@ class UnstructureStrategy(Enum):
|
|
|
93
144
|
AS_TUPLE = "astuple"
|
|
94
145
|
|
|
95
146
|
|
|
96
|
-
def
|
|
97
|
-
|
|
98
|
-
return lambda cls: issubclass(cls, typ)
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
def is_optional(typ: Type) -> bool:
|
|
102
|
-
return is_union_type(typ) and NoneType in typ.__args__ and len(typ.__args__) == 2
|
|
147
|
+
def is_literal_containing_enums(typ: type) -> bool:
|
|
148
|
+
return is_literal(typ) and any(isinstance(val, Enum) for val in typ.__args__)
|
|
103
149
|
|
|
104
150
|
|
|
105
|
-
def
|
|
106
|
-
|
|
151
|
+
def _is_extended_factory(factory: Callable) -> bool:
|
|
152
|
+
"""Does this factory also accept a converter arg?"""
|
|
153
|
+
# We use the original `inspect.signature` to not evaluate string
|
|
154
|
+
# annotations.
|
|
155
|
+
sig = inspect_signature(factory)
|
|
156
|
+
return (
|
|
157
|
+
len(sig.parameters) >= 2
|
|
158
|
+
and (list(sig.parameters.values())[1]).default is Signature.empty
|
|
159
|
+
)
|
|
107
160
|
|
|
108
161
|
|
|
109
162
|
class BaseConverter:
|
|
110
163
|
"""Converts between structured and unstructured data."""
|
|
111
164
|
|
|
112
165
|
__slots__ = (
|
|
113
|
-
"_dis_func_cache",
|
|
114
166
|
"_unstructure_func",
|
|
115
167
|
"_unstructure_attrs",
|
|
116
168
|
"_structure_attrs",
|
|
@@ -147,6 +199,7 @@ class BaseConverter:
|
|
|
147
199
|
self._prefer_attrib_converters = prefer_attrib_converters
|
|
148
200
|
|
|
149
201
|
self.detailed_validation = detailed_validation
|
|
202
|
+
self._union_struct_registry: dict[Any, Callable[[Any, type[T]], T]] = {}
|
|
150
203
|
|
|
151
204
|
# Create a per-instance cache.
|
|
152
205
|
if unstruct_strat is UnstructureStrategy.AS_DICT:
|
|
@@ -156,9 +209,9 @@ class BaseConverter:
|
|
|
156
209
|
self._unstructure_attrs = self.unstructure_attrs_astuple
|
|
157
210
|
self._structure_attrs = self.structure_attrs_fromtuple
|
|
158
211
|
|
|
159
|
-
self.
|
|
160
|
-
|
|
161
|
-
|
|
212
|
+
self._unstructure_func = MultiStrategyDispatch(
|
|
213
|
+
unstructure_fallback_factory, self
|
|
214
|
+
)
|
|
162
215
|
self._unstructure_func.register_cls_list(
|
|
163
216
|
[(bytes, identity), (str, identity), (Path, str)]
|
|
164
217
|
)
|
|
@@ -170,28 +223,38 @@ class BaseConverter:
|
|
|
170
223
|
),
|
|
171
224
|
(
|
|
172
225
|
lambda t: get_final_base(t) is not None,
|
|
173
|
-
lambda t: self.
|
|
226
|
+
lambda t: self.get_unstructure_hook(get_final_base(t)),
|
|
227
|
+
True,
|
|
228
|
+
),
|
|
229
|
+
(
|
|
230
|
+
is_type_alias,
|
|
231
|
+
lambda t: self.get_unstructure_hook(get_type_alias_base(t)),
|
|
174
232
|
True,
|
|
175
233
|
),
|
|
176
234
|
(is_mapping, self._unstructure_mapping),
|
|
177
235
|
(is_sequence, self._unstructure_seq),
|
|
178
236
|
(is_mutable_set, self._unstructure_seq),
|
|
179
237
|
(is_frozenset, self._unstructure_seq),
|
|
180
|
-
(
|
|
238
|
+
(lambda t: issubclass(t, Enum), self._unstructure_enum),
|
|
181
239
|
(has, self._unstructure_attrs),
|
|
182
240
|
(is_union_type, self._unstructure_union),
|
|
241
|
+
(lambda t: t in ANIES, self.unstructure),
|
|
183
242
|
]
|
|
184
243
|
)
|
|
185
244
|
|
|
186
245
|
# Per-instance register of to-attrs converters.
|
|
187
246
|
# Singledispatch dispatches based on the first argument, so we
|
|
188
247
|
# store the function and switch the arguments in self.loads.
|
|
189
|
-
self._structure_func = MultiStrategyDispatch(structure_fallback_factory)
|
|
248
|
+
self._structure_func = MultiStrategyDispatch(structure_fallback_factory, self)
|
|
190
249
|
self._structure_func.register_func_list(
|
|
191
250
|
[
|
|
192
|
-
(
|
|
251
|
+
(
|
|
252
|
+
lambda cl: cl in ANIES or cl is Optional or cl is None,
|
|
253
|
+
lambda v, _: v,
|
|
254
|
+
),
|
|
193
255
|
(is_generic_attrs, self._gen_structure_generic, True),
|
|
194
256
|
(lambda t: get_newtype_base(t) is not None, self._structure_newtype),
|
|
257
|
+
(is_type_alias, self._find_type_alias_structure_hook, True),
|
|
195
258
|
(
|
|
196
259
|
lambda t: get_final_base(t) is not None,
|
|
197
260
|
self._structure_final_factory,
|
|
@@ -199,18 +262,20 @@ class BaseConverter:
|
|
|
199
262
|
),
|
|
200
263
|
(is_literal, self._structure_simple_literal),
|
|
201
264
|
(is_literal_containing_enums, self._structure_enum_literal),
|
|
202
|
-
(is_sequence,
|
|
265
|
+
(is_sequence, list_structure_factory, "extended"),
|
|
203
266
|
(is_deque, self._structure_deque),
|
|
204
267
|
(is_mutable_set, self._structure_set),
|
|
205
268
|
(is_frozenset, self._structure_frozenset),
|
|
206
269
|
(is_tuple, self._structure_tuple),
|
|
270
|
+
(is_namedtuple, namedtuple_structure_factory, "extended"),
|
|
207
271
|
(is_mapping, self._structure_dict),
|
|
208
272
|
(is_supported_union, self._gen_attrs_union_structure, True),
|
|
273
|
+
(is_optional, self._structure_optional),
|
|
209
274
|
(
|
|
210
275
|
lambda t: is_union_type(t) and t in self._union_struct_registry,
|
|
211
|
-
self.
|
|
276
|
+
self._union_struct_registry.__getitem__,
|
|
277
|
+
True,
|
|
212
278
|
),
|
|
213
|
-
(is_optional, self._structure_optional),
|
|
214
279
|
(has, self._structure_attrs),
|
|
215
280
|
]
|
|
216
281
|
)
|
|
@@ -228,9 +293,6 @@ class BaseConverter:
|
|
|
228
293
|
|
|
229
294
|
self._dict_factory = dict_factory
|
|
230
295
|
|
|
231
|
-
# Unions are instances now, not classes. We use different registries.
|
|
232
|
-
self._union_struct_registry: Dict[Any, Callable[[Any, Type[T]], T]] = {}
|
|
233
|
-
|
|
234
296
|
self._unstruct_copy_skip = self._unstructure_func.get_num_fns()
|
|
235
297
|
self._struct_copy_skip = self._structure_func.get_num_fns()
|
|
236
298
|
|
|
@@ -248,12 +310,36 @@ class BaseConverter:
|
|
|
248
310
|
else UnstructureStrategy.AS_TUPLE
|
|
249
311
|
)
|
|
250
312
|
|
|
251
|
-
|
|
313
|
+
@overload
|
|
314
|
+
def register_unstructure_hook(self, cls: UnstructureHookT) -> UnstructureHookT: ...
|
|
315
|
+
|
|
316
|
+
@overload
|
|
317
|
+
def register_unstructure_hook(self, cls: Any, func: UnstructureHook) -> None: ...
|
|
318
|
+
|
|
319
|
+
def register_unstructure_hook(
|
|
320
|
+
self, cls: Any = None, func: UnstructureHook | None = None
|
|
321
|
+
) -> Callable[[UnstructureHook]] | None:
|
|
252
322
|
"""Register a class-to-primitive converter function for a class.
|
|
253
323
|
|
|
254
324
|
The converter function should take an instance of the class and return
|
|
255
325
|
its Python equivalent.
|
|
326
|
+
|
|
327
|
+
May also be used as a decorator. When used as a decorator, the first
|
|
328
|
+
argument annotation from the decorated function will be used as the
|
|
329
|
+
type to register the hook for.
|
|
330
|
+
|
|
331
|
+
.. versionchanged:: 24.1.0
|
|
332
|
+
This method may now be used as a decorator.
|
|
256
333
|
"""
|
|
334
|
+
if func is None:
|
|
335
|
+
# Autodetecting decorator.
|
|
336
|
+
func = cls
|
|
337
|
+
sig = signature(func)
|
|
338
|
+
cls = next(iter(sig.parameters.values())).annotation
|
|
339
|
+
self.register_unstructure_hook(cls, func)
|
|
340
|
+
|
|
341
|
+
return func
|
|
342
|
+
|
|
257
343
|
if attrs_has(cls):
|
|
258
344
|
resolve_types(cls)
|
|
259
345
|
if is_union_type(cls):
|
|
@@ -263,29 +349,108 @@ class BaseConverter:
|
|
|
263
349
|
self._unstructure_func.register_func_list([(lambda t: t is cls, func)])
|
|
264
350
|
else:
|
|
265
351
|
self._unstructure_func.register_cls_list([(cls, func)])
|
|
352
|
+
return None
|
|
266
353
|
|
|
267
354
|
def register_unstructure_hook_func(
|
|
268
|
-
self, check_func:
|
|
355
|
+
self, check_func: Predicate, func: UnstructureHook
|
|
269
356
|
) -> None:
|
|
270
357
|
"""Register a class-to-primitive converter function for a class, using
|
|
271
358
|
a function to check if it's a match.
|
|
272
359
|
"""
|
|
273
360
|
self._unstructure_func.register_func_list([(check_func, func)])
|
|
274
361
|
|
|
362
|
+
@overload
|
|
275
363
|
def register_unstructure_hook_factory(
|
|
276
|
-
self, predicate:
|
|
277
|
-
) ->
|
|
364
|
+
self, predicate: Predicate
|
|
365
|
+
) -> Callable[[AnyUnstructureHookFactoryBase], AnyUnstructureHookFactoryBase]: ...
|
|
366
|
+
|
|
367
|
+
@overload
|
|
368
|
+
def register_unstructure_hook_factory(
|
|
369
|
+
self, predicate: Predicate, factory: UnstructureHookFactory
|
|
370
|
+
) -> UnstructureHookFactory: ...
|
|
371
|
+
|
|
372
|
+
@overload
|
|
373
|
+
def register_unstructure_hook_factory(
|
|
374
|
+
self,
|
|
375
|
+
predicate: Predicate,
|
|
376
|
+
factory: ExtendedUnstructureHookFactory[BaseConverter],
|
|
377
|
+
) -> ExtendedUnstructureHookFactory[BaseConverter]: ...
|
|
378
|
+
|
|
379
|
+
def register_unstructure_hook_factory(self, predicate, factory=None):
|
|
278
380
|
"""
|
|
279
381
|
Register a hook factory for a given predicate.
|
|
280
382
|
|
|
383
|
+
The hook factory may expose an additional required parameter. In this case,
|
|
384
|
+
the current converter will be provided to the hook factory as that
|
|
385
|
+
parameter.
|
|
386
|
+
|
|
387
|
+
May also be used as a decorator.
|
|
388
|
+
|
|
281
389
|
:param predicate: A function that, given a type, returns whether the factory
|
|
282
390
|
can produce a hook for that type.
|
|
283
391
|
:param factory: A callable that, given a type, produces an unstructuring
|
|
284
392
|
hook for that type. This unstructuring hook will be cached.
|
|
393
|
+
|
|
394
|
+
.. versionchanged:: 24.1.0
|
|
395
|
+
This method may now be used as a decorator.
|
|
396
|
+
The factory may also receive the converter as a second, required argument.
|
|
397
|
+
"""
|
|
398
|
+
if factory is None:
|
|
399
|
+
|
|
400
|
+
def decorator(factory):
|
|
401
|
+
# Is this an extended factory (takes a converter too)?
|
|
402
|
+
if _is_extended_factory(factory):
|
|
403
|
+
self._unstructure_func.register_func_list(
|
|
404
|
+
[(predicate, factory, "extended")]
|
|
405
|
+
)
|
|
406
|
+
else:
|
|
407
|
+
self._unstructure_func.register_func_list(
|
|
408
|
+
[(predicate, factory, True)]
|
|
409
|
+
)
|
|
410
|
+
|
|
411
|
+
return decorator
|
|
412
|
+
|
|
413
|
+
self._unstructure_func.register_func_list(
|
|
414
|
+
[
|
|
415
|
+
(
|
|
416
|
+
predicate,
|
|
417
|
+
factory,
|
|
418
|
+
"extended" if _is_extended_factory(factory) else True,
|
|
419
|
+
)
|
|
420
|
+
]
|
|
421
|
+
)
|
|
422
|
+
return factory
|
|
423
|
+
|
|
424
|
+
def get_unstructure_hook(
|
|
425
|
+
self, type: Any, cache_result: bool = True
|
|
426
|
+
) -> UnstructureHook:
|
|
427
|
+
"""Get the unstructure hook for the given type.
|
|
428
|
+
|
|
429
|
+
This hook can be manually called, or composed with other functions
|
|
430
|
+
and re-registered.
|
|
431
|
+
|
|
432
|
+
If no hook is registered, the converter unstructure fallback factory
|
|
433
|
+
will be used to produce one.
|
|
434
|
+
|
|
435
|
+
:param cache: Whether to cache the returned hook.
|
|
436
|
+
|
|
437
|
+
.. versionadded:: 24.1.0
|
|
285
438
|
"""
|
|
286
|
-
|
|
439
|
+
return (
|
|
440
|
+
self._unstructure_func.dispatch(type)
|
|
441
|
+
if cache_result
|
|
442
|
+
else self._unstructure_func.dispatch_without_caching(type)
|
|
443
|
+
)
|
|
444
|
+
|
|
445
|
+
@overload
|
|
446
|
+
def register_structure_hook(self, cl: StructureHookT) -> StructureHookT: ...
|
|
287
447
|
|
|
288
|
-
|
|
448
|
+
@overload
|
|
449
|
+
def register_structure_hook(self, cl: Any, func: StructureHook) -> None: ...
|
|
450
|
+
|
|
451
|
+
def register_structure_hook(
|
|
452
|
+
self, cl: Any, func: StructureHook | None = None
|
|
453
|
+
) -> None:
|
|
289
454
|
"""Register a primitive-to-class converter function for a type.
|
|
290
455
|
|
|
291
456
|
The converter function should take two arguments:
|
|
@@ -294,7 +459,21 @@ class BaseConverter:
|
|
|
294
459
|
|
|
295
460
|
and return the instance of the class. The type may seem redundant, but
|
|
296
461
|
is sometimes needed (for example, when dealing with generic classes).
|
|
462
|
+
|
|
463
|
+
This method may be used as a decorator. In this case, the decorated
|
|
464
|
+
hook must have a return type annotation, and this annotation will be used
|
|
465
|
+
as the type for the hook.
|
|
466
|
+
|
|
467
|
+
.. versionchanged:: 24.1.0
|
|
468
|
+
This method may now be used as a decorator.
|
|
297
469
|
"""
|
|
470
|
+
if func is None:
|
|
471
|
+
# The autodetecting decorator.
|
|
472
|
+
func = cl
|
|
473
|
+
sig = signature(func)
|
|
474
|
+
self.register_structure_hook(sig.return_annotation, func)
|
|
475
|
+
return func
|
|
476
|
+
|
|
298
477
|
if attrs_has(cl):
|
|
299
478
|
resolve_types(cl)
|
|
300
479
|
if is_union_type(cl):
|
|
@@ -305,34 +484,100 @@ class BaseConverter:
|
|
|
305
484
|
self._structure_func.register_func_list([(lambda t: t is cl, func)])
|
|
306
485
|
else:
|
|
307
486
|
self._structure_func.register_cls_list([(cl, func)])
|
|
487
|
+
return None
|
|
308
488
|
|
|
309
489
|
def register_structure_hook_func(
|
|
310
|
-
self, check_func:
|
|
490
|
+
self, check_func: Predicate, func: StructureHook
|
|
311
491
|
) -> None:
|
|
312
492
|
"""Register a class-to-primitive converter function for a class, using
|
|
313
493
|
a function to check if it's a match.
|
|
314
494
|
"""
|
|
315
495
|
self._structure_func.register_func_list([(check_func, func)])
|
|
316
496
|
|
|
497
|
+
@overload
|
|
317
498
|
def register_structure_hook_factory(
|
|
318
|
-
self, predicate:
|
|
319
|
-
) ->
|
|
499
|
+
self, predicate: Predicate
|
|
500
|
+
) -> Callable[[AnyStructureHookFactoryBase], AnyStructureHookFactoryBase]: ...
|
|
501
|
+
|
|
502
|
+
@overload
|
|
503
|
+
def register_structure_hook_factory(
|
|
504
|
+
self, predicate: Predicate, factory: StructureHookFactory
|
|
505
|
+
) -> StructureHookFactory: ...
|
|
506
|
+
|
|
507
|
+
@overload
|
|
508
|
+
def register_structure_hook_factory(
|
|
509
|
+
self, predicate: Predicate, factory: ExtendedStructureHookFactory[BaseConverter]
|
|
510
|
+
) -> ExtendedStructureHookFactory[BaseConverter]: ...
|
|
511
|
+
|
|
512
|
+
def register_structure_hook_factory(self, predicate, factory=None):
|
|
320
513
|
"""
|
|
321
514
|
Register a hook factory for a given predicate.
|
|
322
515
|
|
|
516
|
+
The hook factory may expose an additional required parameter. In this case,
|
|
517
|
+
the current converter will be provided to the hook factory as that
|
|
518
|
+
parameter.
|
|
519
|
+
|
|
520
|
+
May also be used as a decorator.
|
|
521
|
+
|
|
323
522
|
:param predicate: A function that, given a type, returns whether the factory
|
|
324
523
|
can produce a hook for that type.
|
|
325
524
|
:param factory: A callable that, given a type, produces a structuring
|
|
326
525
|
hook for that type. This structuring hook will be cached.
|
|
526
|
+
|
|
527
|
+
.. versionchanged:: 24.1.0
|
|
528
|
+
This method may now be used as a decorator.
|
|
529
|
+
The factory may also receive the converter as a second, required argument.
|
|
327
530
|
"""
|
|
328
|
-
|
|
531
|
+
if factory is None:
|
|
532
|
+
# Decorator use.
|
|
533
|
+
def decorator(factory):
|
|
534
|
+
# Is this an extended factory (takes a converter too)?
|
|
535
|
+
if _is_extended_factory(factory):
|
|
536
|
+
self._structure_func.register_func_list(
|
|
537
|
+
[(predicate, factory, "extended")]
|
|
538
|
+
)
|
|
539
|
+
else:
|
|
540
|
+
self._structure_func.register_func_list(
|
|
541
|
+
[(predicate, factory, True)]
|
|
542
|
+
)
|
|
543
|
+
|
|
544
|
+
return decorator
|
|
545
|
+
self._structure_func.register_func_list(
|
|
546
|
+
[
|
|
547
|
+
(
|
|
548
|
+
predicate,
|
|
549
|
+
factory,
|
|
550
|
+
"extended" if _is_extended_factory(factory) else True,
|
|
551
|
+
)
|
|
552
|
+
]
|
|
553
|
+
)
|
|
554
|
+
return factory
|
|
329
555
|
|
|
330
|
-
def structure(self, obj:
|
|
556
|
+
def structure(self, obj: UnstructuredValue, cl: type[T]) -> T:
|
|
331
557
|
"""Convert unstructured Python data structures to structured data."""
|
|
332
558
|
return self._structure_func.dispatch(cl)(obj, cl)
|
|
333
559
|
|
|
560
|
+
def get_structure_hook(self, type: Any, cache_result: bool = True) -> StructureHook:
|
|
561
|
+
"""Get the structure hook for the given type.
|
|
562
|
+
|
|
563
|
+
This hook can be manually called, or composed with other functions
|
|
564
|
+
and re-registered.
|
|
565
|
+
|
|
566
|
+
If no hook is registered, the converter structure fallback factory
|
|
567
|
+
will be used to produce one.
|
|
568
|
+
|
|
569
|
+
:param cache: Whether to cache the returned hook.
|
|
570
|
+
|
|
571
|
+
.. versionadded:: 24.1.0
|
|
572
|
+
"""
|
|
573
|
+
return (
|
|
574
|
+
self._structure_func.dispatch(type)
|
|
575
|
+
if cache_result
|
|
576
|
+
else self._structure_func.dispatch_without_caching(type)
|
|
577
|
+
)
|
|
578
|
+
|
|
334
579
|
# Classes to Python primitives.
|
|
335
|
-
def unstructure_attrs_asdict(self, obj: Any) ->
|
|
580
|
+
def unstructure_attrs_asdict(self, obj: Any) -> dict[str, Any]:
|
|
336
581
|
"""Our version of `attrs.asdict`, so we can call back to us."""
|
|
337
582
|
attrs = fields(obj.__class__)
|
|
338
583
|
dispatch = self._unstructure_func.dispatch
|
|
@@ -343,7 +588,7 @@ class BaseConverter:
|
|
|
343
588
|
rv[name] = dispatch(a.type or v.__class__)(v)
|
|
344
589
|
return rv
|
|
345
590
|
|
|
346
|
-
def unstructure_attrs_astuple(self, obj: Any) ->
|
|
591
|
+
def unstructure_attrs_astuple(self, obj: Any) -> tuple[Any, ...]:
|
|
347
592
|
"""Our version of `attrs.astuple`, so we can call back to us."""
|
|
348
593
|
attrs = fields(obj.__class__)
|
|
349
594
|
dispatch = self._unstructure_func.dispatch
|
|
@@ -388,7 +633,7 @@ class BaseConverter:
|
|
|
388
633
|
|
|
389
634
|
# Python primitives to classes.
|
|
390
635
|
|
|
391
|
-
def _gen_structure_generic(self, cl:
|
|
636
|
+
def _gen_structure_generic(self, cl: type[T]) -> DictStructureFn[T]:
|
|
392
637
|
"""Create and return a hook for structuring generics."""
|
|
393
638
|
return make_dict_structure_fn(
|
|
394
639
|
cl, self, _cattrs_prefer_attrib_converters=self._prefer_attrib_converters
|
|
@@ -396,7 +641,7 @@ class BaseConverter:
|
|
|
396
641
|
|
|
397
642
|
def _gen_attrs_union_structure(
|
|
398
643
|
self, cl: Any, use_literals: bool = True
|
|
399
|
-
) -> Callable[[Any,
|
|
644
|
+
) -> Callable[[Any, type[T]], type[T] | None]:
|
|
400
645
|
"""
|
|
401
646
|
Generate a structuring function for a union of attrs classes (and maybe None).
|
|
402
647
|
|
|
@@ -420,7 +665,7 @@ class BaseConverter:
|
|
|
420
665
|
return structure_attrs_union
|
|
421
666
|
|
|
422
667
|
@staticmethod
|
|
423
|
-
def _structure_call(obj: Any, cl:
|
|
668
|
+
def _structure_call(obj: Any, cl: type[T]) -> Any:
|
|
424
669
|
"""Just call ``cl`` with the given ``obj``.
|
|
425
670
|
|
|
426
671
|
This is just an optimization on the ``_structure_default`` case, when
|
|
@@ -443,21 +688,26 @@ class BaseConverter:
|
|
|
443
688
|
except KeyError:
|
|
444
689
|
raise Exception(f"{val} not in literal {type}") from None
|
|
445
690
|
|
|
446
|
-
def _structure_newtype(self, val, type):
|
|
691
|
+
def _structure_newtype(self, val: UnstructuredValue, type) -> StructuredValue:
|
|
447
692
|
base = get_newtype_base(type)
|
|
448
|
-
return self.
|
|
693
|
+
return self.get_structure_hook(base)(val, base)
|
|
694
|
+
|
|
695
|
+
def _find_type_alias_structure_hook(self, type: Any) -> StructureHook:
|
|
696
|
+
base = get_type_alias_base(type)
|
|
697
|
+
res = self.get_structure_hook(base)
|
|
698
|
+
if res == self._structure_call:
|
|
699
|
+
# we need to replace the type arg of `structure_call`
|
|
700
|
+
return lambda v, _, __base=base: __base(v)
|
|
701
|
+
return lambda v, _, __base=base: res(v, __base)
|
|
449
702
|
|
|
450
703
|
def _structure_final_factory(self, type):
|
|
451
704
|
base = get_final_base(type)
|
|
452
|
-
res = self.
|
|
453
|
-
|
|
454
|
-
# It's not really `structure_call` for Finals (can't call Final())
|
|
455
|
-
return lambda v, _: self._structure_call(v, base)
|
|
456
|
-
return lambda v, _: res(v, base)
|
|
705
|
+
res = self.get_structure_hook(base)
|
|
706
|
+
return lambda v, _, __base=base: res(v, __base)
|
|
457
707
|
|
|
458
708
|
# Attrs classes.
|
|
459
709
|
|
|
460
|
-
def structure_attrs_fromtuple(self, obj:
|
|
710
|
+
def structure_attrs_fromtuple(self, obj: tuple[Any, ...], cl: type[T]) -> T:
|
|
461
711
|
"""Load an attrs class from a sequence (tuple)."""
|
|
462
712
|
conv_obj = [] # A list of converter parameters.
|
|
463
713
|
for a, value in zip(fields(cl), obj):
|
|
@@ -467,7 +717,7 @@ class BaseConverter:
|
|
|
467
717
|
|
|
468
718
|
return cl(*conv_obj)
|
|
469
719
|
|
|
470
|
-
def _structure_attribute(self, a:
|
|
720
|
+
def _structure_attribute(self, a: Attribute | Field, value: Any) -> Any:
|
|
471
721
|
"""Handle an individual attrs attribute."""
|
|
472
722
|
type_ = a.type
|
|
473
723
|
attrib_converter = getattr(a, "converter", None)
|
|
@@ -489,7 +739,7 @@ class BaseConverter:
|
|
|
489
739
|
return value
|
|
490
740
|
raise
|
|
491
741
|
|
|
492
|
-
def structure_attrs_fromdict(self, obj: Mapping[str, Any], cl:
|
|
742
|
+
def structure_attrs_fromdict(self, obj: Mapping[str, Any], cl: type[T]) -> T:
|
|
493
743
|
"""Instantiate an attrs class from a mapping (dict)."""
|
|
494
744
|
# For public use.
|
|
495
745
|
|
|
@@ -505,40 +755,10 @@ class BaseConverter:
|
|
|
505
755
|
|
|
506
756
|
return cl(**conv_obj)
|
|
507
757
|
|
|
508
|
-
def
|
|
509
|
-
"""Convert an iterable to a potentially generic list."""
|
|
510
|
-
if is_bare(cl) or cl.__args__[0] is Any:
|
|
511
|
-
res = list(obj)
|
|
512
|
-
else:
|
|
513
|
-
elem_type = cl.__args__[0]
|
|
514
|
-
handler = self._structure_func.dispatch(elem_type)
|
|
515
|
-
if self.detailed_validation:
|
|
516
|
-
errors = []
|
|
517
|
-
res = []
|
|
518
|
-
ix = 0 # Avoid `enumerate` for performance.
|
|
519
|
-
for e in obj:
|
|
520
|
-
try:
|
|
521
|
-
res.append(handler(e, elem_type))
|
|
522
|
-
except Exception as e:
|
|
523
|
-
msg = IterableValidationNote(
|
|
524
|
-
f"Structuring {cl} @ index {ix}", ix, elem_type
|
|
525
|
-
)
|
|
526
|
-
e.__notes__ = [*getattr(e, "__notes__", []), msg]
|
|
527
|
-
errors.append(e)
|
|
528
|
-
finally:
|
|
529
|
-
ix += 1
|
|
530
|
-
if errors:
|
|
531
|
-
raise IterableValidationError(
|
|
532
|
-
f"While structuring {cl!r}", errors, cl
|
|
533
|
-
)
|
|
534
|
-
else:
|
|
535
|
-
res = [handler(e, elem_type) for e in obj]
|
|
536
|
-
return res
|
|
537
|
-
|
|
538
|
-
def _structure_deque(self, obj: Iterable[T], cl: Any) -> Deque[T]:
|
|
758
|
+
def _structure_deque(self, obj: Iterable[T], cl: Any) -> deque[T]:
|
|
539
759
|
"""Convert an iterable to a potentially generic deque."""
|
|
540
|
-
if is_bare(cl) or cl.__args__[0]
|
|
541
|
-
res = deque(
|
|
760
|
+
if is_bare(cl) or cl.__args__[0] in ANIES:
|
|
761
|
+
res = deque(obj)
|
|
542
762
|
else:
|
|
543
763
|
elem_type = cl.__args__[0]
|
|
544
764
|
handler = self._structure_func.dispatch(elem_type)
|
|
@@ -569,7 +789,7 @@ class BaseConverter:
|
|
|
569
789
|
self, obj: Iterable[T], cl: Any, structure_to: type = set
|
|
570
790
|
) -> Set[T]:
|
|
571
791
|
"""Convert an iterable into a potentially generic set."""
|
|
572
|
-
if is_bare(cl) or cl.__args__[0]
|
|
792
|
+
if is_bare(cl) or cl.__args__[0] in ANIES:
|
|
573
793
|
return structure_to(obj)
|
|
574
794
|
elem_type = cl.__args__[0]
|
|
575
795
|
handler = self._structure_func.dispatch(elem_type)
|
|
@@ -603,15 +823,47 @@ class BaseConverter:
|
|
|
603
823
|
"""Convert an iterable into a potentially generic frozenset."""
|
|
604
824
|
return self._structure_set(obj, cl, structure_to=frozenset)
|
|
605
825
|
|
|
606
|
-
def _structure_dict(self, obj: Mapping[T, V], cl: Any) ->
|
|
826
|
+
def _structure_dict(self, obj: Mapping[T, V], cl: Any) -> dict[T, V]:
|
|
607
827
|
"""Convert a mapping into a potentially generic dict."""
|
|
608
828
|
if is_bare(cl) or cl.__args__ == (Any, Any):
|
|
609
829
|
return dict(obj)
|
|
610
830
|
key_type, val_type = cl.__args__
|
|
611
|
-
|
|
831
|
+
|
|
832
|
+
if self.detailed_validation:
|
|
833
|
+
key_handler = self._structure_func.dispatch(key_type)
|
|
834
|
+
val_handler = self._structure_func.dispatch(val_type)
|
|
835
|
+
errors = []
|
|
836
|
+
res = {}
|
|
837
|
+
|
|
838
|
+
for k, v in obj.items():
|
|
839
|
+
try:
|
|
840
|
+
value = val_handler(v, val_type)
|
|
841
|
+
except Exception as exc:
|
|
842
|
+
msg = IterableValidationNote(
|
|
843
|
+
f"Structuring mapping value @ key {k!r}", k, val_type
|
|
844
|
+
)
|
|
845
|
+
exc.__notes__ = [*getattr(exc, "__notes__", []), msg]
|
|
846
|
+
errors.append(exc)
|
|
847
|
+
continue
|
|
848
|
+
|
|
849
|
+
try:
|
|
850
|
+
key = key_handler(k, key_type)
|
|
851
|
+
res[key] = value
|
|
852
|
+
except Exception as exc:
|
|
853
|
+
msg = IterableValidationNote(
|
|
854
|
+
f"Structuring mapping key @ key {k!r}", k, key_type
|
|
855
|
+
)
|
|
856
|
+
exc.__notes__ = [*getattr(exc, "__notes__", []), msg]
|
|
857
|
+
errors.append(exc)
|
|
858
|
+
|
|
859
|
+
if errors:
|
|
860
|
+
raise IterableValidationError(f"While structuring {cl!r}", errors, cl)
|
|
861
|
+
return res
|
|
862
|
+
|
|
863
|
+
if key_type in ANIES:
|
|
612
864
|
val_conv = self._structure_func.dispatch(val_type)
|
|
613
865
|
return {k: val_conv(v, val_type) for k, v in obj.items()}
|
|
614
|
-
if val_type
|
|
866
|
+
if val_type in ANIES:
|
|
615
867
|
key_conv = self._structure_func.dispatch(key_type)
|
|
616
868
|
return {key_conv(k, key_type): v for k, v in obj.items()}
|
|
617
869
|
key_conv = self._structure_func.dispatch(key_type)
|
|
@@ -626,16 +878,11 @@ class BaseConverter:
|
|
|
626
878
|
# We can't actually have a Union of a Union, so this is safe.
|
|
627
879
|
return self._structure_func.dispatch(other)(obj, other)
|
|
628
880
|
|
|
629
|
-
def
|
|
630
|
-
"""Deal with structuring a union."""
|
|
631
|
-
handler = self._union_struct_registry[union]
|
|
632
|
-
return handler(obj, union)
|
|
633
|
-
|
|
634
|
-
def _structure_tuple(self, obj: Any, tup: Type[T]) -> T:
|
|
881
|
+
def _structure_tuple(self, obj: Any, tup: type[T]) -> T:
|
|
635
882
|
"""Deal with structuring into a tuple."""
|
|
636
883
|
tup_params = None if tup in (Tuple, tuple) else tup.__args__
|
|
637
884
|
has_ellipsis = tup_params and tup_params[-1] is Ellipsis
|
|
638
|
-
if tup_params is None or (has_ellipsis and tup_params[0]
|
|
885
|
+
if tup_params is None or (has_ellipsis and tup_params[0] in ANIES):
|
|
639
886
|
# Just a Tuple. (No generic information.)
|
|
640
887
|
return tuple(obj)
|
|
641
888
|
if has_ellipsis:
|
|
@@ -704,38 +951,45 @@ class BaseConverter:
|
|
|
704
951
|
raise ValueError(f"{problem} values in {obj!r} to structure as {tup!r}")
|
|
705
952
|
return res
|
|
706
953
|
|
|
707
|
-
|
|
708
|
-
|
|
954
|
+
def _get_dis_func(
|
|
955
|
+
self,
|
|
956
|
+
union: Any,
|
|
957
|
+
use_literals: bool = True,
|
|
958
|
+
overrides: dict[str, AttributeOverride] | None = None,
|
|
959
|
+
) -> Callable[[Any], type]:
|
|
709
960
|
"""Fetch or try creating a disambiguation function for a union."""
|
|
710
961
|
union_types = union.__args__
|
|
711
|
-
if NoneType in union_types:
|
|
962
|
+
if NoneType in union_types:
|
|
712
963
|
# We support unions of attrs classes and NoneType higher in the
|
|
713
964
|
# logic.
|
|
714
|
-
union_types = tuple(
|
|
715
|
-
e for e in union_types if e is not NoneType # type: ignore
|
|
716
|
-
)
|
|
965
|
+
union_types = tuple(e for e in union_types if e is not NoneType)
|
|
717
966
|
|
|
718
967
|
# TODO: technically both disambiguators could support TypedDicts and
|
|
719
968
|
# dataclasses...
|
|
720
969
|
if not all(has(get_origin(e) or e) for e in union_types):
|
|
721
970
|
raise StructureHandlerNotFoundError(
|
|
722
971
|
"Only unions of attrs classes supported "
|
|
723
|
-
"currently. Register a
|
|
972
|
+
"currently. Register a structure hook manually.",
|
|
724
973
|
type_=union,
|
|
725
974
|
)
|
|
726
975
|
|
|
727
|
-
return create_default_dis_func(
|
|
976
|
+
return create_default_dis_func(
|
|
977
|
+
self,
|
|
978
|
+
*union_types,
|
|
979
|
+
use_literals=use_literals,
|
|
980
|
+
overrides=overrides if overrides is not None else "from_converter",
|
|
981
|
+
)
|
|
728
982
|
|
|
729
|
-
def __deepcopy__(self, _) ->
|
|
983
|
+
def __deepcopy__(self, _) -> BaseConverter:
|
|
730
984
|
return self.copy()
|
|
731
985
|
|
|
732
986
|
def copy(
|
|
733
987
|
self,
|
|
734
|
-
dict_factory:
|
|
735
|
-
unstruct_strat:
|
|
736
|
-
prefer_attrib_converters:
|
|
737
|
-
detailed_validation:
|
|
738
|
-
) ->
|
|
988
|
+
dict_factory: Callable[[], Any] | None = None,
|
|
989
|
+
unstruct_strat: UnstructureStrategy | None = None,
|
|
990
|
+
prefer_attrib_converters: bool | None = None,
|
|
991
|
+
detailed_validation: bool | None = None,
|
|
992
|
+
) -> BaseConverter:
|
|
739
993
|
"""Create a copy of the converter, keeping all existing custom hooks.
|
|
740
994
|
|
|
741
995
|
:param detailed_validation: Whether to use a slightly slower mode for detailed
|
|
@@ -743,19 +997,25 @@ class BaseConverter:
|
|
|
743
997
|
"""
|
|
744
998
|
res = self.__class__(
|
|
745
999
|
dict_factory if dict_factory is not None else self._dict_factory,
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
1000
|
+
(
|
|
1001
|
+
unstruct_strat
|
|
1002
|
+
if unstruct_strat is not None
|
|
1003
|
+
else (
|
|
1004
|
+
UnstructureStrategy.AS_DICT
|
|
1005
|
+
if self._unstructure_attrs == self.unstructure_attrs_asdict
|
|
1006
|
+
else UnstructureStrategy.AS_TUPLE
|
|
1007
|
+
)
|
|
1008
|
+
),
|
|
1009
|
+
(
|
|
1010
|
+
prefer_attrib_converters
|
|
1011
|
+
if prefer_attrib_converters is not None
|
|
1012
|
+
else self._prefer_attrib_converters
|
|
1013
|
+
),
|
|
1014
|
+
(
|
|
1015
|
+
detailed_validation
|
|
1016
|
+
if detailed_validation is not None
|
|
1017
|
+
else self.detailed_validation
|
|
752
1018
|
),
|
|
753
|
-
prefer_attrib_converters
|
|
754
|
-
if prefer_attrib_converters is not None
|
|
755
|
-
else self._prefer_attrib_converters,
|
|
756
|
-
detailed_validation
|
|
757
|
-
if detailed_validation is not None
|
|
758
|
-
else self.detailed_validation,
|
|
759
1019
|
)
|
|
760
1020
|
|
|
761
1021
|
self._unstructure_func.copy_to(res._unstructure_func, self._unstruct_copy_skip)
|
|
@@ -780,8 +1040,8 @@ class Converter(BaseConverter):
|
|
|
780
1040
|
unstruct_strat: UnstructureStrategy = UnstructureStrategy.AS_DICT,
|
|
781
1041
|
omit_if_default: bool = False,
|
|
782
1042
|
forbid_extra_keys: bool = False,
|
|
783
|
-
type_overrides: Mapping[
|
|
784
|
-
unstruct_collection_overrides: Mapping[
|
|
1043
|
+
type_overrides: Mapping[type, AttributeOverride] = {},
|
|
1044
|
+
unstruct_collection_overrides: Mapping[type, Callable] = {},
|
|
785
1045
|
prefer_attrib_converters: bool = False,
|
|
786
1046
|
detailed_validation: bool = True,
|
|
787
1047
|
unstructure_fallback_factory: HookFactory[UnstructureHook] = lambda _: identity,
|
|
@@ -875,6 +1135,9 @@ class Converter(BaseConverter):
|
|
|
875
1135
|
self.register_unstructure_hook_factory(
|
|
876
1136
|
is_hetero_tuple, self.gen_unstructure_hetero_tuple
|
|
877
1137
|
)
|
|
1138
|
+
self.register_unstructure_hook_factory(is_namedtuple)(
|
|
1139
|
+
namedtuple_unstructure_factory
|
|
1140
|
+
)
|
|
878
1141
|
self.register_unstructure_hook_factory(
|
|
879
1142
|
is_sequence, self.gen_unstructure_iterable
|
|
880
1143
|
)
|
|
@@ -895,7 +1158,7 @@ class Converter(BaseConverter):
|
|
|
895
1158
|
)
|
|
896
1159
|
self.register_unstructure_hook_factory(
|
|
897
1160
|
lambda t: get_newtype_base(t) is not None,
|
|
898
|
-
lambda t: self.
|
|
1161
|
+
lambda t: self.get_unstructure_hook(get_newtype_base(t)),
|
|
899
1162
|
)
|
|
900
1163
|
|
|
901
1164
|
self.register_structure_hook_factory(is_annotated, self.gen_structure_annotated)
|
|
@@ -910,22 +1173,60 @@ class Converter(BaseConverter):
|
|
|
910
1173
|
self._struct_copy_skip = self._structure_func.get_num_fns()
|
|
911
1174
|
self._unstruct_copy_skip = self._unstructure_func.get_num_fns()
|
|
912
1175
|
|
|
913
|
-
|
|
1176
|
+
@overload
|
|
1177
|
+
def register_unstructure_hook_factory(
|
|
1178
|
+
self, predicate: Predicate
|
|
1179
|
+
) -> Callable[[AnyUnstructureHookFactory], AnyUnstructureHookFactory]: ...
|
|
1180
|
+
|
|
1181
|
+
@overload
|
|
1182
|
+
def register_unstructure_hook_factory(
|
|
1183
|
+
self, predicate: Predicate, factory: UnstructureHookFactory
|
|
1184
|
+
) -> UnstructureHookFactory: ...
|
|
1185
|
+
|
|
1186
|
+
@overload
|
|
1187
|
+
def register_unstructure_hook_factory(
|
|
1188
|
+
self, predicate: Predicate, factory: ExtendedUnstructureHookFactory[Converter]
|
|
1189
|
+
) -> ExtendedUnstructureHookFactory[Converter]: ...
|
|
1190
|
+
|
|
1191
|
+
def register_unstructure_hook_factory(self, predicate, factory=None):
|
|
1192
|
+
# This dummy wrapper is required due to how `@overload` works.
|
|
1193
|
+
return super().register_unstructure_hook_factory(predicate, factory)
|
|
1194
|
+
|
|
1195
|
+
@overload
|
|
1196
|
+
def register_structure_hook_factory(
|
|
1197
|
+
self, predicate: Predicate
|
|
1198
|
+
) -> Callable[[AnyStructureHookFactory], AnyStructureHookFactory]: ...
|
|
1199
|
+
|
|
1200
|
+
@overload
|
|
1201
|
+
def register_structure_hook_factory(
|
|
1202
|
+
self, predicate: Predicate, factory: StructureHookFactory
|
|
1203
|
+
) -> StructureHookFactory: ...
|
|
1204
|
+
|
|
1205
|
+
@overload
|
|
1206
|
+
def register_structure_hook_factory(
|
|
1207
|
+
self, predicate: Predicate, factory: ExtendedStructureHookFactory[Converter]
|
|
1208
|
+
) -> ExtendedStructureHookFactory[Converter]: ...
|
|
1209
|
+
|
|
1210
|
+
def register_structure_hook_factory(self, predicate, factory=None):
|
|
1211
|
+
# This dummy wrapper is required due to how `@overload` works.
|
|
1212
|
+
return super().register_structure_hook_factory(predicate, factory)
|
|
1213
|
+
|
|
1214
|
+
def get_structure_newtype(self, type: type[T]) -> Callable[[Any, Any], T]:
|
|
914
1215
|
base = get_newtype_base(type)
|
|
915
|
-
handler = self.
|
|
1216
|
+
handler = self.get_structure_hook(base)
|
|
916
1217
|
return lambda v, _: handler(v, base)
|
|
917
1218
|
|
|
918
1219
|
def gen_unstructure_annotated(self, type):
|
|
919
1220
|
origin = type.__origin__
|
|
920
|
-
return self.
|
|
1221
|
+
return self.get_unstructure_hook(origin)
|
|
921
1222
|
|
|
922
1223
|
def gen_structure_annotated(self, type) -> Callable:
|
|
923
1224
|
"""A hook factory for annotated types."""
|
|
924
1225
|
origin = type.__origin__
|
|
925
|
-
hook = self.
|
|
1226
|
+
hook = self.get_structure_hook(origin)
|
|
926
1227
|
return lambda v, _: hook(v, origin)
|
|
927
1228
|
|
|
928
|
-
def gen_unstructure_typeddict(self, cl: Any) -> Callable[[
|
|
1229
|
+
def gen_unstructure_typeddict(self, cl: Any) -> Callable[[dict], dict]:
|
|
929
1230
|
"""Generate a TypedDict unstructure function.
|
|
930
1231
|
|
|
931
1232
|
Also apply converter-scored modifications.
|
|
@@ -933,8 +1234,8 @@ class Converter(BaseConverter):
|
|
|
933
1234
|
return make_typeddict_dict_unstruct_fn(cl, self)
|
|
934
1235
|
|
|
935
1236
|
def gen_unstructure_attrs_fromdict(
|
|
936
|
-
self, cl:
|
|
937
|
-
) -> Callable[[T],
|
|
1237
|
+
self, cl: type[T]
|
|
1238
|
+
) -> Callable[[T], dict[str, Any]]:
|
|
938
1239
|
origin = get_origin(cl)
|
|
939
1240
|
attribs = fields(origin or cl)
|
|
940
1241
|
if attrs_has(cl) and any(isinstance(a.type, str) for a in attribs):
|
|
@@ -950,23 +1251,22 @@ class Converter(BaseConverter):
|
|
|
950
1251
|
cl, self, _cattrs_omit_if_default=self.omit_if_default, **attrib_overrides
|
|
951
1252
|
)
|
|
952
1253
|
|
|
953
|
-
def gen_unstructure_optional(self, cl:
|
|
1254
|
+
def gen_unstructure_optional(self, cl: type[T]) -> Callable[[T], Any]:
|
|
954
1255
|
"""Generate an unstructuring hook for optional types."""
|
|
955
1256
|
union_params = cl.__args__
|
|
956
1257
|
other = union_params[0] if union_params[1] is NoneType else union_params[1]
|
|
957
1258
|
|
|
958
|
-
|
|
959
|
-
if other is Any or isinstance(other, TypeVar):
|
|
1259
|
+
if isinstance(other, TypeVar):
|
|
960
1260
|
handler = self.unstructure
|
|
961
1261
|
else:
|
|
962
|
-
handler = self.
|
|
1262
|
+
handler = self.get_unstructure_hook(other)
|
|
963
1263
|
|
|
964
1264
|
def unstructure_optional(val, _handler=handler):
|
|
965
1265
|
return None if val is None else _handler(val)
|
|
966
1266
|
|
|
967
1267
|
return unstructure_optional
|
|
968
1268
|
|
|
969
|
-
def gen_structure_typeddict(self, cl: Any) -> Callable[[
|
|
1269
|
+
def gen_structure_typeddict(self, cl: Any) -> Callable[[dict, Any], dict]:
|
|
970
1270
|
"""Generate a TypedDict structure function.
|
|
971
1271
|
|
|
972
1272
|
Also apply converter-scored modifications.
|
|
@@ -976,7 +1276,7 @@ class Converter(BaseConverter):
|
|
|
976
1276
|
)
|
|
977
1277
|
|
|
978
1278
|
def gen_structure_attrs_fromdict(
|
|
979
|
-
self, cl:
|
|
1279
|
+
self, cl: type[T]
|
|
980
1280
|
) -> Callable[[Mapping[str, Any], Any], T]:
|
|
981
1281
|
attribs = fields(get_origin(cl) or cl if is_generic(cl) else cl)
|
|
982
1282
|
if attrs_has(cl) and any(isinstance(a.type, str) for a in attribs):
|
|
@@ -1002,7 +1302,7 @@ class Converter(BaseConverter):
|
|
|
1002
1302
|
unstructure_to = self._unstruct_collection_overrides.get(
|
|
1003
1303
|
get_origin(cl) or cl, unstructure_to or list
|
|
1004
1304
|
)
|
|
1005
|
-
h =
|
|
1305
|
+
h = iterable_unstructure_factory(cl, self, unstructure_to=unstructure_to)
|
|
1006
1306
|
self._unstructure_func.register_cls_list([(cl, h)], direct=True)
|
|
1007
1307
|
return h
|
|
1008
1308
|
|
|
@@ -1010,7 +1310,7 @@ class Converter(BaseConverter):
|
|
|
1010
1310
|
self, cl: Any, unstructure_to: Any = None
|
|
1011
1311
|
) -> HeteroTupleUnstructureFn:
|
|
1012
1312
|
unstructure_to = self._unstruct_collection_overrides.get(
|
|
1013
|
-
get_origin(cl) or cl, unstructure_to or
|
|
1313
|
+
get_origin(cl) or cl, unstructure_to or tuple
|
|
1014
1314
|
)
|
|
1015
1315
|
h = make_hetero_tuple_unstructure_fn(cl, self, unstructure_to=unstructure_to)
|
|
1016
1316
|
self._unstructure_func.register_cls_list([(cl, h)], direct=True)
|
|
@@ -1020,7 +1320,7 @@ class Converter(BaseConverter):
|
|
|
1020
1320
|
self,
|
|
1021
1321
|
cl: Any,
|
|
1022
1322
|
unstructure_to: Any = None,
|
|
1023
|
-
key_handler:
|
|
1323
|
+
key_handler: Callable[[Any, Any | None], Any] | None = None,
|
|
1024
1324
|
) -> MappingUnstructureFn:
|
|
1025
1325
|
unstructure_to = self._unstruct_collection_overrides.get(
|
|
1026
1326
|
get_origin(cl) or cl, unstructure_to or dict
|
|
@@ -1043,23 +1343,31 @@ class Converter(BaseConverter):
|
|
|
1043
1343
|
return h
|
|
1044
1344
|
|
|
1045
1345
|
def gen_structure_mapping(self, cl: Any) -> MappingStructureFn[T]:
|
|
1346
|
+
structure_to = get_origin(cl) or cl
|
|
1347
|
+
if structure_to in (
|
|
1348
|
+
MutableMapping,
|
|
1349
|
+
AbcMutableMapping,
|
|
1350
|
+
Mapping,
|
|
1351
|
+
AbcMapping,
|
|
1352
|
+
): # These default to dicts
|
|
1353
|
+
structure_to = dict
|
|
1046
1354
|
h = make_mapping_structure_fn(
|
|
1047
|
-
cl, self, detailed_validation=self.detailed_validation
|
|
1355
|
+
cl, self, structure_to, detailed_validation=self.detailed_validation
|
|
1048
1356
|
)
|
|
1049
1357
|
self._structure_func.register_cls_list([(cl, h)], direct=True)
|
|
1050
1358
|
return h
|
|
1051
1359
|
|
|
1052
1360
|
def copy(
|
|
1053
1361
|
self,
|
|
1054
|
-
dict_factory:
|
|
1055
|
-
unstruct_strat:
|
|
1056
|
-
omit_if_default:
|
|
1057
|
-
forbid_extra_keys:
|
|
1058
|
-
type_overrides:
|
|
1059
|
-
unstruct_collection_overrides:
|
|
1060
|
-
prefer_attrib_converters:
|
|
1061
|
-
detailed_validation:
|
|
1062
|
-
) ->
|
|
1362
|
+
dict_factory: Callable[[], Any] | None = None,
|
|
1363
|
+
unstruct_strat: UnstructureStrategy | None = None,
|
|
1364
|
+
omit_if_default: bool | None = None,
|
|
1365
|
+
forbid_extra_keys: bool | None = None,
|
|
1366
|
+
type_overrides: Mapping[type, AttributeOverride] | None = None,
|
|
1367
|
+
unstruct_collection_overrides: Mapping[type, Callable] | None = None,
|
|
1368
|
+
prefer_attrib_converters: bool | None = None,
|
|
1369
|
+
detailed_validation: bool | None = None,
|
|
1370
|
+
) -> Converter:
|
|
1063
1371
|
"""Create a copy of the converter, keeping all existing custom hooks.
|
|
1064
1372
|
|
|
1065
1373
|
:param detailed_validation: Whether to use a slightly slower mode for detailed
|
|
@@ -1067,27 +1375,37 @@ class Converter(BaseConverter):
|
|
|
1067
1375
|
"""
|
|
1068
1376
|
res = self.__class__(
|
|
1069
1377
|
dict_factory if dict_factory is not None else self._dict_factory,
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1378
|
+
(
|
|
1379
|
+
unstruct_strat
|
|
1380
|
+
if unstruct_strat is not None
|
|
1381
|
+
else (
|
|
1382
|
+
UnstructureStrategy.AS_DICT
|
|
1383
|
+
if self._unstructure_attrs == self.unstructure_attrs_asdict
|
|
1384
|
+
else UnstructureStrategy.AS_TUPLE
|
|
1385
|
+
)
|
|
1076
1386
|
),
|
|
1077
1387
|
omit_if_default if omit_if_default is not None else self.omit_if_default,
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1388
|
+
(
|
|
1389
|
+
forbid_extra_keys
|
|
1390
|
+
if forbid_extra_keys is not None
|
|
1391
|
+
else self.forbid_extra_keys
|
|
1392
|
+
),
|
|
1081
1393
|
type_overrides if type_overrides is not None else self.type_overrides,
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1394
|
+
(
|
|
1395
|
+
unstruct_collection_overrides
|
|
1396
|
+
if unstruct_collection_overrides is not None
|
|
1397
|
+
else self._unstruct_collection_overrides
|
|
1398
|
+
),
|
|
1399
|
+
(
|
|
1400
|
+
prefer_attrib_converters
|
|
1401
|
+
if prefer_attrib_converters is not None
|
|
1402
|
+
else self._prefer_attrib_converters
|
|
1403
|
+
),
|
|
1404
|
+
(
|
|
1405
|
+
detailed_validation
|
|
1406
|
+
if detailed_validation is not None
|
|
1407
|
+
else self.detailed_validation
|
|
1408
|
+
),
|
|
1091
1409
|
)
|
|
1092
1410
|
|
|
1093
1411
|
self._unstructure_func.copy_to(
|
|
@@ -1098,4 +1416,4 @@ class Converter(BaseConverter):
|
|
|
1098
1416
|
return res
|
|
1099
1417
|
|
|
1100
1418
|
|
|
1101
|
-
GenConverter = Converter
|
|
1419
|
+
GenConverter: TypeAlias = Converter
|