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 <[email protected]> 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
