//}
testcase {
+ input "aaaaa";
+ s = A
+ A = "a" s &~ "a" A
+ | "a" A &~ "a" S
+}
+
+testcase {
+ input "a";
+ output "yes:{}";
+ s = A
+ A = "a" s &~ "a" A
+ | "a" A &~ "a" S
+ | ()
+}
+
+testcase {
input "ab c";
output "1:{{a b} {c}}";
s = smt:: !ws statement !ws statement !ws
block = !"\n" !indent blockBody
- &~ !"\n" !outdent !(~[\ ]) !(~[]*)
+ &~ !"\n" (" " !outdent " ") !(~[\ ]) !(~[]*)
blockBody = statement
> sbb:: statement ws blockBody