scrall 0.8.6__tar.gz → 0.8.8__tar.gz
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 scrall might be problematic. Click here for more details.
- {scrall-0.8.6/src/scrall.egg-info → scrall-0.8.8}/PKG-INFO +1 -1
- {scrall-0.8.6 → scrall-0.8.8}/pyproject.toml +1 -1
- scrall-0.8.8/src/scrall/__init__.py +1 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall/parse/scrall.peg +1 -1
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall/parse/visitor.py +8 -3
- {scrall-0.8.6 → scrall-0.8.8/src/scrall.egg-info}/PKG-INFO +1 -1
- scrall-0.8.6/src/scrall/__init__.py +0 -1
- {scrall-0.8.6 → scrall-0.8.8}/LICENSE +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/MANIFEST.in +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/README.md +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/setup.cfg +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall/__main__.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall/exceptions.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall/log.conf +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall/parse/__init__.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall/parse/parser.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall.egg-info/SOURCES.txt +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall.egg-info/dependency_links.txt +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall.egg-info/entry_points.txt +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall.egg-info/requires.txt +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/src/scrall.egg-info/top_level.txt +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/tests/test_delete.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/tests/test_ping_actions.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/tests/test_selection.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/tests/test_signals.py +0 -0
- {scrall-0.8.6 → scrall-0.8.8}/tests/test_state_actions.py +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "scrall"
|
|
7
|
-
version = "0.8.
|
|
7
|
+
version = "0.8.8"
|
|
8
8
|
description = "Starr's Concise Relational Action Language - For Shlaer-Mellor Executable UML"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [{ name = "Leon Starr", email = "leon_starr@modelint.com" }]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
version = "0.8.8"
|
|
@@ -91,7 +91,7 @@ output_flow = OUTPUT SP+ scalar_expr
|
|
|
91
91
|
OUTPUT = '=>>'
|
|
92
92
|
|
|
93
93
|
// Instance set
|
|
94
|
-
instance_set = new_instance / ((operation / name / path) (reflexive_selection / selection / operation / path)*)
|
|
94
|
+
instance_set = new_instance / ((operation / input_param / name / path) (reflexive_selection / selection / operation / path)*)
|
|
95
95
|
selection = '(' SP* (rank_selection / criteria_selection) SP* ')'
|
|
96
96
|
rank_selection = CARD ', ' SP* RANKR name
|
|
97
97
|
criteria_selection = (CARD ', ' SP* scalar_expr) / CARD / scalar_expr
|
|
@@ -916,7 +916,7 @@ class ScrallVisitor(PTNodeVisitor):
|
|
|
916
916
|
by any sequence of selection, operation, and paths. The parser won't find two paths in sequence since
|
|
917
917
|
any encounter path will be fully consumed
|
|
918
918
|
"""
|
|
919
|
-
_logger.info("instance_set = new_instance / ((operation /
|
|
919
|
+
_logger.info("instance_set = new_instance / ((operation / input_param / name / path) (reflexive_selection / "
|
|
920
920
|
"selection / operation / path)*)")
|
|
921
921
|
_logger.info(f">> {[k for k in children.results.keys()]}")
|
|
922
922
|
_logger.info(f' :: {node.value}')
|
|
@@ -925,7 +925,12 @@ class ScrallVisitor(PTNodeVisitor):
|
|
|
925
925
|
if len(children) == 1 and isinstance(children[0], N_a):
|
|
926
926
|
result = children[0]
|
|
927
927
|
else:
|
|
928
|
-
|
|
928
|
+
p = children.results.get('input_param')
|
|
929
|
+
if p:
|
|
930
|
+
# Just like above case, but returning an IN_a (parameter name)
|
|
931
|
+
result = p[0]
|
|
932
|
+
else:
|
|
933
|
+
result = INST_a(children)
|
|
929
934
|
_logger.info(f" > {result}")
|
|
930
935
|
return result
|
|
931
936
|
|
|
@@ -1008,7 +1013,7 @@ class ScrallVisitor(PTNodeVisitor):
|
|
|
1008
1013
|
_logger.info(f" < {children}")
|
|
1009
1014
|
a = children.results.get('attr_init')
|
|
1010
1015
|
r = children.results.get('to_ref')
|
|
1011
|
-
result = New_inst_a(cname=children[0], attrs=a[0] if a else [], rels=None if not r else r
|
|
1016
|
+
result = New_inst_a(cname=children[0], attrs=a[0] if a else [], rels=None if not r else r)
|
|
1012
1017
|
_logger.info(f" > {result}")
|
|
1013
1018
|
return result
|
|
1014
1019
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
version = "0.8.6"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|