Hi, the #initialize message is sent only to the classes that implement this method. In *.st files it is an explicit call, Monticello does it slightly smarter way, see MCMethodDefinition>>#postloadOver: Cheers, -- Pavel 2017-11-14 3:08 GMT+01:00 Ben Coman <btc@openinworld.com>:
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