jaclang 0.7.18__py3-none-any.whl → 0.7.22__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of jaclang might be problematic. Click here for more details.

Files changed (47) hide show
  1. jaclang/cli/cli.py +2 -2
  2. jaclang/compiler/absyntree.py +29 -4
  3. jaclang/compiler/jac.lark +14 -14
  4. jaclang/compiler/parser.py +71 -59
  5. jaclang/compiler/passes/ir_pass.py +2 -0
  6. jaclang/compiler/passes/main/__init__.py +1 -1
  7. jaclang/compiler/passes/main/fuse_typeinfo_pass.py +50 -13
  8. jaclang/compiler/passes/main/import_pass.py +29 -1
  9. jaclang/compiler/passes/main/py_collect_dep_pass.py +8 -0
  10. jaclang/compiler/passes/main/pyast_load_pass.py +8 -6
  11. jaclang/compiler/passes/main/registry_pass.py +4 -0
  12. jaclang/compiler/passes/main/sym_tab_build_pass.py +0 -18
  13. jaclang/compiler/passes/main/tests/fixtures/fstrings.jac +44 -1
  14. jaclang/compiler/passes/main/tests/fixtures/mod_type_assign.jac +7 -0
  15. jaclang/compiler/passes/main/tests/fixtures/pygame_mock/__init__.pyi +3 -0
  16. jaclang/compiler/passes/main/tests/test_import_pass.py +10 -10
  17. jaclang/compiler/passes/main/tests/test_type_check_pass.py +1 -1
  18. jaclang/compiler/passes/main/tests/test_typeinfo_pass.py +23 -1
  19. jaclang/compiler/passes/main/type_check_pass.py +4 -4
  20. jaclang/compiler/passes/tool/jac_formatter_pass.py +61 -31
  21. jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/line_spacing.jac +57 -0
  22. jaclang/compiler/semtable.py +4 -4
  23. jaclang/compiler/symtable.py +5 -0
  24. jaclang/langserve/engine.py +68 -7
  25. jaclang/langserve/tests/test_server.py +3 -3
  26. jaclang/langserve/utils.py +0 -113
  27. jaclang/plugin/tests/test_jaseci.py +23 -4
  28. jaclang/runtimelib/architype.py +20 -2
  29. jaclang/runtimelib/importer.py +3 -0
  30. jaclang/runtimelib/machine.py +92 -4
  31. jaclang/runtimelib/memory.py +1 -1
  32. jaclang/settings.py +4 -0
  33. jaclang/tests/fixtures/bar.jac +1 -1
  34. jaclang/tests/fixtures/builtins_test.jac +16 -0
  35. jaclang/tests/fixtures/dynamic_architype.jac +34 -0
  36. jaclang/tests/fixtures/entry_exit.jac +36 -0
  37. jaclang/tests/fixtures/foo.jac +0 -1
  38. jaclang/tests/fixtures/match_multi_ex.jac +12 -0
  39. jaclang/tests/fixtures/trailing_comma.jac +88 -0
  40. jaclang/tests/fixtures/walker_update.jac +19 -0
  41. jaclang/tests/test_cli.py +29 -2
  42. jaclang/tests/test_language.py +150 -9
  43. jaclang/utils/treeprinter.py +1 -1
  44. {jaclang-0.7.18.dist-info → jaclang-0.7.22.dist-info}/METADATA +4 -2
  45. {jaclang-0.7.18.dist-info → jaclang-0.7.22.dist-info}/RECORD +47 -38
  46. {jaclang-0.7.18.dist-info → jaclang-0.7.22.dist-info}/WHEEL +0 -0
  47. {jaclang-0.7.18.dist-info → jaclang-0.7.22.dist-info}/entry_points.txt +0 -0
@@ -101,7 +101,7 @@ class JacLanguageTests(TestCase):
101
101
  stdout_value = captured_output.getvalue()
102
102
  self.assertEqual(
103
103
  stdout_value,
104
- "<link href='{'new_val': 3, 'where': 'from_foo'} rel='stylesheet'\nTrue\n",
104
+ "<link href='{'new_val': 3, 'where': 'from_foo'}' rel='stylesheet'>\nTrue\n",
105
105
  )
106
106
 
107
107
  def test_chandra_bugs2(self) -> None:
@@ -212,6 +212,20 @@ class JacLanguageTests(TestCase):
212
212
  self.assertEqual(stdout_value.count(r"\\\\"), 2)
213
213
  self.assertEqual(stdout_value.count("<class 'bytes'>"), 3)
214
214
 
215
+ def test_fstring_multiple_quotation(self) -> None:
216
+ """Test fstring with multiple quotation."""
217
+ captured_output = io.StringIO()
218
+ sys.stdout = captured_output
219
+ jac_import(
220
+ "compiler/passes/main/tests/fixtures/fstrings",
221
+ base_path=self.fixture_abs_path("../../"),
222
+ )
223
+ sys.stdout = sys.__stdout__
224
+ stdout_value = captured_output.getvalue()
225
+ self.assertEqual(stdout_value.split("\n")[0], "11 13 12 12 11 12 12")
226
+ self.assertEqual(stdout_value.split("\n")[1], '12 12 """hello""" 18 18')
227
+ self.assertEqual(stdout_value.split("\n")[2], "11 12 11 12 11 18 23")
228
+
215
229
  def test_deep_imports(self) -> None:
216
230
  """Parse micro jac file."""
217
231
  captured_output = io.StringIO()
@@ -511,18 +525,16 @@ class JacLanguageTests(TestCase):
511
525
  self.assertIn("can greet2(**kwargs: Any)", output)
512
526
  self.assertEqual(output.count("with entry {"), 13)
513
527
  self.assertIn(
514
- '"""Enum for shape types"""\nenum ShapeType{ CIRCLE = "Circle",\n',
528
+ '"""Enum for shape types"""\nenum ShapeType{ CIRCLE = \'Circle\',\n',
515
529
  output,
516
530
  )
517
- self.assertIn(
518
- "UNKNOWN = \"Unknown\",\n::py::\nprint('hello')\n::py::\n }", output
519
- )
520
- self.assertIn('assert x == 5 , "x should be equal to 5" ;', output)
531
+ self.assertIn("\nUNKNOWN = 'Unknown',\n::py::\nprint('hello')\n::", output)
532
+ self.assertIn("assert x == 5 , 'x should be equal to 5' ;", output)
521
533
  self.assertIn("if not x == y {", output)
522
534
  self.assertIn("can greet2(**kwargs: Any) {", output)
523
535
  self.assertIn("squares_dict = {x: (x ** 2) for x in numbers};", output)
524
536
  self.assertIn(
525
- '\n\n@ my_decorator \n can say_hello() {\n """Say hello""" ; ', output
537
+ '\n\n@ my_decorator \n can say_hello() {\n\n """Say hello""" ;', output
526
538
  )
527
539
 
528
540
  def test_needs_import_2(self) -> None:
@@ -568,7 +580,7 @@ class JacLanguageTests(TestCase):
568
580
  py_ast.parse(f.read()), mod_path=py_out_path
569
581
  ),
570
582
  ).ir.unparse()
571
- self.assertIn("class X {\n with entry {\n a_b = 67;", output)
583
+ self.assertIn("class X {\n with entry {\n\n a_b = 67;", output)
572
584
  self.assertIn("br = b'Hello\\\\\\\\nWorld'", output)
573
585
  self.assertIn("class Circle {\n can init(radius: float", output)
