while x>0
- while y>0
- foo()
- bar()
+ while y>0
+ foo()
+ bar()
+
while x>0
- while y>0
- foo()
- bar()
+ while y>0
+ foo()
+ bar()
";
- output "smt:{while:{>:{{x} {0}} sbb:{while:{>:{{y} {0}} {f o o}} {b a r}}} while:{>:{{x} {0}} while:{>:{{y} {0}} sbb:{{f o o} {b a r}}}}}";
- output "smt:{while:{>:{{x} {0}} sbb:{while:{>:{{y} {0}} {f o o}} {b a r}}} while:{>:{{x} {0}} sbb:{while:{>:{{y} {0}} {f o o}} {b a r}}}}";
+ output "smt:{while:{>:{{x} {0}} while:{>:{{y} {0}} sbb:{{f o o} {b a r}}}} while:{>:{{x} {0}} sbb:{while:{>:{{y} {0}} {f o o}} {b a r}}}}";
indent !::= ww
outdent !::= " " outdent " "
&~ "\n" outdent ~[\ ] ~[]*
blockBody ::= statement
- | statement ws blockBody => "sbb"
+ > statement ws blockBody => "sbb"
statement ::= call
| ^"while" expr block /ws