Intermediate Representation of XML-RPC Values. More...
#include "xr-lib.h"Go to the source code of this file.
Data Structures | |
| struct | _xr_blob |
| Type used to pass blobs around in the user code. More... | |
Typedefs | |
| typedef struct _xr_value | xr_value |
| Opaque data structure that holds information about particular node. More... | |
| typedef struct _xr_blob | xr_blob |
| Type used to pass blobs around in the user code. More... | |
Enumerations | |
| enum | _xr_value_node_type { XRV_ARRAY, XRV_STRUCT, XRV_MEMBER, XRV_INT, XRV_STRING, XRV_BOOLEAN, XRV_DOUBLE, XRV_TIME, XRV_BLOB } |
| Value Node Types. More... | |
Functions | |
| G_BEGIN_DECLS xr_blob * | xr_blob_new (char *buf, int len) |
| Create new blob. More... | |
| void | xr_blob_unref (xr_blob *blob) |
| Free blob. More... | |
| xr_blob * | xr_blob_ref (xr_blob *blob) |
| Take reference to blbo. More... | |
| xr_value * | xr_value_ref (xr_value *val) |
| Take reference to the node. More... | |
| void | xr_value_unref (xr_value *val) |
| Unref xr_value node. More... | |
| xr_value * | xr_value_string_new (const char *val) |
| Create new xr_value node of type XRV_STRING. More... | |
| xr_value * | xr_value_int_new (int val) |
| Create new xr_value node of type XRV_INT. More... | |
| xr_value * | xr_value_bool_new (int val) |
| Create new xr_value node of type XRV_BOOLEAN. More... | |
| xr_value * | xr_value_double_new (double val) |
| Create new xr_value node of type XRV_DOUBLE. More... | |
| xr_value * | xr_value_time_new (const char *val) |
| Create new xr_value node of type XRV_TIME. More... | |
| xr_value * | xr_value_blob_new (xr_blob *val) |
| Create new xr_value node of type XRV_BLOB. More... | |
| gboolean | xr_value_to_int (xr_value *val, int *nval) |
| Extract xr_value of type XRV_INT into the native language type. More... | |
| gboolean | xr_value_to_string (xr_value *val, char **nval) |
| Extract xr_value of type XRV_STRING into the native language type. More... | |
| gboolean | xr_value_to_bool (xr_value *val, int *nval) |
| Extract xr_value of type XRV_BOOLEAN into the native language type. More... | |
| gboolean | xr_value_to_double (xr_value *val, double *nval) |
| Extract xr_value of type XRV_DOUBLE into the native language type. More... | |
| gboolean | xr_value_to_time (xr_value *val, char **nval) |
| Extract xr_value of type XRV_TIME into the native language type. More... | |
| gboolean | xr_value_to_blob (xr_value *val, xr_blob **nval) |
| Extract xr_value of type XRV_BLOB into the native language type. More... | |
| gboolean | xr_value_to_value (xr_value *val, xr_value **nval) |
| Just a convenience interface to xr_value_ref. More... | |
| int | xr_value_get_type (xr_value *val) |
| Get type of xr_value node. More... | |
| xr_value * | xr_value_array_new () |
| Create new array xr_value node. More... | |
| void | xr_value_array_append (xr_value *arr, xr_value *val) |
| Add value to the array node. More... | |
| GSList * | xr_value_get_items (xr_value *arr) |
| Get list of items from the array node. More... | |
| xr_value * | xr_value_struct_new () |
| Create new struct xr_value node. More... | |
| void | xr_value_struct_set_member (xr_value *str, const char *name, xr_value *val) |
| Set struct member value. More... | |
| xr_value * | xr_value_get_member (xr_value *str, const char *name) |
| Get member value from the struct node. More... | |
| GSList * | xr_value_get_members (xr_value *str) |
| Get list of XRV_MEMBER nodes from the struct node. More... | |
| const char * | xr_value_get_member_name (xr_value *mem) |
| Get name of the struct member from the XRV_MEMBER node. More... | |
| xr_value * | xr_value_get_member_value (xr_value *mem) |
| Get value of the struct member from the XRV_MEMBER node. More... | |
| gboolean | xr_value_is_error_retval (xr_value *val, int *errcode, char **errmsg) |
| Check if given node is stadard XML-RPC error struct. More... | |
| void | xr_value_dump (xr_value *v, GString *string, int indent) |
| Debugging function that dumps node tree to the string. More... | |
Intermediate Representation of XML-RPC Values.
This code is used to manipulate tree of xr_value nodes, which represent all types defined in the XML-RPC specification.
These types are: int, string, boolean, double, time, base64 (blob), struct and array.
There is one additional node type to represent struct memeber (XRV_MEMBER).