Skip to content

Commit 333e03d

Browse files
committed
Added method to deserialize an array from string
1 parent a75e750 commit 333e03d

2 files changed

Lines changed: 7 additions & 3 deletions

File tree

‎JSONModel/JSONModel/JSONModel.h‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -228,10 +228,9 @@ lastPathComponent], __LINE__, [NSString stringWithFormat:(s), ##__VA_ARGS__] )
228228
* @see arrayOfDictionariesFromModels:
229229
*/
230230
+(NSMutableArray*)arrayOfModelsFromDictionaries:(NSArray*)array __attribute__((deprecated("use arrayOfModelsFromDictionaries:error:")));
231-
232231
+(NSMutableArray*)arrayOfModelsFromDictionaries:(NSArray*)array error:(NSError**)err;
233-
234232
+(NSMutableArray*)arrayOfModelsFromData:(NSData*)data error:(NSError**)err;
233+
+(NSMutableArray*)arrayOfModelsFromString:(NSString*)string error:(NSError**)err;
235234

236235
/**
237236
* If you have an NSArray of data model objects, this method takes it in and outputs a list of the

‎JSONModel/JSONModel/JSONModel.m‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1094,14 +1094,19 @@ +(NSMutableArray*)arrayOfModelsFromDictionaries:(NSArray*)array
10941094
return [self arrayOfModelsFromDictionaries:array error:nil];
10951095
}
10961096

1097-
+(NSMutableArray*)arrayOfModelsFromData:(NSData *)data error:(NSError *__autoreleasing *)err
1097+
+ (NSMutableArray *)arrayOfModelsFromData:(NSData *)data error:(NSError **)err
10981098
{
10991099
id json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:err];
11001100
if (!json || ![json isKindOfClass:[NSArray class]]) return nil;
11011101

11021102
return [self arrayOfModelsFromDictionaries:json error:err];
11031103
}
11041104

1105+
+ (NSMutableArray *)arrayOfModelsFromString:(NSString *)string error:(NSError **)err
1106+
{
1107+
return [self arrayOfModelsFromData:[string dataUsingEncoding:NSUTF8StringEncoding] error:err];
1108+
}
1109+
11051110
// Same as above, but with error reporting
11061111
+(NSMutableArray*)arrayOfModelsFromDictionaries:(NSArray*)array error:(NSError**)err
11071112
{

0 commit comments

Comments
 (0)