I hate this code.
I had to work with it so many times when I extracted all the squeak version to load them in VW to be analysed
in Moose (and sadly nobody did anything with them) I should have started to publish ideas on them - silly me.

Stef

On Nov 14, 2013, at 5:52 PM, Martin Dias <tinchodias@gmail.com> wrote:

Hi

Any idea why the "aString isKindOf: RemoteString" is there?

In TClassDescription:

classComment: aString stamp: aStamp
"Store the comment, aString or Text or RemoteString, associated with the class we are organizing.  Empty string gets stored only if had a non-empty one before."

| pointer header file oldCommentRemoteString oldComment oldStamp |
oldComment := self organization classComment.
oldStamp := self organization commentStamp.

(aString isKindOf: RemoteString) ifTrue: [
SystemAnnouncer uniqueInstance 
class: self 
oldComment: oldComment 
newComment: aString string 
oldStamp: oldStamp 
newStamp: aStamp.
^ self organization classComment: aString stamp: aStamp].

oldCommentRemoteString := self organization commentRemoteStr.
(aString size = 0) & (oldCommentRemoteString isNil) ifTrue: [^ self organization classComment: nil].
"never had a class comment, no need to write empty string out"

pointer := oldCommentRemoteString 
ifNil: [0] 
ifNotNil: [oldCommentRemoteString sourcePointer].
(file := SourceFiles at: 2) ifNotNil: [
file setToEnd; cr; nextPut: $!. "directly"
"Should be saying (file command: 'H3') for HTML, but ignoring it here"
header := String streamContents: [:strm | strm nextPutAll: self name;
nextPutAll: ' commentStamp: '.
aStamp storeOn: strm.
strm nextPutAll: ' prior: '; nextPutAll: pointer printString].
file nextChunkPut: header].
self organization 
classComment: (RemoteString newString: aString onFileNumber: 2) 
stamp: aStamp.
SystemAnnouncer uniqueInstance 
class: self 
oldComment: oldComment 
newComment: aString 
oldStamp: oldStamp 
newStamp: aStamp

(nice method eh!)

Mart�n