00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #import "objfw-defs.h"
00013
00014 #include <stddef.h>
00015 #include <stdint.h>
00016
00017 #import <objc/objc.h>
00018
00022 typedef enum {
00024 OF_ORDERED_ASCENDING = -1,
00026 OF_ORDERED_SAME = 0,
00028 OF_ORDERED_DESCENDING = 1
00029 } of_comparison_result_t;
00030
00034 @interface OFObject
00035 {
00037 Class isa;
00038 }
00039
00046 + (void)load;
00047
00055 + (void)initialize;
00056
00066 + alloc;
00067
00071 + (Class)class;
00072
00076 + (const char*)className;
00077
00083 + (BOOL)isSubclassOfClass: (Class)class_;
00084
00092 + (BOOL)instancesRespondToSelector: (SEL)selector;
00093
00100 + (BOOL)conformsToProtocol: (Protocol*)protocol;
00101
00107 + (IMP)instanceMethodForSelector: (SEL)selector;
00108
00116 + (IMP)setImplementation: (IMP)newimp
00117 forMethod: (SEL)selector;
00118
00126 + (IMP)replaceMethod: (SEL)selector
00127 withMethodFromClass: (Class)class_;
00128
00138 - init;
00139
00143 - (Class)class;
00144
00148 - (const char*)className;
00149
00154 - (BOOL)isKindOfClass: (Class)class_;
00155
00160 - (BOOL)respondsToSelector: (SEL)selector;
00161
00166 - (BOOL)conformsToProtocol: (Protocol*)protocol;
00167
00173 - (IMP)methodForSelector: (SEL)selector;
00174
00184 - (BOOL)isEqual: (OFObject*)obj;
00185
00194 - (uint32_t)hash;
00195
00204 - addMemoryToPool: (void*)ptr;
00205
00213 - (void*)allocMemoryWithSize: (size_t)size;
00214
00224 - (void*)allocMemoryForNItems: (size_t)nitems
00225 withSize: (size_t)size;
00226
00234 - (void*)resizeMemory: (void*)ptr
00235 toSize: (size_t)size;
00236
00246 - (void*)resizeMemory: (void*)ptr
00247 toNItems: (size_t)nitems
00248 withSize: (size_t)size;
00249
00256 - freeMemory: (void*)ptr;
00257
00264 - retain;
00265
00269 - (size_t)retainCount;
00270
00277 - (void)release;
00278
00283 - autorelease;
00284
00290 - (void)dealloc;
00291 @end
00292
00296 @protocol OFCopying
00300 - (id)copy;
00301 @end
00302
00309 @protocol OFMutableCopying
00313 - (id)mutableCopy;
00314 @end