extension Struct: Equatable {}
func ==(left: Struct, right: Struct) -> Bool {
return left == (right, [
{$0.a1}, {$0.a2}, {$0.a3}
])
return left.equals(right) {[
{$0.a1}, {$0.a2}, {$0.a3}
]}
}
Sorry, can't past the extension or operator here because it of course requires much emoji.