![]() |
![]() |
![]() |
Rest Reference Manual | |
---|---|---|---|---|
Top | Description | Object Hierarchy |
RestXmlParser; RestXmlNode; RestXmlParser * rest_xml_parser_new (void
); RestXmlNode * rest_xml_parser_parse_from_data (RestXmlParser *parser
,const gchar *data
,goffset len
); RestXmlNode * rest_xml_node_ref (RestXmlNode *node
); void rest_xml_node_unref (RestXmlNode *node
); const gchar * rest_xml_node_get_attr (RestXmlNode *node
,const gchar *attr_name
); RestXmlNode * rest_xml_node_find (RestXmlNode *node
,const gchar *tag
);
typedef struct { gchar *name; gchar *content; GHashTable *children; GHashTable *attrs; RestXmlNode *next; } RestXmlNode;
gchar * |
the name of the element |
gchar * |
the textual content of the element |
GHashTable * |
a GHashTable of string name to RestXmlNode for the children of the element. |
GHashTable * |
a GHashTable of string name to string values for the attributes of the element. |
RestXmlNode * |
the sibling RestXmlNode with the same name |
RestXmlParser * rest_xml_parser_new (void
);
Create a new RestXmlParser, for parsing XML documents.
Returns : |
a new RestXmlParser. |
RestXmlNode * rest_xml_parser_parse_from_data (RestXmlParser *parser
,const gchar *data
,goffset len
);
Parse the XML in data
, and return a new RestXmlNode. If data
is invalid
XML, NULL
is returned.
|
a RestXmlParser |
|
the XML content to parse |
|
the length of data
|
Returns : |
a new RestXmlNode, or NULL if the XML was invalid.
|
RestXmlNode * rest_xml_node_ref (RestXmlNode *node
);
Increases the reference count of node
.
|
a RestXmlNode |
Returns : |
the same node .
|
void rest_xml_node_unref (RestXmlNode *node
);
Decreases the reference count of node
. When its reference count drops to 0,
the node is finalized (i.e. its memory is freed).
|
a RestXmlNode |
const gchar * rest_xml_node_get_attr (RestXmlNode *node
,const gchar *attr_name
);
Get the value of the attribute named attr_name
, or NULL
if it doesn't
exist.
|
a RestXmlNode |
|
the name of an attribute |
Returns : |
the attribute value. This string is owned by RestXmlNode and should not be freed. |
RestXmlNode * rest_xml_node_find (RestXmlNode *node
,const gchar *tag
);
Searches for the first child node of start
named tag
.
|
a RestXmlNode |
|
the name of a node |
Returns : |
the first child node, or NULL if it doesn't exist.
|