jaclang 0.8.7__py3-none-any.whl → 0.8.9__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/cli/cli.py +77 -29
- jaclang/cli/cmdreg.py +44 -0
- jaclang/compiler/constant.py +6 -2
- jaclang/compiler/jac.lark +37 -47
- jaclang/compiler/larkparse/jac_parser.py +2 -2
- jaclang/compiler/parser.py +356 -61
- jaclang/compiler/passes/main/__init__.py +2 -4
- jaclang/compiler/passes/main/def_use_pass.py +1 -4
- jaclang/compiler/passes/main/predynamo_pass.py +221 -0
- jaclang/compiler/passes/main/pyast_gen_pass.py +221 -135
- jaclang/compiler/passes/main/pyast_load_pass.py +54 -20
- jaclang/compiler/passes/main/sym_tab_build_pass.py +1 -1
- jaclang/compiler/passes/main/tests/fixtures/checker/import_sym.jac +2 -0
- jaclang/compiler/passes/main/tests/fixtures/checker/import_sym_test.jac +6 -0
- jaclang/compiler/passes/main/tests/fixtures/checker/imported_sym.jac +5 -0
- jaclang/compiler/passes/main/tests/fixtures/checker_arg_param_match.jac +37 -0
- jaclang/compiler/passes/main/tests/fixtures/checker_arity.jac +18 -0
- jaclang/compiler/passes/main/tests/fixtures/checker_cat_is_animal.jac +18 -0
- jaclang/compiler/passes/main/tests/fixtures/checker_float.jac +7 -0
- jaclang/compiler/passes/main/tests/fixtures/checker_param_types.jac +11 -0
- jaclang/compiler/passes/main/tests/fixtures/checker_self_type.jac +9 -0
- jaclang/compiler/passes/main/tests/fixtures/checker_sym_inherit.jac +42 -0
- jaclang/compiler/passes/main/tests/fixtures/predynamo_fix3.jac +43 -0
- jaclang/compiler/passes/main/tests/fixtures/predynamo_where_assign.jac +13 -0
- jaclang/compiler/passes/main/tests/fixtures/predynamo_where_return.jac +11 -0
- jaclang/compiler/passes/main/tests/test_checker_pass.py +190 -0
- jaclang/compiler/passes/main/tests/test_predynamo_pass.py +56 -0
- jaclang/compiler/passes/main/type_checker_pass.py +29 -73
- jaclang/compiler/passes/tool/doc_ir_gen_pass.py +302 -58
- jaclang/compiler/passes/tool/jac_formatter_pass.py +119 -69
- jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac +3 -3
- jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/triple_quoted_string.jac +4 -5
- jaclang/compiler/passes/tool/tests/fixtures/import_fmt.jac +7 -1
- jaclang/compiler/passes/tool/tests/fixtures/tagbreak.jac +276 -10
- jaclang/compiler/passes/transform.py +12 -8
- jaclang/compiler/program.py +19 -7
- jaclang/compiler/tests/fixtures/jac_import_py_files.py +4 -0
- jaclang/compiler/tests/fixtures/jac_module.jac +3 -0
- jaclang/compiler/tests/fixtures/multiple_syntax_errors.jac +10 -0
- jaclang/compiler/tests/fixtures/python_module.py +1 -0
- jaclang/compiler/tests/test_importer.py +39 -0
- jaclang/compiler/tests/test_parser.py +49 -0
- jaclang/compiler/type_system/type_evaluator.jac +959 -0
- jaclang/compiler/type_system/type_utils.py +246 -0
- jaclang/compiler/type_system/types.py +58 -2
- jaclang/compiler/unitree.py +102 -107
- jaclang/langserve/engine.jac +138 -159
- jaclang/langserve/server.jac +25 -1
- jaclang/langserve/tests/fixtures/circle.jac +3 -3
- jaclang/langserve/tests/fixtures/circle_err.jac +3 -3
- jaclang/langserve/tests/fixtures/circle_pure.test.jac +3 -3
- jaclang/langserve/tests/fixtures/completion_test_err.jac +10 -0
- jaclang/langserve/tests/server_test/circle_template.jac +80 -0
- jaclang/langserve/tests/server_test/glob_template.jac +4 -0
- jaclang/langserve/tests/server_test/test_lang_serve.py +154 -309
- jaclang/langserve/tests/server_test/utils.py +153 -116
- jaclang/langserve/tests/test_server.py +21 -84
- jaclang/langserve/utils.jac +12 -15
- jaclang/lib.py +17 -0
- jaclang/runtimelib/archetype.py +25 -25
- jaclang/runtimelib/constructs.py +2 -2
- jaclang/runtimelib/machine.py +63 -46
- jaclang/runtimelib/meta_importer.py +27 -1
- jaclang/runtimelib/tests/fixtures/custom_access_validation.jac +1 -1
- jaclang/runtimelib/tests/fixtures/savable_object.jac +2 -2
- jaclang/settings.py +19 -16
- jaclang/tests/fixtures/abc_check.jac +3 -3
- jaclang/tests/fixtures/arch_rel_import_creation.jac +12 -12
- jaclang/tests/fixtures/attr_pattern_case.jac +18 -0
- jaclang/tests/fixtures/chandra_bugs2.jac +3 -3
- jaclang/tests/fixtures/create_dynamic_archetype.jac +13 -13
- jaclang/tests/fixtures/funccall_genexpr.jac +7 -0
- jaclang/tests/fixtures/funccall_genexpr.py +5 -0
- jaclang/tests/fixtures/maxfail_run_test.jac +4 -4
- jaclang/tests/fixtures/params/param_syntax_err.jac +9 -0
- jaclang/tests/fixtures/params/test_complex_params.jac +42 -0
- jaclang/tests/fixtures/params/test_failing_kwonly.jac +207 -0
- jaclang/tests/fixtures/params/test_failing_posonly.jac +116 -0
- jaclang/tests/fixtures/params/test_failing_varargs.jac +300 -0
- jaclang/tests/fixtures/params/test_kwonly_params.jac +29 -0
- jaclang/tests/fixtures/py2jac_params.py +8 -0
- jaclang/tests/fixtures/run_test.jac +4 -4
- jaclang/tests/test_cli.py +159 -7
- jaclang/tests/test_language.py +213 -38
- jaclang/tests/test_reference.py +3 -1
- jaclang/utils/helpers.py +67 -6
- jaclang/utils/module_resolver.py +10 -0
- jaclang/utils/test.py +8 -0
- jaclang/utils/tests/test_lang_tools.py +4 -15
- jaclang/utils/treeprinter.py +0 -18
- {jaclang-0.8.7.dist-info → jaclang-0.8.9.dist-info}/METADATA +1 -2
- {jaclang-0.8.7.dist-info → jaclang-0.8.9.dist-info}/RECORD +95 -65
- {jaclang-0.8.7.dist-info → jaclang-0.8.9.dist-info}/WHEEL +1 -1
- jaclang/compiler/passes/main/inheritance_pass.py +0 -131
- jaclang/compiler/type_system/type_evaluator.py +0 -560
- jaclang/langserve/dev_engine.jac +0 -645
- jaclang/langserve/dev_server.jac +0 -201
- /jaclang/{langserve/tests/server_test/code_test.py → tests/fixtures/py2jac_empty.py} +0 -0
- {jaclang-0.8.7.dist-info → jaclang-0.8.9.dist-info}/entry_points.txt +0 -0
|
@@ -2,30 +2,30 @@ jaclang/__init__.py,sha256=Na5dttNt9pd93nNzi7xej7S_FAZ3_CTDZUv7tWEGw_c,490
|
|
|
2
2
|
jaclang/cli/.gitignore,sha256=NYuons2lzuCpCdefMnztZxeSMgtPVJF6R6zSgVDOV20,27
|
|
3
3
|
jaclang/cli/__init__.py,sha256=7aaPgYddIAHBvkdv36ngbfwsimMnfGaTDcaHYMg_vf4,23
|
|
4
4
|
jaclang/cli/cli.md,sha256=l12Ev7jr29DFimpGAAoS9NLCLQlMQmM38-ogGFEdVSw,6072
|
|
5
|
-
jaclang/cli/cli.py,sha256=
|
|
6
|
-
jaclang/cli/cmdreg.py,sha256=
|
|
5
|
+
jaclang/cli/cli.py,sha256=ftrbXke1S-Qa4hd9KHjp9UHgll8dFVzg_OJ3LoiYadU,24318
|
|
6
|
+
jaclang/cli/cmdreg.py,sha256=AjsIpIN1qlfIeGjshezeXEFrM5m5HgUoVBCWwkKCPg4,10541
|
|
7
7
|
jaclang/compiler/__init__.py,sha256=6huVTxA1YAjWViq_7vrbKNYi_Q9DMTMkmURlaetyooA,2526
|
|
8
8
|
jaclang/compiler/codeinfo.py,sha256=ZOSAp1m3dBA8UF-YUz6H6l3wDs1EcuY4xWp13XmgHCo,2332
|
|
9
|
-
jaclang/compiler/constant.py,sha256=
|
|
10
|
-
jaclang/compiler/jac.lark,sha256=
|
|
9
|
+
jaclang/compiler/constant.py,sha256=5Sz2ClirfDkzz_eGKtujwVYi3ZFifwjZYvI9igy78zk,8412
|
|
10
|
+
jaclang/compiler/jac.lark,sha256=aolppPmHsJM2V5f8MX6strhaYTyUXFWdMHPEjcxQFfE,18497
|
|
11
11
|
jaclang/compiler/larkparse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
12
|
-
jaclang/compiler/larkparse/jac_parser.py,sha256=
|
|
13
|
-
jaclang/compiler/parser.py,sha256=
|
|
12
|
+
jaclang/compiler/larkparse/jac_parser.py,sha256=5f0u0qQwB0Kg_XTezDgtxRtmhGwC8oskSv4pea6sbkQ,319098
|
|
13
|
+
jaclang/compiler/parser.py,sha256=ZIeSYgmvzx0My_0XBI4strUkrzwqulDN0UkYN4qE9vo,118124
|
|
14
14
|
jaclang/compiler/passes/__init__.py,sha256=gQjeT9UTNAHTgOvRX9zeY20jC22cZVl2HhKuUKZo66M,100
|
|
15
|
-
jaclang/compiler/passes/main/__init__.py,sha256=
|
|
15
|
+
jaclang/compiler/passes/main/__init__.py,sha256=qdj1KsZ19rxzlj7W3Jj7DBID8bJqTNs5XZtAOb3paWc,1313
|
|
16
16
|
jaclang/compiler/passes/main/annex_pass.py,sha256=EcMmXTMg8H3VoOCkxHUnCSWzJJykE1U_5YRuKF1VpYw,3082
|
|
17
17
|
jaclang/compiler/passes/main/binder_pass.py,sha256=jSMpIGDYvb2AVp8qgvE6YTHbIwfwjD5oZxxXQ5ZDn_c,22000
|
|
18
18
|
jaclang/compiler/passes/main/cfg_build_pass.py,sha256=onp3dmcjkcQEuHkbb98CmxtK_4IbIBr_v-25VZYR5kw,12952
|
|
19
19
|
jaclang/compiler/passes/main/def_impl_match_pass.py,sha256=AYhqi5ZFzUQyrJVFAPa9H8Bf0FZj4wZau16pTpMBib4,10143
|
|
20
|
-
jaclang/compiler/passes/main/def_use_pass.py,sha256=
|
|
20
|
+
jaclang/compiler/passes/main/def_use_pass.py,sha256=ogc4r9IlKDJ9u2Nq2GzEZP9njxbmEroF2qZ9QSOoYjs,4795
|
|
21
21
|
jaclang/compiler/passes/main/import_pass.py,sha256=nMoFbNIFzZ2sThnvapVvw6IZtoxeycuK7XaDx5AB3Uk,4696
|
|
22
|
-
jaclang/compiler/passes/main/
|
|
23
|
-
jaclang/compiler/passes/main/pyast_gen_pass.py,sha256=
|
|
24
|
-
jaclang/compiler/passes/main/pyast_load_pass.py,sha256=
|
|
22
|
+
jaclang/compiler/passes/main/predynamo_pass.py,sha256=wfNT7ZYyrM0rzO5LJ8PGyTX-qb3R4agkHZSeNpm-afc,8737
|
|
23
|
+
jaclang/compiler/passes/main/pyast_gen_pass.py,sha256=5JQ2aymVTagOYejuvrXJlJsbVncBzHE4IPM-LBjVCRY,114598
|
|
24
|
+
jaclang/compiler/passes/main/pyast_load_pass.py,sha256=WN8pc7U2FrqYbmty_Uc6CaNNQEcBQlg23hxEFXOzmT8,86556
|
|
25
25
|
jaclang/compiler/passes/main/pybc_gen_pass.py,sha256=KUQ31396CBb_ib85rYL_QhvHY75ZxyJm8qSps8KYSyE,1876
|
|
26
26
|
jaclang/compiler/passes/main/pyjac_ast_link_pass.py,sha256=_4l6CLZ_UHDSD0aJyyGesAvY0BSgWtc4F7Deikqgbko,5584
|
|
27
27
|
jaclang/compiler/passes/main/sem_def_match_pass.py,sha256=txRK3RAtleQsR9sEVIxaWLqy_pTPJEhW3eE2wYKRBSc,2755
|
|
28
|
-
jaclang/compiler/passes/main/sym_tab_build_pass.py,sha256=
|
|
28
|
+
jaclang/compiler/passes/main/sym_tab_build_pass.py,sha256=SK2_rfE9bZ_lrfpy4V9EirbGH5S16UqgXDCHpVSdVnE,7941
|
|
29
29
|
jaclang/compiler/passes/main/sym_tab_link_pass.py,sha256=2sqSmgxFd4YQZT4CiPxcfRi4Nrlv-ETP82_tSnYuFGA,5497
|
|
30
30
|
jaclang/compiler/passes/main/tests/__init__.py,sha256=RgheAgh-SqGTa-4kBOY-V-oz8bzMmDWxavFqwlYjfgE,36
|
|
31
31
|
jaclang/compiler/passes/main/tests/fixtures/M1.jac,sha256=9nAwZ9zKuIWEsr9rne9zC2T1lssqiE6oTp8Ubt423LI,14
|
|
@@ -48,15 +48,25 @@ jaclang/compiler/passes/main/tests/fixtures/cfg_gen.jac,sha256=7dAM-0Lm60dnJXnpx
|
|
|
48
48
|
jaclang/compiler/passes/main/tests/fixtures/cfg_has_var.jac,sha256=WzaGKic1i66xxanDWHTLVb16WVyddv39VpgbtwrQdFg,233
|
|
49
49
|
jaclang/compiler/passes/main/tests/fixtures/cfg_if_no_else.jac,sha256=f0nIfUHs2adV_GL17IjcGTkm-WIIJFZHDCnzksXbS1U,180
|
|
50
50
|
jaclang/compiler/passes/main/tests/fixtures/cfg_return.jac,sha256=gGG8RgpR3qoRzS2RwoFndajN1lLQMqavpYPovS5QEBs,137
|
|
51
|
+
jaclang/compiler/passes/main/tests/fixtures/checker/import_sym.jac,sha256=1MWXmcPJyXG_tu4kXzsQmCk3xaeeZ6VFKPDhcPicdgs,33
|
|
52
|
+
jaclang/compiler/passes/main/tests/fixtures/checker/import_sym_test.jac,sha256=YLkNz7iEuY4CqmQ-Rd_28rvh_pk-7yaVdN6yn1ZlRbE,109
|
|
53
|
+
jaclang/compiler/passes/main/tests/fixtures/checker/imported_sym.jac,sha256=3A3rshp13rAvrx2z9TnAP7hEFBx7RQpRfQTdpOcxFXs,41
|
|
54
|
+
jaclang/compiler/passes/main/tests/fixtures/checker_arg_param_match.jac,sha256=FW44dOYnQVFh14icQQDlRtPLTMxQtb2QymiZOkNWau8,1066
|
|
55
|
+
jaclang/compiler/passes/main/tests/fixtures/checker_arity.jac,sha256=AlpKPlOcmEmABMOHlWdGTm73DBwiErpUmlzXfRlRJ_Y,404
|
|
51
56
|
jaclang/compiler/passes/main/tests/fixtures/checker_binary_op.jac,sha256=4hS8q6UlavBdgl1Ut81yd25Z7jxKCZMhRRh7q3Qg3AQ,285
|
|
52
57
|
jaclang/compiler/passes/main/tests/fixtures/checker_call_expr_class.jac,sha256=L9SOnDYfV4B8tleSWLV3aSHS2VGGySTe0JZDhEfK8HI,189
|
|
58
|
+
jaclang/compiler/passes/main/tests/fixtures/checker_cat_is_animal.jac,sha256=JjNUEnjJc8cWQFRsMZO3PmbcaCbmayyYnCeBcIvwAFo,329
|
|
53
59
|
jaclang/compiler/passes/main/tests/fixtures/checker_cyclic_symbol.jac,sha256=GF5Ezug1A5-tr5emjJTojIW5d8_A6peNb2q9hWs-bXE,27
|
|
54
60
|
jaclang/compiler/passes/main/tests/fixtures/checker_expr_call.jac,sha256=FDFptRXbzgOYv9q-mDNmFXnetAbknUJi-zEAiPzKZpk,114
|
|
61
|
+
jaclang/compiler/passes/main/tests/fixtures/checker_float.jac,sha256=QOKhNhX9VjWI2goG9XcI1Ul6FHy6WPTu7RK3WsjEpxo,116
|
|
55
62
|
jaclang/compiler/passes/main/tests/fixtures/checker_import_missing_module.jac,sha256=agWXZZ3ZidLeVkcWkv_TA0ktHiSS13rDLFo3HZnbJXk,348
|
|
56
63
|
jaclang/compiler/passes/main/tests/fixtures/checker_imported.jac,sha256=6wjD1NQMbsm0vKf_qCpsr1csqY5a52P8I2je0rk0Qaw,26
|
|
57
64
|
jaclang/compiler/passes/main/tests/fixtures/checker_importer.jac,sha256=Z6DjHVQDnyAkUDOtZiU-GpHO2eUjXY9_aor5ySLG-3U,121
|
|
58
65
|
jaclang/compiler/passes/main/tests/fixtures/checker_magic_call.jac,sha256=wrR9zviHd8tyIFjPZo51vv9xOcq8Xvzcpy11DXKL1Yo,199
|
|
59
66
|
jaclang/compiler/passes/main/tests/fixtures/checker_mod_path.jac,sha256=Mp-tTqOX6YHSXIE2YiR2gVMWGiB2oYNxi_wL8zK-4FY,93
|
|
67
|
+
jaclang/compiler/passes/main/tests/fixtures/checker_param_types.jac,sha256=TKr3dS39Do13r2gdNpA62w5akCuSIVjMGDhODC-DoQI,113
|
|
68
|
+
jaclang/compiler/passes/main/tests/fixtures/checker_self_type.jac,sha256=uRhUiGjijmu7aTPHpB-UTOKcX7W6Z1ynTjCy47HrUDQ,121
|
|
69
|
+
jaclang/compiler/passes/main/tests/fixtures/checker_sym_inherit.jac,sha256=N3afEcqvp9KSlFfE-zyTbWVHh_eP8eDOJHfW0OPMaSc,708
|
|
60
70
|
jaclang/compiler/passes/main/tests/fixtures/circular_import.jac,sha256=e6zoQIrSRyToU_rr9be_OK-TGAQzuupKDYfwaS4LrJA,125
|
|
61
71
|
jaclang/compiler/passes/main/tests/fixtures/codegen_sem.jac,sha256=2K-sPnnuKWvUPvutYhQ6I2voxEgI4xVvl0xf3nZvIRA,1451
|
|
62
72
|
jaclang/compiler/passes/main/tests/fixtures/codegentext.jac,sha256=U9xyk8hDlWM3jUaozQXOD61f5p9SI-_QfDxA68DUYds,562
|
|
@@ -85,6 +95,9 @@ jaclang/compiler/passes/main/tests/fixtures/mtest.impl.jac,sha256=nLf_0rBWPRywLy
|
|
|
85
95
|
jaclang/compiler/passes/main/tests/fixtures/mtest.jac,sha256=lpL2zfy6-QAgq0tVL02wt2ukn8lMQzCG9xNhq6_G8cs,67
|
|
86
96
|
jaclang/compiler/passes/main/tests/fixtures/multi_def_err.jac,sha256=BxgmNUdz76gKLi6PXnLZE9rartodMgch5ydpGrd25Ec,87
|
|
87
97
|
jaclang/compiler/passes/main/tests/fixtures/nested_impls.jac,sha256=t5hGg8tMJtXQx7alHmChPipGFbmNDl_WM6zolORdhWI,1003
|
|
98
|
+
jaclang/compiler/passes/main/tests/fixtures/predynamo_fix3.jac,sha256=KxIbyHWcNCdzcD_73GBZGdvvwqkljPNzLKJpsvSxmTM,1546
|
|
99
|
+
jaclang/compiler/passes/main/tests/fixtures/predynamo_where_assign.jac,sha256=N_iyfQ2Krv5tgLxo011cSHsiC9AvahDODNeMxuFrVnw,220
|
|
100
|
+
jaclang/compiler/passes/main/tests/fixtures/predynamo_where_return.jac,sha256=HEto1bnV4inD9kO7kDEaFVjJphwXMc3C-883Ea6tdfU,204
|
|
88
101
|
jaclang/compiler/passes/main/tests/fixtures/py_imp_test.jac,sha256=H2-eoukWnf7v6XRfHdoqHukkqn-NPLsw5-aNotTl-fQ,907
|
|
89
102
|
jaclang/compiler/passes/main/tests/fixtures/pygame_mock/__init__.py,sha256=Y1RSbBzcwGV_WnF8ialRg5yO_Bv-crpZtU2v7JRsAUk,94
|
|
90
103
|
jaclang/compiler/passes/main/tests/fixtures/pygame_mock/__init__.pyi,sha256=Y1RSbBzcwGV_WnF8ialRg5yO_Bv-crpZtU2v7JRsAUk,94
|
|
@@ -104,10 +117,11 @@ jaclang/compiler/passes/main/tests/fixtures/type_annotation_assignment.jac,sha25
|
|
|
104
117
|
jaclang/compiler/passes/main/tests/fixtures/type_info.jac,sha256=Gbatf5_V_2uFVF0l8ICbW8t7N7FKCL-1sE9CbEogT4A,660
|
|
105
118
|
jaclang/compiler/passes/main/tests/test_binder_pass.py,sha256=0IQPqIW_bwXgMBTIlnBG16wB3W6ExPYC5Z7kU7VzhZ8,3661
|
|
106
119
|
jaclang/compiler/passes/main/tests/test_cfg_build_pass.py,sha256=BFHuvKbh6mTjemzRRMIAlATar-UDWT8uj8iVro1qsVE,5068
|
|
107
|
-
jaclang/compiler/passes/main/tests/test_checker_pass.py,sha256=
|
|
120
|
+
jaclang/compiler/passes/main/tests/test_checker_pass.py,sha256=KZPkzqJny6PZl-KMgm_xKpiKHidxFWzEbbeA2DnOtyY,14175
|
|
108
121
|
jaclang/compiler/passes/main/tests/test_decl_impl_match_pass.py,sha256=HCu5KO1N7kVonIM2N1A9BGRpfnJ4VDwR8TXJGTuKn3M,6039
|
|
109
122
|
jaclang/compiler/passes/main/tests/test_def_use_pass.py,sha256=CzIcSoUe_wk8gNW6NwF0w_MW9y-13VBLjHZKGYQ4aaE,771
|
|
110
123
|
jaclang/compiler/passes/main/tests/test_import_pass.py,sha256=2FNsF6Z4zRUsxWOOcbH4fFyvc48FCAP_Yq8qpne04-U,4985
|
|
124
|
+
jaclang/compiler/passes/main/tests/test_predynamo_pass.py,sha256=6NBvcs5jnpqoBqgK96dOVF6Y9h5ZU_WeciqvKgm-ruQ,2059
|
|
111
125
|
jaclang/compiler/passes/main/tests/test_pyast_build_pass.py,sha256=MIn0rGJ_fdyH-g1mtTNopwng9SQNSzGta5kiEXB4Ffg,1973
|
|
112
126
|
jaclang/compiler/passes/main/tests/test_pyast_gen_pass.py,sha256=8pBn0zReQtzQfwbu-LYI_ASahznjHzeSE4tX3XiBleY,9713
|
|
113
127
|
jaclang/compiler/passes/main/tests/test_pybc_gen_pass.py,sha256=x92ZvO3vAehSlZojzTE6H4_Sc-mB2tK3gG-dZTWxqFQ,650
|
|
@@ -115,15 +129,15 @@ jaclang/compiler/passes/main/tests/test_sem_def_match_pass.py,sha256=WorjEiU9GdE
|
|
|
115
129
|
jaclang/compiler/passes/main/tests/test_sub_node_pass.py,sha256=zO2PNo5DgtD1Qud8rTEdr-gLUVcMUXpQCBY-8-nj684,771
|
|
116
130
|
jaclang/compiler/passes/main/tests/test_sym_tab_build_pass.py,sha256=7gtUU9vV3q5x2vFt_oHyrq9Q4q538rWcO8911NFtmK4,701
|
|
117
131
|
jaclang/compiler/passes/main/tests/test_sym_tab_link_pass.py,sha256=N7eNPyIEwiM_1yECaErncmRXTidp89fFRFGFTd_AgIo,1894
|
|
118
|
-
jaclang/compiler/passes/main/type_checker_pass.py,sha256=
|
|
132
|
+
jaclang/compiler/passes/main/type_checker_pass.py,sha256=BI8j5nOnrmQjAQCndF6jsKvOqFvvHQe43iKJRBjhvd4,4417
|
|
119
133
|
jaclang/compiler/passes/tool/__init__.py,sha256=8M5dq_jq2TC4FCx4Aqr0-Djzf2i_w_1HtYSMLZ0CXNY,299
|
|
120
134
|
jaclang/compiler/passes/tool/doc_ir.py,sha256=okuoESF1qLbd3OHQxcfzHs35c6eilcIBp2sWNGg1m5w,5978
|
|
121
|
-
jaclang/compiler/passes/tool/doc_ir_gen_pass.py,sha256=
|
|
135
|
+
jaclang/compiler/passes/tool/doc_ir_gen_pass.py,sha256=hXZNfBaQamPMhBtf_IJpIOdiE4X0jRASqxavg-5zHAs,69195
|
|
122
136
|
jaclang/compiler/passes/tool/fuse_comments_pass.py,sha256=GO-8ISvsD9L98ujeMsT5r_drpmnltRX5MWZCNKOFpGc,4530
|
|
123
|
-
jaclang/compiler/passes/tool/jac_formatter_pass.py,sha256=
|
|
137
|
+
jaclang/compiler/passes/tool/jac_formatter_pass.py,sha256=51TBwaZHXW2VuINu2Y3Q4spgIlgknQMWmIutCjhT8Ws,7708
|
|
124
138
|
jaclang/compiler/passes/tool/tests/__init__.py,sha256=AeOaZjA1rf6VAr0JqIit6jlcmOzW7pxGr4U1fOwgK_Y,24
|
|
125
139
|
jaclang/compiler/passes/tool/tests/fixtures/archetype_frmt.jac,sha256=_xcQS4Fe7bxoJ9MxyQdkoWNEx-smxSApcKJ9a8zLeiY,503
|
|
126
|
-
jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac,sha256=
|
|
140
|
+
jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac,sha256=7ZMEs2mz8oBGUfgZaDUZxFvgSRuh5HmlTsuKgjQ8dVg,12412
|
|
127
141
|
jaclang/compiler/passes/tool/tests/fixtures/doc_string.jac,sha256=bNZJYX9ASkfrZTpi4nBMHEHfvkov1nw-wujxfFfADN4,217
|
|
128
142
|
jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/access_mod_check.jac,sha256=eeexkLX8-lWWEChvqMCGOrviLYOdPNRYwQIeAgxNFCs,419
|
|
129
143
|
jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/archetype_test.jac,sha256=8ZBwtRLH0g3YbTe__IXo3gnMwf5bYLPd_as5x6PTxoM,193
|
|
@@ -133,9 +147,9 @@ jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/decorator_stac
|
|
|
133
147
|
jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/esc_keywords.jac,sha256=EQdOQnHWF7NmM7SuQ4Y77fXUD8vkIBR7TG3G1lCGl0I,72
|
|
134
148
|
jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/line_spacing.jac,sha256=JAuaxnvG81o92uQG_SWawD9rceDGp4wjnDrreeBcQHw,1040
|
|
135
149
|
jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/long_names.jac,sha256=f3ptg81A3mub7OdsVlxvX7FInEmT6Y2D55ZacQ7kZQw,734
|
|
136
|
-
jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/triple_quoted_string.jac,sha256=
|
|
150
|
+
jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/triple_quoted_string.jac,sha256=7Ts6oE3x3x91lJIFQpdko54hrtM6vpMZDi56c5XCkmM,174
|
|
137
151
|
jaclang/compiler/passes/tool/tests/fixtures/has_frmt.jac,sha256=vIRwKItNJxbyAkSPpoFXMVKDnt3DWAQQKhu-5YCT1b0,444
|
|
138
|
-
jaclang/compiler/passes/tool/tests/fixtures/import_fmt.jac,sha256=
|
|
152
|
+
jaclang/compiler/passes/tool/tests/fixtures/import_fmt.jac,sha256=ofOZ9ibZhEnZsYC_G196OvDPo9mALd1P7wykXcsHTSs,261
|
|
139
153
|
jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.dot,sha256=Y4BtfJXqeqBHmsyRgfn_qjQCl0w-_YcKj9hoTyq80UY,1391
|
|
140
154
|
jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.jac,sha256=BxgmNUdz76gKLi6PXnLZE9rartodMgch5ydpGrd25Ec,87
|
|
141
155
|
jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.txt,sha256=mb8ZMkXi1FzyoJxSxHejVppu6piZIMWsW0JdADc05q8,780
|
|
@@ -155,22 +169,25 @@ jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_defa
|
|
|
155
169
|
jaclang/compiler/passes/tool/tests/fixtures/myca_formatted_code/walker_with_inline_ability_impl.jac,sha256=5AOxX4G7i3nYVQUryeuVVfe46gjzWimmW8ExNdBR9Bg,195
|
|
156
170
|
jaclang/compiler/passes/tool/tests/fixtures/simple_walk.jac,sha256=5g_oneTxvkcV73xml4zSzvXZviLLyXXUplGvuiBZTH8,806
|
|
157
171
|
jaclang/compiler/passes/tool/tests/fixtures/simple_walk_fmt.jac,sha256=uAFqtC7bh1oyYlU-7YbQu8INqPgVqOAFSdbjN4ViVIw,883
|
|
158
|
-
jaclang/compiler/passes/tool/tests/fixtures/tagbreak.jac,sha256=
|
|
172
|
+
jaclang/compiler/passes/tool/tests/fixtures/tagbreak.jac,sha256=9gBi721hFi0ErO3Tkf9AGgW3lJLWV5v9tRJiGH7nyKI,7453
|
|
159
173
|
jaclang/compiler/passes/tool/tests/test_fuse_comments_pass.py,sha256=ZeWHsm7VIyyS8KKpoB2SdlHM4jF22fMfSrfTfxt2MQw,398
|
|
160
174
|
jaclang/compiler/passes/tool/tests/test_jac_format_pass.py,sha256=CXn42HkopQVMSWtK3a5zX0cFP8kAlX5_Ut-Tg4bjxNE,6589
|
|
161
175
|
jaclang/compiler/passes/tool/tests/test_unparse_validate.py,sha256=fYlz31RQQUwmg3zYWHbXuwBksxli-zxk0HCVP42igAo,2214
|
|
162
|
-
jaclang/compiler/passes/transform.py,sha256=
|
|
176
|
+
jaclang/compiler/passes/transform.py,sha256=mC9DnWY1Hnosd-JyaR3lmlU35v_9fNALOySS_6P12xk,4810
|
|
163
177
|
jaclang/compiler/passes/uni_pass.py,sha256=Y1Y3TTrulqlpIGQUCZhBGkHVCvMg-AXfzCjV8dfGQm0,4841
|
|
164
178
|
jaclang/compiler/passes/utils/__init__.py,sha256=UsI5rUopTUiStAzup4kbPwIwrnC5ofCrqWBCBbM2-k4,35
|
|
165
|
-
jaclang/compiler/program.py,sha256=
|
|
179
|
+
jaclang/compiler/program.py,sha256=6LrAo7tCYWQDZHMnm2pxa6MKjN-FPn25Rqu4k0KIRQ8,6935
|
|
166
180
|
jaclang/compiler/tests/__init__.py,sha256=qiXa5UNRBanGOcplFKTT9a_9GEyiv7goq1OzuCjDCFE,27
|
|
167
181
|
jaclang/compiler/tests/fixtures/__init__.py,sha256=udQ0T6rajpW_nMiYKJNckqP8izZ-pH3P4PNTJEln2NU,36
|
|
168
182
|
jaclang/compiler/tests/fixtures/activity.py,sha256=fSvxYDKufsPeQIrbuh031zHw_hdbRv5iK9mS7dD8E54,263
|
|
169
183
|
jaclang/compiler/tests/fixtures/codegentext.jac,sha256=U9xyk8hDlWM3jUaozQXOD61f5p9SI-_QfDxA68DUYds,562
|
|
170
184
|
jaclang/compiler/tests/fixtures/fam.jac,sha256=PWbJPmAe_cXLTcqqXNy7N-S6biIlJDOm11LyHVvdiLM,1542
|
|
171
185
|
jaclang/compiler/tests/fixtures/hello_world.jac,sha256=lEEbLWw9Kwhk1itygwcnJqRfruNjLulo3w8_rez69Ss,78
|
|
186
|
+
jaclang/compiler/tests/fixtures/jac_import_py_files.py,sha256=VEsCXPP2B5BiXRu3pEriVtMRAgjR-Vf6H-O3rc_Ls_U,102
|
|
187
|
+
jaclang/compiler/tests/fixtures/jac_module.jac,sha256=pfdGGmlfF9n4lSbbjxK76Td4_MbmTaOOQkvGaODGh_Q,51
|
|
172
188
|
jaclang/compiler/tests/fixtures/kwesc.jac,sha256=OXxVL_fwiFuvYO1YX1RHa2hpETSpb0QD1-gMYnMY6DA,103
|
|
173
189
|
jaclang/compiler/tests/fixtures/mod_doc_test.jac,sha256=aFZpjn7V5lvCHp0lPoGXtdkcY3CK8_-SKeZGruutv4Y,35
|
|
190
|
+
jaclang/compiler/tests/fixtures/multiple_syntax_errors.jac,sha256=umUf5wvFIhgLhKjzb0MO6eOdrEoNA9K-PbQ2x9gK9ws,98
|
|
174
191
|
jaclang/compiler/tests/fixtures/pkg_import_lib/__init__.jac,sha256=XIIBWYlROHCXG-JK_kYtMpuVbqLtIoVr4q2z2PtDN5A,33
|
|
175
192
|
jaclang/compiler/tests/fixtures/pkg_import_lib/sub/__init__.jac,sha256=RZmbO5bujPpxmmumjZkYId5w0zuDjBXpA_9g-xbGyYY,33
|
|
176
193
|
jaclang/compiler/tests/fixtures/pkg_import_lib/sub/helper.jac,sha256=HphMN3KAuhRhsTtw7eoE45ZvStKa0QU3PvPIkWDyd-s,57
|
|
@@ -181,33 +198,33 @@ jaclang/compiler/tests/fixtures/pkg_import_lib_py/sub/helper.jac,sha256=HphMN3KA
|
|
|
181
198
|
jaclang/compiler/tests/fixtures/pkg_import_lib_py/tools.jac,sha256=FuL88yu9AnPuDn7heRf8X0NN6nrrGzt1txJrhYR995c,57
|
|
182
199
|
jaclang/compiler/tests/fixtures/pkg_import_main.jac,sha256=xeb8nb3_xQ9iCqGIJuMAqCsuB2S85whp531QlNA2q7U,299
|
|
183
200
|
jaclang/compiler/tests/fixtures/pkg_import_main_py.jac,sha256=wJobypGI8EsC6w641e3Z5joJMLm3eE0xFpVmP6QoQEo,375
|
|
201
|
+
jaclang/compiler/tests/fixtures/python_module.py,sha256=vicQGJgmHnGE6dACrtp2yNfcMZaZmITI2fUmPCedCv0,34
|
|
184
202
|
jaclang/compiler/tests/fixtures/staticcheck.jac,sha256=N44QGwRGK_rDY0uACqpkMQYRfkNQB2ai3lmdoAv0toI,342
|
|
185
203
|
jaclang/compiler/tests/fixtures/stuff.jac,sha256=qOq6WOwhlprMmJpiqQudgqnr4qTd9uhulQSDGQ3o6sY,82
|
|
186
|
-
jaclang/compiler/tests/test_importer.py,sha256=
|
|
187
|
-
jaclang/compiler/tests/test_parser.py,sha256=
|
|
204
|
+
jaclang/compiler/tests/test_importer.py,sha256=ZhiFD_GvDgXFKvzrqlWz0Wub7Np6gp9G_NprXJ9iZH0,6841
|
|
205
|
+
jaclang/compiler/tests/test_parser.py,sha256=URkNi5zhvw7ZCzmfmP1NznYGpi-O8E8CI9MrRA9uW9Q,7525
|
|
188
206
|
jaclang/compiler/tests/test_sr_errors.py,sha256=iixRll6eP-sgBzR2Zl9Bb-Da5flb67lPaPDQb3IDn3k,1074
|
|
189
207
|
jaclang/compiler/type_system/__init__.py,sha256=6LO1vhnbQDxb-xPH_YdguQcwUOmtHgmasRNLOf5WV_o,29
|
|
190
208
|
jaclang/compiler/type_system/operations.py,sha256=W3Unvaikk-obYcahian0M9tJRBnW_AXU6lhrL4LZ3SA,4129
|
|
191
|
-
jaclang/compiler/type_system/type_evaluator.
|
|
192
|
-
jaclang/compiler/type_system/type_utils.py,sha256=
|
|
193
|
-
jaclang/compiler/type_system/types.py,sha256=
|
|
194
|
-
jaclang/compiler/unitree.py,sha256=
|
|
209
|
+
jaclang/compiler/type_system/type_evaluator.jac,sha256=v-8FiW-zuUOmePKLhGDbiDSRJLwVffMdIJWGIplvJ4U,39026
|
|
210
|
+
jaclang/compiler/type_system/type_utils.py,sha256=jnqPZ-dpZC1RT_6Mq6G0OuGFXOEimSZEv6wjmtZZSV8,10250
|
|
211
|
+
jaclang/compiler/type_system/types.py,sha256=ulAdoKW5gt_OCYRzx3pUoRhFMnRJaD6rtjQze-G3tDA,9451
|
|
212
|
+
jaclang/compiler/unitree.py,sha256=h-4Whv7WNA4dgE2EX3s9pILBCVLYr5NEYzIDhHC_uR8,154679
|
|
195
213
|
jaclang/langserve/__init__.jac,sha256=3IEtXWjsqOgLA-LPqCwARCw0Kd8B_NeLedALxGshfAE,33
|
|
196
|
-
jaclang/langserve/
|
|
197
|
-
jaclang/langserve/dev_server.jac,sha256=GPbFqqx3nX9w63-AFLFrpRo6V_Gb3DDSi097AzygVAM,5800
|
|
198
|
-
jaclang/langserve/engine.jac,sha256=ZosFbYEZpTt_37eBOZOIzqOb1tDpxsSjwynNgvHhyrk,25999
|
|
214
|
+
jaclang/langserve/engine.jac,sha256=qsieo6mBJnFAzy562ouREHyGCCDI89PJVwOWX9yVb1k,25132
|
|
199
215
|
jaclang/langserve/sem_manager.jac,sha256=Gg95nKvXz9RwUNPshgUPHlrdFI8EWzk7Hxxgvs0xwa4,13795
|
|
200
|
-
jaclang/langserve/server.jac,sha256=
|
|
216
|
+
jaclang/langserve/server.jac,sha256=KDMqTyOjBFTmIS0Dnjs36SlXyLxZzFymyJNgi5oGUSQ,6802
|
|
201
217
|
jaclang/langserve/tests/__init__.py,sha256=iDM47k6c3vahaWhwxpbkdEOshbmX-Zl5x669VONjS2I,23
|
|
202
218
|
jaclang/langserve/tests/defaults.py,sha256=8UWHuCHY-WatPcWFhyX9-4KLuJgODTlLNj0wNnKomIM,7608
|
|
203
219
|
jaclang/langserve/tests/fixtures/base_module_structure.jac,sha256=bzt1F4kxAW2w0gWLA5PN30IxXN0_Cp7RssOVXxLIy8k,1440
|
|
204
|
-
jaclang/langserve/tests/fixtures/circle.jac,sha256=
|
|
205
|
-
jaclang/langserve/tests/fixtures/circle_err.jac,sha256=
|
|
220
|
+
jaclang/langserve/tests/fixtures/circle.jac,sha256=7c9VqmGOsenb5xmPu4wK6qUdmiv5VmDkFQDTT-7ld08,1746
|
|
221
|
+
jaclang/langserve/tests/fixtures/circle_err.jac,sha256=GOO1mXOCTWufL_GlNwadAxqJcyYK9Z65k4dH0YIRjuE,1708
|
|
206
222
|
jaclang/langserve/tests/fixtures/circle_pure.impl.jac,sha256=VQR2lJictcfTZWuRgtoN3WsLmh0VpEnAu5cbEGKqUiQ,693
|
|
207
223
|
jaclang/langserve/tests/fixtures/circle_pure.jac,sha256=Y1WyKi_2pb7lDUBIbe83SIXOgYii0lIJqxfn9e2DhMM,620
|
|
208
|
-
jaclang/langserve/tests/fixtures/circle_pure.test.jac,sha256=
|
|
224
|
+
jaclang/langserve/tests/fixtures/circle_pure.test.jac,sha256=PxigVWstwyLgdtxrAOsfAP-BupbOCYOUyTDqFEHIV7s,275
|
|
209
225
|
jaclang/langserve/tests/fixtures/circle_pure_err.impl.jac,sha256=txhsHR4yatqVYfMjtH37cMFZIYgOAXs02zGXz7J8OYk,694
|
|
210
226
|
jaclang/langserve/tests/fixtures/circle_pure_err.jac,sha256=Y0vJlFM9XF5BllZXWa-yZfJJc8kdfBZgPsMZRCHDtz0,604
|
|
227
|
+
jaclang/langserve/tests/fixtures/completion_test_err.jac,sha256=b56axbn8Wl9Iztp9FY-_UNUbiB3m1-gloZHLiGLmqKk,92
|
|
211
228
|
jaclang/langserve/tests/fixtures/deep_check_crash.jac,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
212
229
|
jaclang/langserve/tests/fixtures/hello.jac,sha256=iRMKtYVCw1zLvjOQbj3q__3Manj1Di1YeDTNMEvYtBc,36
|
|
213
230
|
jaclang/langserve/tests/fixtures/import_include_statements.jac,sha256=X8uyjdSN1pDSLhQyFhX8URLU5qsULJUi5qgmaHUqAc8,280
|
|
@@ -218,43 +235,45 @@ jaclang/langserve/tests/pylsp_jsonrpc/dispatchers.py,sha256=zEZWu6C2_n4lPoA8H8OO
|
|
|
218
235
|
jaclang/langserve/tests/pylsp_jsonrpc/endpoint.py,sha256=TxDpWUd-8AGJwdRQN_iiCXYxrVfviZQlNtEvBL0dDPc,10591
|
|
219
236
|
jaclang/langserve/tests/pylsp_jsonrpc/exceptions.py,sha256=NGHeFQawZcjoLUcgDmY3bF7BqZR83g7TmdKyzCmRaKM,2836
|
|
220
237
|
jaclang/langserve/tests/pylsp_jsonrpc/streams.py,sha256=R80_FvICIkrbdGmNtlemWYaxrr7-XldPgLaASnyv0W8,3332
|
|
221
|
-
jaclang/langserve/tests/server_test/
|
|
222
|
-
jaclang/langserve/tests/server_test/
|
|
223
|
-
jaclang/langserve/tests/server_test/
|
|
238
|
+
jaclang/langserve/tests/server_test/circle_template.jac,sha256=iueTMdbsxFXUCRVuryQ8US9k_lEumOdzblVB3KS3TD0,1770
|
|
239
|
+
jaclang/langserve/tests/server_test/glob_template.jac,sha256=XrwYoO5YH9wJSTwFCf6srJSe3UeXWjDKzUChFUOOIz8,140
|
|
240
|
+
jaclang/langserve/tests/server_test/test_lang_serve.py,sha256=aRcEgdcAp0QnYlMTv1FyF6H3uGCtfeu61EdFdsQ3MgQ,6940
|
|
241
|
+
jaclang/langserve/tests/server_test/utils.py,sha256=m8G2mAydAljcGeV2RZBzYaQgYfXRpCP0cbpu6HarVjo,6341
|
|
224
242
|
jaclang/langserve/tests/session.jac,sha256=fS-aUHWb-r5ay3R4wJuSmoeoxgAufN4srvTjMP_OhII,10658
|
|
225
243
|
jaclang/langserve/tests/test_dev_server.py,sha256=zXjZy3BY40y5dQB2xJ2P3qPEP2B2BvrV4o1wqPm_Q38,2906
|
|
226
244
|
jaclang/langserve/tests/test_sem_tokens.py,sha256=3ew2yVQhA4PCTRC05sqcoZjb8JSB9hJQJC4TGgD8Ytk,9935
|
|
227
|
-
jaclang/langserve/tests/test_server.py,sha256=
|
|
228
|
-
jaclang/langserve/utils.jac,sha256=
|
|
245
|
+
jaclang/langserve/tests/test_server.py,sha256=76qTNzA51601CNxERi_LmRm0aTU-CCCr088EBf0CAO8,22313
|
|
246
|
+
jaclang/langserve/utils.jac,sha256=_5aW0IMuh0AmG8rKwzlFwvdjSU1Hzp5qAppaGg-Cnk0,13864
|
|
247
|
+
jaclang/lib.py,sha256=vYNT6Rvh9nqC_KbHFMPBGGLv1fR3q5NR3U9SM8RWMCI,590
|
|
229
248
|
jaclang/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
230
249
|
jaclang/runtimelib/__init__.py,sha256=jDDYBCV82qPhmcDVk3NIvHbhng0ebSrXD3xrojg0-eo,34
|
|
231
|
-
jaclang/runtimelib/archetype.py,sha256=
|
|
250
|
+
jaclang/runtimelib/archetype.py,sha256=YRiCUijEa4TPMzEJgxOvlmQk36ZgTBgTsEG29F9Xry0,13091
|
|
232
251
|
jaclang/runtimelib/builtin.py,sha256=WeaTeFhnLX_aNseMFSrbilO_pmCoyGapDmDBE2U28Hs,3016
|
|
233
|
-
jaclang/runtimelib/constructs.py,sha256=
|
|
252
|
+
jaclang/runtimelib/constructs.py,sha256=69xwDCTjjWepdyPNiwg8wUWuni1Ty4X67xOMaiMLQgI,764
|
|
234
253
|
jaclang/runtimelib/importer.py,sha256=R1VIhBPMBR0CnQhT9tKazMExYCQvRa8Z8hkQ4PPQRF4,13488
|
|
235
|
-
jaclang/runtimelib/machine.py,sha256=
|
|
254
|
+
jaclang/runtimelib/machine.py,sha256=yF7gBgzeXXJXzbbs2ZXE3nNb4AJ9Lxiv_s8-U9NV9xY,61020
|
|
236
255
|
jaclang/runtimelib/memory.py,sha256=g91YkO025PLG-ANW_9Q5KsMtwPjGTE_1nXuSjQFct1I,7318
|
|
237
|
-
jaclang/runtimelib/meta_importer.py,sha256=
|
|
256
|
+
jaclang/runtimelib/meta_importer.py,sha256=w2R_gfYwM8bT-I1HWX--Mg_uxPIvIODyTrhoNPVWYMU,4511
|
|
238
257
|
jaclang/runtimelib/test.py,sha256=4HW7MjHmxjwWjwtIqLtFpcq9B9rI4NmyA92qFy9yhz8,4709
|
|
239
258
|
jaclang/runtimelib/tests/__init__.py,sha256=rn_tNG8jCHWwBc_rx4yFkGc4N1GISb7aPuTFVRTvrTk,38
|
|
240
|
-
jaclang/runtimelib/tests/fixtures/custom_access_validation.jac,sha256=
|
|
259
|
+
jaclang/runtimelib/tests/fixtures/custom_access_validation.jac,sha256=fytOAzVN4TFYKZObLhfAJni8gB01hzjqZkCeBwK2htY,1411
|
|
241
260
|
jaclang/runtimelib/tests/fixtures/graph_purger.jac,sha256=ltADlHHhbtc2aVUHJ-itoy6EL41bAlDaFzAdVmsFBLA,1514
|
|
242
261
|
jaclang/runtimelib/tests/fixtures/impl_match.jac,sha256=2TrA7eC21c8JcS9IYFs2aLT_ta6BuoBA06yK2ENsVwE,86
|
|
243
262
|
jaclang/runtimelib/tests/fixtures/impl_match_impl.jac,sha256=4KbKJMnK_uYjc9kQHPhGsAbdHIRVLpg3Pp30fbV1eLA,27
|
|
244
263
|
jaclang/runtimelib/tests/fixtures/other_root_access.jac,sha256=yArcQopYX82pVJOLXcgGwyTpuuZpRJLYQWcLpiwrqRQ,2109
|
|
245
|
-
jaclang/runtimelib/tests/fixtures/savable_object.jac,sha256=
|
|
264
|
+
jaclang/runtimelib/tests/fixtures/savable_object.jac,sha256=HCqUzRHBY4nJ6vHXcQGtp7Av3grwLZkveS3ubOuIzlI,2204
|
|
246
265
|
jaclang/runtimelib/tests/fixtures/simple_node_connection.jac,sha256=uwY0bgfhvXBsWNIMv-Ux53d8LtTu8JY64nx-QaRuTWc,1076
|
|
247
266
|
jaclang/runtimelib/tests/fixtures/simple_persistent.jac,sha256=k75eUY8JUtzBcPz_yzJCG4RHeKrO6e4YtqTFarJgxQs,626
|
|
248
267
|
jaclang/runtimelib/tests/fixtures/traversing_save.jac,sha256=DdLAKAmnbRbnHXeQnM57h4W6nKN1t657O_4USoeESik,267
|
|
249
268
|
jaclang/runtimelib/tests/test_features.py,sha256=Tba4DkgVhzmbNsiVvcipMrdxO_vNmfdTDRpD--EWJM4,2511
|
|
250
269
|
jaclang/runtimelib/tests/test_jaseci.py,sha256=SwCh2vWPysVkpv1r1jOl7LGJXz7QCJA4xqfd7o1zXA4,34746
|
|
251
270
|
jaclang/runtimelib/utils.py,sha256=4NSyZdf_zvF3rmHujH0FHdXqwJXavvmsvSICJjvL_Vk,9200
|
|
252
|
-
jaclang/settings.py,sha256=
|
|
271
|
+
jaclang/settings.py,sha256=0Uxv2lv8ReLxlsPpgvgF7d7e2PyNFZVxclAhguYA8AQ,3825
|
|
253
272
|
jaclang/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
254
273
|
jaclang/tests/fixtures/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
255
|
-
jaclang/tests/fixtures/abc_check.jac,sha256=
|
|
274
|
+
jaclang/tests/fixtures/abc_check.jac,sha256=7c9VqmGOsenb5xmPu4wK6qUdmiv5VmDkFQDTT-7ld08,1746
|
|
256
275
|
jaclang/tests/fixtures/arch_create_util.jac,sha256=3pRe9JyCGO_8Z7XYnSKPehyOAAPf6747fHvgrMz6wQU,133
|
|
257
|
-
jaclang/tests/fixtures/arch_rel_import_creation.jac,sha256=
|
|
276
|
+
jaclang/tests/fixtures/arch_rel_import_creation.jac,sha256=5IaqASXPqs432LoRKw7fUbhbLAwffOFB4kF7xUuSxyM,608
|
|
258
277
|
jaclang/tests/fixtures/archetype_def_bug.jac,sha256=Z5GsP0vLMlrZf42uCkRh27eBfkB3-sln0KRpkmnOO40,265
|
|
259
278
|
jaclang/tests/fixtures/arithmetic_bug.jac,sha256=iiO3ZwTi7R1U6-flV4tGbxDHXsw8GnaLEzVNGTPdMUA,135
|
|
260
279
|
jaclang/tests/fixtures/assign_compr.jac,sha256=rnoujdtpjNbem4IdtBfxPahSUXl-gxNv4JFNEuUs5iM,286
|
|
@@ -262,6 +281,7 @@ jaclang/tests/fixtures/assign_compr_dup.jac,sha256=rnoujdtpjNbem4IdtBfxPahSUXl-g
|
|
|
262
281
|
jaclang/tests/fixtures/async_ability.jac,sha256=z7Huy71Vd3FG_sKsf1tjYrmD7ZVru8J8F7krWp9Vtd0,972
|
|
263
282
|
jaclang/tests/fixtures/async_function.jac,sha256=gZzgsbheh2ptkN8FSAiw8yn1vJxtXpOnzhetD6qkF8Q,246
|
|
264
283
|
jaclang/tests/fixtures/async_walker.jac,sha256=46PBHlHsM6rDnegZvzUAFQMQ7TCnUKtUUdWU5YtqLlM,596
|
|
284
|
+
jaclang/tests/fixtures/attr_pattern_case.jac,sha256=TyO9EVgwPxOtGRVRiXuwBl2VqXTqLd9rY0zgSLk_jcA,247
|
|
265
285
|
jaclang/tests/fixtures/backward_edge_visit.jac,sha256=vNgIvyrLzhwMiqqOMysamN4mL6zU4OEoDSIC9D_kYqc,551
|
|
266
286
|
jaclang/tests/fixtures/baddy.jac,sha256=J0VvMjj0iJC3KRgdniZkKWi2U0BkcR39IeEdKhRG5iA,30
|
|
267
287
|
jaclang/tests/fixtures/baddy.test.jac,sha256=Uq-Nlf44QUAtbOfDCbc9_ceLxmo31PILDTSzAv8nJq4,33
|
|
@@ -276,12 +296,12 @@ jaclang/tests/fixtures/builtin_printgraph_mermaid.jac,sha256=IZAtTuj_qX5xEwZz8Gl
|
|
|
276
296
|
jaclang/tests/fixtures/builtins_test.jac,sha256=1eJXipIFpa8IDjKv20TjAW_k4hTtJzNT1cKnQOAVt28,244
|
|
277
297
|
jaclang/tests/fixtures/byllmissue.jac,sha256=0eHaoNXePdjt6vnWEnsKubskvwKRpS5Bf5_UHrWcuvw,86
|
|
278
298
|
jaclang/tests/fixtures/chandra_bugs.jac,sha256=9RivLxwMFd3CiIB43_QcMikQCcZpSzUMB0QgFrJvSDs,282
|
|
279
|
-
jaclang/tests/fixtures/chandra_bugs2.jac,sha256=
|
|
299
|
+
jaclang/tests/fixtures/chandra_bugs2.jac,sha256=qamTrujjwsgegWZWv9h-ynx_15eCVYh9PvuwIiewre8,618
|
|
280
300
|
jaclang/tests/fixtures/circle_pysolo.py,sha256=TAJTCOjrUl80oDke5wl6ZyBJQsy37Hu6gYdqcO-tQlY,2477
|
|
281
301
|
jaclang/tests/fixtures/cls_method.jac,sha256=7belevX_oLNnePG_ji1cLpgdUca62riTmBwbbB_mHcM,729
|
|
282
302
|
jaclang/tests/fixtures/concurrency.jac,sha256=DtSLDUHfz-ngOdCzKjeUgzXbeLoDiA2a_6LEGuUvFxU,572
|
|
283
303
|
jaclang/tests/fixtures/connect_traverse_syntax.jac,sha256=WqSeIfm9OLLKXjdMGGDWx5gEDekEffJi08sPU4skxCo,298
|
|
284
|
-
jaclang/tests/fixtures/create_dynamic_archetype.jac,sha256=
|
|
304
|
+
jaclang/tests/fixtures/create_dynamic_archetype.jac,sha256=O4ROmON9MFESQMzuRBzq_Lf_Vaha8KvTBqtkIFR5pqw,781
|
|
285
305
|
jaclang/tests/fixtures/dblhello.jac,sha256=2CKdYZj35AXzvA2SCBHhgvG5f0bnlpLdQ36eqKCmI-M,69
|
|
286
306
|
jaclang/tests/fixtures/decl_defn_param_name.jac,sha256=cvNq18tEim3DX17xM1kjjTio3SPKzdFK3KFOJRh6d2Y,383
|
|
287
307
|
jaclang/tests/fixtures/deep/deeper/deep_outer_import.jac,sha256=9a5fREgfbafmxUOGMBKAjQcWbdyUwWhq_kBfYFTsZgc,246
|
|
@@ -314,6 +334,8 @@ jaclang/tests/fixtures/err2.jac,sha256=x8h69NTVMGJa_UicY-CZblLMdeH09myTeiYqNFami
|
|
|
314
334
|
jaclang/tests/fixtures/err_runtime.jac,sha256=s0orGdCN94pXpXsSATGhNaNwdp8KB-eBmZocPVBr_lU,177
|
|
315
335
|
jaclang/tests/fixtures/expr_type.jac,sha256=96zQmUU8EX9sMm9E-eExMX43M9whpgmUkJ9v-XYEcKQ,914
|
|
316
336
|
jaclang/tests/fixtures/foo.jac,sha256=hiwE2YhjSNd7KkkvWkW7rjhCVXGRILAN4fQSihKYznA,992
|
|
337
|
+
jaclang/tests/fixtures/funccall_genexpr.jac,sha256=2bx-lvwzUvQ7pxS7au0Ia8hron_k19shOiBcMu4Ag6E,144
|
|
338
|
+
jaclang/tests/fixtures/funccall_genexpr.py,sha256=L3tctyyAdodtP1iIAWsM4N8RwLiYALXm7FKXJB3Unpo,99
|
|
317
339
|
jaclang/tests/fixtures/game1.jac,sha256=5__UcviEPLYitOHd_40WC_Mq-kbmpyfLkQjY6k0TJ1w,259
|
|
318
340
|
jaclang/tests/fixtures/gendot_bubble_sort.jac,sha256=z-9XIQU8zkeB8vRjGrMWtQmUr3-ef700SJ7jrjs1KfU,1521
|
|
319
341
|
jaclang/tests/fixtures/glob_multivar_statement.jac,sha256=B5APoeQOlnC-7jRBmPDCqyQX9G5ggKdc2OgRFLMEbvE,223
|
|
@@ -347,7 +369,7 @@ jaclang/tests/fixtures/lambda.jac,sha256=VFF-bh-j4bLamY4RABDmTRY1_O_WPXfAD9swNaM
|
|
|
347
369
|
jaclang/tests/fixtures/lambda_arg_annotation.jac,sha256=01Cg7FWW2g8R_aqajqoUGhV8WjaWJ5Wq3RqMKv6LEyw,202
|
|
348
370
|
jaclang/tests/fixtures/lambda_self.jac,sha256=1Df_GAZHJAKYnnJymuL8nmo2riY9AMzsuZZveYPMj1o,344
|
|
349
371
|
jaclang/tests/fixtures/match_multi_ex.jac,sha256=05XB0B0yMWpA84pCvAnKnpXObpE5fcUedpQ8Rly9Qp0,205
|
|
350
|
-
jaclang/tests/fixtures/maxfail_run_test.jac,sha256=
|
|
372
|
+
jaclang/tests/fixtures/maxfail_run_test.jac,sha256=xtCbcw5a6Fdt9r_AKXuaVdTMwLPSwUv8RGi88sqj_Pw,164
|
|
351
373
|
jaclang/tests/fixtures/multi_dim_array_split.jac,sha256=xM34uJwKBbI1-Q8Z-dK2lNB7PWvQZUmdsNxMuDwUHKs,290
|
|
352
374
|
jaclang/tests/fixtures/needs_import.jac,sha256=lcZWN7LPeFudCqihi9ETL1FQfOvCKYMVTtoHwpAiUg0,301
|
|
353
375
|
jaclang/tests/fixtures/needs_import_1.jac,sha256=LAMoIUITbFKSVDUCvgnBB0-7IjNp2RIC2ftH9y4LwF0,101
|
|
@@ -357,7 +379,15 @@ jaclang/tests/fixtures/needs_import_dup.jac,sha256=AR5sNlyIxnF-S3Hx5dqsNrA6gkp63
|
|
|
357
379
|
jaclang/tests/fixtures/node_del.jac,sha256=BVcS94AaB7D0OIUisVihLs6NTOVIRY6LWeuVeCQWt98,1385
|
|
358
380
|
jaclang/tests/fixtures/nosigself.jac,sha256=06wYx9eBv9lqqp5XmKCe1cwJE1-3ZhFvZV83AR_pxfA,187
|
|
359
381
|
jaclang/tests/fixtures/objref.jac,sha256=u_Sc8CTbsqe0D0VI5jUEWsV36l2PH0uNukSn3LSlJPI,195
|
|
382
|
+
jaclang/tests/fixtures/params/param_syntax_err.jac,sha256=D8z7Tq_OfL7aQ7Aotat6YlmScmEcPNpmeApzQ_BsM0Q,227
|
|
383
|
+
jaclang/tests/fixtures/params/test_complex_params.jac,sha256=t6UGCUBqvRzIUAfkVLDaH_7HPkEkAldGMSs3aubnRPs,1413
|
|
384
|
+
jaclang/tests/fixtures/params/test_failing_kwonly.jac,sha256=4WSV8TUjegXN4-qX2LL998371GumkqXpprHJJ3-6pT0,7194
|
|
385
|
+
jaclang/tests/fixtures/params/test_failing_posonly.jac,sha256=IGfi_NhcHrLDf4-W9bfg5TV6ZZKz3adqBqTEMVdqdDA,3521
|
|
386
|
+
jaclang/tests/fixtures/params/test_failing_varargs.jac,sha256=huNEaKdlFiuVdUuGQRClPT1hpIrIlbnQdM8H4__ozsE,9882
|
|
387
|
+
jaclang/tests/fixtures/params/test_kwonly_params.jac,sha256=Suz_TIPzCvtewJqvltVd807G_TOfNNUfNsWFF6FWARc,861
|
|
360
388
|
jaclang/tests/fixtures/py2jac.py,sha256=cRmCfVyOfbZrsJodV6UCF2AVy26m2PbJqE_hQEFuAsI,538
|
|
389
|
+
jaclang/tests/fixtures/py2jac_empty.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
390
|
+
jaclang/tests/fixtures/py2jac_params.py,sha256=tuhpz-I1DUwrjmxeY3uz1sQlDDTt9wea65Y2UgNOEW8,279
|
|
361
391
|
jaclang/tests/fixtures/py_bool_expr.py,sha256=DRfxCvuB0hkuSq6L49aw5e-xOODNgC082zgDrajV5fE,338
|
|
362
392
|
jaclang/tests/fixtures/py_namedexpr.py,sha256=DV0hBKOblFbvpClhvYXZ2pMFp8fn25x9X-JtaHNSK8Q,113
|
|
363
393
|
jaclang/tests/fixtures/py_run.jac,sha256=RjTlllwYlyIFbK0EMTe8bOoGEszAyEwj210Xr7UR0WQ,117
|
|
@@ -379,7 +409,7 @@ jaclang/tests/fixtures/python_run_test.py,sha256=CoRg_E6me6AGRthEceVtakE18hR67bQ
|
|
|
379
409
|
jaclang/tests/fixtures/random_check.jac,sha256=EC5B0hTAb1_M2PUKJcI65RBhPSLd11_me-jzl9HCzCs,1511
|
|
380
410
|
jaclang/tests/fixtures/raw_byte_string.jac,sha256=y5FA0rtLC5do8vqXfCxCF1TP7l8L20nI56WRFdu8x9k,337
|
|
381
411
|
jaclang/tests/fixtures/refs_target.jac,sha256=Whexw4-xErg7vlV-1NB3cp0bNOP8u0df0QSrupTkJEY,347
|
|
382
|
-
jaclang/tests/fixtures/run_test.jac,sha256=
|
|
412
|
+
jaclang/tests/fixtures/run_test.jac,sha256=r_68jdBnnDegy2ivYZI4U_WtXzB7EbwCaWM0rxPwXFQ,168
|
|
383
413
|
jaclang/tests/fixtures/simple_archs.jac,sha256=FsZvsQR9LuUMMFDIYEen-qRREa171hWd8gcqIvHVZmk,380
|
|
384
414
|
jaclang/tests/fixtures/simple_walk.jac,sha256=2NyJLtyZj0uW03iJTp7vvLssB57dy4IORej6nfdAR8M,834
|
|
385
415
|
jaclang/tests/fixtures/slice_vals.jac,sha256=pgCdz8D0vd43huMhHeBvbSUMuucwWyVSQpKkMAYw1Wk,228
|
|
@@ -403,22 +433,22 @@ jaclang/tests/fixtures/while_else.jac,sha256=Ziej7zCqTc2K7Dy9uE9pzyMns4pWGAVzjRx
|
|
|
403
433
|
jaclang/tests/fixtures/with_context.jac,sha256=IitGo_vWRrJ--OU5I9n3LOf_oO8NH02G2D5qIDRkl04,466
|
|
404
434
|
jaclang/tests/foo/__init__.jac,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
405
435
|
jaclang/tests/test_bugs.py,sha256=w1_GJz1lMlsehriDtj1sq-gJlnvF5Kt0Dq1WKnl8By4,556
|
|
406
|
-
jaclang/tests/test_cli.py,sha256=
|
|
407
|
-
jaclang/tests/test_language.py,sha256=
|
|
436
|
+
jaclang/tests/test_cli.py,sha256=wMw0nB2oDIICkhA1xKsPwVxbxtYvNgaca49UULS9IXE,28202
|
|
437
|
+
jaclang/tests/test_language.py,sha256=d2mgnnecZxtoM40Jz9ItTK1wPIPYfSKi51BEK5O7_Nc,68708
|
|
408
438
|
jaclang/tests/test_man_code.py,sha256=ouK8XUp2FaEPNu2P7AkZa6OGrow2rNNIcQMF2uhJOvg,5054
|
|
409
|
-
jaclang/tests/test_reference.py,sha256=
|
|
439
|
+
jaclang/tests/test_reference.py,sha256=4bb6tlFmq-1RZ8PF_AP6tbemTDKAKUpPkXPMr_RYVTs,3774
|
|
410
440
|
jaclang/tests/test_settings.py,sha256=_h4vGHJMFe4H9ycFP78EkaT8gVrOt7e0tTJLYQjwNys,1839
|
|
411
441
|
jaclang/tests/test_typecheck.py,sha256=ayTaNreS_mCxrDjx0XMzuvoTYdzU9r_pN-AFhC-oGyo,19911
|
|
412
442
|
jaclang/utils/__init__.py,sha256=CB3oGfO8uIJsBig2PTQ89gtZB4zs1pIPZEYHa34oliY,203
|
|
413
|
-
jaclang/utils/helpers.py,sha256=
|
|
443
|
+
jaclang/utils/helpers.py,sha256=NuyDDPIecrLvpp_q6qf6wM1nv1UmIFXfgSH-pmafmlw,11963
|
|
414
444
|
jaclang/utils/lang_tools.py,sha256=n4oshYGy2Ras56A_Tc27dIyoomXJIhqQhd5oX2C9E0g,10819
|
|
415
445
|
jaclang/utils/log.py,sha256=G8Y_DnETgTh9xzvlW5gh9zqJ1ap4YY_MDTwIMu5Uc0Y,262
|
|
416
|
-
jaclang/utils/module_resolver.py,sha256=
|
|
446
|
+
jaclang/utils/module_resolver.py,sha256=vFflHJUUSzi7P8aACDHN6iS-iMm8tc3X1su7WfKyEBo,7014
|
|
417
447
|
jaclang/utils/symtable_test_helpers.py,sha256=1T9qV8JALdjNjYqVmBY2HVCNI6OodP2D7Uy8qyLpxSA,4512
|
|
418
|
-
jaclang/utils/test.py,sha256=
|
|
448
|
+
jaclang/utils/test.py,sha256=3-lUq4xp_FaJ5gcxMeE38Ar8Kg6rUAkEpPC1MOllYBM,6472
|
|
419
449
|
jaclang/utils/tests/__init__.py,sha256=8uwVqMsc6cxBAM1DuHLuNuTnzLXqOqM-WRa4ixOMF6w,23
|
|
420
|
-
jaclang/utils/tests/test_lang_tools.py,sha256=
|
|
421
|
-
jaclang/utils/treeprinter.py,sha256=
|
|
450
|
+
jaclang/utils/tests/test_lang_tools.py,sha256=OWZ72AFvr24q5SNGidZvVHi-BCnp0CXqnSUCoKPX-n4,5324
|
|
451
|
+
jaclang/utils/treeprinter.py,sha256=5M9AOdzLPQnMe1TVxV3cejTLePhr1y9S1kXz0nCtlmc,16831
|
|
422
452
|
jaclang/vendor/__init__.py,sha256=NQiD5OO-k2AD0Mt4VMdH_9PwBnKvIjAvF2NkhS5h9JM,238
|
|
423
453
|
jaclang/vendor/attr/__init__.py,sha256=fOYIvt1eGSqQre4uCS3sJWKZ0mwAuC8UD6qba5OS9_U,2057
|
|
424
454
|
jaclang/vendor/attr/__init__.pyi,sha256=QIXnnHPoucmDWkbpNsWTP-cgJ1bn8le7DjyRa_wYdew,11281
|
|
@@ -5227,7 +5257,7 @@ jaclang/vendor/typeshed/stubs/zxcvbn/zxcvbn/frequency_lists.pyi,sha256=Dtmz_lJ3F
|
|
|
5227
5257
|
jaclang/vendor/typeshed/stubs/zxcvbn/zxcvbn/matching.pyi,sha256=_qCtgbqOjvvqdQNe4VvwwEggQMtJ65FATWfesuxeukE,3554
|
|
5228
5258
|
jaclang/vendor/typeshed/stubs/zxcvbn/zxcvbn/scoring.pyi,sha256=8LMgKMusPGV0WxrcvzZXJbZQCBDKdIMRIdr2wnbXBiI,1454
|
|
5229
5259
|
jaclang/vendor/typeshed/stubs/zxcvbn/zxcvbn/time_estimates.pyi,sha256=OWLFOMJXtKyoErBCIL7ej-WGLO-blK-j_xhzT-sHiU0,898
|
|
5230
|
-
jaclang-0.8.
|
|
5231
|
-
jaclang-0.8.
|
|
5232
|
-
jaclang-0.8.
|
|
5233
|
-
jaclang-0.8.
|
|
5260
|
+
jaclang-0.8.9.dist-info/METADATA,sha256=0XslQcO1mjdqDgV7TyJ6ieyirOACAFAG3UgjBpHUuVs,5049
|
|
5261
|
+
jaclang-0.8.9.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
|
|
5262
|
+
jaclang-0.8.9.dist-info/entry_points.txt,sha256=8sMi4Tvi9f8tQDN2QAXsSA2icO27zQ4GgEdph6bNEZM,49
|
|
5263
|
+
jaclang-0.8.9.dist-info/RECORD,,
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
"""Inheritance Resolution Pass for the Jac compiler.
|
|
2
|
-
|
|
3
|
-
This pass handles the inheritance relationships between archetypes by:
|
|
4
|
-
|
|
5
|
-
1. Identifying base classes for each archetype in the program
|
|
6
|
-
2. Resolving the inheritance hierarchy, including multi-level inheritance
|
|
7
|
-
3. Populating derived class symbol tables with symbols from their base classes
|
|
8
|
-
4. Handling special cases like Python base classes and index slice expressions
|
|
9
|
-
5. Ensuring proper symbol visibility according to inheritance rules
|
|
10
|
-
|
|
11
|
-
This pass is essential for object-oriented features in Jac, allowing derived classes
|
|
12
|
-
to access methods and attributes defined in their parent classes.
|
|
13
|
-
"""
|
|
14
|
-
|
|
15
|
-
from __future__ import annotations
|
|
16
|
-
|
|
17
|
-
from typing import Optional
|
|
18
|
-
|
|
19
|
-
import jaclang.compiler.unitree as uni
|
|
20
|
-
from jaclang.compiler.passes.transform import Transform
|
|
21
|
-
from jaclang.compiler.unitree import Symbol, UniScopeNode
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
class InheritancePass(Transform[uni.Module, uni.Module]):
|
|
25
|
-
"""Add inherited abilities in the target symbol tables."""
|
|
26
|
-
|
|
27
|
-
def transform(self, ir_in: uni.Module) -> uni.Module:
|
|
28
|
-
"""Entry point for the inheritance pass."""
|
|
29
|
-
self.process_archetypes(ir_in)
|
|
30
|
-
return ir_in
|
|
31
|
-
|
|
32
|
-
def process_archetypes(self, module: uni.Module) -> None:
|
|
33
|
-
"""Process all archetypes in the module."""
|
|
34
|
-
for node in module.get_all_sub_nodes(uni.Archetype):
|
|
35
|
-
self.process_archetype_inheritance(node)
|
|
36
|
-
|
|
37
|
-
def process_archetype_inheritance(self, node: uni.Archetype) -> None:
|
|
38
|
-
"""Fill archetype symbol tables with abilities from parent archetypes."""
|
|
39
|
-
if not node.base_classes:
|
|
40
|
-
return
|
|
41
|
-
|
|
42
|
-
self.cur_node = node
|
|
43
|
-
for item in node.base_classes:
|
|
44
|
-
# Handle different types of base class references
|
|
45
|
-
if isinstance(item, uni.Name):
|
|
46
|
-
self.inherit_from_name(node, item)
|
|
47
|
-
elif isinstance(item, uni.AtomTrailer):
|
|
48
|
-
self.inherit_from_atom_trailer(node, item)
|
|
49
|
-
elif isinstance(item, uni.FuncCall):
|
|
50
|
-
self.log_info(
|
|
51
|
-
"Base class depends on the type of a function call "
|
|
52
|
-
"expression, this is not supported yet"
|
|
53
|
-
)
|
|
54
|
-
|
|
55
|
-
def inherit_from_name(self, node: uni.Archetype, item: uni.Name) -> None:
|
|
56
|
-
"""Handle inheritance from a simple name reference."""
|
|
57
|
-
assert node.sym_tab.parent_scope is not None
|
|
58
|
-
base_class_symbol = self.lookup_symbol(item.sym_name, node.sym_tab.parent_scope)
|
|
59
|
-
|
|
60
|
-
if base_class_symbol is None:
|
|
61
|
-
return
|
|
62
|
-
|
|
63
|
-
base_class_symbol_table = base_class_symbol.symbol_table
|
|
64
|
-
|
|
65
|
-
# FIXME: If the base class symbol is imported from another module, the symbol table
|
|
66
|
-
# will be None. The imported symbols were ignored and introduced in the typecheck
|
|
67
|
-
# for imported module items. This needs to be investigated to ensure that even imported
|
|
68
|
-
# classes should have a symbol table (unless the module is not parsed and decided not to).
|
|
69
|
-
if base_class_symbol_table is None:
|
|
70
|
-
return
|
|
71
|
-
|
|
72
|
-
if self.is_missing_py_symbol_table(base_class_symbol, base_class_symbol_table):
|
|
73
|
-
return
|
|
74
|
-
|
|
75
|
-
node.sym_tab.inherit_sym_tab(base_class_symbol_table)
|
|
76
|
-
|
|
77
|
-
def inherit_from_atom_trailer(
|
|
78
|
-
self, node: uni.Archetype, item: uni.AtomTrailer
|
|
79
|
-
) -> None:
|
|
80
|
-
"""Handle inheritance from an attribute access chain."""
|
|
81
|
-
current_sym_table = node.sym_tab.parent_scope
|
|
82
|
-
if current_sym_table:
|
|
83
|
-
for name in item.as_attr_list:
|
|
84
|
-
sym = self.lookup_symbol(name.sym_name, current_sym_table)
|
|
85
|
-
if sym is None:
|
|
86
|
-
return
|
|
87
|
-
current_sym_table = sym.symbol_table
|
|
88
|
-
# Handle Python base classes or index slice expressions
|
|
89
|
-
if self.is_missing_py_symbol_table(sym, current_sym_table):
|
|
90
|
-
return
|
|
91
|
-
if self.is_index_slice_next(item, name):
|
|
92
|
-
# "Base class depends on the type of an Index slice expression, this is not supported yet"
|
|
93
|
-
return
|
|
94
|
-
if current_sym_table is None:
|
|
95
|
-
return
|
|
96
|
-
node.sym_tab.inherit_sym_tab(current_sym_table)
|
|
97
|
-
|
|
98
|
-
def lookup_symbol(self, name: str, sym_table: UniScopeNode) -> Optional[Symbol]:
|
|
99
|
-
"""Look up a symbol in the symbol table or in builtins."""
|
|
100
|
-
symbol = sym_table.lookup(name)
|
|
101
|
-
if symbol is None:
|
|
102
|
-
# Check for the symbol in builtins
|
|
103
|
-
builtins_symtable = self.get_builtins_symtable()
|
|
104
|
-
if builtins_symtable:
|
|
105
|
-
symbol = builtins_symtable.lookup(name)
|
|
106
|
-
return symbol
|
|
107
|
-
|
|
108
|
-
def get_builtins_symtable(self) -> Optional[UniScopeNode]:
|
|
109
|
-
"""Get the builtins symbol table."""
|
|
110
|
-
for mod in self.prog.mod.hub.values():
|
|
111
|
-
if mod.name == "builtins":
|
|
112
|
-
return mod.sym_tab
|
|
113
|
-
return None
|
|
114
|
-
|
|
115
|
-
def is_missing_py_symbol_table(
|
|
116
|
-
self, symbol: Symbol, symbol_table: Optional[UniScopeNode]
|
|
117
|
-
) -> bool:
|
|
118
|
-
"""Check if a Python symbol table is missing."""
|
|
119
|
-
return (
|
|
120
|
-
symbol_table is None
|
|
121
|
-
and symbol.defn[0].parent_of_type(uni.Module).is_raised_from_py
|
|
122
|
-
)
|
|
123
|
-
|
|
124
|
-
def is_index_slice_next(
|
|
125
|
-
self, item: uni.AtomTrailer, name: uni.AstSymbolNode
|
|
126
|
-
) -> bool:
|
|
127
|
-
"""Check if the next item in the atom trailer is an index slice."""
|
|
128
|
-
idx = item.as_attr_list.index(name)
|
|
129
|
-
return idx < len(item.as_attr_list) - 1 and isinstance(
|
|
130
|
-
item.as_attr_list[idx + 1], uni.IndexSlice
|
|
131
|
-
)
|