Skip to content

Instantly share code, notes, and snippets.

@CodaFi
Created April 9, 2013 20:45
Show Gist options
  • Save CodaFi/5349243 to your computer and use it in GitHub Desktop.
Save CodaFi/5349243 to your computer and use it in GitHub Desktop.
//
// NSArray+CFIWhere.h
// CFIArrayController
//
// Created by Robert Widmann on 4/9/13.
// Copyright (c) 2013 CodaFi. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface NSArray (CFIWhere)
+ (instancetype)arrayWithObjectsFromArray:(NSArray*)sourceArray passingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))testBlock;
- (NSArray*)where:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))predicate;
@end
+ (instancetype)arrayWithObjectsFromArray:(NSArray*)sourceArray passingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))testBlock {
return [sourceArray objectsAtIndexes:[sourceArray indexesOfObjectsPassingTest:testBlock]];
}
- (NSArray*)where:(BOOL (^)(id, NSUInteger, BOOL *))testBlock {
return [self objectsAtIndexes:[self indexesOfObjectsPassingTest:testBlock]];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment