Let's take this method as an example:
+ (void)animateWithDuration:(NSTimeInterval)duration
animations:(void (^)(void))animations
completion:(void (^)(BOOL finished))completion
It's simple enough to swizzle in a different or modified implementation of animatedWithDuration:animations:completion:
method itself. What if I am instead interested in doing this for the completion block?