JavaClass.st
changeset 60 a763b1780ec0
parent 54 f37bcefb7091
child 63 74442cd26c02
--- a/JavaClass.st	Tue May 07 09:56:10 1996 +0000
+++ b/JavaClass.st	Thu May 16 14:52:21 1996 +0000
@@ -1,6 +1,6 @@
 ClassDescription subclass:#JavaClass
 	instanceVariableNames:'fullName accessFlags constantPool sourceFile fields initialized
-		initValues'
+		initValues staticFields'
 	classVariableNames:'InitialValuePerType'
 	poolDictionaries:''
 	category:'Java-Classes'
@@ -42,7 +42,7 @@
 
     meta := Metaclass new.
     meta setSuperclass:(self).
-    meta instSize:(JavaClass class instSize + nStatic).
+    meta instSize:(JavaClass "class" instSize + nStatic).
     meta setName:(aString , 'class') asSymbol.
     meta setClassVariableString:''.
 
@@ -188,6 +188,14 @@
      (Java classNamed:'java/io/FileDescriptor') classInit
      (Java classNamed:'java.util.Properties') classInit 
     "
+!
+
+initializeStaticFields
+    staticFields do:[:f |
+        f constantValue notNil ifTrue:[
+            self instVarNamed:(f name) put:f constantValue.
+        ]
+    ].
 ! !
 
 !JavaClass methodsFor:'java instance creation'!
@@ -405,6 +413,14 @@
     "Created: 15.4.1996 / 16:42:52 / cg"
 !
 
+setStaticFields:f
+    JavaClass setInstanceVariableStringFromFields:f in:self class.
+
+    staticFields := f.
+
+
+!
+
 setSuperclass:aClass
     aClass isNil ifTrue:[
         super setSuperclass:JavaObject
@@ -564,6 +580,6 @@
 !JavaClass class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClass.st,v 1.20 1996/05/06 18:57:07 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClass.st,v 1.21 1996/05/16 14:51:47 cg Exp $'
 ! !
 JavaClass initialize!