Class side #initialize is executed only when a class is loaded for the first time. Posteriors "updates" to the class, or even to the initialize method do not re-execute #initialize. Now, about the FFI particular requirements, I'd let Esteban answer :) On Tue, Nov 14, 2017 at 3:08 AM, Ben Coman <btc@openinworld.com> wrote:
Because I'm lazy to experiment this instant (not wanting to get distracted from my current track), and also its probably a useful remainder for others I'll just ask...
When MyClass is loaded, #initialize is sent to it. Typically the class-side>>initialize should not call "super initialize" to avoid re-initializing the superclaass, but what if MyClass doesn't implement #initialize? Does the message fall through to the superclass, or is #initialize only sent if MyClass implements it?
Concrete example... FFIExternalEnumeration subclass MyEnumeration needs to be sent #initializeEnumeration when it is loaded. We have...
FFIExternalEnustmeration>>#initialize self initializeEnumeration
so is MyEnumeration *required* to implement its own MyEnumeration>>#initialize, or can it rely FFIExternalEnustmeration>>#initialize. I believe it is the former, but just wanted to confirm my understanding.
cheers -ben
-- Guille Polito Research Engineer Centre de Recherche en Informatique, Signal et Automatique de Lille CRIStAL - UMR 9189 French National Center for Scientific Research - *http://www.cnrs.fr <http://www.cnrs.fr>* *Web:* *http://guillep.github.io* <http://guillep.github.io> *Phone: *+33 06 52 70 66 13