• R/O
  • SSH

Commit

Tags
Keine 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

Revision038633259101ab2a1607c4948e296d3f4f40816e (tree)
Zeit2022-02-13 06:46:33
AutorAlbert Mietus < albert AT mietus DOT nl >
CommiterAlbert Mietus < albert AT mietus DOT nl >

Log Message

Added basic support for 'Settings' in grammar.py

Ändern Zusammenfassung

Diff

diff -r 0bffc2fb7d81 -r 038633259101 castle/readers/parser/grammar.py
--- a/castle/readers/parser/grammar.py Sat Feb 12 22:26:22 2022 +0100
+++ b/castle/readers/parser/grammar.py Sat Feb 12 22:46:33 2022 +0100
@@ -37,6 +37,16 @@
3737 def str_no_s3(): return _(r"([^']|('[^'])|(''[^']))*") # ALLOW multiline
3838 def str_no_d3(): return _(r'''([^"]|("[^"])|(""[^"]))*''') # idem
3939
40+def setting(): return setting_name, '=', value, ';'
41+def setting_name(): return ID
42+def value(): return [ str_term, regex_term, number, setting_xref ]
43+def number(): return [ complex_lit, float_lit, int_lit ]
44+def setting_xref(): return ID
45+def complex_lit(): return _("([0-9](*\.[0-9]*)?)[+-][iIjJ]([0-9](*\.[0-9]*)?)")
46+def float_lit(): return _("[0-9]*\.[0-9]+")
47+def int_lit(): return _("[1-9][0-9]*")
48+
49+
4050 S1 = "'"
4151 D1 = '"'
4252 S3 = "'''"