WrappedMethod.st
changeset 3585 7c205e1ff080
parent 3516 f9a7b080ae60
child 3586 79874305ab30
--- a/WrappedMethod.st	Mon Jun 23 10:56:14 2014 +0200
+++ b/WrappedMethod.st	Mon Jun 23 10:56:35 2014 +0200
@@ -53,17 +53,33 @@
 !WrappedMethod class methodsFor:'others'!
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libbasic3/WrappedMethod.st,v 1.40 2014-03-05 16:32:56 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic3/WrappedMethod.st,v 1.41 2014-06-23 08:56:35 cg Exp $'
 ! !
 
 !WrappedMethod class methodsFor:'registration'!
 
 allInstancesDo:aBlock
-    AllWrappedMethods notNil ifTrue:[
-        AllWrappedMethods copy do:aBlock
-    ].
+    self allWrappedMethodsDo:aBlock
+!
 
-    "Created: / 01-07-2011 / 09:45:29 / cg"
+allWrappedMethods
+    AllWrappedMethods isNil ifTrue:[^ #() ].
+    ^ AllWrappedMethods 
+        select:[:m |
+            "/ must double check - as this is a weak set, it gets cleaned up with
+            "/ a delay.
+            m mclass notNil 
+        ]    
+        as:OrderedCollection
+
+    "
+     self allWrappedMethods
+    "
+!
+
+allWrappedMethodsDo:aBlock
+    AllWrappedMethods isNil ifTrue:[^ self ].
+    self allWrappedMethods do:aBlock
 !
 
 register:aWrappedMethod
@@ -490,6 +506,6 @@
 !WrappedMethod class methodsFor:'documentation'!
 
 version_SVN
-    ^ '$Id: WrappedMethod.st,v 1.40 2014-03-05 16:32:56 cg Exp $'
+    ^ '$Id: WrappedMethod.st,v 1.41 2014-06-23 08:56:35 cg Exp $'
 ! !