📄 glib-n-ary-trees.html
字号:
Inserts a new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> before the given sibling.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>parent</code></em> :</span></td><td>the <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> to place the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> under.</td></tr><tr><td><span class="term"><em class="parameter"><code>sibling</code></em> :</span></td><td>the sibling <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> to place the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> before.</td></tr><tr><td><span class="term"><em class="parameter"><code>data</code></em> :</span></td><td>the data for the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3180271"></a><h3><a name="g-node-append-data"></a>g_node_append_data()</h3><a class="indexterm" name="id3180281"></a><pre class="programlisting">#define g_node_append_data(parent, data)</pre><p>Inserts a new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> as the last child of the given parent.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>parent</code></em> :</span></td><td>the <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> to place the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> under.</td></tr><tr><td><span class="term"><em class="parameter"><code>data</code></em> :</span></td><td>the data for the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3180380"></a><h3><a name="g-node-prepend-data"></a>g_node_prepend_data()</h3><a class="indexterm" name="id3180390"></a><pre class="programlisting">#define g_node_prepend_data(parent, data)</pre><p>Inserts a new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> as the first child of the given parent.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>parent</code></em> :</span></td><td>the <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> to place the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> under.</td></tr><tr><td><span class="term"><em class="parameter"><code>data</code></em> :</span></td><td>the data for the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3180489"></a><h3><a name="g-node-reverse-children"></a>g_node_reverse_children ()</h3><a class="indexterm" name="id3180500"></a><pre class="programlisting">void g_node_reverse_children (<a href="glib-N-ary-Trees.html#GNode">GNode</a> *node);</pre><p>Reverses the order of the children of a <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.(It doesn't change the order of the grandchildren.)</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>node</code></em> :</span></td><td>a <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3180564"></a><h3><a name="g-node-traverse"></a>g_node_traverse ()</h3><a class="indexterm" name="id3180574"></a><pre class="programlisting">void g_node_traverse (<a href="glib-N-ary-Trees.html#GNode">GNode</a> *root, <a href="glib-Balanced-Binary-Trees.html#GTraverseType">GTraverseType</a> order, <a href="glib-N-ary-Trees.html#GTraverseFlags">GTraverseFlags</a> flags, <a href="glib-Basic-Types.html#gint">gint</a> max_depth, <a href="glib-N-ary-Trees.html#GNodeTraverseFunc">GNodeTraverseFunc</a> func, <a href="glib-Basic-Types.html#gpointer">gpointer</a> data);</pre><p>Traverses a tree starting at the given root <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.It calls the given function for each node visited.The traversal can be halted at any point by returning <code class="literal">TRUE</code> from <em class="parameter"><code>func</code></em>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>root</code></em> :</span></td><td>the root <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a> of the tree to traverse.</td></tr><tr><td><span class="term"><em class="parameter"><code>order</code></em> :</span></td><td>the order in which nodes are visited - <code class="literal">G_IN_ORDER</code>, <code class="literal">G_PRE_ORDER</code>,<code class="literal">G_POST_ORDER</code>, or <code class="literal">G_LEVEL_ORDER</code>.</td></tr><tr><td><span class="term"><em class="parameter"><code>flags</code></em> :</span></td><td>which types of children are to be visited, one of <code class="literal">G_TRAVERSE_ALL</code>,<code class="literal">G_TRAVERSE_LEAVES</code> and <code class="literal">G_TRAVERSE_NON_LEAVES</code>.</td></tr><tr><td><span class="term"><em class="parameter"><code>max_depth</code></em> :</span></td><td>the maximum depth of the traversal. Nodes below thisdepth will not be visited. If max_depth is -1 all nodes in the tree arevisited. If depth is 1, only the root is visited. If depth is 2, the rootand its children are visited. And so on.</td></tr><tr><td><span class="term"><em class="parameter"><code>func</code></em> :</span></td><td>the function to call for each visited <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr><tr><td><span class="term"><em class="parameter"><code>data</code></em> :</span></td><td>user data to pass to the function.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3180814"></a><h3><a name="GTraverseFlags"></a>enum GTraverseFlags</h3><a class="indexterm" name="id3180824"></a><pre class="programlisting">typedef enum{ G_TRAVERSE_LEAVES = 1 << 0, G_TRAVERSE_NON_LEAVES = 1 << 1, G_TRAVERSE_ALL = G_TRAVERSE_LEAVES | G_TRAVERSE_NON_LEAVES, G_TRAVERSE_MASK = 0x03, G_TRAVERSE_LEAFS = G_TRAVERSE_LEAVES, G_TRAVERSE_NON_LEAFS = G_TRAVERSE_NON_LEAVES} GTraverseFlags;</pre><p>Specifies which nodes are visited during several of the tree functions,including <a href="glib-N-ary-Trees.html#g-node-traverse"><code class="function">g_node_traverse()</code></a> and <a href="glib-N-ary-Trees.html#g-node-find"><code class="function">g_node_find()</code></a>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><code class="literal">G_TRAVERSE_LEAVES</code></span></td><td>only leaf nodes should be visited. This name has been introduced in 2.6, for older version use <code class="literal">G_TRAVERSE_LEAFS</code>.</td></tr><tr><td><span class="term"><code class="literal">G_TRAVERSE_NON_LEAVES</code></span></td><td>only non-leaf nodes should be visited. This name has been introduced in 2.6, for older version use <code class="literal">G_TRAVERSE_NON_LEAFS</code>.</td></tr><tr><td><span class="term"><code class="literal">G_TRAVERSE_ALL</code></span></td><td>all nodes should be visited.</td></tr><tr><td><span class="term"><code class="literal">G_TRAVERSE_MASK</code></span></td><td></td></tr><tr><td><span class="term"><code class="literal">G_TRAVERSE_LEAFS</code></span></td><td>identical to <code class="literal">G_TRAVERSE_LEAVES</code></td></tr><tr><td><span class="term"><code class="literal">G_TRAVERSE_NON_LEAFS</code></span></td><td>identical to <code class="literal">G_TRAVERSE_NON_LEAVES</code></td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3180992"></a><h3><a name="GNodeTraverseFunc"></a>GNodeTraverseFunc ()</h3><a class="indexterm" name="id3181003"></a><pre class="programlisting"><a href="glib-Basic-Types.html#gboolean">gboolean</a> (*GNodeTraverseFunc) (<a href="glib-N-ary-Trees.html#GNode">GNode</a> *node, <a href="glib-Basic-Types.html#gpointer">gpointer</a> data);</pre><p>Specifies the type of function passed to <a href="glib-N-ary-Trees.html#g-node-traverse"><code class="function">g_node_traverse()</code></a>.The function is called with each of the nodes visited, together with theuser data passed to <a href="glib-N-ary-Trees.html#g-node-traverse"><code class="function">g_node_traverse()</code></a>.If the function returns <code class="literal">TRUE</code>, then the traversal is stopped.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><em class="parameter"><code>node</code></em> :</span></td><td>a <a href="glib-N-ary-Trees.html#GNode"><span class="type">GNode</span></a>.</td></tr><tr><td><span class="term"><em class="parameter"><code>data</code></em> :</span></td><td>user data passed to <a href="glib-N-ary-Trees.html#g-node-traverse"><code class="function">g_node_traverse()</code></a>.</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td><code class="literal">TRUE</code> to stop the traversal.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3181134"></a><h3>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -