Commit 07c1d3c9 authored by Jonathan Beck's avatar Jonathan Beck

Add function to get parent node in API and python bindings.

parent f605777d
......@@ -147,6 +147,13 @@ extern "C" {
*/
PLIST_API plist_t plist_get_prev_sibling(plist_t node);
/**
* Get the parent of a node
*
* @param node the parent (NULL if node is root)
*/
PLIST_API plist_t plist_get_parent(plist_t node);
/**
* Get the nth child of a #PLIST_ARRAY node.
*
......
......@@ -195,6 +195,11 @@ plist_t plist_get_prev_sibling(plist_t node)
return (plist_t) g_node_prev_sibling((GNode *) node);
}
plist_t plist_get_parent(plist_t node)
{
return node ? (plist_t) ((GNode *) node)->parent : NULL;
}
plist_t plist_get_array_nth_el(plist_t node, uint32_t n)
{
plist_t ret = NULL;
......
......@@ -141,6 +141,14 @@ typedef struct {
return NULL;
}
PListNode* get_parent() {
plist_t node = plist_get_parent( $self->node );
if (node) {
return allocate_wrapper(node, 1);
}
return NULL;
}
%newobject as_key;
char* as_key() {
char* k = NULL;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment