visitIfStmt method
Implementation
@override
String visitIfStmt(IfStmt stmt) {
final expr = stmt.expr?.accept(this);
late final String body;
wrapScope(current, block: () {
body = stmt.body.map((e) => e.accept(this)).join(_sep);
});
if (stmt.isTerminalElse) {
return '$_sep$body${_sep}end';
}
final next = switch (stmt.nextIfStmt?.accept(this)) {
final String n => '${_sep}else$n',
null => '${_sep}end',
};
return 'if $expr then$_sep$body$next';
}