/* JSON free
* ZZJSON - Copyright (C) 2008 by Ivo van Poorten
* License: GNU Lesser General Public License version 2.1
*/
#include "zzjson.h"
void zzjson_free(ZZJSON_CONFIG *config, ZZJSON *zzjson) {
while (zzjson) {
ZZJSON *next;
switch(zzjson->type) {
case ZZJSON_OBJECT:
config->free(zzjson->value.object.label);
zzjson_free(config, zzjson->value.object.val);
break;
case ZZJSON_ARRAY:
zzjson_free(config, zzjson->value.array.val);
break;
case ZZJSON_STRING:
config->free(zzjson->value.string.string);
break;
default:
break;
}
next = zzjson->next;
config->free(zzjson);
zzjson = next;
}
}