diff options
Diffstat (limited to 'debian/uncrustify-trinity/uncrustify-trinity-0.76.0/tests/expected/oc/50081-more_blocks.m')
-rw-r--r-- | debian/uncrustify-trinity/uncrustify-trinity-0.76.0/tests/expected/oc/50081-more_blocks.m | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.76.0/tests/expected/oc/50081-more_blocks.m b/debian/uncrustify-trinity/uncrustify-trinity-0.76.0/tests/expected/oc/50081-more_blocks.m new file mode 100644 index 00000000..1fbb7c34 --- /dev/null +++ b/debian/uncrustify-trinity/uncrustify-trinity-0.76.0/tests/expected/oc/50081-more_blocks.m @@ -0,0 +1,74 @@ +int (^myBlock)(int) = ^ (int num) { + return num * multiplier; +}; +// for comparison +int (*fcnptr)(int); + +int d = i % 10; +repeat(10, ^ { putc('0' + d); +}); + + +void (^block)(void); +typedef void (^vstr_t)(char *); +typedef void (^workBlk_t)(void); + +void AllLinesInFile(char *f, vstr_t block) +{ + FILE *fp = fopen(f, "r"); + + if (!fp) + { + return; + } + char line[1024]; + + while (fgets(line, 1024, fp)) + { + block(line); + } + fclose(fp); +} + + +@implementation NSArray (WWDC) +-(NSArray *)map: (id (^)(id)) xform +{ + id result = [NSMutableArray array]; + + for (id elem in self) + { + [result addObject: xform(elem)]; + } + return result; +} + +-(NSArray *)collect: (BOOL (^)(id)) predicate +{ + id result = [NSMutableArray array]; + + for (id elem in self) + { + if (predicate(elem)) + { + [result addObject: elem]; + } + } + return result; +} + +// corner case: block literal in use with return type +id longLines = [allLines collect: ^ BOOL (id item) { + return [item length] > 20; +}]; + +// corner case: block literal in use with return type +id longLines = [allLines collect: ^ BOOL *(id item) { + return [item length] > 20; +}]; + +@end + +// 1. block literal: ^{ ... }; +// 2. block declaration: return_t (^name) (int arg1, int arg2, ...) NB: return_t is optional and name is also optional +// 3. block inline call ^ return_t (int arg) { ... }; NB: return_t is optional |