Future<T> enqueueResult<T>(FutureOr<T> Function() operation) { final next = _tail.then((_) => operation()); _tail = next.then<void>((_) {}).catchError((Object _) {}); return next; }