@@ -295,13 +295,12 @@ return self; } + (OFString *)className { - return [OFString - stringWithCString: (const char *)class_getName(self) - encoding: OF_STRING_ENCODING_ASCII]; + return [OFString stringWithCString: class_getName(self) + encoding: OF_STRING_ENCODING_ASCII]; } + (bool)isSubclassOfClass: (Class)class { for (Class iter = self; iter != Nil; iter = class_getSuperclass(iter)) @@ -358,13 +357,12 @@ IMP method = [class methodForSelector: selector]; if (method == NULL) @throw [OFInvalidArgumentException exception]; - return class_replaceMethod((Class)object_getClass(self), selector, - (IMP)method, typeEncodingForSelector(object_getClass(class), - selector)); + return class_replaceMethod(object_getClass(self), selector, method, + typeEncodingForSelector(object_getClass(class), selector)); } + (IMP)replaceInstanceMethod: (SEL)selector withMethodFromClass: (Class)class { @@ -371,11 +369,11 @@ IMP method = [class instanceMethodForSelector: selector]; if (method == NULL) @throw [OFInvalidArgumentException exception]; - return class_replaceMethod(self, selector, (IMP)method, + return class_replaceMethod(self, selector, method, typeEncodingForSelector(class, selector)); } + (void)inheritMethodsFromClass: (Class)class { @@ -484,23 +482,22 @@ return self; } - (Class)class { - return (Class)object_getClass(self); + return object_getClass(self); } - (Class)superclass { return class_getSuperclass(object_getClass(self)); } - (OFString *)className { - return [OFString - stringWithCString: (const char *)object_getClassName(self) - encoding: OF_STRING_ENCODING_ASCII]; + return [OFString stringWithCString: object_getClassName(self) + encoding: OF_STRING_ENCODING_ASCII]; } - (bool)isKindOfClass: (Class)class { for (Class iter = object_getClass(self); iter != Nil;