aboutsummaryrefslogtreecommitdiff
path: root/libobjc/objc/objc-api.h
diff options
context:
space:
mode:
Diffstat (limited to 'libobjc/objc/objc-api.h')
-rw-r--r--libobjc/objc/objc-api.h16
1 files changed, 9 insertions, 7 deletions
diff --git a/libobjc/objc/objc-api.h b/libobjc/objc/objc-api.h
index d3e22f2..d0e3bb7 100644
--- a/libobjc/objc/objc-api.h
+++ b/libobjc/objc/objc-api.h
@@ -578,21 +578,23 @@ object_get_super_class
}
static inline BOOL
-object_is_class(id object)
+object_is_class (id object)
{
- return CLS_ISCLASS((Class)object);
+ return ((object != nil) && CLS_ISMETA (object->class_pointer));
}
-
+
static inline BOOL
-object_is_instance(id object)
+object_is_instance (id object)
{
- return (object!=nil)&&CLS_ISCLASS(object->class_pointer);
+ return ((object != nil) && CLS_ISCLASS (object->class_pointer));
}
static inline BOOL
-object_is_meta_class(id object)
+object_is_meta_class (id object)
{
- return CLS_ISMETA((Class)object);
+ return ((object != nil)
+ && !object_is_instance (object)
+ && !object_is_class (object));
}
struct sarray*