• 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

Revisão59d7c5703ac0f8736ec8c791dd8d10426ece086d (tree)
Hora2022-04-23 04:44:04
AutorAlbert Mietus < albert AT mietus DOT nl >
CommiterAlbert Mietus < albert AT mietus DOT nl >

Mensagem de Log

Fixed demos after the refactor/cleanup introduced a BUG

Mudança Sumário

Diff

diff -r 4c187df58949 -r 59d7c5703ac0 demos/Jinja/demo4_withAST.py
--- a/demos/Jinja/demo4_withAST.py Fri Apr 22 20:00:37 2022 +0200
+++ b/demos/Jinja/demo4_withAST.py Fri Apr 22 21:44:04 2022 +0200
@@ -2,7 +2,7 @@
22
33 import sys
44 sys.path.append("./../");sys.path.append("./../../")
5-from castle.ast import peg
5+from castle.ast import grammar as AST
66
77 demo_3_rules = (
88 { 'name' : 'peg_grammar',
@@ -22,16 +22,16 @@
2222
2323
2424 def demo_4A():
25- rules = [ peg.Rule( name=peg.ID(name=r['name']), expr=r['expr']) for r in demo_3_rules]
26- settings = [ peg.Setting( name=s['name'], value=s['value']) for s in demo_3_settings]
25+ rules = [ AST.Rule( name=AST.ID(name=r['name']), expr=r['expr']) for r in demo_3_rules]
26+ settings = [ AST.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- all_rules = ([ peg.Rule( name=peg.ID(name=r['name']), expr=r['expr']) for r in demo_3_rules] +
33- [ peg.Setting( name=s['name'], value=s['value']) for s in demo_3_settings] )
34- grammar = peg.Grammar(all_rules=all_rules)
32+ all_rules = ([ AST.Rule( name=AST.ID(name=r['name']), expr=r['expr']) for r in demo_3_rules] +
33+ [ AST.Setting( name=s['name'], value=s['value']) for s in demo_3_settings] )
34+ grammar = AST.Grammar(all_rules=all_rules)
3535 producer = Demo1(default_template='ast.jinja2')
3636 return producer.render(grammar=grammar)
3737
diff -r 4c187df58949 -r 59d7c5703ac0 demos/ThinOnion/demo1.py
--- a/demos/ThinOnion/demo1.py Fri Apr 22 20:00:37 2022 +0200
+++ b/demos/ThinOnion/demo1.py Fri Apr 22 21:44:04 2022 +0200
@@ -2,7 +2,7 @@
22 import logging; logger = logging.getLogger(__name__)
33
44 from castle.readers.parser import grammar, visitor
5-from castle.ast import peg
5+from castle.ast import grammar as AST
66
77 import arpeggio
88 import jinja2
@@ -15,7 +15,7 @@
1515 self.read_dirs = [ _get_file_dirPath() / d for d in read_dirs]
1616
1717
18- def parse(self, filename:str) -> peg.Grammar:
18+ def parse(self, filename:str) -> AST.Grammar:
1919 txt = self._read(filename)
2020 ast = self._do_parse(txt)
2121 return ast
@@ -30,7 +30,7 @@
3030 return txt
3131
3232
33- def _do_parse(self, txt) -> peg.Grammar:
33+ def _do_parse(self, txt) -> AST.Grammar:
3434 parser = arpeggio.ParserPython(grammar.peg_grammar, comment_def = grammar.comment)
3535 pt = parser.parse(txt)
3636 logger.info(f"Reader:_do_parse::\t parse_tree: start={pt.position} end={pt.position_end}; len(txt)={len(txt)}")