Я пытался использовать «я» в расширении протокола. Он вылетал с ошибкой EXC_BAD_ACCESS при работе на реальном устройстве, но хорошо работал на симуляторе. Что я должен сделать, чтобы это сработало? Спасибо
Весь мой код:
protocol SomeProtocol: class {
}
protocol DataSetEditable {
func add(_ data: Data)
}
extension DataSetEditable where Self: SomeClass {
func add(_ data: Data) {
print(data)
if let someProtocol = self as? SomeProtocol {
print(someProtocol)
//do some extra works
}
}
}
class SomeClass: UIView {
}
class MyClass: SomeClass, DataSetEditable, SomeProtocol {
}
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let myClass = MyClass()
myClass.add(Data())
}
}