prefer-async-callback
Suggests using the AsyncCallback
typedef instead of Future<void> Function()
.
Example
❌ Bad:
// LINT: Prefer using AsyncCallback instead of Future<void> Function().
void fn(List<Future<void> Function()> _callbacks) {
// LINT: Prefer using AsyncCallback instead of Future<void> Function().
final Future<void> Function()? onPressed = enabled ? () {} : null;
// LINT: Prefer using AsyncCallback instead of Future<void> Function().
Future<void> Function()? onTap;
// LINT: Prefer using AsyncCallback instead of Future<void> Function().
final List<Future<void> Function()> callbacks = _callbacks;
// LINT: Prefer using AsyncCallback instead of Future<void> Function().
for (final Future<void> Function() callback in callbacks) {
callback();
}
}
✅ Good:
void fn(List<AsyncCallback> _callbacks) {
final AsyncCallback? onPressed = enabled ? () {} : null;
AsyncCallback? onTap;
final List<AsyncCallback> callbacks = _callbacks;
for (final AsyncCallback callback in callbacks) {
callback();
}
}