Re: About extracting common methods to reduce the size of class files

2018-01-23 Thread Daniel Sun
> If that subclass is in Java, you will save the > metaclass for the Java subclass in the static field, that is supposed to > hold the metaclass for the base class. That's not good. You're right. I forgot the scenario... Cheers, Daniel.Sun -- Sent from: http://groovy.329449.n5.nabble.com/Gro

Re: About extracting common methods to reduce the size of class files

2018-01-23 Thread Daniel Sun
> Oh you compare wrong. groovyObj.foo() would still work. That's great! `groovyObj.invokeMethod("foo", EMPTY_OBJECT_ARRAY) ` is not better than `InvokerHelper.invokeMethod(groovyObj, "foo", EMPTY_OBJECT_ARRAY) `, so I think it is OK to change :) Cheers, Daniel.Sun -- Sent from: http://groovy.3

Re: About extracting common methods to reduce the size of class files

2018-01-23 Thread Jochen Theodorou
Am 23.01.2018 um 12:42 schrieb Jochen Theodorou: Am 23.01.2018 um 01:18 schrieb Daniel Sun: Hi Jochen $getStaticMetaClass can I think not be put in an interface. It needs static information about the exact class this method is in and there is supposed to be one for each Groovy class we cre

Re: About extracting common methods to reduce the size of class files

2018-01-23 Thread Jochen Theodorou
Am 23.01.2018 um 01:18 schrieb Daniel Sun: Hi Jochen $getStaticMetaClass can I think not be put in an interface. It needs static information about the exact class this method is in and there is supposed to be one for each Groovy class we create... While I investigated the implementation of

Re: About extracting common methods to reduce the size of class files

2018-01-22 Thread Daniel Sun
Hi Jochen > $getStaticMetaClass can I think not be put in an interface. It needs > static information about the exact class this method is in and there is > supposed to be one for each Groovy class we create... While I investigated the implementation of the instance method `$getStaticMetaClas

Re: About extracting common methods to reduce the size of class files

2018-01-22 Thread Jochen Theodorou
And now with Jochen's feedback ;) $getStaticMetaClass can I think not be put in an interface. It needs static information about the exact class this method is in and there is supposed to be one for each Groovy class we create... if memory serves me right. Moving the others to GroovyObject wo

Re: About extracting common methods to reduce the size of class files

2018-01-22 Thread Daniel Sun
Looking forward to Jochen's feedback too ;-) Cheers, Daniel.Sun -- Sent from: http://groovy.329449.n5.nabble.com/Groovy-Dev-f372993.html

Re: About extracting common methods to reduce the size of class files

2018-01-22 Thread Paul King
Obviously for 3.0. I like the idea in general. I'd check with Jochen on whether he thinks any future MOP work might change which methods we'd want to extract. Cheers, Paul. On Mon, Jan 22, 2018 at 11:12 PM, Daniel Sun wrote: > Hi all, > >`$getStaticMetaClass`, `getMetaClass`, `setMetaCl

About extracting common methods to reduce the size of class files

2018-01-22 Thread Daniel Sun
Hi all, `$getStaticMetaClass`, `getMetaClass`, `setMetaClass`, `invokeMethod`, `getProperty`, `setProperty`, etc. are generated for all groovy classes(implements `groovy.lang.GroovyObject`). In order to reduce the size of class files and speed up generating class files, I suggest extracting