I want to return from outer function from inside async inner function. In swift, I would have used completion handler for this purpose which would escape from function. But
Easier is just to call another function that tells it's completed.
-(void)chosenFrom:(NSDictionary *)info{ [self asyncCode:info withCompletion:^(NSData *imageData) { if(imageData) { [self completedAsync:imageData]; } }]; } -(void)completedAsync:(NSData*) imageData { // do your thang. }