574
586
  self.assertIn("<>node = 90; \n print(<>node) ;\n}\n", output)
@@ -677,6 +689,15 @@ class JacLanguageTests(TestCase):
677
689
  self.assertIn("1", stdout_value[0])
678
690
  self.assertIn("[2, 3, 4]", stdout_value[1])
679
691
 
692
+ def test_trailing_comma(self) -> None:
693
+ """Test trailing comma."""
694
+ captured_output = io.StringIO()
695
+ sys.stdout = captured_output
696
+ jac_import("trailing_comma", base_path=self.fixture_abs_path("./"))
697
+ sys.stdout = sys.__stdout__
698
+ stdout_value = captured_output.getvalue()
699
+ self.assertIn("Code compiled and ran successfully!", stdout_value)
700
+
680
701
  def test_try_finally(self) -> None:
681
702
  """Test try finally."""
682
703
  captured_output = io.StringIO()
@@ -783,7 +804,7 @@ class JacLanguageTests(TestCase):
783
804
  settings.print_py_raised_ast = True
784
805
  ir = jac_pass_to_pass(py_ast_build_pass, schedule=py_code_gen_typed).ir
785
806
  jac_ast = ir.pp()
786
- self.assertIn(' | +-- String - "Loop compl', jac_ast)
807
+ self.assertIn(" | +-- String - 'Loop completed normally{}'", jac_ast)
787
808
  self.assertEqual(len(ir.get_all_sub_nodes(ast.SubNodeList)), 269)
788
809
  captured_output = io.StringIO()
789
810
  sys.stdout = captured_output
@@ -952,6 +973,103 @@ class JacLanguageTests(TestCase):
952
973
  self.assertIn("Item value: 0", stdout_value)
953
974
  self.assertIn("Created 5 items.", stdout_value)
954
975
 
976
+ def test_walker_dynamic_update(self) -> None:
977
+ """Test dynamic update of a walker during runtime."""
978
+ session = self.fixture_abs_path("bar_walk.session")
979
+ bar_file_path = self.fixture_abs_path("bar.jac")
980
+ update_file_path = self.fixture_abs_path("walker_update.jac")
981
+ captured_output = io.StringIO()
982
+ sys.stdout = captured_output
983
+ cli.enter(
984
+ filename=bar_file_path,
985
+ session=session,
986
+ entrypoint="bar_walk",
987
+ args=[],
988
+ )
989
+ sys.stdout = sys.__stdout__
990
+ stdout_value = captured_output.getvalue()
991
+ expected_output = "Created 5 items."
992
+ self.assertIn(expected_output, stdout_value.split("\n"))
993
+ # Define the new behavior to be added
994
+ new_behavior = """
995
+ # New behavior added during runtime
996
+ can end with `root exit {
997
+ "bar_walk has been updated with new behavior!" |> print;
998
+ disengage;
999
+ }
1000
+ }
1001
+ """
1002
+
1003
+ # Backup the original file content
1004
+ with open(bar_file_path, "r") as bar_file:
1005
+ original_content = bar_file.read()
1006
+
1007
+ # Update the bar.jac file with new behavior
1008
+ with open(bar_file_path, "r+") as bar_file:
1009
+ content = bar_file.read()
1010
+ last_brace_index = content.rfind("}")
1011
+ if last_brace_index != -1:
1012
+ updated_content = content[:last_brace_index] + new_behavior
1013
+ bar_file.seek(0)
1014
+ bar_file.write(updated_content)
1015
+ bar_file.truncate()
1016
+
1017
+ captured_output = io.StringIO()
1018
+ sys.stdout = captured_output
1019
+
1020
+ try:
1021
+ cli.run(
1022
+ filename=update_file_path,
1023
+ )
1024
+ sys.stdout = sys.__stdout__
1025
+ stdout_value = captured_output.getvalue()
1026
+ expected_output = "bar_walk has been updated with new behavior!"
1027
+ self.assertIn(expected_output, stdout_value.split("\n"))
1028
+ finally:
1029
+ # Restore the original content of bar.jac
1030
+ with open(bar_file_path, "w") as bar_file:
1031
+ bar_file.write(original_content)
1032
+
1033
+ def test_dynamic_spawn_architype(self) -> None:
1034
+ """Test that the walker and node can be spawned and behaves as expected."""
1035
+ captured_output = io.StringIO()
1036
+ sys.stdout = captured_output
1037
+ cli.run(self.fixture_abs_path("dynamic_architype.jac"))
1038
+
1039
+ output = captured_output.getvalue().strip()
1040
+ output_lines = output.split("\n")
1041
+
1042
+ # Expected outputs for spawned entities
1043
+ expected_spawned_node = "Spawned Node:"
1044
+ expected_spawned_walker = "Spawned Walker:"
1045
+ expected_spawned_external_node = "Spawned External node:"
1046
+
1047
+ # Check for the spawned messages
1048
+ self.assertTrue(
1049
+ any(expected_spawned_node in line for line in output_lines),
1050
+ f"Expected '{expected_spawned_node}' in output.",
1051
+ )
1052
+ self.assertTrue(
1053
+ any(expected_spawned_walker in line for line in output_lines),
1054
+ f"Expected '{expected_spawned_walker}' in output.",
1055
+ )
1056
+ self.assertTrue(
1057
+ any(expected_spawned_external_node in line for line in output_lines),
1058
+ f"Expected '{expected_spawned_external_node}' in output.",
1059
+ )
1060
+
1061
+ # Expected values from the walker traversal
1062
+ expected_values = ["Value: 0", "Value: 1", "Value: 2", "Value: 3"]
1063
+
1064
+ # Each expected value should appear twice (once for test_node, once for Item)
1065
+ for val in expected_values:
1066
+ occurrences = [line for line in output_lines if line.strip() == val]
1067
+ self.assertEqual(
1068
+ len(occurrences),
1069
+ 2,
1070
+ f"Expected '{val}' to appear 2 times, but found {len(occurrences)}.",
1071
+ )
1072
+
955
1073
  def test_object_ref_interface(self) -> None:
956
1074
  """Test class method output."""
957
1075
  captured_output = io.StringIO()
@@ -962,3 +1080,26 @@ class JacLanguageTests(TestCase):
962
1080
  self.assertEqual(len(stdout_value[0]), 32)
963
1081
  self.assertEqual("MyNode(value=0)", stdout_value[1])
964
1082
  self.assertEqual("valid: True", stdout_value[2])
1083
+
1084
+ def test_match_multi_ex(self) -> None:
1085
+ """Test match case with multiple expressions."""
1086
+ captured_output = io.StringIO()
1087
+ sys.stdout = captured_output
1088
+ jac_import("match_multi_ex", base_path=self.fixture_abs_path("./"))
1089
+ sys.stdout = sys.__stdout__
1090
+ stdout_value = captured_output.getvalue().split("\n")
1091
+ self.assertEqual("Ten", stdout_value[0])
1092
+ self.assertEqual("ten", stdout_value[1])
1093
+
1094
+ def test_entry_exit(self) -> None:
1095
+ """Test entry and exit behavior of walker."""
1096
+ captured_output = io.StringIO()
1097
+ sys.stdout = captured_output
1098
+ jac_import("entry_exit", base_path=self.fixture_abs_path("./"))
1099
+ sys.stdout = sys.__stdout__
1100
+ stdout_value = captured_output.getvalue().split("\n")
1101
+ self.assertIn("Entering at the beginning of walker: Root()", stdout_value[0])
1102
+ self.assertIn("entry_count=1, exit_count=1", str(stdout_value[12]))
1103
+ self.assertIn(
1104
+ "Exiting at the end of walker: test_node(value=", stdout_value[11]
1105
+ )
@@ -113,7 +113,7 @@ def print_ast_tree(
113
113
  if node.sym
114
114
  else "<No Symbol is associated with this node>"
115
115
  )
