The Trunk: Collections-mt.832.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Collections-mt.832.mcz

commits-2
Marcel Taeumel uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-mt.832.mcz

==================== Summary ====================

Name: Collections-mt.832
Author: mt
Time: 9 May 2019, 3:27:06.069782 pm
UUID: b3c087f4-c2bc-d542-91d7-9c214ae3a97f
Ancestors: Collections-nice.831

Adds #take: to create a sub-collection from any collection by specifying the number of elements. Works like #first: for sequenceable collections but does not fail if collection is too small.

=============== Diff against Collections-nice.831 ===============

Item was added:
+ ----- Method: CharacterSet>>take: (in category 'accessing') -----
+ take: n
+
+ self shouldNotImplement.!

Item was added:
+ ----- Method: Collection>>take: (in category 'accessing') -----
+ take: n
+ "Enumerate this collection and return the first n elements or less."
+
+ | index result |
+ index := 1.
+ result := self species new: (n min: self size).
+ self associationsDo: [:each |
+ result add: each.
+ (index := index + 1) > n ifTrue: [^ result]].
+ ^ result!

Item was added:
+ ----- Method: SequenceableCollection>>take: (in category 'accessing') -----
+ take: n
+
+ ^ self first: (n min: self size)!

Item was added:
+ ----- Method: Stream>>take: (in category 'accessing') -----
+ take: n
+
+ ^ self next: n!