• R/O
  • SSH

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Castle: The best Real-Time/Embedded/HighTech language EVER. Attempt 2


Commit MetaInfo

Revisión5661f00112dabd1905805cd7eaf332be9a6e6a2b (tree)
Tiempo2022-02-08 06:02:05
AutorAlbert Mietus < albert AT mietus DOT nl >
CommiterAlbert Mietus < albert AT mietus DOT nl >

Log Message

'make demos' works again (asis)

Cambiar Resumen

Diferencia incremental

diff -r 6992b47c96dc -r 5661f00112da .hgignore
--- a/.hgignore Mon Feb 07 18:48:05 2022 +0100
+++ b/.hgignore Mon Feb 07 22:02:05 2022 +0100
@@ -5,4 +5,6 @@
55 .*\.dot
66 .*/pyreversed
77
8-demos/ThinOnion/OUT_*
\ No newline at end of file
8+demos/ThinOnion/OUT_*
9+OUT_*
10+
diff -r 6992b47c96dc -r 5661f00112da Makefile
--- a/Makefile Mon Feb 07 18:48:05 2022 +0100
+++ b/Makefile Mon Feb 07 22:02:05 2022 +0100
@@ -11,9 +11,15 @@
1111 pytest ${PYTEST_OPTONS} -s pytst
1212 test-ds test-sd test-d:
1313 pytest ${PYTEST_OPTONS} --log-cli-level=DEBUG -s pytst/
14-demo:
14+
15+demo: pytest-demo python-demo
16+
17+python-demo:
18+ @echo Running all 'dem*.py' python-files
19+ for d in `find demos -type f -iname \*.py `; do echo "=== $$d ==="; python $$d; echo "=========="; done
20+
21+pytest-demo:
1522 pytest -s demos
16- @echo run other demos by hand
1723
1824
1925 missing_visitor: castle/readers/parser/grammar.py
@@ -22,9 +28,9 @@
2228 echo "Warning: $${R} has no visitor (nor is marked as to need none)" ;\
2329 fi ;\
2430 done
25-QAZ := ${shell grep '^ *class ' castle/ast/peg.py | sed 's/class //g' | sed 's/[:( ].*$$//g' }
31+
2632 missing_serialization:
27- @for R in ${QAZ} ; do \
33+ @for R in ${shell grep '^ *class ' castle/ast/peg.py | sed 's/class //g' | sed 's/[:( ].*$$//g' } ; do \
2834 if ! grep -q -E "^ *((def)|(# *NO_VISITOR_NEEDED:)) $${R}2xml" castle/ast/ast2xml.py > /dev/null ; then\
2935 echo "Warning: $${R} has no xml-serializer (nor is marked as to need none)" ;\
3036 fi ;\
diff -r 6992b47c96dc -r 5661f00112da demos/Jinja/demo4_withAST.py
--- a/demos/Jinja/demo4_withAST.py Mon Feb 07 18:48:05 2022 +0100
+++ b/demos/Jinja/demo4_withAST.py Mon Feb 07 22:02:05 2022 +0100
@@ -22,14 +22,14 @@
2222
2323
2424 def demo_4A():
25- rules = [ peg.Rule( name=r['name'], expr=r['expr']) for r in demo_3_rules]
25+ rules = [ peg.Rule( name=peg.ID(name=r['name']), expr=r['expr']) for r in demo_3_rules]
2626 settings = [ peg.Setting( name=s['name'], value=s['value']) for s in demo_3_settings]
2727
2828 producer = Demo1(default_template='file.jinja2')
2929 return producer.render(rules=rules, settings=settings)
3030
3131 def demo_4B():
32- rules = [ peg.Rule( name=r['name'], expr=r['expr']) for r in demo_3_rules]
32+ rules = [ peg.Rule( name=peg.ID(name=r['name']), expr=r['expr']) for r in demo_3_rules]
3333 settings = [ peg.Setting( name=s['name'], value=s['value']) for s in demo_3_settings]
3434 grammar = peg.Grammar(rules=rules, settings=settings)
3535
diff -r 6992b47c96dc -r 5661f00112da demos/readers/parser/test_Rule.py
--- a/demos/readers/parser/test_Rule.py Mon Feb 07 18:48:05 2022 +0100
+++ b/demos/readers/parser/test_Rule.py Mon Feb 07 22:02:05 2022 +0100
@@ -1,7 +1,8 @@
11 import pytest
22 import logging;logger = logging.getLogger(__name__)
33
4-import grammar
4+from castle.readers.parser import grammar
5+
56 import arpeggio
67
78 def format_node(n):