116
- out += f" SymbolPath: {symbol}"
116
+ out += f", SymbolPath: {symbol}"
117
117
  return out
118
118
  elif isinstance(node, Token):
119
119
  return f"{node.__class__.__name__} - {node.value}, {access}"
@@ -1,12 +1,14 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jaclang
3
- Version: 0.7.18
3
+ Version: 0.7.22
4
4
  Summary: Jac is a unique and powerful programming language that runs on top of Python, offering an unprecedented level of intelligence and intuitive understanding.
5
5
  Home-page: https://jaseci.org
6
6
  License: MIT
7
7
  Keywords: jac,jaclang,jaseci,python,programming-language,machine-learning,artificial-intelligence
8
8
  Author: Jason Mars
9
9
  Author-email: jason@jaseci.org
10
+ Maintainer: Jason Mars
11
+ Maintainer-email: jason@jaseci.org
10
12
  Requires-Python: >=3.11.0,<4.0.0
11
13
  Classifier: License :: OSI Approved :: MIT License
12
14
  Classifier: Programming Language :: Python :: 3
@@ -42,7 +44,7 @@ This is the main source code repository for the [Jac] programming language. It c
42
44
  [Documentation]: https://www.jac-lang.org//learn/guide/
43
45
  [Contributing]: .github/CONTRIBUTING.md
44
46
 
45
- ## What and Why Jac?
47
+ ## What and Why is Jac?
46
48
 
47
49
  - **Native Superset of Python** - Jac is a native superset of python, meaning the entire python ecosystem is directly interoperable with Jac without any trickery (no interop interface needed). Like Typescript is to Javascript, or C++ is to C, Jac is to Python. (every Jac program can be ejected to pure python, and every python program can be transpiled to a Jac program)
48
50
 
@@ -2,34 +2,34 @@ jaclang/__init__.py,sha256=quKqbhKk5CQ0k798jIXMbeAKzQxD0yhOpQGSvYD6TD8,399
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=4BPJGdcyvs_rXgd_DPEGjkKSGe5ureXXYaQsf-_z_LU,5939
5
- jaclang/cli/cli.py,sha256=XbxY2D6j0nRrhqaTBg0_e3f9haiHZNo1jUHbJYxZMUo,15878
5
+ jaclang/cli/cli.py,sha256=P2Hqzpb9q9uR_mbyFb8ojr3ff3oDbcP6m1G1kKWkR80,15911
6
6
  jaclang/cli/cmdreg.py,sha256=5mhzLJnpHfc0Z22qKQgcEOICgBaC95G9gSJZ-R7GqvU,8282
7
7
  jaclang/compiler/.gitignore,sha256=n1k2_xXTorp9PY8hhYM4psHircn-NMaFx95bSgDKopo,10
8
8
  jaclang/compiler/__init__.py,sha256=O1GO5Hb02vRlz7OpYHinQV5lQ7YuNUV9Hgjlc3QWtZg,2780
9
- jaclang/compiler/absyntree.py,sha256=oDHQ7w86auUkTcMwWKdyYIzGHuLAwvlvulVsjDGVx9E,138082
9
+ jaclang/compiler/absyntree.py,sha256=cBF837cKo7lUDzBX_dvzCf0pCOcq4eNsHgseIjgEvXk,139002
10
10
  jaclang/compiler/codeloc.py,sha256=YhJcHjhMCOT6mV1qLehwriuFgW0H2-ntq68k_r8yBs4,2800
11
11
  jaclang/compiler/compile.py,sha256=0d8p4i2LXg2RCu1XfWx_Jq_dx7pK2Zn2VIj-apvX_nI,3389
12
12
  jaclang/compiler/constant.py,sha256=gKccXK4Qf3CWuv8J1oaWrwqdP7CRIf7ndayquRx6Xgs,9007
13
- jaclang/compiler/jac.lark,sha256=sUft-A-r45E1aZ6CVZa-yDrtV0VTuVB7KNk7POFf3jg,17299
14
- jaclang/compiler/parser.py,sha256=xyOyP81gurd1zgKMxWYl2iTGcmOqaEDHHch8Fs91Zr0,141276
13
+ jaclang/compiler/jac.lark,sha256=NmoNb_hE4xKgVEo9aFreE9RdGOIvCBq-NU0Qs5Js6VE,17393
14
+ jaclang/compiler/parser.py,sha256=QAiHcqBACxrg4t0jpoRDGYJssPWRC7P9eCYsIaBDMGE,142479
15
15
  jaclang/compiler/passes/__init__.py,sha256=0Tw0d130ZjzA05jVcny9cf5NfLjlaM70PKqFnY4zqn4,69
16
- jaclang/compiler/passes/ir_pass.py,sha256=xhPra4i7-zrBYdiuFb_nMgrwejLsSPJchhPEu6C03GM,5554
17
- jaclang/compiler/passes/main/__init__.py,sha256=i37vH_f6706eNvdY3UlfYO0wTjdl0HsWg7vP-pyYItY,947
16
+ jaclang/compiler/passes/ir_pass.py,sha256=8F9YL6dUUm6gP2ZkjIuaYgX7GHwyck5MEB7LYJdAhQc,5607
17
+ jaclang/compiler/passes/main/__init__.py,sha256=DLbOP_7q8jJ9-ME_8A0d_FVk2crh9etTmTGQmtKWLnY,973
18
18
  jaclang/compiler/passes/main/access_modifier_pass.py,sha256=AuE6xgW079Bvs_K02XWVz5qJkCIuizC6t1zIiQ5s-qE,5328
19
19
  jaclang/compiler/passes/main/def_impl_match_pass.py,sha256=yAkwLQm2NBJycJVSmG88Shq0r2GSxTH8goINDfGIHek,4583
20
20
  jaclang/compiler/passes/main/def_use_pass.py,sha256=68Uts_v-R-9mzBXC9EfXpcBEQwqnVcpL2JD0sri88AY,9674
21
- jaclang/compiler/passes/main/fuse_typeinfo_pass.py,sha256=afe2-0zsfdoP6-hUd2y2zKV_ZFtPpxxapm8q2Mkik4Y,22466
22
- jaclang/compiler/passes/main/import_pass.py,sha256=F7CeHKhFip3zp7FVOCpEsua0HRAudwIQdxyjqOp4JdQ,11702
23
- jaclang/compiler/passes/main/py_collect_dep_pass.py,sha256=OTulloovybZpXJXrQFsKgzXoRsgf-x5UfO6qalhJndg,2447
21
+ jaclang/compiler/passes/main/fuse_typeinfo_pass.py,sha256=-rhK5SN9ORr7gTv9KVS1TGy8_D01X-x6TgNwXY-8hF4,24166
22
+ jaclang/compiler/passes/main/import_pass.py,sha256=9uoC_gxDs3FmLBBzQ8A1YQNHUlWQkAlKi55-AMkM3hs,12690
23
+ jaclang/compiler/passes/main/py_collect_dep_pass.py,sha256=lzMOYH8TarhkJFt0vqvZFknthZ08OjsdO7tO2u2EN40,2834
24
24
  jaclang/compiler/passes/main/pyast_gen_pass.py,sha256=ACUhGsLq34N-Sfo96IAgkTnds9ZY6I7J6okr6rFvPpo,142105
