JavaClassRegistry.st
branchbuiltin-class-support
changeset 2620 263045d15796
parent 2618 e7757e5d593c
child 2965 bac7022ca26a
--- a/JavaClassRegistry.st	Wed May 22 21:15:02 2013 +0100
+++ b/JavaClassRegistry.st	Thu May 23 09:56:27 2013 +0100
@@ -305,18 +305,34 @@
     | nm |
 
     nm := class name.
-    nm == #'java.lang.Object' ifTrue:[
+    nm == #'java/lang/Object' ifTrue:[
         java_lang_Object := class.
         ^self.
     ].
-    nm == #'java.lang.System' ifTrue:[
+    nm == #'java/lang/System' ifTrue:[
         java_lang_System := class.
         ^self.
     ].
-    nm == #'java.lang.Class' ifTrue:[
+    nm == #'java/lang/Class' ifTrue:[
         java_lang_Class := class.
+        "/ Force load of other reflective classes. This saves us a nil check in
+        "/ JavaMirror>>createMethod... 
+        #(#'java/lang/reflect/Constructor'  #'java/lang/reflect/Method' #'java/lang/reflect/Field') do:[:e|
+            vm classForName: e definedBy: nil.
+        ]. 
         ^self.
     ].
+    nm == #'java/lang/reflect/Constructor' ifTrue:[
+        java_lang_reflect_Constructor := class.
+    ].
+    nm == #'java/lang/reflect/Method' ifTrue:[
+        java_lang_reflect_Method := class.
+    ].    
+    nm == #'java/lang/reflect/Field' ifTrue:[
+        java_lang_reflect_Field := class.
+    ].
+
+
 
     "Created: / 22-05-2013 / 20:40:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !