Declare a block method parameter without using a typedef Declare a block method parameter without using a typedef objective-c objective-c

Declare a block method parameter without using a typedef


- ( void )myMethodTakingPredicate: ( BOOL ( ^ )( int ) )predicate


This is how it goes, for example...

[self smartBlocks:@"Pen" youSmart:^(NSString *response) {        NSLog(@"Response:%@", response);    }];- (void)smartBlocks:(NSString *)yo youSmart:(void (^) (NSString *response))handler {    if ([yo compare:@"Pen"] == NSOrderedSame) {        handler(@"Ink");    }    if ([yo compare:@"Pencil"] == NSOrderedSame) {        handler(@"led");    }}


http://fuckingblocksyntax.com

As a method parameter:

- (void)someMethodThatTakesABlock:(returnType (^)(parameterTypes))blockName;