25
- jaclang/compiler/passes/main/pyast_load_pass.py,sha256=k-tf5cZVlygDg4BGBYcAznO6w0hM4-0Pdzlwr4Sw48I,94027
25
+ jaclang/compiler/passes/main/pyast_load_pass.py,sha256=DPbHECLOHmThoGvmHJCr3mjR21MMGtlY3dp_8S2-iPQ,94148
26
26
  jaclang/compiler/passes/main/pybc_gen_pass.py,sha256=CjA9AqyMO3Pv_b5Hh0YI6JmCqIru2ASonO6rhrkau-M,1336
27
27
  jaclang/compiler/passes/main/pyjac_ast_link_pass.py,sha256=1pW0uLEnhM5hCwVFAREdd_miyr3qTK0h_SJVfR_ryig,8604
28
28
  jaclang/compiler/passes/main/pyout_pass.py,sha256=QWVB-AyVBha3OespP89LMuslRsdG2niZErwtnRPiURM,3191
29
- jaclang/compiler/passes/main/registry_pass.py,sha256=p9Lyaf5v4VtNBrdsyxalnJmjWWNZ1js7LSWYdAfyXvs,5755
29
+ jaclang/compiler/passes/main/registry_pass.py,sha256=dKCfcjSenD3J-msmSd11-mCGgD0h1asX8nFdpo-eyq4,5881
30
30
  jaclang/compiler/passes/main/schedules.py,sha256=tkTUTX8aff6pqQYtqt1h2lRbu_n7bVnAov9KmwwDxy0,1417
31
31
  jaclang/compiler/passes/main/sub_node_tab_pass.py,sha256=25HEJGBbDlJibyW5MV4ShXQ2vmzG3LDreknV-u2nQjk,1184
32
- jaclang/compiler/passes/main/sym_tab_build_pass.py,sha256=xitWPNbhKgyJmxD1rvVQltgFqCz4i5IJSOEFMpxkcw8,34892
32
+ jaclang/compiler/passes/main/sym_tab_build_pass.py,sha256=evTt5f1ymlKB4KzH1cm7wSnwWjplsFxVXTQpcrYL4b8,34304
33
33
  jaclang/compiler/passes/main/tests/__init__.py,sha256=RgheAgh-SqGTa-4kBOY-V-oz8bzMmDWxavFqwlYjfgE,36
34
34
  jaclang/compiler/passes/main/tests/fixtures/autoimpl.empty.impl.jac,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
35
  jaclang/compiler/passes/main/tests/fixtures/autoimpl.impl/getme.impl.jac,sha256=PUQSEKl0ZCjwhgU23o6qX8wEmnqvT7MSoFn8TVBlFpc,31
@@ -42,7 +42,7 @@ jaclang/compiler/passes/main/tests/fixtures/blip.jac,sha256=Fx9zqQ8VkiQ6vgzbQv9L
42
42
  jaclang/compiler/passes/main/tests/fixtures/codegentext.jac,sha256=U9xyk8hDlWM3jUaozQXOD61f5p9SI-_QfDxA68DUYds,562
43
43
  jaclang/compiler/passes/main/tests/fixtures/decls.jac,sha256=vPHNZeXuFKLclAFJfe92ajOX7n0ULsvEi5jBoDU-Ns8,123
44
44
  jaclang/compiler/passes/main/tests/fixtures/defs_and_uses.jac,sha256=zTTq_0u8ITmODu8rjRloI5Imwf2dICHdiKdOnzcgpbg,901
45
- jaclang/compiler/passes/main/tests/fixtures/fstrings.jac,sha256=h5bj-VWRv8g6POMVxQ1VPq6SI7QitZahAFMSmrp6Daw,75
45
+ jaclang/compiler/passes/main/tests/fixtures/fstrings.jac,sha256=6QRZtTSuG1vIA7egTv-rY27U6HRaXeiOyuNs1sIU5Bk,1089
46
46
  jaclang/compiler/passes/main/tests/fixtures/func.jac,sha256=i175hPkR4tgf5SMZOrrCHjAE12mVlf6qUsu0mcJmJBE,297
47
47
  jaclang/compiler/passes/main/tests/fixtures/func2.jac,sha256=ZxgLe7VA57daLkqoB8MefdEE8dZIoFv2Dq-Zx-yHKxI,124
48
48
  jaclang/compiler/passes/main/tests/fixtures/game1.jac,sha256=oiTadkrYJRUo6ZkHUi7I54J_0GoTTtsNLhhofTlz0uY,263
@@ -50,9 +50,11 @@ jaclang/compiler/passes/main/tests/fixtures/impl/defs1.jac,sha256=MIYBOmcG4NnxsJ
50
50
  jaclang/compiler/passes/main/tests/fixtures/impl/defs2.jac,sha256=MIYBOmcG4NnxsJcR4f-bposvl5ILfshU0tKJ7qMjjzU,112
51
51
  jaclang/compiler/passes/main/tests/fixtures/impl/imps.jac,sha256=MTVCw95_OwssjB7MtEPTYoHSHcceZAhFLokW8Zaruzg,135
52
52
  jaclang/compiler/passes/main/tests/fixtures/incautoimpl.jac,sha256=WX54UE-AUAfnjva0y9NkSl8-0aJAE1HqO0gw4rtCqhs,71
53
+ jaclang/compiler/passes/main/tests/fixtures/mod_type_assign.jac,sha256=IUlv6j61zOWN8VsuREroxGr3YYIKdTexdJTdmKPYc58,67
53
54
  jaclang/compiler/passes/main/tests/fixtures/multi_def_err.jac,sha256=BxgmNUdz76gKLi6PXnLZE9rartodMgch5ydpGrd25Ec,87
54
55
  jaclang/compiler/passes/main/tests/fixtures/py_imp_test.jac,sha256=hWAfWcavT6cUH9d-Rq35ptzVLFuH16StMp84JTsKia0,922
55
56
  jaclang/compiler/passes/main/tests/fixtures/pygame_mock/__init__.py,sha256=zrZT2YhxNFr6CKAER5NsSosccWzP8rwmV1vUK4OYWLo,69
57
+ jaclang/compiler/passes/main/tests/fixtures/pygame_mock/__init__.pyi,sha256=zrZT2YhxNFr6CKAER5NsSosccWzP8rwmV1vUK4OYWLo,69
56
58
  jaclang/compiler/passes/main/tests/fixtures/pygame_mock/color.py,sha256=pvJICEi1sv2hRU88_fekFPeotv3vFyPs57POOkPHPh8,76
57
59
  jaclang/compiler/passes/main/tests/fixtures/pygame_mock/constants.py,sha256=1i-OHdp8rQJNN_Bv6G4Nd3mBfKAn-V0O4pyR4ewg5kA,61
58
60
  jaclang/compiler/passes/main/tests/fixtures/pygame_mock/display.py,sha256=uzQZvyHHf4iPAodRBuBxrnwx3CpDPbMxcsGRlUB_9GY,29
@@ -60,19 +62,19 @@ jaclang/compiler/passes/main/tests/fixtures/registry.jac,sha256=1G6amtU1zIFCgq09
60
62
  jaclang/compiler/passes/main/tests/fixtures/type_info.jac,sha256=64Im2L-R3YF8DEuTt29QE6mJI5PnFe3PiwcDLKa8gOE,661
