В ObjC
используется ObjC
Messaging
, static binding
, dynamic typing
, dynamic binding
, dynamic method resolution
, dynamic loading
, introspector
и т.д.
Важно отметить, что основной метод objc_msgSend
отвечает за то, что вы отправляете селектор и отправляете его объект, и рассматриваете это в таблицах методов класса, чтобы выяснить, какой именно кусок кода должен обрабатывать его.
Мои проблемы здесь:
-
Является ли
Swift
делать что - то подобное, какObjC
во время выполнения? -
Как
Swift runtime
находит код реализации для некоторого метода object/class? -
В
ObjC
classes
иobjects
скомпилируются для некоторыхruntime types
таких какC struct
во время выполнения. Тогда каковы такиеclasses
иobjects
скомпилированные в runtime вSwift
? -
Есть ли у
Swift runtime
что-то вродеclass/meta class/isa pointer/super pointer
?