diff options
| author | Jonas Smedegaard <dr@jones.dk> | 2025-05-18 13:53:00 +0200 |
|---|---|---|
| committer | Jonas Smedegaard <dr@jones.dk> | 2025-05-18 14:05:03 +0200 |
| commit | b1ebaac5c08407ddd680041cae918b9341fea5be (patch) | |
| tree | c586914a3799869afbde8cee60ed07736366a3bb | |
| parent | 90d5b0125fb943eea852ab14ed7a8243c86d7d21 (diff) | |
fix replace Optional(...) with Choice(0, ... , Skip())
| -rwxr-xr-x | def_Header.py | 14 | ||||
| -rwxr-xr-x | def_LinkDefinition.py | 13 | ||||
| -rwxr-xr-x | def_LinkLabel.py | 4 | ||||
| -rwxr-xr-x | def_LinkTitle.py | 12 | ||||
| -rwxr-xr-x | def_LinkedWords.py | 11 | ||||
| -rwxr-xr-x | def_List.py | 15 | ||||
| -rwxr-xr-x | def_Markdown.py | 10 | ||||
| -rwxr-xr-x | def_Paragraph.py | 9 | ||||
| -rwxr-xr-x | def_PlainWords.py | 9 | ||||
| -rwxr-xr-x | def__.py | 8 |
10 files changed, 68 insertions, 37 deletions
diff --git a/def_Header.py b/def_Header.py index 3d5ca66..4408c62 100755 --- a/def_Header.py +++ b/def_Header.py @@ -9,8 +9,18 @@ from railroad import * Diagram( Start("complex"), OneOrMore('#'), - ZeroOrMore(NonTerminal("SPACE")), - Optional(NonTerminal("!NEWLINE Words")), + Choice(0, + Sequence( + OneOrMore(NonTerminal("SPACE")) + ), + Skip() + ), + Choice(0, + Sequence( + NonTerminal("!NEWLINE Words") + ), + Skip() + ), NonTerminal("NEWLINE"), End("complex") ).writeStandalone( diff --git a/def_LinkDefinition.py b/def_LinkDefinition.py index a5cb2f2..60d19d4 100755 --- a/def_LinkDefinition.py +++ b/def_LinkDefinition.py @@ -10,12 +10,15 @@ Diagram( Start("complex"), NonTerminal("LinkLabel"), ":", - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), NonTerminal("Uri"), - Optional(Sequence( - NonTerminal("_"), - NonTerminal("LinkTitle") - )), + Choice(0, + Sequence( + NonTerminal("_"), + NonTerminal("LinkTitle") + ), + Skip() + ), NonTerminal("NEWLINE"), End("complex") ).writeStandalone( diff --git a/def_LinkLabel.py b/def_LinkLabel.py index 4001f7a..cefebce 100755 --- a/def_LinkLabel.py +++ b/def_LinkLabel.py @@ -9,9 +9,9 @@ from railroad import * Diagram( Start("complex"), "[", - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), NonTerminal("![\\[\\]] PlainWords"), - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), "]", End("complex") ).writeStandalone( diff --git a/def_LinkTitle.py b/def_LinkTitle.py index 02f39d6..7894593 100755 --- a/def_LinkTitle.py +++ b/def_LinkTitle.py @@ -11,23 +11,23 @@ Diagram( Choice(0, Sequence( '"', - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), NonTerminal("!'\"' PlainWords"), - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), '"', ), Sequence( "'", - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), NonTerminal("!\"'\" PlainWords"), - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), "'", ), Sequence( "(", - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), NonTerminal("![()] PlainWords"), - Optional(NonTerminal("_")), + Choice(0, (NonTerminal("_")), Skip()), ")", ) ), diff --git a/def_LinkedWords.py b/def_LinkedWords.py index 83ba83c..262e699 100755 --- a/def_LinkedWords.py +++ b/def_LinkedWords.py @@ -16,10 +16,13 @@ Diagram( "(", Choice(0, Sequence( - Optional(Sequence( - NonTerminal("Uri"), - NonTerminal("_") - )), + Choice(0, + Sequence( + NonTerminal("Uri"), + NonTerminal("_") + ), + Skip() + ), NonTerminal("LinkTitle") ), NonTerminal("Uri"), diff --git a/def_List.py b/def_List.py index 43503e7..dc887b2 100755 --- a/def_List.py +++ b/def_List.py @@ -15,12 +15,15 @@ Diagram( "[).]", ) ), - Optional( - NonTerminal("_"), - Choice(0, - NonTerminal("List"), - NonTerminal("Words") - ) + Choice(0, + Sequence( + NonTerminal("_"), + Choice(0, + NonTerminal("List"), + NonTerminal("Words") + ) + ), + Skip() ), NonTerminal("NEWLINE"), End("complex") diff --git a/def_Markdown.py b/def_Markdown.py index ce66425..23739b6 100755 --- a/def_Markdown.py +++ b/def_Markdown.py @@ -7,7 +7,13 @@ from os.path import basename, splitext from railroad import * Diagram( - ZeroOrMore(NonTerminal("MetaBlock")), - ZeroOrMore(NonTerminal("Block")) + Choice(0, + OneOrMore(NonTerminal("MetaBlock")), + Skip() + ), + Choice(0, + OneOrMore(NonTerminal("Block")), + Skip() + ) ).writeStandalone( open(splitext(basename(__file__))[0] + ".svg", "w").write) diff --git a/def_Paragraph.py b/def_Paragraph.py index 90a7816..d5bd00e 100755 --- a/def_Paragraph.py +++ b/def_Paragraph.py @@ -9,9 +9,12 @@ from railroad import * Diagram( Start("complex"), NonTerminal("Words"), - ZeroOrMore( - NonTerminal("HardBreak"), - NonTerminal("Words") + Choice(0, + OneOrMore( + NonTerminal("HardBreak"), + NonTerminal("Words") + ), + Skip() ), OneOrMore( NonTerminal("NEWLINE") diff --git a/def_PlainWords.py b/def_PlainWords.py index 098c3d6..ebbe38b 100755 --- a/def_PlainWords.py +++ b/def_PlainWords.py @@ -9,9 +9,12 @@ from railroad import * Diagram( Start("complex"), NonTerminal("PRINTABLES"), - ZeroOrMore( - NonTerminal("_"), - NonTerminal("PRINTABLES") + Choice(0, + OneOrMore( + NonTerminal("_"), + NonTerminal("PRINTABLES") + ), + Skip() ), End("complex") ).writeStandalone( @@ -13,11 +13,11 @@ Diagram( OneOrMore(NonTerminal("SPACE")), ), Sequence( - Optional(NonTerminal("SPACE")), + Choice(0, (NonTerminal("SPACE")), Skip()), NonTerminal("NEWLINE"), - Optional(NonTerminal("SPACE")), - Optional(NonTerminal("SPACE")), - Optional(NonTerminal("SPACE")) + Choice(0, (NonTerminal("SPACE")), Skip()), + Choice(0, (NonTerminal("SPACE")), Skip()), + Choice(0, (NonTerminal("SPACE")), Skip()) ) ), End("complex") |
