jaclang 0.0.6__py3-none-any.whl → 0.0.8__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 (82) hide show
  1. jaclang/__init__.py +2 -1
  2. jaclang/cli/__jac_gen__/__init__.py +0 -0
  3. jaclang/cli/__jac_gen__/cli.py +175 -0
  4. jaclang/cli/__jac_gen__/cmds.py +132 -0
  5. jaclang/cli/cmds.jac +3 -0
  6. jaclang/cli/impl/__jac_gen__/__init__.py +0 -0
  7. jaclang/cli/impl/__jac_gen__/cli_impl.py +16 -0
  8. jaclang/cli/impl/__jac_gen__/cmds_impl.py +26 -0
  9. jaclang/cli/impl/cmds_impl.jac +17 -3
  10. jaclang/core/__jac_gen__/__init__.py +0 -0
  11. jaclang/core/__jac_gen__/primitives.py +567 -0
  12. jaclang/core/impl/__jac_gen__/__init__.py +0 -0
  13. jaclang/core/impl/__jac_gen__/arch_impl.py +24 -0
  14. jaclang/core/impl/__jac_gen__/element_impl.py +26 -0
  15. jaclang/core/impl/__jac_gen__/exec_ctx_impl.py +12 -0
  16. jaclang/core/impl/__jac_gen__/memory_impl.py +14 -0
  17. jaclang/core/impl/element_impl.jac +2 -2
  18. jaclang/core/primitives.jac +1 -0
  19. jaclang/jac/absyntree.py +65 -42
  20. jaclang/jac/constant.py +4 -0
  21. jaclang/jac/importer.py +18 -60
  22. jaclang/jac/langserve.py +26 -0
  23. jaclang/jac/lexer.py +9 -1
  24. jaclang/jac/parser.py +135 -123
  25. jaclang/jac/passes/blue/ast_build_pass.py +410 -353
  26. jaclang/jac/passes/blue/blue_pygen_pass.py +15 -0
  27. jaclang/jac/passes/blue/decl_def_match_pass.py +33 -21
  28. jaclang/jac/passes/blue/import_pass.py +1 -1
  29. jaclang/jac/passes/blue/pyout_pass.py +47 -12
  30. jaclang/jac/passes/blue/sym_tab_build_pass.py +38 -127
  31. jaclang/jac/passes/blue/tests/test_ast_build_pass.py +2 -2
  32. jaclang/jac/passes/blue/tests/test_blue_pygen_pass.py +9 -30
  33. jaclang/jac/passes/blue/tests/test_decl_def_match_pass.py +13 -13
  34. jaclang/jac/passes/blue/tests/test_sym_tab_build_pass.py +6 -4
  35. jaclang/jac/passes/ir_pass.py +1 -1
  36. jaclang/jac/passes/purple/__jac_gen__/__init__.py +0 -0
  37. jaclang/jac/passes/purple/__jac_gen__/analyze_pass.py +37 -0
  38. jaclang/jac/passes/purple/__jac_gen__/purple_pygen_pass.py +305 -0
  39. jaclang/jac/passes/purple/impl/__jac_gen__/__init__.py +0 -0
  40. jaclang/jac/passes/purple/impl/__jac_gen__/purple_pygen_pass_impl.py +23 -0
  41. jaclang/jac/symtable.py +12 -4
  42. jaclang/jac/tests/fixtures/__jac_gen__/__init__.py +0 -0
  43. jaclang/jac/tests/fixtures/__jac_gen__/hello_world.py +16 -0
  44. jaclang/jac/tests/fixtures/fam.jac +7 -8
  45. jaclang/jac/transform.py +4 -3
  46. jaclang/jac/transpiler.py +13 -9
  47. jaclang/utils/fstring_parser.py +2 -2
  48. jaclang/utils/helpers.py +41 -0
  49. jaclang/utils/test.py +30 -0
  50. jaclang/vendor/__init__.py +1 -0
  51. jaclang/vendor/pygls/__init__.py +25 -0
  52. jaclang/vendor/pygls/capabilities.py +502 -0
  53. jaclang/vendor/pygls/client.py +176 -0
  54. jaclang/vendor/pygls/constants.py +26 -0
  55. jaclang/vendor/pygls/exceptions.py +220 -0
  56. jaclang/vendor/pygls/feature_manager.py +241 -0
  57. jaclang/vendor/pygls/lsp/__init__.py +139 -0
  58. jaclang/vendor/pygls/lsp/client.py +2224 -0
  59. jaclang/vendor/pygls/lsprotocol/__init__.py +2 -0
  60. jaclang/vendor/pygls/lsprotocol/_hooks.py +1233 -0
  61. jaclang/vendor/pygls/lsprotocol/converters.py +17 -0
  62. jaclang/vendor/pygls/lsprotocol/types.py +12820 -0
  63. jaclang/vendor/pygls/lsprotocol/validators.py +47 -0
  64. jaclang/vendor/pygls/progress.py +79 -0
  65. jaclang/vendor/pygls/protocol.py +1184 -0
  66. jaclang/vendor/pygls/server.py +620 -0
  67. jaclang/vendor/pygls/uris.py +184 -0
  68. jaclang/vendor/pygls/workspace/__init__.py +81 -0
  69. jaclang/vendor/pygls/workspace/position.py +204 -0
  70. jaclang/vendor/pygls/workspace/text_document.py +234 -0
  71. jaclang/vendor/pygls/workspace/workspace.py +311 -0
  72. {jaclang-0.0.6.dist-info → jaclang-0.0.8.dist-info}/METADATA +1 -1
  73. jaclang-0.0.8.dist-info/RECORD +118 -0
  74. jaclang/core/jaclang.jac +0 -62
  75. jaclang-0.0.6.dist-info/RECORD +0 -76
  76. /jaclang/{utils → vendor}/sly/__init__.py +0 -0
  77. /jaclang/{utils → vendor}/sly/docparse.py +0 -0
  78. /jaclang/{utils → vendor}/sly/lex.py +0 -0
  79. /jaclang/{utils → vendor}/sly/yacc.py +0 -0
  80. {jaclang-0.0.6.dist-info → jaclang-0.0.8.dist-info}/WHEEL +0 -0
  81. {jaclang-0.0.6.dist-info → jaclang-0.0.8.dist-info}/entry_points.txt +0 -0
  82. {jaclang-0.0.6.dist-info → jaclang-0.0.8.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,311 @@
1
+ ############################################################################
2
+ # Original work Copyright 2017 Palantir Technologies, Inc. #
3
+ # Original work licensed under the MIT License. #
4
+ # See ThirdPartyNotices.txt in the project root for license information. #
5
+ # All modifications Copyright (c) Open Law Library. All rights reserved. #
6
+ # #
7
+ # Licensed under the Apache License, Version 2.0 (the "License") #
8
+ # you may not use this file except in compliance with the License. #
9
+ # You may obtain a copy of the License at #
10
+ # #
11
+ # http: // www.apache.org/licenses/LICENSE-2.0 #
12
+ # #
13
+ # Unless required by applicable law or agreed to in writing, software #
14
+ # distributed under the License is distributed on an "AS IS" BASIS, #
15
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
16
+ # See the License for the specific language governing permissions and #
17
+ # limitations under the License. #
18
+ ############################################################################
19
+ import copy
20
+ import logging
21
+ import os
22
+ import warnings
23
+ from typing import Dict, List, Optional, Union
24
+
25
+ from jaclang.vendor.pygls.lsprotocol import types
26
+ from jaclang.vendor.pygls.lsprotocol.types import (
27
+ PositionEncodingKind,
28
+ TextDocumentSyncKind,
29
+ WorkspaceFolder,
30
+ )
31
+ from jaclang.vendor.pygls.uris import to_fs_path, uri_scheme
32
+ from jaclang.vendor.pygls.workspace.text_document import TextDocument
33
+
34
+ logger = logging.getLogger(__name__)
35
+
36
+
37
+ class Workspace(object):
38
+ def __init__(
39
+ self,
40
+ root_uri: Optional[str],
41
+ sync_kind: TextDocumentSyncKind = TextDocumentSyncKind.Incremental,
42
+ workspace_folders: Optional[List[WorkspaceFolder]] = None,
43
+ position_encoding: Optional[
44
+ Union[PositionEncodingKind, str]
45
+ ] = PositionEncodingKind.Utf16,
46
+ ):
47
+ self._root_uri = root_uri
48
+ if self._root_uri is not None:
49
+ self._root_uri_scheme = uri_scheme(self._root_uri)
50
+ root_path = to_fs_path(self._root_uri)
51
+ if root_path is None:
52
+ raise Exception("Couldn't get `root_path` from `root_uri`")
53
+ self._root_path = root_path
54
+ self._sync_kind = sync_kind
55
+ self._text_documents: Dict[str, TextDocument] = {}
56
+ self._notebook_documents: Dict[str, types.NotebookDocument] = {}
57
+
58
+ # Used to lookup notebooks which contain a given cell.
59
+ self._cell_in_notebook: Dict[str, str] = {}
60
+ self._folders: Dict[str, WorkspaceFolder] = {}
61
+ self._docs: Dict[str, TextDocument] = {}
62
+ self._position_encoding = position_encoding
63
+
64
+ if workspace_folders is not None:
65
+ for folder in workspace_folders:
66
+ self.add_folder(folder)
67
+
68
+ def _create_text_document(
69
+ self,
70
+ doc_uri: str,
71
+ source: Optional[str] = None,
72
+ version: Optional[int] = None,
73
+ language_id: Optional[str] = None,
74
+ ) -> TextDocument:
75
+ return TextDocument(
76
+ doc_uri,
77
+ source=source,
78
+ version=version,
79
+ language_id=language_id,
80
+ sync_kind=self._sync_kind,
81
+ position_encoding=self._position_encoding,
82
+ )
83
+
84
+ def add_folder(self, folder: WorkspaceFolder):
85
+ self._folders[folder.uri] = folder
86
+
87
+ @property
88
+ def documents(self):
89
+ warnings.warn(
90
+ "'workspace.documents' has been deprecated, use "
91
+ "'workspace.text_documents' instead",
92
+ DeprecationWarning,
93
+ stacklevel=2,
94
+ )
95
+ return self.text_documents
96
+
97
+ @property
98
+ def notebook_documents(self):
99
+ return self._notebook_documents
100
+
101
+ @property
102
+ def text_documents(self):
103
+ return self._text_documents
104
+
105
+ @property
106
+ def folders(self):
107
+ return self._folders
108
+
109
+ def get_notebook_document(
110
+ self, *, notebook_uri: Optional[str] = None, cell_uri: Optional[str] = None
111
+ ) -> Optional[types.NotebookDocument]:
112
+ """Return the notebook corresponding with the given uri.
113
+
114
+ If both ``notebook_uri`` and ``cell_uri`` are given, ``notebook_uri`` takes
115
+ precedence.
116
+
117
+ Parameters
118
+ ----------
119
+ notebook_uri
120
+ If given, return the notebook document with the given uri.
121
+
122
+ cell_uri
123
+ If given, return the notebook document which contains a cell with the
124
+ given uri
125
+
126
+ Returns
127
+ -------
128
+ Optional[NotebookDocument]
129
+ The requested notebook document if found, ``None`` otherwise.
130
+ """
131
+ if notebook_uri is not None:
132
+ return self._notebook_documents.get(notebook_uri)
133
+
134
+ if cell_uri is not None:
135
+ notebook_uri = self._cell_in_notebook.get(cell_uri)
136
+ if notebook_uri is None:
137
+ return None
138
+
139
+ return self._notebook_documents.get(notebook_uri)
140
+
141
+ return None
142
+
143
+ def get_text_document(self, doc_uri: str) -> TextDocument:
144
+ """
145
+ Return a managed document if-present,
146
+ else create one pointing at disk.
147
+
148
+ See https://github.com/Microsoft/language-server-protocol/issues/177
149
+ """
150
+ return self._text_documents.get(doc_uri) or self._create_text_document(doc_uri)
151
+
152
+ def is_local(self):
153
+ return (
154
+ self._root_uri_scheme == "" or self._root_uri_scheme == "file"
155
+ ) and os.path.exists(self._root_path)
156
+
157
+ def put_notebook_document(self, params: types.DidOpenNotebookDocumentParams):
158
+ notebook = params.notebook_document
159
+
160
+ # Create a fresh instance to ensure our copy cannot be accidentally modified.
161
+ self._notebook_documents[notebook.uri] = copy.deepcopy(notebook)
162
+
163
+ for cell_document in params.cell_text_documents:
164
+ self.put_text_document(cell_document, notebook_uri=notebook.uri)
165
+
166
+ def put_text_document(
167
+ self,
168
+ text_document: types.TextDocumentItem,
169
+ notebook_uri: Optional[str] = None,
170
+ ):
171
+ """Add a text document to the workspace.
172
+
173
+ Parameters
174
+ ----------
175
+ text_document
176
+ The text document to add
177
+
178
+ notebook_uri
179
+ If set, indicates that this text document represents a cell in a notebook
180
+ document
181
+ """
182
+ doc_uri = text_document.uri
183
+
184
+ self._text_documents[doc_uri] = self._create_text_document(
185
+ doc_uri,
186
+ source=text_document.text,
187
+ version=text_document.version,
188
+ language_id=text_document.language_id,
189
+ )
190
+
191
+ if notebook_uri:
192
+ self._cell_in_notebook[doc_uri] = notebook_uri
193
+
194
+ def remove_notebook_document(self, params: types.DidCloseNotebookDocumentParams):
195
+ notebook_uri = params.notebook_document.uri
196
+ self._notebook_documents.pop(notebook_uri, None)
197
+
198
+ for cell_document in params.cell_text_documents:
199
+ self.remove_text_document(cell_document.uri)
200
+
201
+ def remove_text_document(self, doc_uri: str):
202
+ self._text_documents.pop(doc_uri, None)
203
+ self._cell_in_notebook.pop(doc_uri, None)
204
+
205
+ def remove_folder(self, folder_uri: str):
206
+ self._folders.pop(folder_uri, None)
207
+ try:
208
+ del self._folders[folder_uri]
209
+ except KeyError:
210
+ pass
211
+
212
+ @property
213
+ def root_path(self):
214
+ return self._root_path
215
+
216
+ @property
217
+ def root_uri(self):
218
+ return self._root_uri
219
+
220
+ def update_notebook_document(self, params: types.DidChangeNotebookDocumentParams):
221
+ uri = params.notebook_document.uri
222
+ notebook = self._notebook_documents[uri]
223
+ notebook.version = params.notebook_document.version
224
+
225
+ if params.change.metadata:
226
+ notebook.metadata = params.change.metadata
227
+
228
+ cell_changes = params.change.cells
229
+ if cell_changes is None:
230
+ return
231
+
232
+ # Process changes to any cell metadata.
233
+ nb_cells = {cell.document: cell for cell in notebook.cells}
234
+ for new_data in cell_changes.data or []:
235
+ nb_cell = nb_cells.get(new_data.document)
236
+ if nb_cell is None:
237
+ logger.warning(
238
+ "Ignoring metadata for '%s': not in notebook.", new_data.document
239
+ )
240
+ continue
241
+
242
+ nb_cell.kind = new_data.kind
243
+ nb_cell.metadata = new_data.metadata
244
+ nb_cell.execution_summary = new_data.execution_summary
245
+
246
+ # Process changes to the notebook's structure
247
+ structure = cell_changes.structure
248
+ if structure:
249
+ cells = notebook.cells
250
+ new_cells = structure.array.cells or []
251
+
252
+ # Re-order the cells
253
+ before = cells[: structure.array.start]
254
+ after = cells[(structure.array.start + structure.array.delete_count) :]
255
+ notebook.cells = [*before, *new_cells, *after]
256
+
257
+ for new_cell in structure.did_open or []:
258
+ self.put_text_document(new_cell, notebook_uri=uri)
259
+
260
+ for removed_cell in structure.did_close or []:
261
+ self.remove_text_document(removed_cell.uri)
262
+
263
+ # Process changes to the text content of existing cells.
264
+ for text in cell_changes.text_content or []:
265
+ for change in text.changes:
266
+ self.update_text_document(text.document, change)
267
+
268
+ def update_text_document(
269
+ self,
270
+ text_doc: types.VersionedTextDocumentIdentifier,
271
+ change: types.TextDocumentContentChangeEvent,
272
+ ):
273
+ doc_uri = text_doc.uri
274
+ self._text_documents[doc_uri].apply_change(change)
275
+ self._text_documents[doc_uri].version = text_doc.version
276
+
277
+ def get_document(self, *args, **kwargs):
278
+ warnings.warn(
279
+ "'workspace.get_document' has been deprecated, use "
280
+ "'workspace.get_text_document' instead",
281
+ DeprecationWarning,
282
+ stacklevel=2,
283
+ )
284
+ return self.get_text_document(*args, **kwargs)
285
+
286
+ def remove_document(self, *args, **kwargs):
287
+ warnings.warn(
288
+ "'workspace.remove_document' has been deprecated, use "
289
+ "'workspace.remove_text_document' instead",
290
+ DeprecationWarning,
291
+ stacklevel=2,
292
+ )
293
+ return self.remove_text_document(*args, **kwargs)
294
+
295
+ def put_document(self, *args, **kwargs):
296
+ warnings.warn(
297
+ "'workspace.put_document' has been deprecated, use "
298
+ "'workspace.put_text_document' instead",
299
+ DeprecationWarning,
300
+ stacklevel=2,
301
+ )
302
+ return self.put_text_document(*args, **kwargs)
303
+
304
+ def update_document(self, *args, **kwargs):
305
+ warnings.warn(
306
+ "'workspace.update_document' has been deprecated, use "
307
+ "'workspace.update_text_document' instead",
308
+ DeprecationWarning,
309
+ stacklevel=2,
310
+ )
311
+ return self.update_text_document(*args, **kwargs)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: jaclang
3
- Version: 0.0.6
3
+ Version: 0.0.8
4
4
  Home-page: https://github.com/Jaseci-Labs/jaclang
5
5
  Author: Jason Mars
6
6
  Author-email: jason@jaseci.org
@@ -0,0 +1,118 @@
1
+ jaclang/__init__.py,sha256=hHNAhA8Wkv1is6PThsxehCzVdDXtVfcw6DCnOgpzRM4,227
2
+ jaclang/cli/__init__.py,sha256=RSosEgm2M0H8QS-H1i-qwVrnHcMClY2TGQlGWPRlXYE,175
3
+ jaclang/cli/cli.jac,sha256=iXYL81omJovakmxKtmK2aFmGFYCFxe_UhsxmkDkGolQ,1022
4
+ jaclang/cli/cmds.jac,sha256=N0028kyIi7Yk7Zxln_8SGYDhRzbPHAX_OiMKQAMYn1g,535
5
+ jaclang/cli/__jac_gen__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
+ jaclang/cli/__jac_gen__/cli.py,sha256=UfsCHmH6xQQs9Ef4uvncMPALKuTvO8dfg-dcCeMEL8Y,8172
7
+ jaclang/cli/__jac_gen__/cmds.py,sha256=wnsWnAPL9RjEFkpVkObMNWlc6WIRsEst0vmnZRXtGGE,6056
8
+ jaclang/cli/impl/__init__.py,sha256=BTgKqQqL0RDRnEdtLK_MhdR-rLSDnw39xLabPKUotqU,39
9
+ jaclang/cli/impl/cli_impl.jac,sha256=C15SWvyhk3hTlzm3pUeW_Ec-CQtyJqIQv_7GRBvHWPc,2893
10
+ jaclang/cli/impl/cmds_impl.jac,sha256=S5sZLD8wuwECIZk7uHn3B-3gq7yyJPPDv4vaLGt3eos,2453
11
+ jaclang/cli/impl/__jac_gen__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
+ jaclang/cli/impl/__jac_gen__/cli_impl.py,sha256=mgItR00YLaK9xBlK2TxBuVY5FHKPhpCbi_ttAbwQM6o,234
13
+ jaclang/cli/impl/__jac_gen__/cmds_impl.py,sha256=N5qjmHUa8Dpi5IgzCh2RP94FFdJfdR_rXLmDSBEGxtY,698
14
+ jaclang/core/__init__.py,sha256=ryqfgdrsv9w9IhhLtrdwGw_V2gkcQ33QCDzrVgC2S6U,249
15
+ jaclang/core/primitives.jac,sha256=jki4papoFkhzSCIpxqmZkRgcbiiiP-UM_vc0DJMrN7w,3007
16
+ jaclang/core/__jac_gen__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
+ jaclang/core/__jac_gen__/primitives.py,sha256=JXIOI8rRJxO9ooElXGSLME-MmOxnlrTBsx3jJD40zoY,30057
18
+ jaclang/core/impl/__init__.py,sha256=BTgKqQqL0RDRnEdtLK_MhdR-rLSDnw39xLabPKUotqU,39
19
+ jaclang/core/impl/arch_impl.jac,sha256=L2drGTP4vTEUJUUAsQmzStW0p2w27jbFeRlYIeBEhWM,3869
20
+ jaclang/core/impl/element_impl.jac,sha256=MAPkHiufDKH74eA45L-3efQ-33Y0j0n_Y2owt3FjNdE,3204
21
+ jaclang/core/impl/exec_ctx_impl.jac,sha256=7DcH6cl9jnBOY7olSaLDzVniRRu8U6SWcPhMk7H1rH8,303
22
+ jaclang/core/impl/memory_impl.jac,sha256=R27OWfEajtZ05RxYxR3hjiLYK7SxS9IQyZ9Q6U__L8g,1364
23
+ jaclang/core/impl/__jac_gen__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
+ jaclang/core/impl/__jac_gen__/arch_impl.py,sha256=2TldWkmbkN8aSgqWh6UT6Z9roZeqnU73_qkRKtkkmYg,626
25
+ jaclang/core/impl/__jac_gen__/element_impl.py,sha256=RJZOC9FEWex4WV601XzocwlU2bpSIeAwuHECpaotBKw,530
26
+ jaclang/core/impl/__jac_gen__/exec_ctx_impl.py,sha256=swyAaHAsNKX_9GyiFgB9hc-sohb_-t3GYqOlTXlK2bc,391
27
+ jaclang/core/impl/__jac_gen__/memory_impl.py,sha256=KJbXybsm-It7Y9BDdYe6w3laeROCSHrMo3l-hV_Nz_Y,259
28
+ jaclang/jac/__init__.py,sha256=OAIBG-7iYvbebyiu0pJ-lFsua8mD6meBkaTylb8XS64,26
29
+ jaclang/jac/absyntree.py,sha256=2nNaUbFJVwMGo2dh8PI5SgGEC1_iBFjthqAAdE_YXyE,58669
30
+ jaclang/jac/constant.py,sha256=5c04T0JX6hYQ3GX1GmKPvZ_YROwtz_gXDTqtLkzO2bY,5303
31
+ jaclang/jac/importer.py,sha256=GSrgfB4T2rqwvMNl9FPrItXz0GZZ7N1G1x9nJNFgkXM,3607
32
+ jaclang/jac/langserve.py,sha256=qKtt2H2aEr27q_0UPzmcf6vyh7vO0IeJ2TCXflUlg7w,815
33
+ jaclang/jac/lexer.py,sha256=rSODgapTXLN8rTvClgr-Zf1s0LnHhj4SBMPMta9hbFM,11069
34
+ jaclang/jac/parser.py,sha256=yQYM3zf7HisQOvvUhIkbbsMHfwho_T55vjjxZC4KW3c,40895
35
+ jaclang/jac/symtable.py,sha256=EaHavknuxbYooEdHo4NboRkFjKsZoCm0X2Gj3_UHybM,4609
36
+ jaclang/jac/transform.py,sha256=UiYbGWIX6afqzIWnpJXURF_euZKfxSXqREgzEqFCG5o,3563
37
+ jaclang/jac/transpiler.py,sha256=Lhk1ldZzmGhEIe6Zps0_mUcUq_3__DfPQk4p1y7GLdg,2443
38
+ jaclang/jac/passes/__init__.py,sha256=0Tw0d130ZjzA05jVcny9cf5NfLjlaM70PKqFnY4zqn4,69
39
+ jaclang/jac/passes/ir_pass.py,sha256=S0JPHTBN6OR9xcnYbmetWQa13SLN-gWWxFd8A8v6Su8,5553
40
+ jaclang/jac/passes/blue/__init__.py,sha256=zCOjuxAvpHnFtoN_2ky9Vexbasu0QvTh2MUZ-6NfJBk,831
41
+ jaclang/jac/passes/blue/ast_build_pass.py,sha256=Ov8AM7YhLTtwZB6c-iQnkonBDNz3D5tckeIhvLd4ius,101645
42
+ jaclang/jac/passes/blue/blue_pygen_pass.py,sha256=bXYZzEwDMF7oDUlElWUadkmbyPinrbZumTuRPNaAi2w,44976
43
+ jaclang/jac/passes/blue/decl_def_match_pass.py,sha256=ajL4lisiiSzLMqgKEW6WjnFYJAvpYJMcKlqAXab9zZE,2591
44
+ jaclang/jac/passes/blue/import_pass.py,sha256=yWVrIlrSP70IhSO5fWzwQQoaKoFUzobeVVpdJr4s7Cs,2722
45
+ jaclang/jac/passes/blue/pyout_pass.py,sha256=cSPq3iPzCGoMVMkU4ZMA6yCXykmugtVaD6JmSQ9XhdQ,2784
46
+ jaclang/jac/passes/blue/semantic_check_pass.py,sha256=bxyALEl2TSm3S3jF2pfOzyI8MjGiKHx-J29v4Uwza8o,1454
47
+ jaclang/jac/passes/blue/sub_node_tab_pass.py,sha256=FGUJ5AaddsY0pLRrFr66JEaAeD5GCQRKGJ8I-YDVwYs,964
48
+ jaclang/jac/passes/blue/sym_tab_build_pass.py,sha256=dYNgVnVVh3dpYrgM6aHVH0Xn85SN3TfnCYtjygdSFTE,28642
49
+ jaclang/jac/passes/blue/tests/__init__.py,sha256=UBAATLUEH3yuBN4LYKnXXV79kokRc4XB-rX12qfu0ds,28
50
+ jaclang/jac/passes/blue/tests/test_ast_build_pass.py,sha256=vRGN2D7NGgQibmnDen-Muzh5P-c4te-81l4gH42WUDE,2351
51
+ jaclang/jac/passes/blue/tests/test_blue_pygen_pass.py,sha256=ua8e_X44R04j2GlAquP9XYSbvSG-UFoVELKz0h3xoPo,3707
52
+ jaclang/jac/passes/blue/tests/test_decl_def_match_pass.py,sha256=0enG-C6ZB5gm09LI0Os-0NbdlExjCNNxGjix4U1ypcQ,1929
53
+ jaclang/jac/passes/blue/tests/test_import_pass.py,sha256=5__oTikC1BAfQt_iyqYwQEY2ARI-pTEa3Or-qY9kxjk,576
54
+ jaclang/jac/passes/blue/tests/test_sub_node_pass.py,sha256=V4ABc2Na4YoQ6--TP3nH1gSRK0KZrsQp6H_iybDWryc,842
55
+ jaclang/jac/passes/blue/tests/test_sym_tab_build_pass.py,sha256=omZBAfcFdADGmQzELJFHNekNBeeqr3q4hwcdz-gLPwo,710
56
+ jaclang/jac/passes/purple/__init__.py,sha256=Sh2SmmpsVtn6Kzqqdvt-wYnNtOmm4Bm0IwKNfBb6gcI,471
57
+ jaclang/jac/passes/purple/analyze_pass.jac,sha256=GcvLNEYm6rAicPqwxxBcTMOy5uyHjT3kW1385LF_FzU,928
58
+ jaclang/jac/passes/purple/purple_pygen_pass.jac,sha256=KRyPSjD4QwdSQ1-FsnrmJl6XxGqivhNxAjCiUwBjkFc,1339
59
+ jaclang/jac/passes/purple/__jac_gen__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
+ jaclang/jac/passes/purple/__jac_gen__/analyze_pass.py,sha256=OAWjPeYMrJ9rNPuMz9-aGY8-xfzQecVHxA59VGKaCzg,1798
61
+ jaclang/jac/passes/purple/__jac_gen__/purple_pygen_pass.py,sha256=hcpbzNhgpAT1kyool47lOwhrQc8ufyPHM8HmjUnIjdc,17204
62
+ jaclang/jac/passes/purple/impl/__init__.py,sha256=BTgKqQqL0RDRnEdtLK_MhdR-rLSDnw39xLabPKUotqU,39
63
+ jaclang/jac/passes/purple/impl/purple_pygen_pass_impl.jac,sha256=1Oog1VmbndqG6I6AGGadmB0kvIZz7dK_RaIBh7Np3Dc,8291
64
+ jaclang/jac/passes/purple/impl/__jac_gen__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
65
+ jaclang/jac/passes/purple/impl/__jac_gen__/purple_pygen_pass_impl.py,sha256=9TGO9T7HnW_3AMi-KW07oi6ZLx8TK1V7Xc8bgnBA52U,362
66
+ jaclang/jac/tests/__init__.py,sha256=qiXa5UNRBanGOcplFKTT9a_9GEyiv7goq1OzuCjDCFE,27
67
+ jaclang/jac/tests/test_importer.py,sha256=mb5c6jb_1cQuW11nxwdJ8ezizuYn26GkIY4bnoY_LJQ,743
68
+ jaclang/jac/tests/test_lexer.py,sha256=-17tdYer5fornLcZh6vf-dy_wq51cpxbWVAIhQVd4OU,1982
69
+ jaclang/jac/tests/test_parser.py,sha256=gI35twfzqHdptJTfp7VnJ6NVxFc6J7J4TH02iVuso9E,2512
70
+ jaclang/jac/tests/fixtures/__init__.py,sha256=udQ0T6rajpW_nMiYKJNckqP8izZ-pH3P4PNTJEln2NU,36
71
+ jaclang/jac/tests/fixtures/activity.py,sha256=fSvxYDKufsPeQIrbuh031zHw_hdbRv5iK9mS7dD8E54,263
72
+ jaclang/jac/tests/fixtures/fam.jac,sha256=sxiTRlWzebfAdZZqFkw5a61VkAPkl1pCzN5-cIgP5wQ,1535
73
+ jaclang/jac/tests/fixtures/hello_world.jac,sha256=uT67nGzdYY7YT6Xj5-OHFAZPEHfIl4zGlfyNs7-zRBI,78
74
+ jaclang/jac/tests/fixtures/kwesc.jac,sha256=OXxVL_fwiFuvYO1YX1RHa2hpETSpb0QD1-gMYnMY6DA,103
75
+ jaclang/jac/tests/fixtures/lexer_fam.jac,sha256=J_bcFC2RnsBxvEsTUoOIgFowkpibbhpB7FSAMYuG9RM,1394
76
+ jaclang/jac/tests/fixtures/mod_doc_test.jac,sha256=p3n-JMJAerocPBA0p_MGf_F7KY-OosIqjHEqcjVrB30,31
77
+ jaclang/jac/tests/fixtures/stuff.jac,sha256=5gFmEO8iPGFoj3xeblcfMF2DA1d-ANJIMjdzlMxEnYU,85
78
+ jaclang/jac/tests/fixtures/__jac_gen__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
79
+ jaclang/jac/tests/fixtures/__jac_gen__/hello_world.py,sha256=wwsJ9fmxMNEYTm_pgJxf3j4MxL4uFGa3KSDPlFnfIak,724
80
+ jaclang/utils/__init__.py,sha256=86LQ_LDyWV-JFkYBpeVHpLaVxkqwFDP60XpWXOFZIQk,46
81
+ jaclang/utils/fstring_parser.py,sha256=TimlAwLdfiYKoUbAIpt3XnaE0i-3DoLbQVf9dbyLk5c,1847
82
+ jaclang/utils/helpers.py,sha256=eURUEoEFbW3ZtEu2fNo5J1GZBLBEp8aDp2Y2XBA0K0Y,3281
83
+ jaclang/utils/lang_tools.py,sha256=R3b9ayrbriBqrOj1w2rZd_1tAw7Ccs_SH0RU1Vi8Pd0,4476
84
+ jaclang/utils/log.py,sha256=copXpha4IB2NsffbhRD4GePA18_ePO39bVBPMBPqhkk,239
85
+ jaclang/utils/test.py,sha256=gyGBridCwqZ298MTjKit3cMq77qhuoLbiTzOYJLaPGg,5494
86
+ jaclang/utils/tests/__init__.py,sha256=8uwVqMsc6cxBAM1DuHLuNuTnzLXqOqM-WRa4ixOMF6w,23
87
+ jaclang/utils/tests/test_fstring_parser.py,sha256=8nZPKhGZA0JNRQ1jhQkXRsjGV6pBK-jKEEf2nFevYK8,1887
88
+ jaclang/vendor/__init__.py,sha256=pbflH5hBfDiKfTJEjIXId44Eof8CVmXQlZwFYDG6_4E,35
89
+ jaclang/vendor/pygls/__init__.py,sha256=rdTb3X-53tCjgNpS5dRsxv0ukMDjEly2pVEOPTnjx5k,1488
90
+ jaclang/vendor/pygls/capabilities.py,sha256=7aZUMTd2J0oRHUbeHhUeUVLBb93oAcdkQZQY4ZRPfFs,17658
91
+ jaclang/vendor/pygls/client.py,sha256=3EvTP439id8f1uzy1R-Zpt0EGG4OIjG_oH2pC2WyKlw,6337
92
+ jaclang/vendor/pygls/constants.py,sha256=0YsX4Egp9jVLuAu9v8T_ThrObrVKGP916-X-9bkmId8,1470
93
+ jaclang/vendor/pygls/exceptions.py,sha256=iAfWKNPO6uFEaPpMkf9rbnRe1I3sYT4DR3ze91o1Jh8,6370
94
+ jaclang/vendor/pygls/feature_manager.py,sha256=N403-0jqv5b4cYeatFPKNfL76c9FcRtdzocHQWVMJB8,8434
95
+ jaclang/vendor/pygls/progress.py,sha256=5xwlao6-UCSh9TK0ffK3w72wjDSvpSDqTutmabM2vEY,2825
96
+ jaclang/vendor/pygls/protocol.py,sha256=lLELIzpQ2zPK5kN7teYKsUObcVgxrzaLrfC4bv36jiU,41340
97
+ jaclang/vendor/pygls/server.py,sha256=F_CTFv0SbJ6WfPl8MZKow7BzQO-SGj4FZczoN6aQxjs,20881
98
+ jaclang/vendor/pygls/uris.py,sha256=n8MfRSlvj-diWq9CCXrycTBWBcaNgrqag15Sm1HLJoU,5779
99
+ jaclang/vendor/pygls/lsp/__init__.py,sha256=URAOdA_FXSE6-LxTfO_F3u5MdSb_R2zz-HkAOfglQC0,5265
100
+ jaclang/vendor/pygls/lsp/client.py,sha256=kc5rtO0rCzKb4wj4G0NqlbcRkxJe0DzrqzjmdXcLszQ,80284
101
+ jaclang/vendor/pygls/lsprotocol/__init__.py,sha256=zoT6Do2JtGHGb7pOeKpahg4ocXIsSpyowjhOrhUhx8g,94
102
+ jaclang/vendor/pygls/lsprotocol/_hooks.py,sha256=hJ1uS0djVixu8meiqD3Mo40CgZl7E3klVF-0ms1x1cE,41477
103
+ jaclang/vendor/pygls/lsprotocol/converters.py,sha256=404tQOVoZL31R9CBrDe6Gx9Nok5cRph3glKlnSx00fo,433
104
+ jaclang/vendor/pygls/lsprotocol/types.py,sha256=sytY5l8QZUzv0UdNVSgTuv_E1ZJMpx3gdSCEAubZUig,451052
105
+ jaclang/vendor/pygls/lsprotocol/validators.py,sha256=5UMUmWhk52_Ps66_KFydjNkMfLNUsPH3wmV0Buv645s,1420
106
+ jaclang/vendor/pygls/workspace/__init__.py,sha256=8tHFq8qiKsMFQQ8rX6kn8sDR3CC6IlW0Jqew0nsEHdc,2248
107
+ jaclang/vendor/pygls/workspace/position.py,sha256=gYZM3kXLEh31Z4S-v7zVIwgjRQ7g3ngxf53HGP_aUOs,7969
108
+ jaclang/vendor/pygls/workspace/text_document.py,sha256=28kKECI4_aJK2GgMVpLS2jkh1rdwdlvqhze0RVBv6SA,8969
109
+ jaclang/vendor/pygls/workspace/workspace.py,sha256=KHYK77yalWXNZs2aueSzUbwQbmhay4NGgP9cRbhXKDQ,11224
110
+ jaclang/vendor/sly/__init__.py,sha256=G1Y7oQ8BtApOGEYXGego223AMaq-8iQnVCn10sKmX8U,115
111
+ jaclang/vendor/sly/docparse.py,sha256=YfDcZCuL1-5AIymgPPXsghdZuD7qSSIpiTUeQSRCFH0,1957
112
+ jaclang/vendor/sly/lex.py,sha256=EyK1PDut3uF22Mc60Kcpa58ybfmV02p8L7ylz_1UVuY,16846
113
+ jaclang/vendor/sly/yacc.py,sha256=KKoDgnmAL6DRpRuatC3WpX2TTjvtcDA5SZ25uCudYvo,88197
114
+ jaclang-0.0.8.dist-info/METADATA,sha256=Oiq86lm3Aq9A7wc2aQpRfOk0uuFVh0UvNFyap7YdeWE,152
115
+ jaclang-0.0.8.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
116
+ jaclang-0.0.8.dist-info/entry_points.txt,sha256=xtRv4MQ7W9E_vTxR3JTCHmtDd9TRitKRuI9KOKdR7oM,50
117
+ jaclang-0.0.8.dist-info/top_level.txt,sha256=ZOAoLpE67ozkUJd-v3C59wBNXiteRD8IWPbsYB3M08g,8
118
+ jaclang-0.0.8.dist-info/RECORD,,
jaclang/core/jaclang.jac DELETED
@@ -1,62 +0,0 @@
1
- """Jac's Key Elemental Abstractions"""
2
-
3
- import:jac from primitives, Element, Object, Node, Edge, Walker;
4
-
5
-
6
- # object Element {
7
- # has _jinfo: ElementMetaData = ElementMetaData();
8
-
9
- # can _jac_make_public_ro;
10
- # can _jac_make_public_rw;
11
- # can _jac_make_private;
12
- # can _jac_is_public_ro -> bool;
13
- # can _jac_is_public_rw -> bool;
14
- # can _jac_is_private -> bool;
15
- # can _jac_is_readable(caller_id: UUID) -> bool;
16
- # can _jac_is_writable(caller_id: UUID) -> bool;
17
- # can _jac_give_access(caller_id: UUID, read_write: bool = False);
18
- # can _jac_revoke_access(caller_id: UUID);
19
- # }
20
-
21
- # object Object:Element {
22
- # static has _jac_ds_entry_funcs: list[dict]=[],
23
- # _jac_ds_exit_funcs: list[dict]=[];
24
-
25
- # static can _jac_on_entry(cls: type, triggers: list[type]);
26
- # static can _jac_on_exit(cls: type, triggers: list[type]);
27
- # }
28
-
29
- # object Node:Object {
30
- # has _jac_edges_: dict[EdgeDir, list[Edge]]
31
- # = {EdgeDir.IN: [], EdgeDir.OUT: []};
32
-
33
- # can __call__(walk: Walker);
34
- # can _jac_connect_node_(nd: Node, edg: Edge) -> Node;
35
- # can _jac_edges_to_nodes_(dir: EdgeDir) -> list[Node];
36
- # }
37
-
38
- # object Edge:Object {
39
- # has _jac_source_: Node?,
40
- # _jac_target_: Node?,
41
- # _jac_dir_: EdgeDir?;
42
-
43
- # can __call__(walk: Walker);
44
- # can _jac_apply_dir_(dir: EdgeDir) -> Edge;
45
- # can _jac_attach_(src: Node, trg: Node) -> Edge;
46
- # }
47
-
48
- # object Walker:Object {
49
- # has _jac_path_: list[Node] = [],
50
- # _jac_next_: list[Node] = [],
51
- # _jac_disengaged_: bool = False;
52
-
53
- # can __call__(nd: Node);
54
- # can _jac_visit_(nds: list[Node]|list[Edge]);
55
- # can _jac_disengage_;
56
- # }
57
-
58
- # object Master:Element {
59
- # has root_node: Node = Node();
60
- # }
61
-
62
- # can make_architype(base_class: type) -> type;
@@ -1,76 +0,0 @@
1
- jaclang/__init__.py,sha256=n8HR401oKxP7ckVZ1cPYl-HTaYszuKV5y0kSqARu3MQ,194
2
- jaclang/cli/__init__.py,sha256=RSosEgm2M0H8QS-H1i-qwVrnHcMClY2TGQlGWPRlXYE,175
3
- jaclang/cli/cli.jac,sha256=iXYL81omJovakmxKtmK2aFmGFYCFxe_UhsxmkDkGolQ,1022
4
- jaclang/cli/cmds.jac,sha256=Jm9GxRdGjWLg17HSdgn9IEjz3Gi0bUQ9n9hcn8eghMY,507
5
- jaclang/cli/impl/__init__.py,sha256=BTgKqQqL0RDRnEdtLK_MhdR-rLSDnw39xLabPKUotqU,39
6
- jaclang/cli/impl/cli_impl.jac,sha256=C15SWvyhk3hTlzm3pUeW_Ec-CQtyJqIQv_7GRBvHWPc,2893
7
- jaclang/cli/impl/cmds_impl.jac,sha256=7zEHEeUS_uzA1f-nXAQ_ErQ6vYs9nAaChgPP9v42HJE,2124
8
- jaclang/core/__init__.py,sha256=ryqfgdrsv9w9IhhLtrdwGw_V2gkcQ33QCDzrVgC2S6U,249
9
- jaclang/core/jaclang.jac,sha256=bwd9JOL_-RVTA49ELeifbarIPsnOsk5haODexRlg3cI,1787
10
- jaclang/core/primitives.jac,sha256=Ip7_F4QiPGGIu5zWeGkT-jvIWeftRKFQxubspBZe7sM,2958
11
- jaclang/core/impl/__init__.py,sha256=BTgKqQqL0RDRnEdtLK_MhdR-rLSDnw39xLabPKUotqU,39
12
- jaclang/core/impl/arch_impl.jac,sha256=L2drGTP4vTEUJUUAsQmzStW0p2w27jbFeRlYIeBEhWM,3869
13
- jaclang/core/impl/element_impl.jac,sha256=iWow5BuRYWvhHYGYKx28vwV_lAt5q4ntuUOYBC1XVn4,3214
14
- jaclang/core/impl/exec_ctx_impl.jac,sha256=7DcH6cl9jnBOY7olSaLDzVniRRu8U6SWcPhMk7H1rH8,303
15
- jaclang/core/impl/memory_impl.jac,sha256=R27OWfEajtZ05RxYxR3hjiLYK7SxS9IQyZ9Q6U__L8g,1364
16
- jaclang/jac/__init__.py,sha256=OAIBG-7iYvbebyiu0pJ-lFsua8mD6meBkaTylb8XS64,26
17
- jaclang/jac/absyntree.py,sha256=7GSk1NVOnq6MsL6vFUwRA0ZlweiG0OLJpNOumjg4-uQ,58274
18
- jaclang/jac/constant.py,sha256=onIGFe_g5B5KfNsHVhgF0qIbljb7SSBfnYX64d-ivLE,5223
19
- jaclang/jac/importer.py,sha256=GEtHp2o04eQA-4UlS57O44obA61ce-qKFEt6YFL_hCc,5259
20
- jaclang/jac/lexer.py,sha256=XHb5hQOqGlOvgkotWHsh9_s2LA28lsu3I1lv-27OlgY,10800
21
- jaclang/jac/parser.py,sha256=zikc0nLD0kDA2ysF4T9JMR_95n4NOsQJRoXz_Hdqddc,41015
22
- jaclang/jac/symtable.py,sha256=3GnDVtDmX9NkfxLr01vw6My1iYK1kJ_g6t-v2S35Pp0,4315
23
- jaclang/jac/transform.py,sha256=5XVf4Ma0O3jzaYhOFa3A_2K51oBn5icrIQvuRm-_U0Q,3497
24
- jaclang/jac/transpiler.py,sha256=HF6WtHv5-J88gn0zmQN_3AtJDJLm1xJmBB9dKiYbCrU,2440
25
- jaclang/jac/passes/__init__.py,sha256=0Tw0d130ZjzA05jVcny9cf5NfLjlaM70PKqFnY4zqn4,69
26
- jaclang/jac/passes/ir_pass.py,sha256=6z9qFtO54J_vuqlF2nb1BM1h03fnC2zvQ_BuHQxb3ic,5570
27
- jaclang/jac/passes/blue/__init__.py,sha256=zCOjuxAvpHnFtoN_2ky9Vexbasu0QvTh2MUZ-6NfJBk,831
28
- jaclang/jac/passes/blue/ast_build_pass.py,sha256=OERc-Nh1dSrnjc6JM4cAezAW8Mbx8Etxrb_ERxloapE,100460
29
- jaclang/jac/passes/blue/blue_pygen_pass.py,sha256=dovRPuEL6yeIPL6mv7H6WY1aJbU79FSjO7McCtnDyJ0,44577
30
- jaclang/jac/passes/blue/decl_def_match_pass.py,sha256=LT1OyZ30VsZmBAt63L6CZX44_cmknzMyb0gTE8Yh2EI,2027
31
- jaclang/jac/passes/blue/import_pass.py,sha256=7V1nsjc_hB-nrAyLIHuD6k_8A9FgdMS-s7XwI2lWxEg,2710
32
- jaclang/jac/passes/blue/pyout_pass.py,sha256=5icJ2JP6gsMR6fSltIYJBv_kcU9sdy4ayJwZLq8Pc8o,1145
33
- jaclang/jac/passes/blue/semantic_check_pass.py,sha256=bxyALEl2TSm3S3jF2pfOzyI8MjGiKHx-J29v4Uwza8o,1454
34
- jaclang/jac/passes/blue/sub_node_tab_pass.py,sha256=FGUJ5AaddsY0pLRrFr66JEaAeD5GCQRKGJ8I-YDVwYs,964
35
- jaclang/jac/passes/blue/sym_tab_build_pass.py,sha256=1XzsITfuA4Q_kqRRmA3loeJzVQUFxcsEQGdaY5o1swI,32311
36
- jaclang/jac/passes/blue/tests/__init__.py,sha256=UBAATLUEH3yuBN4LYKnXXV79kokRc4XB-rX12qfu0ds,28
37
- jaclang/jac/passes/blue/tests/test_ast_build_pass.py,sha256=CmL0IVCNrTa8I8ua1rZe03pl3o1w3GGeTSPGGv71EF4,2339
38
- jaclang/jac/passes/blue/tests/test_blue_pygen_pass.py,sha256=AiOEmW9CBLAQI1hf-QzDywMW2OpZEkiPtiy4Q99xPgo,4664
39
- jaclang/jac/passes/blue/tests/test_decl_def_match_pass.py,sha256=f6stMZ0shH3yXmB3HjoHV1hhtSOD_uN-UX-imt7olrA,1871
40
- jaclang/jac/passes/blue/tests/test_import_pass.py,sha256=5__oTikC1BAfQt_iyqYwQEY2ARI-pTEa3Or-qY9kxjk,576
41
- jaclang/jac/passes/blue/tests/test_sub_node_pass.py,sha256=V4ABc2Na4YoQ6--TP3nH1gSRK0KZrsQp6H_iybDWryc,842
42
- jaclang/jac/passes/blue/tests/test_sym_tab_build_pass.py,sha256=ixS1zyXTZUdvLrMCZz3iWdJGfl8TT7a8n53kQOMYVR0,636
43
- jaclang/jac/passes/purple/__init__.py,sha256=Sh2SmmpsVtn6Kzqqdvt-wYnNtOmm4Bm0IwKNfBb6gcI,471
44
- jaclang/jac/passes/purple/analyze_pass.jac,sha256=GcvLNEYm6rAicPqwxxBcTMOy5uyHjT3kW1385LF_FzU,928
45
- jaclang/jac/passes/purple/purple_pygen_pass.jac,sha256=KRyPSjD4QwdSQ1-FsnrmJl6XxGqivhNxAjCiUwBjkFc,1339
46
- jaclang/jac/passes/purple/impl/__init__.py,sha256=BTgKqQqL0RDRnEdtLK_MhdR-rLSDnw39xLabPKUotqU,39
47
- jaclang/jac/passes/purple/impl/purple_pygen_pass_impl.jac,sha256=1Oog1VmbndqG6I6AGGadmB0kvIZz7dK_RaIBh7Np3Dc,8291
48
- jaclang/jac/tests/__init__.py,sha256=qiXa5UNRBanGOcplFKTT9a_9GEyiv7goq1OzuCjDCFE,27
49
- jaclang/jac/tests/test_importer.py,sha256=mb5c6jb_1cQuW11nxwdJ8ezizuYn26GkIY4bnoY_LJQ,743
50
- jaclang/jac/tests/test_lexer.py,sha256=-17tdYer5fornLcZh6vf-dy_wq51cpxbWVAIhQVd4OU,1982
51
- jaclang/jac/tests/test_parser.py,sha256=gI35twfzqHdptJTfp7VnJ6NVxFc6J7J4TH02iVuso9E,2512
52
- jaclang/jac/tests/fixtures/__init__.py,sha256=udQ0T6rajpW_nMiYKJNckqP8izZ-pH3P4PNTJEln2NU,36
53
- jaclang/jac/tests/fixtures/activity.py,sha256=fSvxYDKufsPeQIrbuh031zHw_hdbRv5iK9mS7dD8E54,263
54
- jaclang/jac/tests/fixtures/fam.jac,sha256=ASMfSvXM78j8p-DmWgPw5NRLDRzwUmMZy46WyhxRFvo,1653
55
- jaclang/jac/tests/fixtures/hello_world.jac,sha256=uT67nGzdYY7YT6Xj5-OHFAZPEHfIl4zGlfyNs7-zRBI,78
56
- jaclang/jac/tests/fixtures/kwesc.jac,sha256=OXxVL_fwiFuvYO1YX1RHa2hpETSpb0QD1-gMYnMY6DA,103
57
- jaclang/jac/tests/fixtures/lexer_fam.jac,sha256=J_bcFC2RnsBxvEsTUoOIgFowkpibbhpB7FSAMYuG9RM,1394
58
- jaclang/jac/tests/fixtures/mod_doc_test.jac,sha256=p3n-JMJAerocPBA0p_MGf_F7KY-OosIqjHEqcjVrB30,31
59
- jaclang/jac/tests/fixtures/stuff.jac,sha256=5gFmEO8iPGFoj3xeblcfMF2DA1d-ANJIMjdzlMxEnYU,85
60
- jaclang/utils/__init__.py,sha256=86LQ_LDyWV-JFkYBpeVHpLaVxkqwFDP60XpWXOFZIQk,46
61
- jaclang/utils/fstring_parser.py,sha256=cJ3mD7oH-A4QEjUdpzeW1-ODsB2ZJNb_l0R_VPOTtVw,1845
62
- jaclang/utils/helpers.py,sha256=RufgHNZnh97gTtm7wonBzn9AnmuInkOerF4ns3fqCUg,1656
63
- jaclang/utils/lang_tools.py,sha256=R3b9ayrbriBqrOj1w2rZd_1tAw7Ccs_SH0RU1Vi8Pd0,4476
64
- jaclang/utils/log.py,sha256=copXpha4IB2NsffbhRD4GePA18_ePO39bVBPMBPqhkk,239
65
- jaclang/utils/test.py,sha256=DtYcxUe86gq9ayErXqv97U9a6lVAUfKwuDdf-ZYA_f4,4267
66
- jaclang/utils/sly/__init__.py,sha256=G1Y7oQ8BtApOGEYXGego223AMaq-8iQnVCn10sKmX8U,115
67
- jaclang/utils/sly/docparse.py,sha256=YfDcZCuL1-5AIymgPPXsghdZuD7qSSIpiTUeQSRCFH0,1957
68
- jaclang/utils/sly/lex.py,sha256=EyK1PDut3uF22Mc60Kcpa58ybfmV02p8L7ylz_1UVuY,16846
69
- jaclang/utils/sly/yacc.py,sha256=KKoDgnmAL6DRpRuatC3WpX2TTjvtcDA5SZ25uCudYvo,88197
70
- jaclang/utils/tests/__init__.py,sha256=8uwVqMsc6cxBAM1DuHLuNuTnzLXqOqM-WRa4ixOMF6w,23
71
- jaclang/utils/tests/test_fstring_parser.py,sha256=8nZPKhGZA0JNRQ1jhQkXRsjGV6pBK-jKEEf2nFevYK8,1887
72
- jaclang-0.0.6.dist-info/METADATA,sha256=oeh4-_6IfUSXZs3f7HlFTciEYRYq0CZnI5Pu3KnAQuY,152
73
- jaclang-0.0.6.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
74
- jaclang-0.0.6.dist-info/entry_points.txt,sha256=xtRv4MQ7W9E_vTxR3JTCHmtDd9TRitKRuI9KOKdR7oM,50
75
- jaclang-0.0.6.dist-info/top_level.txt,sha256=ZOAoLpE67ozkUJd-v3C59wBNXiteRD8IWPbsYB3M08g,8
76
- jaclang-0.0.6.dist-info/RECORD,,
File without changes
File without changes
File without changes
File without changes