mirror of
https://github.com/samsonjs/samhuri.net-ios.git
synced 2026-04-12 12:25:51 +00:00
48 lines
1.1 KiB
Objective-C
48 lines
1.1 KiB
Objective-C
//
|
|
// NSDictionary+ObjectiveSugar.m
|
|
// SampleProject
|
|
//
|
|
// Created by Marin Usalj on 11/23/12.
|
|
// Copyright (c) 2012 @mneorr | mneorr.com. All rights reserved.
|
|
//
|
|
|
|
#import "NSDictionary+ObjectiveSugar.h"
|
|
|
|
@implementation NSDictionary (Rubyfy)
|
|
|
|
- (void)each:(void (^)(id k, id v))block {
|
|
[self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
|
|
block(key, obj);
|
|
}];
|
|
}
|
|
|
|
- (void)eachKey:(void (^)(id k))block {
|
|
[self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
|
|
block(key);
|
|
}];
|
|
}
|
|
|
|
- (void)eachValue:(void (^)(id v))block {
|
|
[self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
|
|
block(obj);
|
|
}];
|
|
}
|
|
|
|
- (NSArray *)map:(id (^)(id key, id value))block {
|
|
NSMutableArray *array = [NSMutableArray array];
|
|
|
|
[self enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
|
|
id object = block(key, obj);
|
|
if (object) {
|
|
[array addObject:object];
|
|
}
|
|
}];
|
|
|
|
return array;
|
|
}
|
|
|
|
- (BOOL)hasKey:(id)key {
|
|
return !!self[key];
|
|
}
|
|
|
|
@end
|