ClassBuilder.st
branchjv
changeset 17859 cc167a69671c
parent 17856 de6908f9b372
child 17862 8a8ae3107950
--- a/ClassBuilder.st	Tue Sep 06 10:35:19 2011 +0100
+++ b/ClassBuilder.st	Wed Sep 07 17:25:40 2011 +0100
@@ -281,10 +281,11 @@
     aNamespace name = LastNamespaceName ifTrue:[
         privateClassNames := LastClassNamesInNameSpace
     ] ifFalse:[
-        privateClassNames := LastClassNamesInNameSpace := (aNamespace allPrivateClasses 
-                                                                reject:[:cls | cls isJavaClass or:[cls isNameSpace] ]
-                                                                thenCollect:[:each | each name]) asOrderedCollection.   
+        privateClassNames := aNamespace allPrivateClasses 
+                                reject:[:cls | cls isJavaClass or:[cls isNameSpace] ]
+                                thenCollect:[:each | each name].   
         LastNamespaceName := aNamespace name.
+        LastClassNamesInNameSpace := privateClassNames asOrderedCollection.
     ].
 
     privateClassNames do:[:eachClassName |
@@ -311,7 +312,7 @@
         aNamespace class recompileMethodsAccessingGlobal:aGlobalKey.
     ].
 
-    "Modified: / 19-08-2011 / 01:00:49 / cg"
+    "Modified: / 24-08-2011 / 13:32:22 / cg"
     "Modified: / 01-09-2011 / 11:58:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
@@ -322,6 +323,50 @@
     aClass class recompileMethodsWithMachineCode.
 ! !
 
+!ClassBuilder methodsFor:'Compatibility-Squeak'!
+
+name:newName 
+    inEnvironment:aSystemDictionaryOrClass 
+    subclassOf:aClass
+    type: type 
+    instanceVariableNames: stringOfInstVarNames 
+    classVariableNames: stringOfClassVarNames 
+    poolDictionaries: stringOfPoolNames
+    category: categoryString
+
+    "this returns the created class; it is not a simple accessor"
+
+    |variableBoolean wordsBoolean pointersBoolean|
+
+    variableBoolean := wordsBoolean := pointersBoolean := false.
+    type ~~ #normal ifTrue:[
+        type == #words ifTrue:[
+            wordsBoolean := true
+        ] ifFalse:[
+self halt:'todo'.
+        ]
+    ].
+
+    self 
+        name:newName 
+        inEnvironment:aSystemDictionaryOrClass 
+        subclassOf:aClass 
+        instanceVariableNames:stringOfInstVarNames 
+        variable:variableBoolean 
+        words:wordsBoolean 
+        pointers:pointersBoolean 
+        classVariableNames:stringOfClassVarNames 
+        poolDictionaries:stringOfPoolNames 
+        category:categoryString 
+        comment:''
+        changed:false
+        classInstanceVariableNames:''.
+
+    ^ self buildClass
+
+    "Modified: / 07-09-2011 / 15:21:09 / cg"
+! !
+
 !ClassBuilder methodsFor:'accessing'!
 
 classClass
@@ -2280,19 +2325,19 @@
     "Modified: 9.1.1997 / 02:10:02 / cg"
 ! !
 
-
 !ClassBuilder class methodsFor:'documentation'!
 
 version
-    ^ '$Id: ClassBuilder.st 10682 2011-09-02 08:55:20Z vranyj1 $'
+    ^ '$Id: ClassBuilder.st 10686 2011-09-07 16:25:40Z vranyj1 $'
 !
 
 version_CVS
-    ^ '§Header: /cvs/stx/stx/libbasic/ClassBuilder.st,v 1.104 2011/08/20 17:44:19 cg Exp §'
+    ^ 'Header: /cvs/stx/stx/libbasic/ClassBuilder.st,v 1.107 2011/09/07 13:50:53 cg Exp '
 !
 
 version_SVN
-    ^ '$Id: ClassBuilder.st 10682 2011-09-02 08:55:20Z vranyj1 $'
+    ^ '$Id: ClassBuilder.st 10686 2011-09-07 16:25:40Z vranyj1 $'
 ! !
 
 ClassBuilder initialize!
+