Marcel Taeumel uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-mt.1252.mcz==================== Summary ====================
Name: Kernel-mt.1252
Author: mt
Time: 4 August 2019, 11:04:15.141314 am
UUID: 0d3ac99f-5fbf-1a43-bc96-9d908d7c7a4c
Ancestors: Kernel-ct.1251
Refines #on:ensure: interface to match the #on:do: variants. Removes #onInterruptEnsure: because there is already #ifCurtailed:.
See
http://forum.world.st/The-Inbox-Kernel-ct-1251-mcz-td5101789.html=============== Diff against Kernel-ct.1251 ===============
Item was added:
+ ----- Method: BlockClosure>>on:ensure:on:ensure: (in category 'exceptions') -----
+ on: anException1 ensure: aBlock1 on: anException2 ensure: aBlock2
+
+ ^ [self on: anException1 ensure: aBlock1]
+ on: anException2
+ ensure: aBlock2!
Item was added:
+ ----- Method: BlockClosure>>on:ensure:on:ensure:on:ensure: (in category 'exceptions') -----
+ on: anException1 ensure: aBlock1 on: anException2 ensure: aBlock2 on: anException3 ensure: aBlock3
+
+ ^ [self on: anException1 ensure: aBlock1]
+ on: anException2
+ ensure: aBlock2
+ on: anException3
+ ensure: aBlock3!
Item was removed:
- ----- Method: BlockClosure>>onInterruptEnsure: (in category 'exceptions') -----
- onInterruptEnsure: aBlock
- "Evaluate myself, evaluate aBlock if any error was thrown or the thread is going to be terminated"
-
- | success result |
- success := false.
- [result := self value.
- success := true]
- ensure: [success ifFalse: aBlock].
- ^ result!