]> git.ipfire.org Git - thirdparty/jinja.git/commitdiff
Support independent line statement
authorKevin Brown <kevin@kevin-brown.com>
Fri, 8 May 2020 22:35:09 +0000 (18:35 -0400)
committerKevin <kevin@kevin-brown.com>
Sun, 10 May 2020 01:50:06 +0000 (21:50 -0400)
This allows you to have a line statement that is not paired with an
ending one.

tatsu_grammar.txt

index 83654f83b0f07fbca46cf79591c63dfdbe00f790..e796022a261d7dd07ef6ef69b5d22b113e2e79be 100644 (file)
@@ -39,7 +39,7 @@ raw_block_end
 \r
 block_expression\r
     =\r
-    block_start {SP}* expressions {SP}* block_end\r
+    | ( block_start {SP}* expressions {SP}* block_end )\r
     | block_start\r
     ;\r
 \r
@@ -64,19 +64,18 @@ block_close
 \r
 line_block_expression\r
     =\r
-    line_block_start\r
-    expressions\r
-    line_block_end\r
+    | ( line_block_start expressions line_block_end )\r
+    | line_block_start\r
     ;\r
 \r
 line_block_start\r
     =\r
-    line_block_open type:`blockstart` name:IDENTIFIER parameters:[ { block_parameter }* ] ":\n"\r
+    line_block_open type:`blockstart` !("end") name:IDENTIFIER parameters:[ { block_parameter }* ] ":\n"\r
     ;\r
 \r
 line_block_end\r
     =\r
-    line_block_open type:`blockend` name:IDENTIFIER "\n"\r
+    line_block_open type:`blockend` "end" name:IDENTIFIER "\n"\r
     ;\r
 \r
 line_block_open\r
@@ -164,7 +163,7 @@ variable_accessor_call_parameters
 \r
 variable_accessor_call_parameter\r
     =\r
-    variable_accessor_call_parameter_key_value\r
+    variable_accessor_call_parameter_key_value\r
     | variable_accessor_call_parameter_value_only\r
     ;\r
 \r
@@ -362,5 +361,6 @@ SP
 \r
 CHAR\r
     =\r
-    ?'.' | ?'\s'\r
+    | ?'.'\r
+    | ?'\s'\r
     ;
\ No newline at end of file