RXTuple should be an NSArray subclass

#9 · open · 1 comments

View on GitHub ↗

robrix

There’s little if any impedance mismatch, and it would be more intention-revealing. This would obviate the need for `-allObjects` to return an array that can contain nil. (Indeed, it would obviate the need for `-allObjects` to exist at all.)

Comments

robrix

Counterpoint: `-hash` is implemented incompatibly by RXTuple, and the invariant is that `-hash` may not produce different values for equal objects. We can say that a tuple will return `NO` for `-isEqual:` when passed an arbitrary non-RXTuple array as its parameter, which holds the invariant, but we cannot say that NSArray will return `NO` for `-isEqual:` when passed an arbitrary tuple as its parameter, if that tuple contains the same objects.