Hi, I have just committed the first draft of the new interface MultiSet.
What is the idea behind this? The rationale of this interface (and corresponding implementations) is to replace the existing Bag interface, which does violate the Collection contract. Actually, I wanted to make the Bag interface compliant to the general Collection contract prior to the 4.0 release, but was convinced otherwise (which I now consider a big mistake). Thus, in an attempt to rid commons-collections of such violations, the Bag interface shall be deprecated and replaced by a MultiSet, which is basically the same, but the interface is cleaned up and a little bit enhanced. Operations that take cardinality into account (as currently the Bag does), can be provided as static utility methods in a MultiSetUtils class, or optionally, as additional methods in the interface (I am yet undecided about that). It would be nice if some people could review the current interface and give feedback. There might still be some typos and the base implementation needs to be improved, but it already works as intended. Thanks, Thomas --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org