src/JavaClass.st
branchjk_new_structure
changeset 811 2921f70489c1
parent 808 6116e95d8d4b
child 818 7282451f481b
--- a/src/JavaClass.st	Sun May 22 13:05:48 2011 +0000
+++ b/src/JavaClass.st	Sun May 22 16:04:51 2011 +0000
@@ -946,40 +946,6 @@
     ^ super browserClass.
 
     "Modified: / 14.10.1998 / 15:28:38 / cg"
-!
-
-compilerClass
-    "return the compiler to use for this class -
-     this can be redefined in special classes, to compile classes with
-     Lisp, Prolog, ASN1, Basic :-) or whatever syntax."
-
-    ^ JavaCompiler ? Compiler
-!
-
-evaluatorClass
-    "return the compiler to use for expression evaluation for this class -
-     this can be redefined in special classes, to evaluate expressions with
-     Lisp, Prolog, ASN1, Basic :-) or whatever syntax."
-
-    ^ JavaParser ? Parser.
-
-!
-
-parserClass
-    "return the parser to use for parsing this class -
-     this can be redefined in special classes, to parse classes with
-     Lisp, Prolog, ASN1, Basic :-) or whatever syntax."
-
-    ^ JavaParser ? Parser.
-
-!
-
-syntaxHighlighterClass
-    "return the class to use for syntaxHighlighting (prettyPrinting) this class -
-     this can be redefined in special classes, to highlight classes with
-     Lisp, Prolog, ASN1, Basic :-) or whatever syntax."
-
-    ^ JavaSyntaxHighlighter "/ ? SyntaxHighlighter
 ! !
 
 !JavaClass methodsFor:'compiling'!
@@ -1919,24 +1885,26 @@
 !JavaClass methodsFor:'reflection'!
 
 lookupFieldByNameAndType: aJavaNameAndType 
-    | result |
-
-    result := fields detect: 
+
+    | field cls |
+
+    cls := self. 
+    [ cls ~= JavaObject ] whileTrue: [
+        field := cls fields detect: 
                     [:each | 
-                    (each name = aJavaNameAndType name 
-                        and: [ each signature = aJavaNameAndType descriptor ]) ].
-    self breakPoint: #mh.
-    result ifNotNil: 
-            [
-            ^ result ].
-    self superclass ~= JavaObject 
-        ifTrue: 
-            [^self superclass lookupFieldByNameAndType: aJavaNameAndType.
-            ]
-        ifFalse: [ ^ nil ].
+                    each name = aJavaNameAndType name 
+                        and: [ each signature = aJavaNameAndType descriptor ]]
+                    ifNone:[nil].
+        self breakPoint: #mh.        
+        field ifNotNil:[^field].
+        cls := cls superclass. 
+    ].
+    self breakPoint: #jv. 
+    ^nil
 
     "Created: / 11-04-2011 / 21:27:08 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
     "Modified: / 18-05-2011 / 13:59:30 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+    "Modified: / 22-05-2011 / 16:27:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 lookupMethodByNameAndType: aJavaNameAndType