[squeak-dev] The Trunk: Collections-pre.818.mcz
commits at source.squeak.org
commits at source.squeak.org
Fri Jan 25 16:54:10 UTC 2019
Patrick Rein uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-pre.818.mcz
==================== Summary ====================
Name: Collections-pre.818
Author: pre
Time: 25 January 2019, 5:54:07.601527 pm
UUID: 75f53672-b087-3542-be05-41a072b91917
Ancestors: Collections-topa.806, Collections-mt.817
Adds a isOfSameSizeCheck: analogous to the emptyCheck to be used to check whether an argument has the same size as the receiver.
=============== Diff against Collections-mt.817 ===============
Item was added:
+ ----- Method: Collection>>errorDifferentSize (in category 'private') -----
+ errorDifferentSize
+
+ self error: 'otherCollection must be the same size'!
Item was added:
+ ----- Method: Collection>>isOfSameSizeCheck: (in category 'private') -----
+ isOfSameSizeCheck: otherCollection
+
+ otherCollection size = self size ifFalse: [self errorDifferentSize]!
Item was changed:
----- Method: FloatArray>>primAddArray: (in category 'primitives-plugin') -----
primAddArray: floatArray
<primitive: 'primitiveAddFloatArray' module: 'FloatArrayPlugin'>
+ self isOfSameSizeCheck: floatArray.
- self size = floatArray size ifFalse:[^self error:'Must be equal size'].
1 to: self size do:[:i| self at: i put: (self at: i) + (floatArray at: i)].!
Item was changed:
----- Method: FloatArray>>primDivArray: (in category 'primitives-plugin') -----
primDivArray: floatArray
<primitive: 'primitiveDivFloatArray' module: 'FloatArrayPlugin'>
+ self isOfSameSizeCheck: floatArray.
- self size = floatArray size ifFalse:[^self error:'Must be equal size'].
1 to: self size do:[:i| self at: i put: (self at: i) / (floatArray at: i)].!
Item was changed:
----- Method: FloatArray>>primMulArray: (in category 'primitives-plugin') -----
primMulArray: floatArray
<primitive: 'primitiveMulFloatArray' module: 'FloatArrayPlugin'>
+ self isOfSameSizeCheck: floatArray.
- self size = floatArray size ifFalse:[^self error:'Must be equal size'].
1 to: self size do:[:i| self at: i put: (self at: i) * (floatArray at: i)].!
Item was changed:
----- Method: FloatArray>>primSubArray: (in category 'primitives-plugin') -----
primSubArray: floatArray
<primitive: 'primitiveSubFloatArray' module: 'FloatArrayPlugin'>
+ self isOfSameSizeCheck: floatArray.
- self size = floatArray size ifFalse:[^self error:'Must be equal size'].
1 to: self size do:[:i| self at: i put: (self at: i) - (floatArray at: i)].!
Item was changed:
----- Method: SequenceableCollection>>with:collect: (in category 'enumerating') -----
with: otherCollection collect: twoArgBlock
"Collect and return the result of evaluating twoArgBlock with corresponding elements from this collection and otherCollection."
| result |
+ self isOfSameSizeCheck: otherCollection.
- otherCollection size = self size ifFalse: [self error: 'otherCollection must be the same size'].
result := self species new: self size.
1 to: self size do:
[:index | result at: index put:
(twoArgBlock
value: (self at: index)
value: (otherCollection at: index))].
^ result!
Item was changed:
----- Method: SequenceableCollection>>with:do: (in category 'enumerating') -----
with: otherCollection do: twoArgBlock
"Evaluate twoArgBlock with corresponding elements from this collection and otherCollection."
+ self isOfSameSizeCheck: otherCollection.
- otherCollection size = self size ifFalse: [self error: 'otherCollection must be the same size'].
1 to: self size do:
[:index |
twoArgBlock value: (self at: index)
value: (otherCollection at: index)]!
More information about the Squeak-dev
mailing list
|