--- a/src/experiments/JavaLookup.st Fri Dec 30 12:42:21 2011 +0000
+++ b/src/experiments/JavaLookup.st Fri Dec 30 14:29:35 2011 +0000
@@ -283,6 +283,9 @@
m := self compileProxyWithSelector: selector in: receiver class calling: candidates.
ilc notNil ifTrue:[ilc bindTo: m forClass: receiver class].
"Install the proxy"
+
+"/ self halt.
+"/ JK: Skip for now
Class withoutUpdatingChangesDo:[
receiver class addSelector: selector withMethod: m.
].
@@ -296,7 +299,7 @@
"Modified: / 20-09-2011 / 00:03:48 / Jan Kurs <kursjan@fit.cvut.cz>"
"Modified (format): / 25-09-2011 / 21:08:45 / Jan Kurs <kursjan@fit.cvut.cz>"
"Created: / 19-11-2011 / 13:03:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 30-12-2011 / 10:46:14 / kursjan <kursjan@fit.cvut.cz>"
+ "Modified: / 30-12-2011 / 15:28:19 / kursjan <kursjan@fit.cvut.cz>"
! !
!JavaLookup::Smalltalk2Java methodsFor:'lookup (old)'!
@@ -487,13 +490,17 @@
compile:body
arguments:methods anyOne descriptor numPhysicalArgs
selector: selector.
- self
- addSelector:selector
- withMethod:proxy
- toClasS:class.
+
+"/ self halt.
+"/ JK: do NOT install here, just compile and return the proxy. Let someone else to install
+"/ self
+"/ addSelector:selector
+"/ withMethod:proxy
+"/ toClasS:class.
^ proxy
"Created: / 16-12-2011 / 23:21:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 30-12-2011 / 14:44:11 / kursjan <kursjan@fit.cvut.cz>"
! !
!JavaLookup::Smalltalk2Java methodsFor:'utilities (old)'!
--- a/src/experiments/ProxyMethodJavaMethodInvocationNode.st Fri Dec 30 12:42:21 2011 +0000
+++ b/src/experiments/ProxyMethodJavaMethodInvocationNode.st Fri Dec 30 14:29:35 2011 +0000
@@ -119,10 +119,14 @@
invocation := super generate: compiler.
"(descriptor return javaClass isJavaWrapperClass)"true ifTrue:[
+"/ invocation := MessageNode
+"/ receiver: invocation
+"/ selector: #javaUnwrap:
+"/ arg: (super generate: compiler).
invocation := MessageNode
receiver: invocation
- selector: #javaUnwrap:
- arg: (super generate: compiler).
+ selector: #javaUnwrapFrom:
+ arg: (ConstantNode value: descriptor return javaClassName).
].
^invocation
@@ -154,6 +158,7 @@
"
"Created: / 22-12-2011 / 09:27:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 30-12-2011 / 15:20:08 / kursjan <kursjan@fit.cvut.cz>"
! !
!ProxyMethodJavaMethodInvocationNode methodsFor:'testing'!