jaclang 0.7.25__py3-none-any.whl → 0.7.27__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/compiler/absyntree.py +27 -18
- jaclang/compiler/jac.lark +4 -1
- jaclang/compiler/parser.py +37 -20
- jaclang/compiler/passes/main/def_impl_match_pass.py +50 -13
- jaclang/compiler/passes/main/def_use_pass.py +1 -2
- jaclang/compiler/passes/main/pyast_gen_pass.py +46 -20
- jaclang/compiler/passes/main/pyast_load_pass.py +20 -6
- jaclang/compiler/passes/main/sym_tab_build_pass.py +1 -2
- jaclang/compiler/passes/main/tests/fixtures/uninitialized_hasvars.jac +26 -0
- jaclang/compiler/passes/main/tests/test_decl_def_match_pass.py +36 -29
- jaclang/compiler/passes/main/tests/test_def_use_pass.py +3 -3
- jaclang/compiler/passes/tool/jac_formatter_pass.py +2 -2
- jaclang/compiler/passes/tool/tests/fixtures/corelib.jac +3 -3
- jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac +3 -3
- jaclang/compiler/tests/test_parser.py +7 -1
- jaclang/plugin/default.py +64 -18
- jaclang/plugin/feature.py +16 -1
- jaclang/plugin/spec.py +14 -2
- jaclang/plugin/tests/fixtures/graph_purger.jac +101 -0
- jaclang/plugin/tests/fixtures/other_root_access.jac +19 -0
- jaclang/plugin/tests/fixtures/savable_object.jac +84 -0
- jaclang/plugin/tests/test_jaseci.py +214 -6
- jaclang/runtimelib/architype.py +29 -1
- jaclang/runtimelib/memory.py +27 -8
- jaclang/runtimelib/utils.py +16 -0
- jaclang/tests/fixtures/architype_def_bug.jac +17 -0
- jaclang/tests/fixtures/decl_defn_param_name.jac +19 -0
- jaclang/tests/fixtures/multi_dim_array_split.jac +19 -0
- jaclang/tests/test_cli.py +18 -0
- jaclang/tests/test_language.py +43 -0
- {jaclang-0.7.25.dist-info → jaclang-0.7.27.dist-info}/METADATA +1 -1
- {jaclang-0.7.25.dist-info → jaclang-0.7.27.dist-info}/RECORD +34 -28
- {jaclang-0.7.25.dist-info → jaclang-0.7.27.dist-info}/WHEEL +0 -0
- {jaclang-0.7.25.dist-info → jaclang-0.7.27.dist-info}/entry_points.txt +0 -0
jaclang/runtimelib/architype.py
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
import inspect
|
|
5
6
|
from dataclasses import asdict, dataclass, field, fields, is_dataclass
|
|
6
7
|
from enum import IntEnum
|
|
7
8
|
from logging import getLogger
|
|
@@ -225,6 +226,13 @@ class WalkerAnchor(Anchor):
|
|
|
225
226
|
disengaged: bool = False
|
|
226
227
|
|
|
227
228
|
|
|
229
|
+
@dataclass(eq=False, repr=False, kw_only=True)
|
|
230
|
+
class ObjectAnchor(Anchor):
|
|
231
|
+
"""Edge Anchor."""
|
|
232
|
+
|
|
233
|
+
architype: ObjectArchitype
|
|
234
|
+
|
|
235
|
+
|
|
228
236
|
class Architype:
|
|
229
237
|
"""Architype Protocol."""
|
|
230
238
|
|
|
@@ -266,6 +274,16 @@ class WalkerArchitype(Architype):
|
|
|
266
274
|
self.__jac__ = WalkerAnchor(architype=self)
|
|
267
275
|
|
|
268
276
|
|
|
277
|
+
class ObjectArchitype(Architype):
|
|
278
|
+
"""Walker Architype Protocol."""
|
|
279
|
+
|
|
280
|
+
__jac__: ObjectAnchor
|
|
281
|
+
|
|
282
|
+
def __init__(self) -> None:
|
|
283
|
+
"""Create walker architype."""
|
|
284
|
+
self.__jac__ = ObjectAnchor(architype=self)
|
|
285
|
+
|
|
286
|
+
|
|
269
287
|
@dataclass(eq=False)
|
|
270
288
|
class GenericEdge(EdgeArchitype):
|
|
271
289
|
"""Generic Root Node."""
|
|
@@ -291,9 +309,19 @@ class DSFunc:
|
|
|
291
309
|
"""Data Spatial Function."""
|
|
292
310
|
|
|
293
311
|
name: str
|
|
294
|
-
trigger: type | UnionType | tuple[type | UnionType, ...] | None
|
|
295
312
|
func: Callable[[Any, Any], Any] | None = None
|
|
296
313
|
|
|
297
314
|
def resolve(self, cls: type) -> None:
|
|
298
315
|
"""Resolve the function."""
|
|
299
316
|
self.func = getattr(cls, self.name)
|
|
317
|
+
|
|
318
|
+
def get_funcparam_annotations(
|
|
319
|
+
self, func: Callable[[Any, Any], Any] | None
|
|
320
|
+
) -> type | UnionType | tuple[type | UnionType, ...] | None:
|
|
321
|
+
"""Get function parameter annotations."""
|
|
322
|
+
if not func:
|
|
323
|
+
return None
|
|
324
|
+
annotation = (
|
|
325
|
+
inspect.signature(func, eval_str=True).parameters["_jac_here_"].annotation
|
|
326
|
+
)
|
|
327
|
+
return annotation if annotation != inspect._empty else None
|
jaclang/runtimelib/memory.py
CHANGED
|
@@ -25,6 +25,10 @@ class Memory(Generic[ID, TANCH]):
|
|
|
25
25
|
self.__mem__.clear()
|
|
26
26
|
self.__gc__.clear()
|
|
27
27
|
|
|
28
|
+
def is_cached(self, id: ID) -> bool:
|
|
29
|
+
"""Check if id if already cached."""
|
|
30
|
+
return id in self.__mem__
|
|
31
|
+
|
|
28
32
|
def find(
|
|
29
33
|
self,
|
|
30
34
|
ids: ID | Iterable[ID],
|
|
@@ -80,14 +84,32 @@ class ShelfStorage(Memory[UUID, Anchor]):
|
|
|
80
84
|
def close(self) -> None:
|
|
81
85
|
"""Close memory handler."""
|
|
82
86
|
if isinstance(self.__shelf__, Shelf):
|
|
83
|
-
from jaclang.plugin.feature import JacFeature as Jac
|
|
84
|
-
|
|
85
87
|
for anchor in self.__gc__:
|
|
86
88
|
self.__shelf__.pop(str(anchor.id), None)
|
|
87
89
|
self.__mem__.pop(anchor.id, None)
|
|
88
90
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
+
keys = set(self.__mem__.keys())
|
|
92
|
+
|
|
93
|
+
# current memory
|
|
94
|
+
self.sync_mem_to_db(keys)
|
|
95
|
+
|
|
96
|
+
# additional after memory sync
|
|
97
|
+
self.sync_mem_to_db(set(self.__mem__.keys() - keys))
|
|
98
|
+
|
|
99
|
+
self.__shelf__.close()
|
|
100
|
+
super().close()
|
|
101
|
+
|
|
102
|
+
def sync_mem_to_db(self, keys: Iterable[UUID]) -> None:
|
|
103
|
+
"""Manually sync memory to db."""
|
|
104
|
+
from jaclang.plugin.feature import JacFeature as Jac
|
|
105
|
+
|
|
106
|
+
if isinstance(self.__shelf__, Shelf):
|
|
107
|
+
for key in keys:
|
|
108
|
+
if (
|
|
109
|
+
(d := self.__mem__.get(key))
|
|
110
|
+
and d.persistent
|
|
111
|
+
and d.hash != hash(dumps(d))
|
|
112
|
+
):
|
|
91
113
|
_id = str(d.id)
|
|
92
114
|
if p_d := self.__shelf__.get(_id):
|
|
93
115
|
if (
|
|
@@ -96,7 +118,7 @@ class ShelfStorage(Memory[UUID, Anchor]):
|
|
|
96
118
|
and p_d.edges != d.edges
|
|
97
119
|
and Jac.check_connect_access(d)
|
|
98
120
|
):
|
|
99
|
-
if not d.edges:
|
|
121
|
+
if not d.edges and not isinstance(d.architype, Root):
|
|
100
122
|
self.__shelf__.pop(_id, None)
|
|
101
123
|
continue
|
|
102
124
|
p_d.edges = d.edges
|
|
@@ -115,9 +137,6 @@ class ShelfStorage(Memory[UUID, Anchor]):
|
|
|
115
137
|
):
|
|
116
138
|
self.__shelf__[_id] = d
|
|
117
139
|
|
|
118
|
-
self.__shelf__.close()
|
|
119
|
-
super().close()
|
|
120
|
-
|
|
121
140
|
def find(
|
|
122
141
|
self,
|
|
123
142
|
ids: UUID | Iterable[UUID],
|
jaclang/runtimelib/utils.py
CHANGED
|
@@ -5,6 +5,7 @@ from __future__ import annotations
|
|
|
5
5
|
import ast as ast3
|
|
6
6
|
import sys
|
|
7
7
|
from contextlib import contextmanager
|
|
8
|
+
from types import UnionType
|
|
8
9
|
from typing import Callable, Iterator, TYPE_CHECKING
|
|
9
10
|
|
|
10
11
|
import jaclang.compiler.absyntree as ast
|
|
@@ -215,3 +216,18 @@ def extract_params(
|
|
|
215
216
|
)
|
|
216
217
|
exclude_info.append((var_name, i.gen.py_ast[0]))
|
|
217
218
|
return model_params, include_info, exclude_info
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
def is_instance(
|
|
222
|
+
obj: object, target: type | UnionType | tuple[type | UnionType, ...]
|
|
223
|
+
) -> bool:
|
|
224
|
+
"""Check if object is instance of target type."""
|
|
225
|
+
match target:
|
|
226
|
+
case UnionType():
|
|
227
|
+
return any((is_instance(obj, trg) for trg in target.__args__))
|
|
228
|
+
case tuple():
|
|
229
|
+
return any((is_instance(obj, trg) for trg in target))
|
|
230
|
+
case type():
|
|
231
|
+
return isinstance(obj, target)
|
|
232
|
+
case _:
|
|
233
|
+
return False
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# fix test type 2
|
|
2
|
+
walker MyWalker {
|
|
3
|
+
can travel with `root | MyNode entry {
|
|
4
|
+
print("MyWalker");
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
node MyNode {
|
|
9
|
+
can work with MyWalker entry {
|
|
10
|
+
print("MyNode");
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
with entry {
|
|
15
|
+
Node_1 = MyNode();
|
|
16
|
+
Node_1 spawn MyWalker();
|
|
17
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
|
|
2
|
+
obj SomeClass {
|
|
3
|
+
can method1(some_long_paramenter_name: int) -> None;
|
|
4
|
+
can method2(param1:int, param2:str) -> None;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
:o:SomeClass:c:method1(short_name:int) -> None {
|
|
8
|
+
print("short_name =", short_name);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
:o:SomeClass:c:method2(p1:int, p2: str) -> None {
|
|
12
|
+
print("p1 =", p1, ", p2 =", p2);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
with entry {
|
|
16
|
+
sc = SomeClass();
|
|
17
|
+
sc.method1(42);
|
|
18
|
+
sc.method2(64, "foobar");
|
|
19
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import:py numpy as np;
|
|
2
|
+
|
|
3
|
+
with entry {
|
|
4
|
+
arr = np.array(
|
|
5
|
+
[[1, 2, 3, 4, 5],
|
|
6
|
+
[6, 7, 8, 9, 10],
|
|
7
|
+
[11, 12, 13, 14, 15],
|
|
8
|
+
[16, 17, 18, 19, 20],
|
|
9
|
+
[21, 22, 23, 24, 25]]
|
|
10
|
+
);
|
|
11
|
+
|
|
12
|
+
print('Original Array:');
|
|
13
|
+
print(arr);
|
|
14
|
+
|
|
15
|
+
print();
|
|
16
|
+
|
|
17
|
+
print('Sliced Array:');
|
|
18
|
+
print(arr[1:3, 1::2]);
|
|
19
|
+
}
|
jaclang/tests/test_cli.py
CHANGED
|
@@ -94,6 +94,24 @@ class JacCliTests(TestCase):
|
|
|
94
94
|
path_to_file = self.fixture_abs_path("err.impl.jac")
|
|
95
95
|
self.assertIn(f'"{path_to_file}", line 2', stdout_value)
|
|
96
96
|
|
|
97
|
+
def test_param_name_diff(self) -> None:
|
|
98
|
+
"""Test when parameter name from definitinon and declaration are mismatched."""
|
|
99
|
+
captured_output = io.StringIO()
|
|
100
|
+
sys.stdout = captured_output
|
|
101
|
+
sys.stderr = captured_output
|
|
102
|
+
with contextlib.suppress(Exception):
|
|
103
|
+
cli.run(self.fixture_abs_path("decl_defn_param_name.jac"))
|
|
104
|
+
sys.stdout = sys.__stdout__
|
|
105
|
+
sys.stderr = sys.__stderr__
|
|
106
|
+
|
|
107
|
+
expected_stdout_values = (
|
|
108
|
+
"short_name = 42",
|
|
109
|
+
"p1 = 64 , p2 = foobar",
|
|
110
|
+
)
|
|
111
|
+
output = captured_output.getvalue()
|
|
112
|
+
for exp in expected_stdout_values:
|
|
113
|
+
self.assertIn(exp, output)
|
|
114
|
+
|
|
97
115
|
def test_jac_test_err(self) -> None:
|
|
98
116
|
"""Basic test for pass."""
|
|
99
117
|
captured_output = io.StringIO()
|
jaclang/tests/test_language.py
CHANGED
|
@@ -103,6 +103,39 @@ class JacLanguageTests(TestCase):
|
|
|
103
103
|
"Too high!\nToo low!\nToo high!\nCongratulations! You guessed correctly.\n",
|
|
104
104
|
)
|
|
105
105
|
|
|
106
|
+
def test_multi_dim_arr_slice(self) -> None:
|
|
107
|
+
"""Parse micro jac file."""
|
|
108
|
+
captured_output = io.StringIO()
|
|
109
|
+
sys.stdout = captured_output
|
|
110
|
+
cli.tool(
|
|
111
|
+
"ir",
|
|
112
|
+
[
|
|
113
|
+
"ast",
|
|
114
|
+
self.fixture_abs_path("multi_dim_array_split.jac"),
|
|
115
|
+
],
|
|
116
|
+
)
|
|
117
|
+
sys.stdout = sys.__stdout__
|
|
118
|
+
stdout_value = captured_output.getvalue()
|
|
119
|
+
|
|
120
|
+
expected_outputs = [
|
|
121
|
+
"+-- AtomTrailer - Type: numpy.ndarray[Any, numpy.dtype[Any]]",
|
|
122
|
+
" +-- Name - arr - Type: numpy.ndarray[Any, numpy.dtype[Any]], SymbolTable: None",
|
|
123
|
+
" +-- IndexSlice - [IndexSlice] - Type: builtins.slice, SymbolTable: None",
|
|
124
|
+
" +-- Token - [,",
|
|
125
|
+
" +-- Int - 1 - Type: Literal[1]?, SymbolTable: None",
|
|
126
|
+
" +-- Token - :,",
|
|
127
|
+
" +-- Int - 3 - Type: Literal[3]?, SymbolTable: None",
|
|
128
|
+
" +-- Token - ,,",
|
|
129
|
+
" +-- Int - 1 - Type: Literal[1]?, SymbolTable: None",
|
|
130
|
+
" +-- Token - :,",
|
|
131
|
+
" +-- Token - :,",
|
|
132
|
+
" +-- Int - 2 - Type: Literal[2]?, SymbolTable: None",
|
|
133
|
+
" +-- Token - ],",
|
|
134
|
+
]
|
|
135
|
+
|
|
136
|
+
for expected in expected_outputs:
|
|
137
|
+
self.assertIn(expected, stdout_value)
|
|
138
|
+
|
|
106
139
|
def test_chandra_bugs(self) -> None:
|
|
107
140
|
"""Parse micro jac file."""
|
|
108
141
|
captured_output = io.StringIO()
|
|
@@ -1189,3 +1222,13 @@ class JacLanguageTests(TestCase):
|
|
|
1189
1222
|
stdout_value = captured_output.getvalue().split("\n")
|
|
1190
1223
|
self.assertIn("Hello World !", stdout_value[0])
|
|
1191
1224
|
self.assertIn("Welcome to Jaseci!", stdout_value[1])
|
|
1225
|
+
|
|
1226
|
+
def test_architype_def(self) -> None:
|
|
1227
|
+
"""Test architype definition bug."""
|
|
1228
|
+
captured_output = io.StringIO()
|
|
1229
|
+
sys.stdout = captured_output
|
|
1230
|
+
jac_import("architype_def_bug", base_path=self.fixture_abs_path("./"))
|
|
1231
|
+
sys.stdout = sys.__stdout__
|
|
1232
|
+
stdout_value = captured_output.getvalue().split("\n")
|
|
1233
|
+
self.assertIn("MyNode", stdout_value[0])
|
|
1234
|
+
self.assertIn("MyWalker", stdout_value[1])
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: jaclang
|
|
3
|
-
Version: 0.7.
|
|
3
|
+
Version: 0.7.27
|
|
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
|
|
@@ -6,30 +6,30 @@ jaclang/cli/cli.py,sha256=EmRY02l9yxNJ2ObeK0Nnb1e0vKcacUu_hG_X2_5DNFY,16705
|
|
|
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=0c0Eu3TPoo--hxvciM6kn9_A9YKjQOQdXX-yYILWFNM,2742
|
|
9
|
-
jaclang/compiler/absyntree.py,sha256=
|
|
9
|
+
jaclang/compiler/absyntree.py,sha256=sbQ4iKhXtDvbu5tlN8vL4gd6CuqDCe3mh0Mxbkgmu-4,140928
|
|
10
10
|
jaclang/compiler/codeloc.py,sha256=clz7ofOE0Rgf7eqco3zEO31mCbG3Skj9-rLooliBeik,2942
|
|
11
11
|
jaclang/compiler/compile.py,sha256=eYoKSLCgzWQBMaRkeXSv1D_EuixEtrFP1iSjxUGtHzs,3773
|
|
12
12
|
jaclang/compiler/constant.py,sha256=gKccXK4Qf3CWuv8J1oaWrwqdP7CRIf7ndayquRx6Xgs,9007
|
|
13
|
-
jaclang/compiler/jac.lark,sha256=
|
|
14
|
-
jaclang/compiler/parser.py,sha256=
|
|
13
|
+
jaclang/compiler/jac.lark,sha256=PX9R46947zcu4sITyJ56xQFGArLygPhZj-uulGfAx3M,17584
|
|
14
|
+
jaclang/compiler/parser.py,sha256=TIz4Wa1zPfgVYWwqkdCcuJcDAMP4yPcFu1WXnb7iPdI,143263
|
|
15
15
|
jaclang/compiler/passes/__init__.py,sha256=0Tw0d130ZjzA05jVcny9cf5NfLjlaM70PKqFnY4zqn4,69
|
|
16
16
|
jaclang/compiler/passes/ir_pass.py,sha256=CgtuBrVjfG7PgTCLNSjxgFffYR5naTC3tIjOjsXx5gk,5597
|
|
17
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
|
-
jaclang/compiler/passes/main/def_impl_match_pass.py,sha256=
|
|
20
|
-
jaclang/compiler/passes/main/def_use_pass.py,sha256=
|
|
19
|
+
jaclang/compiler/passes/main/def_impl_match_pass.py,sha256=cCOXyL-yyLxIvSyrlhOtVgjJNu0T-RyKx3sP4bFaQ54,8172
|
|
20
|
+
jaclang/compiler/passes/main/def_use_pass.py,sha256=3rfLaQw4mScSedqPCY8vVkvZH77TTOKEbBYYGC0SZnA,9634
|
|
21
21
|
jaclang/compiler/passes/main/fuse_typeinfo_pass.py,sha256=46JIeqkgkB3doy4F6FAUDvv_wTutMwl4NQI5ykbQ-So,25571
|
|
22
22
|
jaclang/compiler/passes/main/import_pass.py,sha256=5nJp6BERceXQs8k8JqXVYp8wZ1wVoSga1GoUtCLA8EA,12880
|
|
23
23
|
jaclang/compiler/passes/main/py_collect_dep_pass.py,sha256=lzMOYH8TarhkJFt0vqvZFknthZ08OjsdO7tO2u2EN40,2834
|
|
24
|
-
jaclang/compiler/passes/main/pyast_gen_pass.py,sha256=
|
|
25
|
-
jaclang/compiler/passes/main/pyast_load_pass.py,sha256=
|
|
24
|
+
jaclang/compiler/passes/main/pyast_gen_pass.py,sha256=UGfR-JNRDbvx99RxEf51OAEe3VljylZLQ1hD7eUS8Kk,143389
|
|
25
|
+
jaclang/compiler/passes/main/pyast_load_pass.py,sha256=QMOEBIsH4jXHRdK9NX4nBUrAv_g1l5IQdHe6_FBbuyw,94689
|
|
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=snbqUIPtPcD9ZKsItOlKGVnujoMGFwF8XNP0GvxS9AI,8628
|
|
28
28
|
jaclang/compiler/passes/main/pyout_pass.py,sha256=QWVB-AyVBha3OespP89LMuslRsdG2niZErwtnRPiURM,3191
|
|
29
29
|
jaclang/compiler/passes/main/registry_pass.py,sha256=BOyBajaUxJ-xQfTOsx-JJcr4-q0hejBZRvNfBPvSFQM,5571
|
|
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=
|
|
32
|
+
jaclang/compiler/passes/main/sym_tab_build_pass.py,sha256=oNrBC9GdHb_uvpftxKC0vKepQkQgQW7ZCEwAHq-r9J8,34264
|
|
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
|
|
@@ -61,8 +61,9 @@ jaclang/compiler/passes/main/tests/fixtures/pygame_mock/constants.py,sha256=1i-O
|
|
|
61
61
|
jaclang/compiler/passes/main/tests/fixtures/pygame_mock/display.py,sha256=uzQZvyHHf4iPAodRBuBxrnwx3CpDPbMxcsGRlUB_9GY,29
|
|
62
62
|
jaclang/compiler/passes/main/tests/fixtures/registry.jac,sha256=1G6amtU1zIFCgq09v7xTp9zZ5sw5IbXHfYVlOo-drPg,993
|
|
63
63
|
jaclang/compiler/passes/main/tests/fixtures/type_info.jac,sha256=64Im2L-R3YF8DEuTt29QE6mJI5PnFe3PiwcDLKa8gOE,661
|
|
64
|
-
jaclang/compiler/passes/main/tests/
|
|
65
|
-
jaclang/compiler/passes/main/tests/
|
|
64
|
+
jaclang/compiler/passes/main/tests/fixtures/uninitialized_hasvars.jac,sha256=RVxT9k1R_O_daYZJPvOTjZcd8-CX3zlaaIB0Chg2IvU,542
|
|
65
|
+
jaclang/compiler/passes/main/tests/test_decl_def_match_pass.py,sha256=JuemAIeaHf1wcpbkRTQdp_xlqUmSBZg91pLFyxEv1VM,4393
|
|
66
|
+
jaclang/compiler/passes/main/tests/test_def_use_pass.py,sha256=NJr8d4iS9maoySBMLtxi8a3DJjbcLgEy6GjRgU_nzhM,843
|
|
66
67
|
jaclang/compiler/passes/main/tests/test_import_pass.py,sha256=XR0CaqdEQslYz1GXICpF3wko2PDw-tOnHfvgSWjo8TQ,5158
|
|
67
68
|
jaclang/compiler/passes/main/tests/test_pyast_build_pass.py,sha256=LIT4TP-nhtftRtY5rNySRQlim-dWMSlkfUvkhZTk4pc,1383
|
|
68
69
|
jaclang/compiler/passes/main/tests/test_pyast_gen_pass.py,sha256=6ZpLNYxblzBg6bmWSA0fikNM7nEAR9b9F18LJaO5buM,4679
|
|
@@ -75,11 +76,11 @@ jaclang/compiler/passes/main/tests/test_typeinfo_pass.py,sha256=o908glXImFXOlKKT
|
|
|
75
76
|
jaclang/compiler/passes/main/type_check_pass.py,sha256=nIDrX49L3u7kToW3h-m2XI9FKr9UY_Wn_Y28TsVifZc,4273
|
|
76
77
|
jaclang/compiler/passes/tool/__init__.py,sha256=xekCOXysHIcthWm8NRmQoA1Ah1XV8vFbkfeHphJtUdc,223
|
|
77
78
|
jaclang/compiler/passes/tool/fuse_comments_pass.py,sha256=CSnuWy4gZfTcWKe0Q7LBikBgWe1zJr0QmNUkgrZ7B38,3657
|
|
78
|
-
jaclang/compiler/passes/tool/jac_formatter_pass.py,sha256
|
|
79
|
+
jaclang/compiler/passes/tool/jac_formatter_pass.py,sha256=ILagQpjv4wcBlu3dMQ1kaA-X7il1IwICdB9GqcBlPZ4,91207
|
|
79
80
|
jaclang/compiler/passes/tool/schedules.py,sha256=kmbsCazAMizGAdQuZpFky5BPlYlMXqNw7wOUzdi_wBo,432
|
|
80
81
|
jaclang/compiler/passes/tool/tests/__init__.py,sha256=AeOaZjA1rf6VAr0JqIit6jlcmOzW7pxGr4U1fOwgK_Y,24
|
|
81
|
-
jaclang/compiler/passes/tool/tests/fixtures/corelib.jac,sha256=
|
|
82
|
-
jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac,sha256=
|
|
82
|
+
jaclang/compiler/passes/tool/tests/fixtures/corelib.jac,sha256=QvGgP1v_RRqM2t8BOMbbEj3g6jCgyYKvZEdqydJqlqg,12581
|
|
83
|
+
jaclang/compiler/passes/tool/tests/fixtures/corelib_fmt.jac,sha256=Y59lUM-6DSXff51l0aU4g0BBrXpKXTQTtVNw_TybJbI,12580
|
|
83
84
|
jaclang/compiler/passes/tool/tests/fixtures/doc_string.jac,sha256=hXD5bidK3sCGlJwTxy5Tka568hVxzqY6KL9y_z19CQo,217
|
|
84
85
|
jaclang/compiler/passes/tool/tests/fixtures/genai/essay_review.jac,sha256=wswRZnBVc9b-kWVYHlsQKa-L958IzvclHWEnvNM7vYc,1776
|
|
85
86
|
jaclang/compiler/passes/tool/tests/fixtures/genai/expert_answer.jac,sha256=97Xm1O70OoHOpAooPjNI2CnJmBUI8x5CmYpMvuOET0E,677
|
|
@@ -135,7 +136,7 @@ jaclang/compiler/tests/fixtures/mod_doc_test.jac,sha256=aFZpjn7V5lvCHp0lPoGXtdkc
|
|
|
135
136
|
jaclang/compiler/tests/fixtures/staticcheck.jac,sha256=t849--dTkSSjCJX1OiMV-lgao_hIDSKwKVs-aS6IwK8,342
|
|
136
137
|
jaclang/compiler/tests/fixtures/stuff.jac,sha256=qOq6WOwhlprMmJpiqQudgqnr4qTd9uhulQSDGQ3o6sY,82
|
|
137
138
|
jaclang/compiler/tests/test_importer.py,sha256=5gcP-oHoQ6i4VWh7_NlDl8uKLlwfbgzoWTd44ugs5Go,2315
|
|
138
|
-
jaclang/compiler/tests/test_parser.py,sha256=
|
|
139
|
+
jaclang/compiler/tests/test_parser.py,sha256=Ke5bF2nrLufhp4y92_dONvBZ8S5GgvfDozOJnEy4-9U,5044
|
|
139
140
|
jaclang/langserve/__init__.py,sha256=3qbnivBBcLZCfmDYRMIeKkG08Lx7XQsJJg-qG8TU8yc,51
|
|
140
141
|
jaclang/langserve/engine.py,sha256=2U6sSCXLedVZhbUGFMadSecKUmW23LAk8S99vN7tsyc,20911
|
|
141
142
|
jaclang/langserve/sem_manager.py,sha256=d5QzT9WVYarZfTg1sUF_pTfNMYb65HLz3vX839b5Jeo,14918
|
|
@@ -165,34 +166,37 @@ jaclang/langserve/tests/test_server.py,sha256=cZcQTMCMhJw4FS1BDz2oAmQb0J1mXdb5Bc
|
|
|
165
166
|
jaclang/langserve/utils.py,sha256=edZCrq8ZFolao-rvv5RGPxtnEh6NmhrxOgPh8VxmEPs,15019
|
|
166
167
|
jaclang/plugin/__init__.py,sha256=5t2krHKt_44PrCTGojzxEimxpNHYVQcn89jAiCSXE_k,165
|
|
167
168
|
jaclang/plugin/builtin.py,sha256=zNTbe5knJrGFgJRa4l4hMzzuij6iXFyVqRTxputUHIo,1307
|
|
168
|
-
jaclang/plugin/default.py,sha256=
|
|
169
|
-
jaclang/plugin/feature.py,sha256=
|
|
169
|
+
jaclang/plugin/default.py,sha256=65k0F5NsCH4qID6sCje0quU6atgUPF8f1pIK5z02q5E,46984
|
|
170
|
+
jaclang/plugin/feature.py,sha256=CJ87SfNPsxS7xuLvW0KpOboa6IrjDdPkOsVS3pjBsfk,17104
|
|
170
171
|
jaclang/plugin/plugin.md,sha256=B252QTH3c8uZyvXTbGmZBafZtdXstFC5vT5jIN_gS4U,9994
|
|
171
|
-
jaclang/plugin/spec.py,sha256
|
|
172
|
+
jaclang/plugin/spec.py,sha256=N1T4lhiyt_2UYmqLvhP6xjBUvgRA3wQF-YWjxjxPAIs,14714
|
|
172
173
|
jaclang/plugin/tests/__init__.py,sha256=rn_tNG8jCHWwBc_rx4yFkGc4N1GISb7aPuTFVRTvrTk,38
|
|
174
|
+
jaclang/plugin/tests/fixtures/graph_purger.jac,sha256=c6kJD-KYYj2NErC21CjC2sjEMMBF6Qh9SdY9nSKWos8,1506
|
|
173
175
|
jaclang/plugin/tests/fixtures/impl_match.jac,sha256=WEhcA1GlovusITEFO2bOjYYqiiULyYGKhM17uK2GqnI,91
|
|
174
176
|
jaclang/plugin/tests/fixtures/impl_match_impl.jac,sha256=k1385r7Hdlq6mUKxEHa3VOKJUIWH08hYg2kErhbYwFM,31
|
|
175
|
-
jaclang/plugin/tests/fixtures/other_root_access.jac,sha256=
|
|
177
|
+
jaclang/plugin/tests/fixtures/other_root_access.jac,sha256=e8pL9t3monI9FhmgavbcFsh8gjUB3pZkhAZHvbYcRuU,1991
|
|
178
|
+
jaclang/plugin/tests/fixtures/savable_object.jac,sha256=5eqRnnL3tqAMrIWQGoHW4vsD5acX9jZLtXtg_GBb84A,1973
|
|
176
179
|
jaclang/plugin/tests/fixtures/simple_node_connection.jac,sha256=KdbpACWtnj92TqQqEunwoI4VKhlnhcJCKMkbgh0Xqxg,1067
|
|
177
180
|
jaclang/plugin/tests/fixtures/simple_persistent.jac,sha256=o0TZTOJEZjFW8A2IGY8ICBZEBZzHhqha0xQFFBK_DSI,624
|
|
178
181
|
jaclang/plugin/tests/test_features.py,sha256=sK9d2UazofGl9qYZO_ODKmOHZY8E4fnXNoyw-_KQI9A,2344
|
|
179
|
-
jaclang/plugin/tests/test_jaseci.py,sha256=
|
|
182
|
+
jaclang/plugin/tests/test_jaseci.py,sha256=g2HQWPaG4E2FQOWcKmZ2SM2MDDOEy2s1u14Idb7GTbw,27398
|
|
180
183
|
jaclang/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
181
184
|
jaclang/runtimelib/__init__.py,sha256=jDDYBCV82qPhmcDVk3NIvHbhng0ebSrXD3xrojg0-eo,34
|
|
182
|
-
jaclang/runtimelib/architype.py,sha256=
|
|
185
|
+
jaclang/runtimelib/architype.py,sha256=Egw3hmLDAt_jxQBagT_WoLv5Evl7hUbGkPx0-skboLw,8650
|
|
183
186
|
jaclang/runtimelib/constructs.py,sha256=1ARnsPrDi1UvyaFRhGRhO0kj0fnIZ2HbHF7O3itB-ZQ,796
|
|
184
187
|
jaclang/runtimelib/context.py,sha256=DjCkj1S6WLBWbNMkhUjqPYIhxqXV0XjJ1Mpjy7WR4g0,5538
|
|
185
188
|
jaclang/runtimelib/importer.py,sha256=a6ORKrDfK-jKXopgyZHz188O-VI2NflFQo7VTUVvqOw,14592
|
|
186
189
|
jaclang/runtimelib/machine.py,sha256=8gyGLxURqfy0bLXMWyOwjIX-rH8Mz11b-jV6Ta5liTk,11566
|
|
187
|
-
jaclang/runtimelib/memory.py,sha256=
|
|
190
|
+
jaclang/runtimelib/memory.py,sha256=LrVTo6Cac0q-YG1wug-Fgc8O2Tue9zRHnxSulDw3ZQ4,5656
|
|
188
191
|
jaclang/runtimelib/test.py,sha256=HRCl3cf0uPTe58Kcx_sBUb6ow8J53rnmpFOhA7g9oAA,2851
|
|
189
|
-
jaclang/runtimelib/utils.py,sha256=
|
|
192
|
+
jaclang/runtimelib/utils.py,sha256=xcxO45lEwEBRrWeeAaRjqGZ4Ua-XMCeNv0lS6dHwGIk,8652
|
|
190
193
|
jaclang/settings.py,sha256=iLgVEA2fyARM5u-qMMMaEvNr88Qxej2NGZviw-R95kU,3681
|
|
191
194
|
jaclang/tests/fixtures/abc.jac,sha256=HZvLz6IEt3Snlgg8Czs-N4emLjg4fT3IbTo95d3Gdww,1747
|
|
192
195
|
jaclang/tests/fixtures/access_checker.jac,sha256=UVoY7sYW-R0ms2HDA4HXQ5xJNiW0vEbY2T5CCY1avus,281
|
|
193
196
|
jaclang/tests/fixtures/access_modifier.jac,sha256=NJHXbu_N_cWpTkjJnwcHzWkEk2kroaQ8aaalVxPXAW8,2587
|
|
194
197
|
jaclang/tests/fixtures/arch_create_util.jac,sha256=3pRe9JyCGO_8Z7XYnSKPehyOAAPf6747fHvgrMz6wQU,133
|
|
195
198
|
jaclang/tests/fixtures/arch_rel_import_creation.jac,sha256=B9VlwYayHYBUsAKpiapPgv93apMXiWcILJ13hXyAOCs,624
|
|
199
|
+
jaclang/tests/fixtures/architype_def_bug.jac,sha256=Z5GsP0vLMlrZf42uCkRh27eBfkB3-sln0KRpkmnOO40,265
|
|
196
200
|
jaclang/tests/fixtures/arithmetic_bug.jac,sha256=iiO3ZwTi7R1U6-flV4tGbxDHXsw8GnaLEzVNGTPdMUA,135
|
|
197
201
|
jaclang/tests/fixtures/assign_compr.jac,sha256=rnoujdtpjNbem4IdtBfxPahSUXl-gxNv4JFNEuUs5iM,286
|
|
198
202
|
jaclang/tests/fixtures/assign_compr_dup.jac,sha256=rnoujdtpjNbem4IdtBfxPahSUXl-gxNv4JFNEuUs5iM,286
|
|
@@ -209,6 +213,7 @@ jaclang/tests/fixtures/circle_pysolo.py,sha256=TAJTCOjrUl80oDke5wl6ZyBJQsy37Hu6g
|
|
|
209
213
|
jaclang/tests/fixtures/cls_method.jac,sha256=FXvQzQpa00yvesEvnuZ9q0lA-dtGDeFR4sWLKZ4NJSc,737
|
|
210
214
|
jaclang/tests/fixtures/create_dynamic_architype.jac,sha256=DTm761q0q6CRwduH3xyeCRs-epuPgZTRysWG_3fCxS8,846
|
|
211
215
|
jaclang/tests/fixtures/dblhello.jac,sha256=2CKdYZj35AXzvA2SCBHhgvG5f0bnlpLdQ36eqKCmI-M,69
|
|
216
|
+
jaclang/tests/fixtures/decl_defn_param_name.jac,sha256=rZnJhg-2z9W5PCsid9_FXW31376jgVpkvsAO6pBqTe8,383
|
|
212
217
|
jaclang/tests/fixtures/deep/deeper/deep_outer_import.jac,sha256=omdlOBM0cuUAHhmxYC02OcpXNowiA5wrIZOs7jQFHgE,233
|
|
213
218
|
jaclang/tests/fixtures/deep/deeper/deep_outer_import2.jac,sha256=YlAclVAukzVeCNbXZU6iTl8Rj1uXpUJ1WR7Ei2vhbqc,252
|
|
214
219
|
jaclang/tests/fixtures/deep/deeper/snd_lev.jac,sha256=SRp6Ic-MAgjcbYc090TwiFYsoVoJB4sLTA-Y5JPMpp8,82
|
|
@@ -262,6 +267,7 @@ jaclang/tests/fixtures/match_multi_ex.jac,sha256=05XB0B0yMWpA84pCvAnKnpXObpE5fcU
|
|
|
262
267
|
jaclang/tests/fixtures/maxfail_run_test.jac,sha256=UMoJSwrmNL7mCI65P8XTKrsYgi7mFvwLS3Dd24BmR6k,160
|
|
263
268
|
jaclang/tests/fixtures/mtest.impl.jac,sha256=wYsT4feH2JgxxgN217dgbDWooSmD8HBSlzUwJ4jAa8g,76
|
|
264
269
|
jaclang/tests/fixtures/mtest.jac,sha256=i7aQpJuUw4YMXgJOvGn_lRx-TruJdqBClioPKGUd4mw,67
|
|
270
|
+
jaclang/tests/fixtures/multi_dim_array_split.jac,sha256=8M4wb-YLSvK5v-M3SBZ4RcNwfdO9hc--nM7TeoZC6mM,338
|
|
265
271
|
jaclang/tests/fixtures/needs_import.jac,sha256=5zuIVuhgFbVAd7Hx2CDoTkjw39fp1UWC4Hitb_n-JKU,319
|
|
266
272
|
jaclang/tests/fixtures/needs_import_1.jac,sha256=m8marIqHPo-waC5PIYeLq38N2QzRUJBJe1oUQADeiNY,104
|
|
267
273
|
jaclang/tests/fixtures/needs_import_2.jac,sha256=RC4aok5TCbxInmTp8OmArCt4afawPP9ZdhAzkW5WJCc,104
|
|
@@ -300,8 +306,8 @@ jaclang/tests/fixtures/with_context.jac,sha256=cDA_4YWe5UVmQRgcpktzkZ_zsswQpV_T2
|
|
|
300
306
|
jaclang/tests/foo/__init__.jac,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
301
307
|
jaclang/tests/main.jac,sha256=UJ4dASLCMA3wW78Rq3AHcq5GfXVY5QBm2S16OCrR1hQ,13
|
|
302
308
|
jaclang/tests/test_bugs.py,sha256=tBPsIlSPqZDIz4QaScNRT-WdGIdJ0uU-aRBWq1XUZ6o,555
|
|
303
|
-
jaclang/tests/test_cli.py,sha256=
|
|
304
|
-
jaclang/tests/test_language.py,sha256=
|
|
309
|
+
jaclang/tests/test_cli.py,sha256=NeaAND5r5040L_WeENQmRZSahuUZBthZV0D2gWkTNLk,16525
|
|
310
|
+
jaclang/tests/test_language.py,sha256=arJ-Ay8Ebnqv498B4tegjk_j9gv_dCQzUOqKxqbKuPM,50396
|
|
305
311
|
jaclang/tests/test_man_code.py,sha256=ZdNarlZVfT_-8Jv3FjLplHw76tsvkCuISyfX3M4qxPg,5027
|
|
306
312
|
jaclang/tests/test_reference.py,sha256=FISQpZbB8cmRoAeJOFfXUy13WVxykZjpkPSb1OTotfI,3340
|
|
307
313
|
jaclang/tests/test_settings.py,sha256=TIX5uiu8H9IpZN2__uFiclcdCpBpPpcAwtlEHyFC4kk,1999
|
|
@@ -1535,7 +1541,7 @@ jaclang/vendor/typing_extensions-4.12.2.dist-info/METADATA,sha256=BeUQIa8cnYbrjW
|
|
|
1535
1541
|
jaclang/vendor/typing_extensions-4.12.2.dist-info/RECORD,sha256=XS4fBVrPI7kaNZ56Ggl2RGa76jySWLqTzcrUpZIQTVM,418
|
|
1536
1542
|
jaclang/vendor/typing_extensions-4.12.2.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
|
1537
1543
|
jaclang/vendor/typing_extensions.py,sha256=gwekpyG9DVG3lxWKX4ni8u7nk3We5slG98mA9F3DJQw,134451
|
|
1538
|
-
jaclang-0.7.
|
|
1539
|
-
jaclang-0.7.
|
|
1540
|
-
jaclang-0.7.
|
|
1541
|
-
jaclang-0.7.
|
|
1544
|
+
jaclang-0.7.27.dist-info/METADATA,sha256=cV-TTH-3xthCP6EsxBV_KuxpqbGGAsM145QLg6wqlKs,4965
|
|
1545
|
+
jaclang-0.7.27.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
|
1546
|
+
jaclang-0.7.27.dist-info/entry_points.txt,sha256=8sMi4Tvi9f8tQDN2QAXsSA2icO27zQ4GgEdph6bNEZM,49
|
|
1547
|
+
jaclang-0.7.27.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|