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
(StatementBlock?, int) trim(int remaining) {
if (remaining <= 0) {
return (null, 0);
} else {
final trimmedStatementBlock = StatementBlock.init(
statements: [],
isIsolated: isIsolated,
);
for (final statement in statements) {
final trimmingResult = statement.trim(remaining);
remaining = trimmingResult.$2;
if (trimmingResult.$1 == null) {
break;
} else {
trimmedStatementBlock.statements.add(trimmingResult.$1!);
}
if (remaining == 0) {
break;
}
}
return (trimmedStatementBlock, remaining);
}
}