61
63
  jaclang/compiler/passes/main/tests/test_decl_def_match_pass.py,sha256=zWF2l93RjyG0AWyDXdXsMlPWYOhX46d699YqvIETRGY,1836
62
64
  jaclang/compiler/passes/main/tests/test_def_use_pass.py,sha256=0ieyoeiDSK2m3dmVN00oJK2TdJhxWwxA1lnxT95wz0A,843
63
- jaclang/compiler/passes/main/tests/test_import_pass.py,sha256=gLzqR3fYe4W3_mwmRMoSp9dFLZF8P9d6p-m9SfsYF28,5144
65
+ jaclang/compiler/passes/main/tests/test_import_pass.py,sha256=XR0CaqdEQslYz1GXICpF3wko2PDw-tOnHfvgSWjo8TQ,5158
64
66
  jaclang/compiler/passes/main/tests/test_pyast_build_pass.py,sha256=LIT4TP-nhtftRtY5rNySRQlim-dWMSlkfUvkhZTk4pc,1383
65
67
  jaclang/compiler/passes/main/tests/test_pyast_gen_pass.py,sha256=6ZpLNYxblzBg6bmWSA0fikNM7nEAR9b9F18LJaO5buM,4679
66
68
  jaclang/compiler/passes/main/tests/test_pybc_gen_pass.py,sha256=If8PE4exN5g9o1NRElNC0XdfIwJAp7M7f69rzmYRYUQ,655
67
69
  jaclang/compiler/passes/main/tests/test_registry_pass.py,sha256=Eed94qPmO38GFVV4DARx6G0xaawAoncWfgSHja1wPeQ,1162
68
70
  jaclang/compiler/passes/main/tests/test_sub_node_pass.py,sha256=afz0Kh5xBCeNXQSI9FNHTewI2r5HO19-JxNGK_NZ01E,821
69
71
  jaclang/compiler/passes/main/tests/test_sym_tab_build_pass.py,sha256=85mUM6mYYLCrQ9AivBIbreG7CgdsJH2zrNOqdcpnwBo,730
70
- jaclang/compiler/passes/main/tests/test_type_check_pass.py,sha256=v2_KmcyX1_fOpReRKM0mUnlFXKVPRvFCMR3Mw9ftytI,2265
71
- jaclang/compiler/passes/main/tests/test_typeinfo_pass.py,sha256=ehC0_giLg7NwB7fR10nW5Te8mZ76qmUFxkK1bEjtmrw,129
72
- jaclang/compiler/passes/main/type_check_pass.py,sha256=TdMAzdHYXrKv-vTylGhvxjSDylk0HoOQUa7A4OC1d5A,4208
72
+ jaclang/compiler/passes/main/tests/test_type_check_pass.py,sha256=zTJieGdiHFunOXkUjv2q8H3h-sPT9uym_uCm6HcQzZU,2265
73
+ jaclang/compiler/passes/main/tests/test_typeinfo_pass.py,sha256=o908glXImFXOlKKTUyxp4rxsso0vJbduli5Rvbd3KXE,1017
74
+ jaclang/compiler/passes/main/type_check_pass.py,sha256=6L8yGBmZqNZuYabaJKt19mGse4x3r1YKA0Nr7LVPOtE,4276
73
75
  jaclang/compiler/passes/tool/__init__.py,sha256=xekCOXysHIcthWm8NRmQoA1Ah1XV8vFbkfeHphJtUdc,223
74
76
  jaclang/compiler/passes/tool/fuse_comments_pass.py,sha256=CSnuWy4gZfTcWKe0Q7LBikBgWe1zJr0QmNUkgrZ7B38,3657
75
- jaclang/compiler/passes/tool/jac_formatter_pass.py,sha256=ngLu4qrTXev0NYNcL1feng89xHxTBXzZEQ_AYSZO3Qw,89878
77
+ jaclang/compiler/passes/tool/jac_formatter_pass.py,sha256=-J4UOdo5BBMi9raT0KJ4ESVlu_70dzaLRGoWAZGPUyM,91213
76
78
  jaclang/compiler/passes/tool/schedules.py,sha256=kmbsCazAMizGAdQuZpFky5BPlYlMXqNw7wOUzdi_wBo,432
77
79
  jaclang/compiler/passes/tool/tests/__init__.py,sha256=AeOaZjA1rf6VAr0JqIit6jlcmOzW7pxGr4U1fOwgK_Y,24
78
80
  jaclang/compiler/passes/tool/tests/fixtures/corelib.jac,sha256=RGIOyYW5eyadmOf0H-COpLPMJIIkWOFVERI5dNEM3J8,12581
@@ -92,6 +94,7 @@ jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/comment_alignm
92
94
  jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/comments.jac,sha256=l4A_QcagIjUaN6h119yo77ohV_ixXndXPFlCMRJFpMM,346
93
95
  jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/decorator_stack.jac,sha256=FjrFBbIPL7eD2O17i5RxOLLhOCQrFHUwBMx0yGrgIJ4,544
94
96
  jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/esc_keywords.jac,sha256=EQdOQnHWF7NmM7SuQ4Y77fXUD8vkIBR7TG3G1lCGl0I,72
97
+ jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/line_spacing.jac,sha256=iYDH_Vspx4yLYz-0SlkiIAVjtPo5u6zATGLbxoOnvn8,1043
95
98
  jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/long_names.jac,sha256=f3ptg81A3mub7OdsVlxvX7FInEmT6Y2D55ZacQ7kZQw,734
96
99
  jaclang/compiler/passes/tool/tests/fixtures/general_format_checks/triple_quoted_string.jac,sha256=7Ts6oE3x3x91lJIFQpdko54hrtM6vpMZDi56c5XCkmM,174
97
100
  jaclang/compiler/passes/tool/tests/fixtures/multi_def_err.dot,sha256=muQG45ABv5xlMAnj1F0BZdr9-idH9KaZCT__P4lDHcI,1391
@@ -119,8 +122,8 @@ jaclang/compiler/passes/tool/tests/test_unparse_validate.py,sha256=mTpeE272_OSgW
119
122
  jaclang/compiler/passes/transform.py,sha256=h84ZfyctT_hKVvGtFeO87vqN6p50DqJh94Dk827Alw8,2394
120
123
  jaclang/compiler/passes/utils/__init__.py,sha256=UsI5rUopTUiStAzup4kbPwIwrnC5ofCrqWBCBbM2-k4,35
121
124
  jaclang/compiler/passes/utils/mypy_ast_build.py,sha256=Esf00d-XVgg7WsmmBNxFsmv1x95XFbHlgtOVti3wXaI,27453
122
- jaclang/compiler/semtable.py,sha256=eQC-OipCguEnVW5Zn5t2lYEraGSP-YHOJMxn1ZzfPN0,4993
123
- jaclang/compiler/symtable.py,sha256=KskfOzxUXpvqV-6GGfbJnyKa11Jo7ZX9mmzeaKyo2Y0,9649
125
+ jaclang/compiler/semtable.py,sha256=h6522_kAc6ePfWlCmUk-GbHtO8uct0K7aY5rmvlzFBc,5007
126
+ jaclang/compiler/symtable.py,sha256=gyhL8rIDLGTuFbuNLXilDhNDsErNHdNVxjJv0zOdQdc,9807
124
127
  jaclang/compiler/tests/__init__.py,sha256=qiXa5UNRBanGOcplFKTT9a_9GEyiv7goq1OzuCjDCFE,27
