--- a/Metaclass.st Tue Mar 01 18:12:03 2005 +0100
+++ b/Metaclass.st Tue Mar 01 18:58:09 2005 +0100
@@ -379,7 +379,12 @@
"append an expression on aStream, which defines myself."
|s owner ns nsName fullName forceNoNameSpace superNameWithoutNameSpacePrefix cls topOwner
- superclass superclassNamespace|
+ superclass superclassNamespace nm useStoreString BOLD_ON BOLD_OFF|
+
+ syntaxHilighting ifTrue:[
+ BOLD_ON := [aStream bold].
+ BOLD_OFF := [aStream normal].
+ ].
fullName := FileOutNameSpaceQuerySignal query == true.
owner := aClass owningClass.
@@ -411,9 +416,9 @@
nsName := '''' , nsName , ''''
].
aStream nextPutAll:'"{ NameSpace: '.
- syntaxHilighting ifTrue:[aStream bold].
+ BOLD_ON value.
aStream nextPutAll:nsName.
- syntaxHilighting ifTrue:[aStream normal].
+ BOLD_OFF value.
aStream nextPutAll:' }"'; cr; cr.
]
].
@@ -488,44 +493,52 @@
]
].
- syntaxHilighting ifTrue:[aStream bold].
+ BOLD_ON value.
aStream nextPutAll:s. "/ superclass
- syntaxHilighting ifTrue:[aStream normal].
+ BOLD_OFF value.
aStream space.
aClass basicFileOutInstvarTypeKeywordOn:aStream.
+ useStoreString := false.
(fullName and:[owner isNil]) ifTrue:[
- aStream nextPutAll:'#'''.
- syntaxHilighting ifTrue:[aStream bold].
- aStream nextPutAll:(aClass name).
- syntaxHilighting ifTrue:[aStream normal].
+ nm := aClass name.
+ useStoreString := true.
+ ] ifFalse:[
+ nm := aClass nameWithoutPrefix.
+ nm isValidSmalltalkIdentifier ifFalse:[
+ useStoreString := true.
+ ].
+ ].
+ aStream nextPut:$#.
+ useStoreString ifTrue:[
aStream nextPutAll:''''.
- ] ifFalse:[
- aStream nextPut:$#.
- syntaxHilighting ifTrue:[aStream bold].
- aStream nextPutAll:(aClass nameWithoutPrefix).
- syntaxHilighting ifTrue:[aStream normal].
+ ].
+ BOLD_ON value.
+ aStream nextPutAll:nm.
+ BOLD_OFF value.
+ useStoreString ifTrue:[
+ aStream nextPutAll:''''.
].
aStream crtab.
aStream nextPutAll:'instanceVariableNames:'''.
- syntaxHilighting ifTrue:[aStream bold].
+ BOLD_ON value.
aClass printInstVarNamesOn:aStream indent:16.
- syntaxHilighting ifTrue:[aStream normal].
+ BOLD_OFF value.
aStream nextPutAll:''''.
aStream crtab.
aStream nextPutAll:'classVariableNames:'''.
- syntaxHilighting ifTrue:[aStream bold].
+ BOLD_ON value.
aClass printClassVarNamesOn:aStream indent:16.
- syntaxHilighting ifTrue:[aStream normal].
+ BOLD_OFF value.
aStream nextPutAll:''''.
aStream crtab.
aStream nextPutAll:'poolDictionaries:'''.
- syntaxHilighting ifTrue:[aStream bold].
+ BOLD_ON value.
aClass printSharedPoolNamesOn:aStream indent:16.
- syntaxHilighting ifTrue:[aStream normal].
+ BOLD_OFF value.
aStream nextPutAll:''''.
aStream crtab.
@@ -541,14 +554,14 @@
] ifFalse:[
"/ a private class
aStream nextPutAll:'privateIn:'.
- syntaxHilighting ifTrue:[aStream bold].
+ BOLD_ON value.
fullName ifTrue:[
s := owner name.
] ifFalse:[
s := owner nameWithoutNameSpacePrefix.
].
aStream nextPutAll:s.
- syntaxHilighting ifTrue:[aStream normal].
+ BOLD_OFF value.
].
aStream cr
@@ -805,7 +818,7 @@
!Metaclass class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Metaclass.st,v 1.191 2005-01-27 10:29:56 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Metaclass.st,v 1.192 2005-03-01 17:58:09 cg Exp $'
! !
Metaclass initialize!