Show type signatures when logging blocks
BlockTypeDescription adds a block’s type signature to its description.
It makes debugging more transparent, and turns an otherwise useless description into a useful one.
Because this project replaces an existing method on the private NSBlock
class, this should be used for debugging purposes only.
NSString * (^someBlock)(NSString *, BOOL, CGRect, float*[30]) = ^(NSString *a, BOOL b, CGRect c, float *d[30]) {
return @"Some return value";
};
NSLog(@"This is my block! %@", someBlock);
This is my block! <__NSGlobalBlock__: 0x35c0>
This is my block! <__NSGlobalBlock__: (id (^)(id, char, struct CGRect, float*[30]))>
BlockTypeDescription is available under the MIT license. See the LICENSE file for more info.