Added selector lookup functions. Implementations by Eric Wasylishen.

main
theraven 16 years ago
parent 7af08f5a82
commit 4771cd4e43

@ -256,6 +256,14 @@ objc_property_t protocol_getProperty(Protocol *p, const char *name,
BOOL protocol_isEqual(Protocol *p, Protocol *other); BOOL protocol_isEqual(Protocol *p, Protocol *other);
const char *sel_getName(SEL sel);
SEL sel_getUid(const char *selName);
BOOL sel_isEqual(SEL sel1, SEL sel2);
SEL sel_registerName(const char *selName);
#else #else
#include "runtime-legacy.h" #include "runtime-legacy.h"
#endif // __LEGACY_GNU_MODE__ #endif // __LEGACY_GNU_MODE__

@ -112,7 +112,7 @@ static Method class_getInstanceMethodNonrecursive(Class aClass, SEL aSelector)
static void objc_updateDtableForClassContainingMethod(Method m) static void objc_updateDtableForClassContainingMethod(Method m)
{ {
Class nextClass = Nil; Class nextClass = Nil;
void *state; void *state = NULL;
SEL sel = method_getName(m); SEL sel = method_getName(m);
while (Nil != (nextClass = objc_next_class(&state))) while (Nil != (nextClass = objc_next_class(&state)))
{ {
@ -846,3 +846,23 @@ BOOL protocol_isEqual(Protocol *p, Protocol *other)
} }
return NO; return NO;
} }
const char *sel_getName(SEL sel)
{
return sel_get_name(sel);
}
SEL sel_getUid(const char *selName)
{
return sel_get_uid(selName);
}
BOOL sel_isEqual(SEL sel1, SEL sel2)
{
return sel_eq(sel1, sel2);
}
SEL sel_registerName(const char *selName)
{
return sel_register_name(selName);
}

Loading…
Cancel
Save