Skip to content

Commit 0c2dde6

Browse files
authored
Support empty multiline strings (#483)
* Support empty multiline strings Per <#481>, the grammar doesn't actually allow the first and last newline in a multiline string to be the same (indicating an empty string). This looks like the minimal fix for it. * Add tests for empty multilines * remove accidental newline
1 parent 20375a1 commit 0c2dde6

9 files changed

+14
-2
lines changed

SPEC.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -889,7 +889,7 @@ disallowed-keyword-identifiers :=
889889
quoted-string :=
890890
'"' single-line-string-body '"' |
891891
'"""' newline
892-
multi-line-string-body newline
892+
(multi-line-string-body newline)?
893893
(unicode-space | ws-escape)* '"""'
894894
single-line-string-body := (string-character - newline)*
895895
multi-line-string-body := (('"' | '""')? string-character)*
@@ -909,7 +909,7 @@ raw-string := '#' raw-string-quotes '#' | '#' raw-string '#'
909909
raw-string-quotes :=
910910
'"' single-line-raw-string-body '"' |
911911
'"""' newline
912-
multi-line-raw-string-body newline
912+
(multi-line-raw-string-body newline)?
913913
unicode-space* '"""'
914914
single-line-raw-string-body :=
915915
'' |
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
node ""
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
node ""
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
node ""
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
node ""
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
node #"""
2+
"""#
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
node #"""
2+
"""#
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
node """
2+
"""
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
node """
2+
"""

0 commit comments

Comments
 (0)