trim method
Trim the contents of the Statement.
This is only relevant for compound Statements, such as ForLoopStatement.
Non-compound statements, e.g., VariableDeclarationStatement, simply return themselves.
Implementation
@override
(WhileLoopStatement?, int) trim(int remaining) {
if (remaining <= 0) {
return (null, 0);
} else {
List<Statement> trimmedBodyStatements = [];
for (final statement in bodyStatements) {
final trimmedStatementResult = statement.trim(remaining);
remaining = trimmedStatementResult.$2;
if (trimmedStatementResult.$1 != null) {
trimmedBodyStatements.add(trimmedStatementResult.$1!);
}
if (remaining <= 0) {
break;
}
}
return (
WhileLoopStatement.init(isDoWhile, condition, trimmedBodyStatements),
remaining,
);
}
}