The Trunk: Collections-mt.834.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.834.mcz

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

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

Name: Collections-mt.834
Author: mt
Time: 21 May 2019, 10:47:25.375822 am
UUID: 505856e5-ecbf-cf41-ab6d-ef0b7b3dd45b
Ancestors: Collections-mt.833

Replace the few sends to #valueWithPossibleArgument: with #cull: because there is no need to expect blocks with more than one argument to be filled with nils. Updates comments.

=============== Diff against Collections-mt.833 ===============

Item was changed:
  ----- Method: Collection>>ifEmpty: (in category 'testing') -----
  ifEmpty: aBlock
+ "Evaluate aBlock if I'm empty, return myself otherwise."
- "Evaluate the block if I'm empty"
 
+ self isEmpty ifTrue: [^ aBlock value].!
- self isEmpty ifTrue: [ ^aBlock value ]!

Item was changed:
  ----- Method: Collection>>ifEmpty:ifNotEmpty: (in category 'testing') -----
  ifEmpty: emptyBlock ifNotEmpty: notEmptyBlock
+ "Evaluate emptyBlock if I'm empty, notEmptyBlock otherwise. If the notEmptyBlock has an argument, evalualte it with myself as its argument. See also #ifEmpty:ifNotEmptyDo:."
- "Evaluate emptyBlock if I'm empty, notEmptyBlock otherwise"
- " If the notEmptyBlock has an argument, eval with the receiver as its argument"
 
+ self isEmpty ifTrue: [^ emptyBlock value].
+ ^ notEmptyBlock cull: self!
- self isEmpty ifTrue: [ ^emptyBlock value ].
- ^notEmptyBlock valueWithPossibleArgument: self!

Item was changed:
  ----- Method: Collection>>ifNotEmpty: (in category 'testing') -----
  ifNotEmpty: aBlock
+ "Evaluate aBlock if I'm not empty, return myself otherwise. If aBlock has an argument, evaluate it with myself as its argument. See also #ifNotEmptyDo:."
- "Evaluate the given block unless the receiver is empty.
 
+ self isEmpty ifFalse: [^ aBlock cull: self].!
-       If the block has an argument, eval with the receiver as its argument,
-       but it might be better to use ifNotEmptyDo: to make the code easier to
-       understand"
-
- self isEmpty ifFalse: [^ aBlock valueWithPossibleArgument: self].
- !

Item was changed:
  ----- Method: Collection>>ifNotEmpty:ifEmpty: (in category 'testing') -----
  ifNotEmpty: notEmptyBlock ifEmpty: emptyBlock
+ "Evaluate emptyBlock if I'm empty, notEmptyBlock otherwise. If the notEmptyBlock has an argument, evaluate it with myself as its argument. See also #ifNotEmptyDo:ifEmpty:."
- "Evaluate emptyBlock if I'm empty, notEmptyBlock otherwise
- If the notEmptyBlock has an argument, eval with the receiver as its argument"
 
+ self isEmpty ifFalse: [^notEmptyBlock cull: self].
+ ^ emptyBlock value!
- self isEmpty ifFalse: [ ^notEmptyBlock valueWithPossibleArgument: self ].
- ^emptyBlock value!