Как получить соответствующий протокол из супер протокола? - PullRequest
2 голосов
/ 24 сентября 2019

Я пытаюсь разрешить некоторые типы для простого внедрения зависимости.Я пытаюсь получить тип протокола, который соответствует другому протоколу.

Это то, что я пытаюсь сделать:

protocol Module {}
extension Module {
  func register() {
    print(Self)
  }
}

protocol Submodule: Module {}

struct MyType: Submodule {}

print(MyType().register()) // prints "MyType"

Есть ли способ сделать этопечатать Submodule так как это тот, который соответствует Module?Я пытаюсь Module узнать, какой протокол его реализовал.

...