<!-- ##### SECTION Title ##### -->
N-ary Trees

<!-- ##### SECTION Short_Description ##### -->


<!-- ##### SECTION Long_Description ##### -->
<para>

</para>

<!-- ##### SECTION See_Also ##### -->
<para>

</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### SECTION Image ##### -->


<!-- ##### STRUCT GNode ##### -->
<para>

</para>

@data: 
@next: 
@prev: 
@parent: 
@children: 

<!-- ##### FUNCTION g_node_new ##### -->
<para>

</para>

@data: 
@Returns: 


<!-- ##### FUNCTION g_node_copy ##### -->
<para>

</para>

@node: 
@Returns: 


<!-- ##### USER_FUNCTION GCopyFunc ##### -->
<para>

</para>

@src: 
@data: 
@Returns: 


<!-- ##### FUNCTION g_node_copy_deep ##### -->
<para>

</para>

@node: 
@copy_func: 
@data: 
@Returns: 


<!-- ##### FUNCTION g_node_insert ##### -->
<para>

</para>

@parent: 
@position: 
@node: 
@Returns: 


<!-- ##### FUNCTION g_node_insert_before ##### -->
<para>

</para>

@parent: 
@sibling: 
@node: 
@Returns: 


<!-- ##### FUNCTION g_node_insert_after ##### -->
<para>

</para>

@parent: 
@sibling: 
@node: 
@Returns: 


<!-- ##### MACRO g_node_append ##### -->
<para>

</para>

@parent: 
@node: 


<!-- ##### FUNCTION g_node_prepend ##### -->
<para>

</para>

@parent: 
@node: 
@Returns: 


<!-- ##### MACRO g_node_insert_data ##### -->
<para>

</para>

@parent: 
@position: 
@data: 


<!-- ##### MACRO g_node_insert_data_before ##### -->
<para>

</para>

@parent: 
@sibling: 
@data: 


<!-- ##### MACRO g_node_append_data ##### -->
<para>

</para>

@parent: 
@data: 


<!-- ##### MACRO g_node_prepend_data ##### -->
<para>

</para>

@parent: 
@data: 


<!-- ##### FUNCTION g_node_reverse_children ##### -->
<para>

</para>

@node: 


<!-- ##### FUNCTION g_node_traverse ##### -->
<para>

</para>

@root: 
@order: 
@flags: 
@max_depth: 
@func: 
@data: 


<!-- ##### ENUM GTraverseFlags ##### -->
<para>

</para>

@G_TRAVERSE_LEAVES: 
@G_TRAVERSE_NON_LEAVES: 
@G_TRAVERSE_ALL: 
@G_TRAVERSE_MASK: 
@G_TRAVERSE_LEAFS: 
@G_TRAVERSE_NON_LEAFS: 

<!-- ##### USER_FUNCTION GNodeTraverseFunc ##### -->
<para>

</para>

@node: 
@data: 
@Returns: 


<!-- ##### FUNCTION g_node_children_foreach ##### -->
<para>

</para>

@node: 
@flags: 
@func: 
@data: 


<!-- ##### USER_FUNCTION GNodeForeachFunc ##### -->
<para>

</para>

@node: 
@data: 


<!-- ##### FUNCTION g_node_get_root ##### -->
<para>

</para>

@node: 
@Returns: 


<!-- ##### FUNCTION g_node_find ##### -->
<para>

</para>

@root: 
@order: 
@flags: 
@data: 
@Returns: 


<!-- ##### FUNCTION g_node_find_child ##### -->
<para>

</para>

@node: 
@flags: 
@data: 
@Returns: 


<!-- ##### FUNCTION g_node_child_index ##### -->
<para>

</para>

@node: 
@data: 
@Returns: 


<!-- ##### FUNCTION g_node_child_position ##### -->
<para>

</para>

@node: 
@child: 
@Returns: 


<!-- ##### MACRO g_node_first_child ##### -->
<para>

</para>

@node: 


<!-- ##### FUNCTION g_node_last_child ##### -->
<para>

</para>

@node: 
@Returns: 


<!-- ##### FUNCTION g_node_nth_child ##### -->
<para>

</para>

@node: 
@n: 
@Returns: 


<!-- ##### FUNCTION g_node_first_sibling ##### -->
<para>

</para>

@node: 
@Returns: 


<!-- ##### MACRO g_node_next_sibling ##### -->
<para>

</para>

@node: 


<!-- ##### MACRO g_node_prev_sibling ##### -->
<para>

</para>

@node: 


<!-- ##### FUNCTION g_node_last_sibling ##### -->
<para>

</para>

@node: 
@Returns: 


<!-- ##### MACRO G_NODE_IS_LEAF ##### -->
<para>

</para>

@node: 


<!-- ##### MACRO G_NODE_IS_ROOT ##### -->
<para>

</para>

@node: 


<!-- ##### FUNCTION g_node_depth ##### -->
<para>

</para>

@node: 
@Returns: 


<!-- ##### FUNCTION g_node_n_nodes ##### -->
<para>

</para>

@root: 
@flags: 
@Returns: 


<!-- ##### FUNCTION g_node_n_children ##### -->
<para>

</para>

@node: 
@Returns: 


<!-- ##### FUNCTION g_node_is_ancestor ##### -->
<para>

</para>

@node: 
@descendant: 
@Returns: 


<!-- ##### FUNCTION g_node_max_height ##### -->
<para>

</para>

@root: 
@Returns: 


<!-- ##### FUNCTION g_node_unlink ##### -->
<para>

</para>

@node: 


<!-- ##### FUNCTION g_node_destroy ##### -->
<para>

</para>

@root: 


<!-- ##### FUNCTION g_node_push_allocator ##### -->
<para>

</para>

@dummy: 


<!-- ##### FUNCTION g_node_pop_allocator ##### -->
<para>

</para>

@void: 


