如何为swift struct制作一个递归的equatable协议

时间:2016-10-06 03:46:22

标签: swift equatable

有没有办法可以设置一个协议,如果我们定义一个所有属性符合Equatable的结构,那么它就会自动成为Equatable,而不必编写所有的样板代码比较班级中的每个属性。理想情况下,此协议也继承自Equatable

例如,如果有这样的协议被称为RecursiveEquatable并且我定义了一个结构

struct A: RecursiveEquatable {
  let value: Int
}

然后我不需要编写样板代码

public func ==(lhs: A, rhs: A) -> Bool {
  return lhs.value == rhs.value
}

0 个答案:

没有答案