Maybe that explains the general idea better although a bit abstractly:

classValue.get(clazz).getOrCreateClassInfo(clazz).getOrCreateMetaClass(clazz).doWhatever(clazz-if-needed).getSomeMoreIfNeeded(clazz-if-needed)

Don't store the class in any objects of that chain, get the associated object only from ClassValue. Maybe that is too limiting in practice, maybe it just requires to think a bit differently, I don't know.

Alain

On 16.05.16 14:01, Jochen Theodorou wrote:
Which brings my mind back to my question regarding whether it is "good
architecture" to have a reference to the class in ClassInfo (or any
other metadata associated with a class) - again, I mean fundamentally,
independently of whether this is an option for a Groovy 2.4.7 or even
anything before a Groovy 3, because I fear it would likely require to
change several Groovy APIs and internals.

ok, let´s assume the ClassInfo does not reference the class, then as soon as you have a MetaClass, you have a reference to the class again. If not there, then in the method accessors...


Reply via email to