diff options
Diffstat (limited to 'lib/json_util.c')
| -rw-r--r-- | lib/json_util.c | 51 | 
1 files changed, 51 insertions, 0 deletions
| diff --git a/lib/json_util.c b/lib/json_util.c new file mode 100644 index 00000000..67cde749 --- /dev/null +++ b/lib/json_util.c @@ -0,0 +1,51 @@ +/***************************************************************************\ +*                                                                           * +*  BitlBee - An IRC to IM gateway                                           * +*  Helper functions for json.c                                              * +*                                                                           * +*  Copyright 2012 Wilmer van der Gaast <wilmer@gaast.net>                   * +*                                                                           * +*  This library is free software; you can redistribute it and/or            * +*  modify it under the terms of the GNU Lesser General Public               * +*  License as published by the Free Software Foundation, version            * +*  2.1.                                                                     * +*                                                                           * +*  This library is distributed in the hope that it will be useful,          * +*  but WITHOUT ANY WARRANTY; without even the implied warranty of           * +*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU        * +*  Lesser General Public License for more details.                          * +*                                                                           * +*  You should have received a copy of the GNU Lesser General Public License * +*  along with this library; if not, write to the Free Software Foundation,  * +*  Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA           * +*                                                                           * +****************************************************************************/ + +#include <stdlib.h> +#include <string.h> + +#include "json_util.h" + +json_value *json_o_get( json_value *obj, json_char *name ) +{  +	int i; +	 +	if( obj->type != json_object ) +		return NULL; + +	for( i = 0; i < obj->u.object.length; ++ i) +		if( strcmp( obj->u.object.values[i].name, name ) == 0 ) +			return obj->u.object.values[i].value; + +	return NULL; +} + +const char *json_o_str( json_value *obj, json_char *name ) +{  +	json_value *ret = json_o_get( obj, name ); +	 +	if( ret ) +		return ret->u.string.ptr; +	else +		return NULL; +} | 