125
128
  jaclang/compiler/tests/fixtures/__init__.py,sha256=udQ0T6rajpW_nMiYKJNckqP8izZ-pH3P4PNTJEln2NU,36
126
129
  jaclang/compiler/tests/fixtures/activity.py,sha256=fSvxYDKufsPeQIrbuh031zHw_hdbRv5iK9mS7dD8E54,263
@@ -133,7 +136,7 @@ jaclang/compiler/tests/fixtures/stuff.jac,sha256=qOq6WOwhlprMmJpiqQudgqnr4qTd9uh
133
136
  jaclang/compiler/tests/test_importer.py,sha256=glEyjV21nJaCVrDXbF5kkcZYBcCTnmWngdUBbuygAxY,2289
134
137
  jaclang/compiler/tests/test_parser.py,sha256=Sj9Kz1FghESaPpyx_kEvScs4xvz-vgEdH8yyQJ0iB7M,4820
135
138
  jaclang/langserve/__init__.py,sha256=3qbnivBBcLZCfmDYRMIeKkG08Lx7XQsJJg-qG8TU8yc,51
136
- jaclang/langserve/engine.py,sha256=3aTIGP0PIu8Wku4xRytsdstqPNe6xwU5QGikyj9jdcY,18015
139
+ jaclang/langserve/engine.py,sha256=FkEW7rqzJW_kdRnU0JLrq_6aGXg5bexeKwvq6j2V89s,20797
137
140
  jaclang/langserve/sem_manager.py,sha256=d5QzT9WVYarZfTg1sUF_pTfNMYb65HLz3vX839b5Jeo,14918
138
141
  jaclang/langserve/server.py,sha256=qkWhsJLaQT2o-obIeOcPqag3B3wANzGFgW5EmC8tYYg,5445
139
142
  jaclang/langserve/tests/__init__.py,sha256=iDM47k6c3vahaWhwxpbkdEOshbmX-Zl5x669VONjS2I,23
@@ -157,8 +160,8 @@ jaclang/langserve/tests/pylsp_jsonrpc/exceptions.py,sha256=NGHeFQawZcjoLUcgDmY3b
157
160
  jaclang/langserve/tests/pylsp_jsonrpc/streams.py,sha256=R80_FvICIkrbdGmNtlemWYaxrr7-XldPgLaASnyv0W8,3332
158
161
  jaclang/langserve/tests/session.py,sha256=3pIRoQjZnsnUWIYnO2SpK7c1PAiHMCFrrStNK2tawRM,9572
159
162
  jaclang/langserve/tests/test_sem_tokens.py,sha256=HWNaA1CK5qxFeipmd4AAvjAbJSEW4-09hY2UHVfvtlc,9897
160
- jaclang/langserve/tests/test_server.py,sha256=FEjC4mmG85sU0O4qykmfu1Ks62mkveKRgpHep4vt3Rk,22908
161
- jaclang/langserve/utils.py,sha256=tDsdEOtZdmJ6Xn8b0Ohwt8fRVNm5qtUC4Cub85CG3Mk,19028
163
+ jaclang/langserve/tests/test_server.py,sha256=psv23hfxQZnq_pGlY1Xf9S2oUJk2QpYMPmCjQ0mRwzc,22910
164
+ jaclang/langserve/utils.py,sha256=rtFO1OYrgU6RmFhNs43anZac79sUwe3oZxlYB0s3CXs,14522
162
165
  jaclang/plugin/__init__.py,sha256=5t2krHKt_44PrCTGojzxEimxpNHYVQcn89jAiCSXE_k,165
163
166
  jaclang/plugin/builtin.py,sha256=Hj8SVcauuhzsPQJBzt8jIfHkSUAcqsKfAFyCPYdBZKA,1300
164
167
  jaclang/plugin/default.py,sha256=oxPO7tud8VqP20BrfnDNpLPtM0kaL00s-1F70X3hvCg,31173
@@ -171,18 +174,18 @@ jaclang/plugin/tests/fixtures/other_root_access.jac,sha256=1c4bSybAw8qRMtLjRk2lM
171
174
  jaclang/plugin/tests/fixtures/simple_node_connection.jac,sha256=KdbpACWtnj92TqQqEunwoI4VKhlnhcJCKMkbgh0Xqxg,1067
172
175
  jaclang/plugin/tests/fixtures/simple_persistent.jac,sha256=o0TZTOJEZjFW8A2IGY8ICBZEBZzHhqha0xQFFBK_DSI,624
173
176
  jaclang/plugin/tests/test_features.py,sha256=p0N5inZn92Cj0eqslmDR0-q6pVG8hkcQfA6CuQcfP3Y,2352
174
- jaclang/plugin/tests/test_jaseci.py,sha256=Vvbb73VwBm3BBLI8uVrq63Esjn5iBPey8UOiHjrFLEc,19755
177
+ jaclang/plugin/tests/test_jaseci.py,sha256=3c5MtOoxxHtMkaWduaqVim1xcv8FyQXkgBh9AC9eNCE,20315
175
178
  jaclang/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
176
179
  jaclang/runtimelib/__init__.py,sha256=jDDYBCV82qPhmcDVk3NIvHbhng0ebSrXD3xrojg0-eo,34
177
- jaclang/runtimelib/architype.py,sha256=sqsrobtbHaHDYJaqbXx9iapZ3TJ92APXFzw9bSGnQ90,21659
180
+ jaclang/runtimelib/architype.py,sha256=J83ZIx-rhEVexpyUEeDcOwpJCsuXPoS79e8-I69k_Hw,22501
178
181
  jaclang/runtimelib/constructs.py,sha256=QWut5kKRaBbIelb12cpTSa_D0xDGPOoHHq4SaDetyo8,760
179
182
  jaclang/runtimelib/context.py,sha256=gUiPZ4ZoHoz_vHjxG9kvIw4hlmx8G8lPTquGC6qJoi4,5609
180
- jaclang/runtimelib/importer.py,sha256=dQWPj3n7Ahschq5FRJVy_r6oghNxp3j8o9zi72FEviE,14291
181
- jaclang/runtimelib/machine.py,sha256=QAodSjVm45-0VmhmFRMEJtFp1j3k2VvoiUi117YVS5g,5455
182
- jaclang/runtimelib/memory.py,sha256=GlzdN81728IsTmPLOe70HCDFE_JRHIEWlfDzfjWxn8o,5072
183
+ jaclang/runtimelib/importer.py,sha256=EzttjsUvcmuWkeqjyThRlCzsEu2rVHD8yhzy3WWOlQE,14463
184
+ jaclang/runtimelib/machine.py,sha256=PEHCMx5R61K-aB60b3d2oyh4iqHn1ZK7xbLVNEm1iYE,8839
185
+ jaclang/runtimelib/memory.py,sha256=2A7UbTaY0GxY8ZcMhGFu5SPmY00f4BuHj2sgerb4WXo,5074
183
186
  jaclang/runtimelib/test.py,sha256=HRCl3cf0uPTe58Kcx_sBUb6ow8J53rnmpFOhA7g9oAA,2851
184
187
  jaclang/runtimelib/utils.py,sha256=P9gVE3XFhRzr745RCDXXIP391AcsL4aL_6HrXws_qa4,8155
