43 lines
905 B
Mathematica
43 lines
905 B
Mathematica
|
//
|
||
|
// 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
|