ViewFeature

public protocol ViewFeature : ControllerProvider, Feature, RoutingOptionProvider

A feature providing a view controller and routing options for a specific route pattern

Note

Routing options specify how your controller will be presented
  • The route pattern of your feature

    Declaration

    Swift

    var routePattern: String { get }
  • features with high priority will be handeled earlier than features with a low priority eg. high priority features might block low priority features

    Declaration

    Swift

    var priority: Int { get }
  • Create a default routing option for your route pattern

    Declaration

    Swift

    func makeOption(routeResult: RouteResult) -> RoutingOption

    Parameters

    routePattern

    a route pattern

    parameters

    the routing option for your controller

    Return Value

    A default routing option if you can provide one for this input parameter combination, nil otherwise

  • option(routeResult:) Extension method

    Declaration

    Swift

    public func option(routeResult: RouteResult) -> RoutingOption?
  • isResponsible(routeResult:) Extension method

    Declaration

    Swift

    func isResponsible(routeResult: RouteResult) -> Bool