00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #import "objfw-defs.h"
00018
00019 #include <stddef.h>
00020 #include <stdint.h>
00021
00022 #ifdef OF_OBJFW_RUNTIME
00023 # import <objfw-rt.h>
00024 #else
00025 # import <objc/objc.h>
00026 #endif
00027
00031 typedef enum of_comparison_result_t {
00033 OF_ORDERED_ASCENDING = -1,
00035 OF_ORDERED_SAME = 0,
00037 OF_ORDERED_DESCENDING = 1
00038 } of_comparison_result_t;
00039
00043 typedef struct of_range_t {
00045 size_t start;
00047 size_t length;
00048 } of_range_t;
00049
00050 @class OFString;
00051
00055 @interface OFObject
00056 {
00058 Class isa;
00059 }
00060
00067 + (void)load;
00068
00076 + (void)initialize;
00077
00087 + alloc;
00088
00092 + (Class)class;
00093
00097 + (OFString*)className;
00098
00104 + (BOOL)isSubclassOfClass: (Class)class_;
00105
00109 + (Class)superclass;
00110
00118 + (BOOL)instancesRespondToSelector: (SEL)selector;
00119
00126 + (BOOL)conformsToProtocol: (Protocol*)protocol;
00127
00133 + (IMP)instanceMethodForSelector: (SEL)selector;
00134
00139 + (const char*)typeEncodingForInstanceSelector: (SEL)selector;
00140
00146 + (OFString*)description;
00147
00155 + (IMP)setImplementation: (IMP)newimp
00156 forClassMethod: (SEL)selector;
00157
00165 + (IMP)replaceClassMethod: (SEL)selector
00166 withMethodFromClass: (Class)class_;
00167
00175 + (IMP)setImplementation: (IMP)newimp
00176 forInstanceMethod: (SEL)selector;
00177
00185 + (IMP)replaceInstanceMethod: (SEL)selector
00186 withMethodFromClass: (Class)class_;
00187
00197 - init;
00198
00202 - (Class)class;
00203
00207 - (OFString*)className;
00208
00213 - (BOOL)isKindOfClass: (Class)class_;
00214
00219 - (BOOL)respondsToSelector: (SEL)selector;
00220
00225 - (BOOL)conformsToProtocol: (Protocol*)protocol;
00226
00232 - (IMP)methodForSelector: (SEL)selector;
00233
00239 - (const char*)typeEncodingForSelector: (SEL)selector;
00240
00250 - (BOOL)isEqual: (id)obj;
00251
00260 - (uint32_t)hash;
00261
00267 - (OFString*)description;
00268
00277 - (void)addMemoryToPool: (void*)ptr;
00278
00286 - (void*)allocMemoryWithSize: (size_t)size;
00287
00297 - (void*)allocMemoryForNItems: (size_t)nitems
00298 withSize: (size_t)size;
00299
00307 - (void*)resizeMemory: (void*)ptr
00308 toSize: (size_t)size;
00309
00319 - (void*)resizeMemory: (void*)ptr
00320 toNItems: (size_t)nitems
00321 withSize: (size_t)size;
00322
00329 - (void)freeMemory: (void*)ptr;
00330
00337 - retain;
00338
00342 - (size_t)retainCount;
00343
00350 - (void)release;
00351
00356 - autorelease;
00357
00363 - (void)dealloc;
00364 @end
00365
00369 @protocol OFCopying
00373 - copy;
00374 @end
00375
00382 @protocol OFMutableCopying
00386 - mutableCopy;
00387 @end
00388
00394 @protocol OFComparing
00401 - (of_comparison_result_t)compare: (id)obj;
00402 @end
00403
00404 extern size_t of_pagesize;