185
- jaclang/settings.py,sha256=a8q39_6QvMVXGTjAzOwmfYMjk7w3H-iyMCEQADAw5iU,3455
188
+ jaclang/settings.py,sha256=381YK66eXqDSnWhzTHMHfbmvwfQPEI_1yPLa0RFwzKo,3553
186
189
  jaclang/tests/fixtures/abc.jac,sha256=HZvLz6IEt3Snlgg8Czs-N4emLjg4fT3IbTo95d3Gdww,1747
187
190
  jaclang/tests/fixtures/access_checker.jac,sha256=UVoY7sYW-R0ms2HDA4HXQ5xJNiW0vEbY2T5CCY1avus,281
188
191
  jaclang/tests/fixtures/access_modifier.jac,sha256=NJHXbu_N_cWpTkjJnwcHzWkEk2kroaQ8aaalVxPXAW8,2587
@@ -191,9 +194,10 @@ jaclang/tests/fixtures/assign_compr.jac,sha256=rnoujdtpjNbem4IdtBfxPahSUXl-gxNv4
191
194
  jaclang/tests/fixtures/assign_compr_dup.jac,sha256=rnoujdtpjNbem4IdtBfxPahSUXl-gxNv4JFNEuUs5iM,286
192
195
  jaclang/tests/fixtures/baddy.jac,sha256=waLlwMyW_JCE1x_SuVzRER1RBe1j3XiLTw-0NjznWpI,30
193
196
  jaclang/tests/fixtures/baddy.test.jac,sha256=Uq-Nlf44QUAtbOfDCbc9_ceLxmo31PILDTSzAv8nJq4,33
194
- jaclang/tests/fixtures/bar.jac,sha256=9I50W-KAhOqTwcsCkmug8Grm2cPMAhUwsE_fllIQNm8,781
197
+ jaclang/tests/fixtures/bar.jac,sha256=XZWOrzgMQed2R611DLfzCvWUT4a4gTYZXWRYvizMb18,782
195
198
  jaclang/tests/fixtures/blankwithentry.jac,sha256=lnMDDKyKnldsUIx1AVCIHt47KY3gR2CZYhox8663sLM,53
196
199
  jaclang/tests/fixtures/builtin_dotgen.jac,sha256=1CCJTSmMD1Zt_FkC-poPGyHRV3rIcst616UtYfuLIrE,1830
200
+ jaclang/tests/fixtures/builtins_test.jac,sha256=1eJXipIFpa8IDjKv20TjAW_k4hTtJzNT1cKnQOAVt28,244
197
201
  jaclang/tests/fixtures/byllmissue.jac,sha256=vAwxzbRNx5yOM3HTDSH7wafPYXU7AunBOZmgdsT2rhc,86
198
202
  jaclang/tests/fixtures/chandra_bugs.jac,sha256=vcBjZ4P7S1PPUs-_0Stt779pus95RJTMs1x_-m0w7yY,282
199
203
  jaclang/tests/fixtures/chandra_bugs2.jac,sha256=OZP6JOsIr8WK-joPZ54-LcbVVvtuZ5ILPdkynSSx3uU,559
@@ -213,16 +217,18 @@ jaclang/tests/fixtures/deep_import.jac,sha256=3VokNO4A_cjz4ZbRnJdaVAGwdRbbVL65m9
213
217
  jaclang/tests/fixtures/deep_import_mods.jac,sha256=MBGytfHfyVA9GjH9wKJ1iLyAdNkRj6uPzFF9fv11iWk,260
214
218
  jaclang/tests/fixtures/deferred_field.jac,sha256=pOO6YT7vwkGr4frOSvWzGx3pO5jyZxeQInuEukcVF_Q,177
215
219
  jaclang/tests/fixtures/disconn.jac,sha256=gRbNh6R6t-cTdB6lT4M7HW7cdGoYoGV5Bnp3NhW7DX4,517
220
+ jaclang/tests/fixtures/dynamic_architype.jac,sha256=jt74XfBZc5A6yWdk_DOTUhAg__TM_l6biHOxzTWQXq8,1015
216
221
  jaclang/tests/fixtures/edge_node_walk.jac,sha256=_cJXZ9D19F5a921Cmiu42ap78wwoCV7By3dknVP11bk,963
217
222
  jaclang/tests/fixtures/edge_ops.jac,sha256=b6XsApxIQUelPPAfReQor3ha2iDtAbNVpcihxTOyTgs,967
218
223
  jaclang/tests/fixtures/edges_walk.jac,sha256=w07KWk-CKVa7G2OraLqQ5zFQRnYnBD7eYc0li7VU39o,802
219
224
  jaclang/tests/fixtures/edgetypeissue.jac,sha256=ZsJuNdtmD_fu2b7sDJ_tWZjoDI_rxouDEcSWkahhBS0,118
225
+ jaclang/tests/fixtures/entry_exit.jac,sha256=Vl4f5TNCXEfTDurPiOnPWShW15RWAp5Rm4L1tI5bXOo,763
220
226
  jaclang/tests/fixtures/enum_inside_archtype.jac,sha256=EiuL9szE0ISfeczoVcnZyw0eK1n6vc6_koDf0cHgoh4,236
221
227
  jaclang/tests/fixtures/err.impl.jac,sha256=bCW5RiPOoiEiBJCcCEsPsegBTA98mqY57UYiq5O2Skg,41
222
228
  jaclang/tests/fixtures/err.jac,sha256=Df-QWvUlVa2Tc3QtKXNv4VU63Xefmp_iC-BS-1VuOEI,62
223
229
  jaclang/tests/fixtures/err2.jac,sha256=x8h69NTVMGJa_UicY-CZblLMdeH09myTeiYqNFamiK0,50
224
230
  jaclang/tests/fixtures/err_runtime.jac,sha256=giiZvN1x_cHYWdXtghdzasxYjUp2MNOdH6Pf2H6-aGI,177
225
- jaclang/tests/fixtures/foo.jac,sha256=drzjyixEuhzEGfhLWfVdAQeeOYVcPe-H7h0RM8q8V2I,1141
231
+ jaclang/tests/fixtures/foo.jac,sha256=53v2aODH1u73xi8B4UdxyM8Ow6C29H-se8yNwOXs0lg,1083
226
232
  jaclang/tests/fixtures/game1.jac,sha256=oiTadkrYJRUo6ZkHUi7I54J_0GoTTtsNLhhofTlz0uY,263
227
233
  jaclang/tests/fixtures/gendot_bubble_sort.jac,sha256=2j-SauIfPgmIe5s_pubVxRI7OGwQjL9jHMQnDG6LREk,1542
228
234
  jaclang/tests/fixtures/guess_game.jac,sha256=S2sWoF22SY2PbadKQX45QJFtw9lvzwFvrwbG0kbutPE,856
@@ -245,6 +251,7 @@ jaclang/tests/fixtures/jacsamp.jac,sha256=VUHUn-RvHzTA4v0KNIFuciocqAHsgQp9tfsEvh
245
251
  jaclang/tests/fixtures/jp_importer.jac,sha256=Mfn62rwYk8CANIkCoMf5UFt4SKl042jaU0CHnj-Soiw,414
246
252
  jaclang/tests/fixtures/jp_importer_auto.jac,sha256=-Pvv4wgWe--BKAwMnWtC630ry4c923pzyIY41j1mw-s,372
247
253
  jaclang/tests/fixtures/lambda.jac,sha256=nU4HbPrBdYe6NegJq4LueequaiLCe3KWyTAbL__ibG0,113
