From c9fc70869e5a5dcee2a65be7d1dd75385b4d2eb4 Mon Sep 17 00:00:00 2001 From: Rory Sinclair Date: Wed, 13 Apr 2022 19:13:25 +0100 Subject: [PATCH] handle simple values in JSON array responses --- KeyValueObjectMapping/DCKeyValueObjectMapping.m | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/KeyValueObjectMapping/DCKeyValueObjectMapping.m b/KeyValueObjectMapping/DCKeyValueObjectMapping.m index 5fa2d55..dff62f2 100644 --- a/KeyValueObjectMapping/DCKeyValueObjectMapping.m +++ b/KeyValueObjectMapping/DCKeyValueObjectMapping.m @@ -58,13 +58,17 @@ - (NSArray *)parseArray:(NSArray *)array forParentObject:(id)parentObject { return nil; } NSMutableArray *values = [[NSMutableArray alloc] initWithCapacity:[array count]]; - for (id dictionary in array) { - if ([dictionary isKindOfClass:[NSNull class]]) { + for (id value in array) { + if ([value isKindOfClass:[NSNull class]]) { continue; + } else if ([value isKindOfClass:[NSDictionary class]]) { + id parsedValue = [self parseDictionary:value forParentObject:parentObject]; + [values addObject:parsedValue]; + } else { + [values addObject:value]; } - id value = [self parseDictionary:dictionary forParentObject:parentObject]; - [values addObject:value]; } + return [NSArray arrayWithArray:values]; }