redirect method
Implementation
@protected
void redirect(PageRouteInfo route,
{required NavigationResolver resolver}) async {
if (_redirectResolver == resolver) return;
_redirectResolver = resolver;
assert(!resolver.isResolved, 'Resolver is already completed');
final router = resolver._router._findStackScope(route);
router.push(route).then((_) {
if (!resolver.isResolved) {
resolver.next(false);
}
_redirectResolver = null;
});
await resolver._completer.future;
if (router.current.name == route.routeName) {
router.markUrlStateForReplace();
}
router.removeWhere((r) => r.name == route.routeName, notify: false);
_redirectResolver = null;
}