tooling/RIB.xctemplate/ownsView/___FILEBASENAME___Router.swift (13 lines of code) (raw):
//___FILEHEADER___
import RIBs
protocol ___VARIABLE_productName___Interactable: Interactable {
var router: ___VARIABLE_productName___Routing? { get set }
var listener: ___VARIABLE_productName___Listener? { get set }
}
protocol ___VARIABLE_productName___ViewControllable: ViewControllable {
// TODO: Declare methods the router invokes to manipulate the view hierarchy.
}
final class ___VARIABLE_productName___Router: ViewableRouter<___VARIABLE_productName___Interactable, ___VARIABLE_productName___ViewControllable>, ___VARIABLE_productName___Routing {
// TODO: Constructor inject child builder protocols to allow building children.
override init(interactor: ___VARIABLE_productName___Interactable, viewController: ___VARIABLE_productName___ViewControllable) {
super.init(interactor: interactor, viewController: viewController)
interactor.router = self
}
}