メソッドはMethod型で定義され,ランタイムAPIを以下のように追いかけていくと,
@objc-class.h
typedef struct class-method *Method
同じく@objc-class.h
struct class-method {
SEL method_name;
char *method_types;
IMP method_imp;
}
となってて,
- メソッド名(セレクタ)を表すSEL型の変数
- メソッドへの引数を表すchar型の変数
- メソッドの実装部分へのポインタを表すIMP型の変数
で構成される構造体にたどり着く.