Sha256: a6ac979f54462a8f72f1384e3c5c8144a35f87d188a4aad293a211918a4474ea
Contents?: true
Size: 1019 Bytes
Versions: 4
Compression:
Stored size: 1019 Bytes
Contents
// // NSSet+ObjectiveSugar.m // SampleProject // // Created by Marin Usalj on 11/23/12. // Copyright (c) 2012 @mneorr | mneorr.com. All rights reserved. // #import "NSSet+ObjectiveSugar.h" @implementation NSSet (ObjectiveSugar) - (id)first { NSArray *allObjects = self.allObjects; if (allObjects.count > 0) return allObjects[0]; return nil; } - (id)last { return self.allObjects.lastObject; } - (void)each:(void (^)(id))block { [self enumerateObjectsUsingBlock:^(id obj, BOOL *stop) { block(obj); }]; } - (void)eachWithIndex:(void (^)(id, int))block { __block int counter = 0; [self enumerateObjectsUsingBlock:^(id obj, BOOL *stop) { block(obj, counter); counter ++; }]; } - (NSArray *)map:(id (^)(id object))block { NSMutableArray *array = [NSMutableArray arrayWithCapacity:self.count]; for (id object in self) { id newObject = block(object); [array addObject:newObject]; } return array; } @end
Version data entries
4 entries across 4 versions & 1 rubygems