--- a/MessageTracer.st Thu Feb 25 16:23:41 1999 +0100
+++ b/MessageTracer.st Thu Feb 25 16:31:50 1999 +0100
@@ -11,7 +11,7 @@
"
Object subclass:#MessageTracer
- instanceVariableNames:'traceDetail'
+ instanceVariableNames:'traceDetail tracedBlock'
classVariableNames:'BreakpointSignal CallingLevel BreakBlock TraceSenderBlock
TraceSenderBlock2 LeaveBreakBlock LeaveTraceBlock MethodCounts
MethodMemoryUsage MethodTiming TraceFullBlock TraceFullBlock2
@@ -20,8 +20,15 @@
category:'System-Debugging-Support'
!
+MessageTracer subclass:#InteractionCollector
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ privateIn:MessageTracer
+!
+
MessageTracer subclass:#PrintingMessageTracer
- instanceVariableNames:'tracedBlock'
+ instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
privateIn:MessageTracer
@@ -2672,17 +2679,12 @@
normal;
nextPutAll:' rec=['.
- aContext receiver printOn:aStream.
+ self printObject:aContext receiver on:aStream.
+
aStream nextPutAll:'] '.
(aContext args) keysAndValuesDo:[:idx :arg |
- |s|
-
- s := arg printString.
- s > 20 ifTrue:[
- s := arg classNameWithArticle
- ].
aStream nextPutAll:'arg'. idx printOn:aStream. aStream nextPutAll:'=['.
- s printOn:aStream.
+ self printObject:arg on:aStream.
aStream nextPutAll:'] '.
].
@@ -2701,6 +2703,16 @@
"Modified: 5.3.1997 / 12:40:55 / cg"
!
+printObject:anObject on:aStream
+ |s|
+
+ s := anObject printString.
+ s size > 20 ifTrue:[
+ s := anObject classNameWithArticle
+ ].
+ aStream nextPutAll:s
+!
+
traceEntryFull:aContext on:aStream
aStream nextPutLine:'-----------------------------------------'.
aContext fullPrintAllOn:aStream
@@ -2745,21 +2757,30 @@
"trace execution of aBlock."
traceDetail := fullDetail.
+ tracedBlock := aBlock.
+
ObjectMemory stepInterruptHandler:self.
^ [
- ObjectMemory flushInlineCaches.
- StepInterruptPending := 1.
- InterruptPending := 1.
- aBlock value
+ ObjectMemory flushInlineCaches.
+ StepInterruptPending := 1.
+ InterruptPending := 1.
+ aBlock value
] valueNowOrOnUnwindDo:[
- StepInterruptPending := nil.
- ObjectMemory stepInterruptHandler:nil.
+ tracedBlock := nil.
+ StepInterruptPending := nil.
+ ObjectMemory stepInterruptHandler:nil.
]
"
- MessageTracer trace:[#(6 5 4 3 2 1) sort] detail:false
- MessageTracer trace:[#(6 5 4 3 2 1) sort] detail:true
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:false
+
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:true
+
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:#indent
+
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:#fullIndent
"
+
! !
!MessageTracer::PrintingMessageTracer methodsFor:'trace helpers '!
@@ -2837,29 +2858,11 @@
self new trace:[#(6 5 4 3 2 1) sort] detail:#fullIndent
self new trace:[ View new ] detail:#fullIndent
"
-!
-
-trace:aBlock detail:fullDetail
- "trace execution of aBlock."
-
- tracedBlock := aBlock.
- ^ super trace:aBlock detail:fullDetail
-
- "
- self new trace:[#(6 5 4 3 2 1) sort] detail:false
-
- self new trace:[#(6 5 4 3 2 1) sort] detail:true
-
- self new trace:[#(6 5 4 3 2 1) sort] detail:#indent
-
- self new trace:[#(6 5 4 3 2 1) sort] detail:#fullIndent
- "
-
! !
!MessageTracer class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic3/MessageTracer.st,v 1.77 1999-02-25 15:23:41 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic3/MessageTracer.st,v 1.78 1999-02-25 15:31:50 cg Exp $'
! !
MessageTracer initialize!
--- a/MsgTracer.st Thu Feb 25 16:23:41 1999 +0100
+++ b/MsgTracer.st Thu Feb 25 16:31:50 1999 +0100
@@ -11,7 +11,7 @@
"
Object subclass:#MessageTracer
- instanceVariableNames:'traceDetail'
+ instanceVariableNames:'traceDetail tracedBlock'
classVariableNames:'BreakpointSignal CallingLevel BreakBlock TraceSenderBlock
TraceSenderBlock2 LeaveBreakBlock LeaveTraceBlock MethodCounts
MethodMemoryUsage MethodTiming TraceFullBlock TraceFullBlock2
@@ -20,8 +20,15 @@
category:'System-Debugging-Support'
!
+MessageTracer subclass:#InteractionCollector
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ privateIn:MessageTracer
+!
+
MessageTracer subclass:#PrintingMessageTracer
- instanceVariableNames:'tracedBlock'
+ instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
privateIn:MessageTracer
@@ -2672,17 +2679,12 @@
normal;
nextPutAll:' rec=['.
- aContext receiver printOn:aStream.
+ self printObject:aContext receiver on:aStream.
+
aStream nextPutAll:'] '.
(aContext args) keysAndValuesDo:[:idx :arg |
- |s|
-
- s := arg printString.
- s > 20 ifTrue:[
- s := arg classNameWithArticle
- ].
aStream nextPutAll:'arg'. idx printOn:aStream. aStream nextPutAll:'=['.
- s printOn:aStream.
+ self printObject:arg on:aStream.
aStream nextPutAll:'] '.
].
@@ -2701,6 +2703,16 @@
"Modified: 5.3.1997 / 12:40:55 / cg"
!
+printObject:anObject on:aStream
+ |s|
+
+ s := anObject printString.
+ s size > 20 ifTrue:[
+ s := anObject classNameWithArticle
+ ].
+ aStream nextPutAll:s
+!
+
traceEntryFull:aContext on:aStream
aStream nextPutLine:'-----------------------------------------'.
aContext fullPrintAllOn:aStream
@@ -2745,21 +2757,30 @@
"trace execution of aBlock."
traceDetail := fullDetail.
+ tracedBlock := aBlock.
+
ObjectMemory stepInterruptHandler:self.
^ [
- ObjectMemory flushInlineCaches.
- StepInterruptPending := 1.
- InterruptPending := 1.
- aBlock value
+ ObjectMemory flushInlineCaches.
+ StepInterruptPending := 1.
+ InterruptPending := 1.
+ aBlock value
] valueNowOrOnUnwindDo:[
- StepInterruptPending := nil.
- ObjectMemory stepInterruptHandler:nil.
+ tracedBlock := nil.
+ StepInterruptPending := nil.
+ ObjectMemory stepInterruptHandler:nil.
]
"
- MessageTracer trace:[#(6 5 4 3 2 1) sort] detail:false
- MessageTracer trace:[#(6 5 4 3 2 1) sort] detail:true
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:false
+
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:true
+
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:#indent
+
+ PrintingMessageTracer new trace:[#(6 5 4 3 2 1) sort] detail:#fullIndent
"
+
! !
!MessageTracer::PrintingMessageTracer methodsFor:'trace helpers '!
@@ -2837,29 +2858,11 @@
self new trace:[#(6 5 4 3 2 1) sort] detail:#fullIndent
self new trace:[ View new ] detail:#fullIndent
"
-!
-
-trace:aBlock detail:fullDetail
- "trace execution of aBlock."
-
- tracedBlock := aBlock.
- ^ super trace:aBlock detail:fullDetail
-
- "
- self new trace:[#(6 5 4 3 2 1) sort] detail:false
-
- self new trace:[#(6 5 4 3 2 1) sort] detail:true
-
- self new trace:[#(6 5 4 3 2 1) sort] detail:#indent
-
- self new trace:[#(6 5 4 3 2 1) sort] detail:#fullIndent
- "
-
! !
!MessageTracer class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic3/Attic/MsgTracer.st,v 1.77 1999-02-25 15:23:41 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic3/Attic/MsgTracer.st,v 1.78 1999-02-25 15:31:50 cg Exp $'
! !
MessageTracer initialize!