Andreas Raab uploaded a new version of Collections to project The Trunk: http://source.squeak.org/trunk/Collections-ar.287.mcz
==================== Summary ====================
Name: Collections-ar.287 Author: ar Time: 1 February 2010, 7:16:54.576 pm UUID: 3840f8bc-07e3-6f4c-a3d6-8b52f89973aa Ancestors: Collections-edc.285, Collections-edc.286
Merge Collections-edc.286 with some changes: - Implement both beginsWithAnyOf: as well as endsWithAnyOf: - Push the implementation up to SequenceableCollection - Simplify the implementation (using #anySatisfy:) - Add comments (also in beginsWith: and endsWith:) - Add tests
=============== Diff against Collections-edc.285 ===============
Item was changed: ----- Method: SequenceableCollection>>beginsWith: (in category 'testing') ----- beginsWith: aSequenceableCollection + "Answer true if the receiver starts with the argument collection" - (aSequenceableCollection isEmpty or: [self size < aSequenceableCollection size]) ifTrue: [^false]. aSequenceableCollection withIndexDo: [:each :index | (self at: index) ~= each ifTrue: [^false]]. ^true!
Item was changed: ----- Method: SequenceableCollection>>endsWith: (in category 'testing') ----- endsWith: aSequenceableCollection + "Answer true if the receiver ends with the argument collection" - | start | (aSequenceableCollection isEmpty or: [self size < aSequenceableCollection size]) ifTrue: [^false]. start := self size - aSequenceableCollection size. aSequenceableCollection withIndexDo: [:each :index | (self at: start + index) ~= each ifTrue: [^false]]. ^true!
Item was added: + ----- Method: SequenceableCollection>>endsWithAnyOf: (in category 'testing') ----- + endsWithAnyOf: aCollection + "Return true if the receiver ends with any of the elements in aCollection." + ^aCollection anySatisfy:[:suffix| self endsWith: suffix].!
Item was added: + ----- Method: SequenceableCollection>>beginsWithAnyOf: (in category 'testing') ----- + beginsWithAnyOf: aCollection + "Return true if the receiver starts with any of the elements in aCollection." + ^aCollection anySatisfy:[:prefix| self beginsWith: prefix].!
Item was removed: - ----- Method: String>>beginsWithAnyOf: (in category 'comparing') ----- - beginsWithAnyOf: aCollection - aCollection do:[:suffix| - (self beginsWith: suffix) ifTrue:[^true]. - ]. - ^false!
packages@lists.squeakfoundation.org