char *types; /* type encoding */
};
-
-
/* Filer types used to describe Ivars and Methods. */
#define _C_ID '@'
#define _C_CLASS '#'
*/
typedef struct objc_symtab {
unsigned long sel_ref_cnt; /* Unknown. */
- SEL *refs; /* Unknown. */
+ SEL refs; /* Unknown. */
unsigned short cls_def_cnt; /* Number of classes compiled
(defined) in the module. */
unsigned short cat_def_cnt; /* Number of categories
const char* ivar_type; /* Description of the Ivar's
type. Useful for
debuggers. */
- int ivar_offset; /* Byte offset from the base
+ int ivar_offset; /* Byte offset from the base
address of the instance
structure to the variable. */
struct objc_method_list* method_next; /* This variable is used to link
a method list to another. It
is a singly linked list. */
- int method_count; /* Number of methods defined in
+ int method_count; /* Number of methods defined in
this structure. */
struct objc_method {
SEL method_name; /* This variable is the method's
Class* objc_lookup_class(const char *name);
+Class* objc_next_class(void **enum_state);
+
const char *sel_get_name(SEL selector);
+const char *sel_get_type(SEL selector);
+
SEL sel_get_uid(const char *name);
+SEL sel_get_any_uid(const char *name);
+
+SEL sel_get_typed_uid(const char *name, const char*);
+
SEL sel_register_name(const char *name);
+SEL sel_register_typed_name(const char *name, const char*type);
+
+
BOOL sel_is_mapped (SEL aSel);
extern id class_create_instance(Class* class);