Super Poking

This lets you know if it’s safe to call super:

+ (BOOL) superMethodDiffers:(SEL)aSelector {

    Method ownMethod = class_getClassMethod([self class], aSelector);
    Method superMethod = class_getClassMethod([self superclass], aSelector);

    return (superMethod && (superMethod != ownMethod));

}

- (BOOL) superMethodDiffers:(SEL)aSelector {

    Method ownMethod = class_getInstanceMethod([self class], aSelector);
    Method superMethod = class_getInstanceMethod([self superclass], aSelector);

    return (superMethod && (superMethod != ownMethod));

}