Je veux tester l'égalité de deux valeurs d'énumération Swift. Par exemple:
enum SimpleToken {
case Name(String)
case Number(Int)
}
let t1 = SimpleToken.Number(123)
let t2 = SimpleToken.Number(123)
XCTAssert(t1 == t2)
Cependant, le compilateur ne compilera pas l'expression d'égalité:
error: could not find an overload for '==' that accepts the supplied arguments
XCTAssert(t1 == t2)
^~~~~~~~~~~~~~~~~~~
Dois-je définir ma propre surcharge de l'opérateur d'égalité? J'espérais que le compilateur Swift le gérerait automatiquement, un peu comme le font Scala et Ocaml.