replace<T extends Object?> method

Future<T?> replace<T extends Object?>(
  1. String location, {
  2. Object? extra,
})

Implementation

Future<T?> replace<T extends Object?>(String location, {Object? extra}) {
  _ensureOpen();
  _parseUri(location);
  final completer = Completer<Object?>();
  _pendingPushes.add(completer);
  unawaited(completer.future.then((_) => _pendingPushes.remove(completer)));
  unawaited(
    _navigate(location, extra: extra, mode: 'replace', completer: completer),
  );
  return completer.future.then((value) => value as T?);
}