[swift-users] can we express "does not conform to a particular protocol"?
davidbaraff at gmail.com
Mon Jul 3 20:27:43 CDT 2017
No, i want the equality function run if the two types are equatable, and false otherwise (even if you might deem them to be the same, e.g. two identical sets, because sets do not conform to equatable, or two identical classes, becauses classes are not (in general) equatable).
maybeEqual(3, 3) // true
maybeEqual(3, 4) // false
maybeEqual([1,2,3], [1,2,3]) // false (because arrays are not actual equatable)
let d = [String:Any]()
maybeEqual(d, d) // false because type(d) is not equatable even though obviously d is equal to itself
More information about the swift-users