changed: #recompileWithInstrumentation:
authorClaus Gittinger <cg@exept.de>
Tue, 04 May 2010 14:15:44 +0200
changeset 9457 ddafe62c57be
parent 9456 295aa4a804fc
child 9458 d901e3f57fb5
changed: #recompileWithInstrumentation:
NewSystemBrowser.st
Tools__NewSystemBrowser.st
--- a/NewSystemBrowser.st	Mon May 03 18:04:09 2010 +0200
+++ b/NewSystemBrowser.st	Tue May 04 14:15:44 2010 +0200
@@ -22369,8 +22369,31 @@
 !
 
 recompileWithInstrumentation:aClass
-    aClass theNonMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
-    aClass theMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
+    |cls compile|
+
+"/    aClass theNonMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
+"/    aClass theMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
+
+    compile := 
+        [:cls :sel :mthd |
+            (mthd sends:#subclassResponsibility) ifFalse:[
+                mthd hasPrimitiveCode ifFalse:[
+                    cls recompile:sel usingCompilerClass:InstrumentingCompiler
+                ]
+            ]
+        ].
+
+    (cls := aClass theNonMetaclass)
+        selectorsAndMethodsDo:[:aSelector :aMethod |
+            compile value:cls value:aSelector value:aMethod.
+        ].
+
+    (cls := aClass theMetaclass) 
+        selectorsAndMethodsDo:[:aSelector :aMethod |
+            aMethod category ~= 'documentation' ifTrue:[
+                compile value:cls value:aSelector value:aMethod.
+            ]
+        ].
 !
 
 removeClasses:classesToRemove pullUpSubclasses:pullUpSubclasses
@@ -44374,11 +44397,11 @@
 !NewSystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1456 2010-05-03 16:04:09 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1457 2010-05-04 12:15:44 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1456 2010-05-03 16:04:09 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Attic/NewSystemBrowser.st,v 1.1457 2010-05-04 12:15:44 cg Exp $'
 ! !
 
 NewSystemBrowser initialize!
--- a/Tools__NewSystemBrowser.st	Mon May 03 18:04:09 2010 +0200
+++ b/Tools__NewSystemBrowser.st	Tue May 04 14:15:44 2010 +0200
@@ -22369,8 +22369,31 @@
 !
 
 recompileWithInstrumentation:aClass
-    aClass theNonMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
-    aClass theMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
+    |cls compile|
+
+"/    aClass theNonMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
+"/    aClass theMetaclass recompileUsingCompilerClass:InstrumentingCompiler.
+
+    compile := 
+        [:cls :sel :mthd |
+            (mthd sends:#subclassResponsibility) ifFalse:[
+                mthd hasPrimitiveCode ifFalse:[
+                    cls recompile:sel usingCompilerClass:InstrumentingCompiler
+                ]
+            ]
+        ].
+
+    (cls := aClass theNonMetaclass)
+        selectorsAndMethodsDo:[:aSelector :aMethod |
+            compile value:cls value:aSelector value:aMethod.
+        ].
+
+    (cls := aClass theMetaclass) 
+        selectorsAndMethodsDo:[:aSelector :aMethod |
+            aMethod category ~= 'documentation' ifTrue:[
+                compile value:cls value:aSelector value:aMethod.
+            ]
+        ].
 !
 
 removeClasses:classesToRemove pullUpSubclasses:pullUpSubclasses
@@ -44374,11 +44397,11 @@
 !NewSystemBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1456 2010-05-03 16:04:09 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1457 2010-05-04 12:15:44 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1456 2010-05-03 16:04:09 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/Tools__NewSystemBrowser.st,v 1.1457 2010-05-04 12:15:44 cg Exp $'
 ! !
 
 NewSystemBrowser initialize!