aboutsummaryrefslogtreecommitdiff
path: root/libobjc/objc/runtime.h
diff options
context:
space:
mode:
authorNicola Pero <nicola.pero@meta-innovation.com>2010-12-19 16:04:55 +0000
committerNicola Pero <nicola@gcc.gnu.org>2010-12-19 16:04:55 +0000
commitecfc27058c485e0c42cdc940b878a31455f722c6 (patch)
tree63f8b51d314600b71e1e175e389c5d7bd3a61efc /libobjc/objc/runtime.h
parent37a68925ce3060f4321be2a53a2ca59b64646a52 (diff)
downloadgcc-ecfc27058c485e0c42cdc940b878a31455f722c6.zip
gcc-ecfc27058c485e0c42cdc940b878a31455f722c6.tar.gz
gcc-ecfc27058c485e0c42cdc940b878a31455f722c6.tar.bz2
In libobjc/: 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/: 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com> * objc/message.h: Updated comments. * objc/runtime.h: Updated comments. From-SVN: r168062
Diffstat (limited to 'libobjc/objc/runtime.h')
-rw-r--r--libobjc/objc/runtime.h32
1 files changed, 28 insertions, 4 deletions
diff --git a/libobjc/objc/runtime.h b/libobjc/objc/runtime.h
index 758d2d0..8d38015 100644
--- a/libobjc/objc/runtime.h
+++ b/libobjc/objc/runtime.h
@@ -45,8 +45,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
# error You can not include both objc/objc-api.h and objc/runtime.h. Include objc/objc-api.h for the traditional GNU Objective-C Runtime API and objc/runtime.h for the modern one.
#endif
-/* TODO: This file is incomplete. */
-
#include "objc.h"
#include "objc-decls.h"
@@ -875,8 +873,6 @@ objc_EXPORT Property *protocol_copyPropertyList (Protocol *protocol, unsigned in
objc_EXPORT Protocol **protocol_copyProtocolList (Protocol *protocol, unsigned int *numberOfReturnedProtocols);
-/* TODO: Add all the other functions in the API. */
-
/** Implementation: the following hook is in init.c. */
/* This is a hook which is called by __objc_exec_class every time a
@@ -937,6 +933,28 @@ struct __objcFastEnumerationState
*/
+/* Compatibility Note: The Apple/NeXT runtime has the functions
+ objc_copyImageNames (), class_getImageName () and
+ objc_copyClassNamesForImage () but they are undocumented. The GNU
+ runtime does not have them at the moment. */
+
+/* Compatibility Note: The Apple/NeXT runtime has the functions
+ objc_setAssociatedObject (), objc_getAssociatedObject (),
+ objc_removeAssociatedObjects () and the objc_AssociationPolicy type
+ and related enum. The GNU runtime does not have them yet.
+ TODO: Implement them. */
+
+/* Compatibility Note: The Apple/NeXT runtime has the function
+ objc_setForwardHandler (). The GNU runtime does not have it
+ because messaging (and, in particular, forwarding) works in a
+ different (incompatible) way with the GNU runtime. If you need to
+ customize message forwarding at the Objective-C runtime level (that
+ is, if you are implementing your own "Foundation" library such as
+ GNUstep Base on top of the Objective-C runtime), in objc/message.h
+ there are hooks (that work in the framework of the GNU runtime) to
+ do so. */
+
+
/** Implementation: the following functions are in memory.c. */
/* Traditional GNU Objective-C Runtime functions that are used for
@@ -964,6 +982,12 @@ objc_EXPORT void objc_free(void *mem);
/** Implementation: the following functions are in gc.c. */
+/* The GNU Objective-C Runtime has a different implementation of
+ garbage collection.
+
+ Compatibility Note: these functions are not available with the
+ Apple/NeXT runtime. */
+
/* Mark the instance variable as inaccessible to the garbage
collector. */
objc_EXPORT void class_ivar_set_gcinvisible (Class _class,