A new version of Kernel was added to project The Inbox:
http://source.squeak.org/inbox/Kernel-cmm.812.mcz ==================== Summary ==================== Name: Kernel-cmm.812 Author: cmm Time: 23 October 2013, 3:13:11.812 pm UUID: 68690126-9bc1-4cbc-b97e-75280610af28 Ancestors: Kernel-nice.811 Printing utilities for Blocks which include the source code of the block, and Errors which include the description and stack-trace. =============== Diff against Kernel-nice.811 =============== Item was changed: ----- Method: BlockClosure>>fullPrintOn: (in category 'printing') ----- + fullPrintOn: aStream + aStream + print: self ; + cr. + self printSourceOn: aStream! - fullPrintOn: aStream - aStream print: self; cr. - (self decompile ifNil: ['--source missing--']) printOn: aStream indent: 0! Item was added: + ----- Method: BlockClosure>>printSourceOn: (in category 'printing') ----- + printSourceOn: aStream + self decompile + ifNil: [ aStream nextPutall: '--source missing--' ] + ifNotNil: + [ : parseNode | parseNode statements anyOne + printOn: aStream + indent: 0 ]! Item was added: + ----- Method: BlockClosure>>sourceString (in category 'printing') ----- + sourceString + ^ String streamContents: [ : stream | self printSourceOn: stream ]! Item was added: + ----- Method: Error>>printVerboseOn: (in category 'printing') ----- + printVerboseOn: aStream + aStream + wantsLineEndConversion: true ; + setToEnd ; + nextPutAll: 'vvvvvvvvvvvvvvvvvv ' , self description , ' vvvvvvvvvvvvvvvvvv' ; + cr ; + nextPutAll: 'The time is ', DateAndTime now asString ; + cr. + "Allow applications to optionally print extra details without overriding a base package." + (self respondsTo: #printDetailsOn:) ifTrue: [ self printDetailsOn: aStream ]. + aStream + nextPutAll: self signalerContext longStack ; + cr ; + nextPutAll: '^^^^^^^^^^^^^^^^^^ ' , self description , ' ^^^^^^^^^^^^^^^^^^' ; + cr! |
I use these utilities from multiple applications. If no vehement
objections, I'll add them to trunk in a few days. On Wed, Oct 23, 2013 at 3:13 PM, <[hidden email]> wrote: > A new version of Kernel was added to project The Inbox: > http://source.squeak.org/inbox/Kernel-cmm.812.mcz > > ==================== Summary ==================== > > Name: Kernel-cmm.812 > Author: cmm > Time: 23 October 2013, 3:13:11.812 pm > UUID: 68690126-9bc1-4cbc-b97e-75280610af28 > Ancestors: Kernel-nice.811 > > Printing utilities for Blocks which include the source code of the block, and Errors which include the description and stack-trace. > > =============== Diff against Kernel-nice.811 =============== > > Item was changed: > ----- Method: BlockClosure>>fullPrintOn: (in category 'printing') ----- > + fullPrintOn: aStream > + aStream > + print: self ; > + cr. > + self printSourceOn: aStream! > - fullPrintOn: aStream > - aStream print: self; cr. > - (self decompile ifNil: ['--source missing--']) printOn: aStream indent: 0! > > Item was added: > + ----- Method: BlockClosure>>printSourceOn: (in category 'printing') ----- > + printSourceOn: aStream > + self decompile > + ifNil: [ aStream nextPutall: '--source missing--' ] > + ifNotNil: > + [ : parseNode | parseNode statements anyOne > + printOn: aStream > + indent: 0 ]! > > Item was added: > + ----- Method: BlockClosure>>sourceString (in category 'printing') ----- > + sourceString > + ^ String streamContents: [ : stream | self printSourceOn: stream ]! > > Item was added: > + ----- Method: Error>>printVerboseOn: (in category 'printing') ----- > + printVerboseOn: aStream > + aStream > + wantsLineEndConversion: true ; > + setToEnd ; > + nextPutAll: 'vvvvvvvvvvvvvvvvvv ' , self description , ' vvvvvvvvvvvvvvvvvv' ; > + cr ; > + nextPutAll: 'The time is ', DateAndTime now asString ; > + cr. > + "Allow applications to optionally print extra details without overriding a base package." > + (self respondsTo: #printDetailsOn:) ifTrue: [ self printDetailsOn: aStream ]. > + aStream > + nextPutAll: self signalerContext longStack ; > + cr ; > + nextPutAll: '^^^^^^^^^^^^^^^^^^ ' , self description , ' ^^^^^^^^^^^^^^^^^^' ; > + cr! > > |
In reply to this post by commits-2
On Wed, 23 Oct 2013, [hidden email] wrote:
> A new version of Kernel was added to project The Inbox: > http://source.squeak.org/inbox/Kernel-cmm.812.mcz > > ==================== Summary ==================== > > Name: Kernel-cmm.812 > Author: cmm > Time: 23 October 2013, 3:13:11.812 pm > UUID: 68690126-9bc1-4cbc-b97e-75280610af28 > Ancestors: Kernel-nice.811 > > Printing utilities for Blocks which include the source code of the block, and Errors which include the description and stack-trace. > > =============== Diff against Kernel-nice.811 =============== > > Item was changed: > ----- Method: BlockClosure>>fullPrintOn: (in category 'printing') ----- > + fullPrintOn: aStream > + aStream > + print: self ; > + cr. > + self printSourceOn: aStream! > - fullPrintOn: aStream > - aStream print: self; cr. > - (self decompile ifNil: ['--source missing--']) printOn: aStream indent: 0! > > Item was added: > + ----- Method: BlockClosure>>printSourceOn: (in category 'printing') ----- > + printSourceOn: aStream > + self decompile > + ifNil: [ aStream nextPutall: '--source missing--' ] > + ifNotNil: > + [ : parseNode | parseNode statements anyOne > + printOn: aStream > + indent: 0 ]! > > Item was added: > + ----- Method: BlockClosure>>sourceString (in category 'printing') ----- > + sourceString > + ^ String streamContents: [ : stream | self printSourceOn: stream ]! > > Item was added: > + ----- Method: Error>>printVerboseOn: (in category 'printing') ----- > + printVerboseOn: aStream > + aStream > + wantsLineEndConversion: true ; Only MultiByteFileStreams understand #wantsLineEndConversion:. If setting it is really necessary, then it should be done in another method. Levente > + setToEnd ; > + nextPutAll: 'vvvvvvvvvvvvvvvvvv ' , self description , ' vvvvvvvvvvvvvvvvvv' ; > + cr ; > + nextPutAll: 'The time is ', DateAndTime now asString ; > + cr. > + "Allow applications to optionally print extra details without overriding a base package." > + (self respondsTo: #printDetailsOn:) ifTrue: [ self printDetailsOn: aStream ]. > + aStream > + nextPutAll: self signalerContext longStack ; > + cr ; > + nextPutAll: '^^^^^^^^^^^^^^^^^^ ' , self description , ' ^^^^^^^^^^^^^^^^^^' ; > + cr! > > > |
Free forum by Nabble | Edit this page |