// // NSArray+MTLManipulationAdditions.m // Mantle // // Created by Josh Abernathy on 9/19/12. // Copyright (c) 2012 GitHub. All rights reserved. // #import "NSArray+MTLManipulationAdditions.h" @interface NSArray (MTLDeclarations) // This declaration is needed so Mantle can be compiled with SDK 6 / 10.8. - (id)firstObject; @end @implementation NSArray (MTLManipulationAdditions) - (id)mtl_firstObject { return self.firstObject; } - (instancetype)mtl_arrayByRemovingObject:(id)object { NSMutableArray *result = [self mutableCopy]; [result removeObject:object]; return result; } - (instancetype)mtl_arrayByRemovingFirstObject { if (self.count == 0) return self; return [self subarrayWithRange:NSMakeRange(1, self.count - 1)]; } - (instancetype)mtl_arrayByRemovingLastObject { if (self.count == 0) return self; return [self subarrayWithRange:NSMakeRange(0, self.count - 1)]; } @end