254
+ jaclang/tests/fixtures/match_multi_ex.jac,sha256=05XB0B0yMWpA84pCvAnKnpXObpE5fcUedpQ8Rly9Qp0,205
248
255
  jaclang/tests/fixtures/maxfail_run_test.jac,sha256=UMoJSwrmNL7mCI65P8XTKrsYgi7mFvwLS3Dd24BmR6k,160
249
256
  jaclang/tests/fixtures/mtest.impl.jac,sha256=wYsT4feH2JgxxgN217dgbDWooSmD8HBSlzUwJ4jAa8g,76
250
257
  jaclang/tests/fixtures/mtest.jac,sha256=i7aQpJuUw4YMXgJOvGn_lRx-TruJdqBClioPKGUd4mw,67
@@ -274,15 +281,17 @@ jaclang/tests/fixtures/simple_archs.jac,sha256=zHv-fnPoCtOwlk80d3AORjOwawapAdGXW
274
281
  jaclang/tests/fixtures/slice_vals.jac,sha256=BN8QxpLa8z834VMjLr1Nfv3rAWmqmk3r7FN7gedydAc,232
275
282
  jaclang/tests/fixtures/sub_abil_sep.jac,sha256=mXqMAx0VzDj_4iYO6714Gc_t7LemqRJraKtS_W2jxDY,198
276
283
  jaclang/tests/fixtures/sub_abil_sep_multilev.jac,sha256=wm7-RGdwfUGHjQo20jj2fTp0y5t2F0SId468h02rhBE,189
284
+ jaclang/tests/fixtures/trailing_comma.jac,sha256=XOpD-Czd-mPS7Xrtq9AibyGsalEHzexKj_BZZ6TTxIg,2362
277
285
  jaclang/tests/fixtures/try_finally.jac,sha256=I4bjOZz0vZbY1rQZlPy-RCMYP2-LQwtsShlmKR1_UFE,574
278
286
  jaclang/tests/fixtures/tupleunpack.jac,sha256=AP6rbofc0VmsTNxInY6WLGRKWVY6u8ut0uzQX_52QyI,64
279
287
  jaclang/tests/fixtures/tuplytuples.jac,sha256=6qiXn5OV_qn4cqKwROjJ1VuBAh0nbUGpp-5vtH9n_Dg,344
280
288
  jaclang/tests/fixtures/type_info.jac,sha256=4Cw31ef5gny6IS0kLzgeSO-7ArEH1HgFFFip1BGQhZM,316
281
289
  jaclang/tests/fixtures/walker_override.jac,sha256=Ok58ZAgxuV6aECNxYrjbbyAWSiqIbnly3N3O6cD563o,271
290
+ jaclang/tests/fixtures/walker_update.jac,sha256=_bN3ASAN6LpfIQFfDMRnrx2oteM-ef7OrbE91f2qvrs,463
282
291
  jaclang/tests/fixtures/with_context.jac,sha256=cDA_4YWe5UVmQRgcpktzkZ_zsswQpV_T2Otf_rFnPy8,466
283
292
  jaclang/tests/test_bugs.py,sha256=tBPsIlSPqZDIz4QaScNRT-WdGIdJ0uU-aRBWq1XUZ6o,555
284
- jaclang/tests/test_cli.py,sha256=cqGHeL15sy34qJRZyD48Wu6rnOh1ZDHNS3pg0jOJvag,12515
285
- jaclang/tests/test_language.py,sha256=5Vv2wD0PkBLESiNhKCToT3FAeQoQpzSElv_xwg6BVMo,39082
293
+ jaclang/tests/test_cli.py,sha256=7PYJvJeKKb13yyP0TQ_pHbdRowWN5TI7kG-tNUESbaI,13461
294
+ jaclang/tests/test_language.py,sha256=pe5GbGDvxX6u0uqCLtYCYR9SFtBswxfF0zZkKgUNQfw,45020
286
295
  jaclang/tests/test_man_code.py,sha256=ZdNarlZVfT_-8Jv3FjLplHw76tsvkCuISyfX3M4qxPg,5027
287
296
  jaclang/tests/test_reference.py,sha256=FISQpZbB8cmRoAeJOFfXUy13WVxykZjpkPSb1OTotfI,3340
288
297
  jaclang/tests/test_settings.py,sha256=TIX5uiu8H9IpZN2__uFiclcdCpBpPpcAwtlEHyFC4kk,1999
@@ -293,7 +302,7 @@ jaclang/utils/log.py,sha256=G8Y_DnETgTh9xzvlW5gh9zqJ1ap4YY_MDTwIMu5Uc0Y,262
293
302
  jaclang/utils/test.py,sha256=27TS33HkjKMy-hb-E4J1qQ3aBVqBPJaI_222ZT7P5TQ,6053
294
303
  jaclang/utils/tests/__init__.py,sha256=8uwVqMsc6cxBAM1DuHLuNuTnzLXqOqM-WRa4ixOMF6w,23
295
304
  jaclang/utils/tests/test_lang_tools.py,sha256=hFQzkzdmJIhP99xqjR5z7bqkefMLmE6kwldXYrfK--E,4831
296
- jaclang/utils/treeprinter.py,sha256=NUAoZxi_aJmtIjhQnZ_pNYUkWkORp-tZM4jl_-XUckk,13296
305
+ jaclang/utils/treeprinter.py,sha256=dMjUHOU-WEyCmjouyaCBefgwM39bZsCzDx-_2eMa5nc,13297
297
306
  jaclang/vendor/__init__.py,sha256=tEcp2kl3hMvF2d6X6WlJSAGuAMYOVCKCstXuPMQSR4Q,265
298
307
  jaclang/vendor/attr/__init__.py,sha256=WlXJN6ICB0Y_HZ0lmuTUgia0kuSdn2p67d4N6cYxNZM,3307
299
308
  jaclang/vendor/attr/__init__.pyi,sha256=u08EujYHy_rSyebNn-I9Xv2S_cXmtA9xWGc0cBsyl18,16976
@@ -1516,7 +1525,7 @@ jaclang/vendor/typing_extensions-4.12.2.dist-info/METADATA,sha256=BeUQIa8cnYbrjW
1516
1525
  jaclang/vendor/typing_extensions-4.12.2.dist-info/RECORD,sha256=XS4fBVrPI7kaNZ56Ggl2RGa76jySWLqTzcrUpZIQTVM,418
1517
1526
  jaclang/vendor/typing_extensions-4.12.2.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
1518
1527
  jaclang/vendor/typing_extensions.py,sha256=gwekpyG9DVG3lxWKX4ni8u7nk3We5slG98mA9F3DJQw,134451
1519
- jaclang-0.7.18.dist-info/METADATA,sha256=AEdrDMQWk6zb30Ji2LCf-h5DtAnEvzAPkhyc_3dwWC0,4853
1520
- jaclang-0.7.18.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1521
- jaclang-0.7.18.dist-info/entry_points.txt,sha256=8sMi4Tvi9f8tQDN2QAXsSA2icO27zQ4GgEdph6bNEZM,49
1522
- jaclang-0.7.18.dist-info/RECORD,,
1528
+ jaclang-0.7.22.dist-info/METADATA,sha256=RRjM8ycf_J5Kh88mQ0FqNAHngok4LAZhlMwJjMYkvSg,4914
1529
+ jaclang-0.7.22.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1530
+ jaclang-0.7.22.dist-info/entry_points.txt,sha256=8sMi4Tvi9f8tQDN2QAXsSA2icO27zQ4GgEdph6bNEZM,49
1531
+ jaclang-0.7.22.dist-info/RECORD,,