V
Size: a a a
V
V
V
V
V
V
V
V
V
V

V
V
V
V
R
BaseCoordinator<T> {
/* ... */
}
protocol AlertRoute {
associatedtype T
}
extension AlertRoute where Self: BaseCoordinator<T> {
/* ... */
} AlertRoute where Self: BaseCoordinator<T> {
/* ... */
} AlertRoute where Self: BaseCoordinator<Self.T> {
/* ... */
}T должен иметь такие же ограничения, что и сам протокол, которых мы и так не знаем. BaseCoordinator<T> {
/* ... */
}
protocol BaseCoordinatorProtocol {
/* Определите тут всё, что хотите использовать в AlertRoute */
}
extension BaseCoordinator: BaseCoordinatorProtocol {
/* ... */
}
protocol AlertRoute where Self: BaseCoordinatorProtocol {
/* ... */
} AlertRoute: BaseCoordinatorProtocol {
/* ... */
}KS
KS
S
РЛ