diff options
Diffstat (limited to 'Objective-C')
-rw-r--r-- | Objective-C/libobjcl.h | 3 | ||||
-rw-r--r-- | Objective-C/libobjcl.m | 8 |
2 files changed, 8 insertions, 3 deletions
diff --git a/Objective-C/libobjcl.h b/Objective-C/libobjcl.h index b5cefce..b3e1a3a 100644 --- a/Objective-C/libobjcl.h +++ b/Objective-C/libobjcl.h @@ -203,7 +203,8 @@ objcl_add_method (Class class, int argc, const char *return_typespec, const char *arg_typespecs[], - const char *signature); + const char *signature, + int registered_p); void objcl_finalise_class (Class class); diff --git a/Objective-C/libobjcl.m b/Objective-C/libobjcl.m index 8489891..1e70a37 100644 --- a/Objective-C/libobjcl.m +++ b/Objective-C/libobjcl.m @@ -807,14 +807,18 @@ objcl_add_method (Class class, int argc, const char *return_typespec, const char *arg_typespecs[], - const char *signature) + const char *signature, + int registered_p) { IMP imp; imp = objcl_create_imp (callback, argc, return_typespec, arg_typespecs); #ifdef __NEXT_RUNTIME__ - preclass_addMethod (class, method_name, imp, signature); + if (registered_p) + class_addMethod (class, method_name, imp, signature); + else + preclass_addMethod (class, method_name, imp, signature); #else NSString *class_name; struct ObjCLMethod **methods; |