diff options
author | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-02-09 22:54:14 +0100 |
---|---|---|
committer | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-02-09 22:54:14 +0100 |
commit | 7d44a3313c9be065f962975b362d29684bcd3418 (patch) | |
tree | 889a04075aaab2fc7967912890a69b74a364123b /Objective-C/libobjcl.h | |
parent | 8cab8f5237616e10d3f5fb35d2a701ec779159c9 (diff) |
Objective-C layer: Add functions for class creation.
darcs-hash:d604bd4a63ca384220760be319d64759ebbd9517
Diffstat (limited to 'Objective-C/libobjcl.h')
-rw-r--r-- | Objective-C/libobjcl.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Objective-C/libobjcl.h b/Objective-C/libobjcl.h index afe9f56..56654fc 100644 --- a/Objective-C/libobjcl.h +++ b/Objective-C/libobjcl.h @@ -45,6 +45,7 @@ typedef struct objc_ivar *IVAR_T; #ifdef HAVE_SYS_SEM_H #include <sys/sem.h> +#ifndef __APPLE__ /* According to the Single Unix Specification, Version 3, the semun union type must be defined by the application writer as follows: */ union semun @@ -54,6 +55,7 @@ union semun unsigned short *array; /* Array for GETALL, SETALL */ }; #endif +#endif extern NSException *objcl_oom_exception; extern id objcl_current_exception; @@ -174,3 +176,24 @@ objcl_release_lock (void *lock); void objcl_initialise_lock (void **lock); + +Class +objcl_create_class (const char *class_name, + const char *superclass, + int protocol_number, + const char *protocol_names[], + int ivar_number, + const char *ivar_names[], + const char *ivar_typespecs[]); + +void +objcl_add_method (Class class, + SEL method_name, + IMP callback, + int argc, + const char *return_typespec, + const char *arg_typespecs[], + const char *signature); + +void +objcl_finalise_class (Class class); |