callCollectGarbage method
void
callCollectGarbage({
- CollectGarbage? collectGarbage,
- int? leadingGarbage,
- int? trailingGarbage,
- int? firstIndex,
- int? targetLastIndex,
call CollectGarbage if it's not null
Implementation
void callCollectGarbage({
CollectGarbage? collectGarbage,
int? leadingGarbage,
int? trailingGarbage,
int? firstIndex,
int? targetLastIndex,
}) {
if (collectGarbage == null) {
return;
}
final List<int> garbages = <int>[];
firstIndex ??= indexOf(firstChild!);
targetLastIndex ??= indexOf(lastChild!);
for (int i = leadingGarbage!; i > 0; i--) {
garbages.add(firstIndex - i);
}
for (int i = 0; i < trailingGarbage!; i++) {
garbages.add(targetLastIndex + i);
}
if (garbages.isNotEmpty) {
//call collectGarbage
collectGarbage.call(garbages);
}
}