I can 'fix/complete' the Collection tree, but I'd like to know the community thinking....
My idea is that #= answer with true when the two collection have the same specie, the same contents, the same order, the same keys and the same occurrences.
We need some extras messages to handle the other ways to compare collection:
#sameContent: ignores the specie, ignores the order, ignores the keys and ignores the occurrences. #exactContent: ignores the specie, ignores the order, ignores the keys but care of the occurrences. #sameKeys: the two collection has the same Set of keys, don't care about the specie.
Some examples:
| a d d2 b | a := {1. 2. 3}. d := Dictionary new. d at:'someKey' put:1. d at:'otherKey' put:2. d at:'justOtherKey' put:3. b add:1. b add:1. b add:2. b add:3.
a sameContent: d -> true a sameContent: b -> true
a exactContent: d -> true a exactContent: b -> false
d2 := Dictionary new. d2 at:1 put:1. d2 at:2 put:2. d2 at:3 put:3.
d2 sameKeys:a -> true "the array has integer keys"
What do you think about this??
TIA,
Diego Gomez Deck
For example, Dictionary use Set>>= that ignores keys.
This looks like an accident, to me.
Lex