NavigationRequest

public struct NavigationRequest : Hashable
extension NavigationRequest: CustomDebugStringConvertible

Used by a RoutableWithConfiguration inside its RoutableWithConfiguration.navigationConfiguration to describe the kind of navigation action (Show, Hide) to handle.

   extension ListViewController: RoutableWithConfiguration {

     // needed by the `Routable` protocol
     // to identify this ViewController in the hierarchy
     var routeIdentifier: RouteElementIdentifier {
       return "listScreen"
     }

     // the `NavigationRequest`s that this ViewController is handling
     // with the `NavigationInstruction` to execute
     var navigationConfiguration: [NavigationRequest: NavigationInstruction] {
       return [
         .show("addItemScreen"): .presentModally({ [unowned self] _ in
           let vc = AddItemViewController(store: self.store)
           return vc
         })
       ]
   }