Protocols optional requirements in Swift
Forums:
@objc class Camera: NSObject {
var enable: Bool = false
}
@objc private protocol Car {
var maxSpeed: Int {get}
@objc optional var rearCamera: Camera {get}
}
@objc class Ferrari: NSObject, Car {
var maxSpeed: Int {
return 350
}
@objc var rearCamera: Camera = Camera()
}
let ferrari = Ferrari()
let car = ferrari as Car
if let camera = car.rearCamera {
camera.enable = true
}
- Log in to post comments