#REFACTORING by cg
authorClaus Gittinger <cg@exept.de>
Fri, 14 Jul 2017 10:54:05 +0200
changeset 22015 ebbcacdfac77
parent 22014 947d38b2327c
child 22016 54531c4985d8
#REFACTORING by cg class: Smalltalk class added: #allMethodsForWhich:do: changed: #allMethodsForWhich:
Smalltalk.st
--- a/Smalltalk.st	Fri Jul 14 00:07:00 2017 +0200
+++ b/Smalltalk.st	Fri Jul 14 10:54:05 2017 +0200
@@ -2280,14 +2280,36 @@
     |coll|
 
     coll := OrderedCollection new.
+    self allMethodsForWhich:aBlock do:[:mthd | coll add:mthd].
+    ^ coll
+
+    "
+     Smalltalk allMethodsForWhich:[:m | m isObsolete].
+
+     Smalltalk allMethodsForWhich:#isObsolete.
+    "
+
+    "Modified (comment): / 14-07-2017 / 10:52:54 / cg"
+!
+
+allMethodsForWhich:aCheckBlock do:actionBlock
+    "enumerate methods for which aCheckBlock returns true"
+
     Smalltalk allClassesDo:[:eachClass |
-	eachClass instAndClassSelectorsAndMethodsDo:[:sel :mthd |
-	    (aBlock value:mthd) ifTrue:[
-		coll add:mthd
-	    ].
-	]
-    ].
-    ^ coll
+        eachClass instAndClassSelectorsAndMethodsDo:[:sel :mthd |
+            (aCheckBlock value:mthd) ifTrue:[
+                actionBlock value:mthd
+            ].
+        ]
+    ].
+
+    "
+     Smalltalk allMethodsForWhich:[:m | m isObsolete] do:[:m | Transcript showCR:m].
+
+     Smalltalk allMethodsForWhich:#isObsolete do:[:m | Transcript showCR:m].
+    "
+
+    "Created: / 14-07-2017 / 10:51:53 / cg"
 !
 
 allMethodsWithSelectorDo:aTwoArgBlock