Protocols conformance checking (is, as) in Swift
Forums:
private protocol PUID {
var id: Int {get}
}
private protocol Named {
var name: String {get}
}
struct Flower: Named {
var name: String
}
let rose = Flower(name: "Rose")
let isPUID = rose is PUID
//isPId is false
let isNamed = rose is Named
//isNamed is true
let pName = rose as Named
let name = pName.name
//name is "Rose"
- Log in to post comments