Я пытаюсь работать с протоколами через стручки.Затем я упростил задачу здесь, чтобы я мог задать вопрос о StackOverflow.
В моей задаче TestClass ничего не знает о SecondProtocol (как в отдельном модуле).
public protocol FirstProtocol {
func get(data: String) -> String
}
public protocol SecondProtocol {
func get(data: String) -> String
}
class TestClass {
func get(data: String) -> String {
return "Rest data"
}
public init() { }
}
extension TestClass : FirstProtocol {}
let myTest : FirstProtocol?
myTest = TestClass() as FirstProtocol
let secondTest: SecondProtocol?
secondTest = myTest as! SecondProtocol
Таким образом, последняя строка вызывает сбой в Swift.В каком-то смысле я понимаю почему.Однако secondTest создается из основной программы, а не Pod secondTest, поэтому SecondTest ничего не знает о SecondProtocol.Тем не менее, второй модуль ожидает ввода Второго протокола.
Так как я могу получить secondTest для приведения к SecondProtocol?