📄 group____gdsl__node.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>gdsl: Low-level doubly-linked node manipulation module</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.4.6 --><div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul></div><h1>Low-level doubly-linked node manipulation module</h1><p><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Typedefs</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef _gdsl_node * </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a></td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">GDSL low-level doubly linked node type. <a href="#g05a586e2272f3b89acaa43e1efc73e1b"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g0b641a2e9711f86cfaa79db3b5756be9">_gdsl_node_map_func_t</a> )(const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, void *USER_DATA)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">GDSL low-level doubly-linked node map function type. <a href="#g0b641a2e9711f86cfaa79db3b5756be9"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#gdad0aa5e5c7572c5c136ca774ad36e95">_gdsl_node_write_func_t</a> )(const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, FILE *OUTPUT_FILE, void *USER_DATA)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">GDSL low-level doubly-linked node write function type. <a href="#gdad0aa5e5c7572c5c136ca774ad36e95"></a><br></td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#gdf2d81e5b91e94dd9f4d0aa12436dfc8">_gdsl_node_alloc</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Create a new low-level node. <a href="#gdf2d81e5b91e94dd9f4d0aa12436dfc8"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__gdsl__types.html#g0e2b9d7fb5ca9e6d50100e5d9e4bcae7">gdsl_element_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g581e0771588b65cdac543468abcf745f">_gdsl_node_free</a> (<a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Destroy a low-level node. <a href="#g581e0771588b65cdac543468abcf745f"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g54337e9b4b1e164e8a05846752d2765b">_gdsl_node_get_succ</a> (const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Get the successor of a low-level node. <a href="#g54337e9b4b1e164e8a05846752d2765b"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g1912081a715ea9c2423d1a7133fb2d93">_gdsl_node_get_pred</a> (const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Get the predecessor of a low-level node. <a href="#g1912081a715ea9c2423d1a7133fb2d93"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="group__gdsl__types.html#g0e2b9d7fb5ca9e6d50100e5d9e4bcae7">gdsl_element_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#gb73ec128d09835281ac0541bed68b918">_gdsl_node_get_content</a> (const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Get the content of a low-level node. <a href="#gb73ec128d09835281ac0541bed68b918"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#gef56f6c5fafe864fb0cdf6f334c21135">_gdsl_node_set_succ</a> (<a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> SUCC)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the successor of a low-level node. <a href="#gef56f6c5fafe864fb0cdf6f334c21135"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g4cb517e6cdd5c56fad8774b9017b0937">_gdsl_node_set_pred</a> (<a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> PRED)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the predecessor of a low-level node. <a href="#g4cb517e6cdd5c56fad8774b9017b0937"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g6341c5f8d2270df6361b4ad4fa14a137">_gdsl_node_set_content</a> (<a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, const <a class="el" href="group__gdsl__types.html#g0e2b9d7fb5ca9e6d50100e5d9e4bcae7">gdsl_element_t</a> CONTENT)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Set the content of a low-level node. <a href="#g6341c5f8d2270df6361b4ad4fa14a137"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g776787755c436d0ecce712325d24e017">_gdsl_node_link</a> (<a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE1, <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE2)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Link two low-level nodes together. <a href="#g776787755c436d0ecce712325d24e017"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g4d747e684a364136804764aa3a8b3172">_gdsl_node_unlink</a> (<a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE1, <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE2)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Unlink two low-level nodes. <a href="#g4d747e684a364136804764aa3a8b3172"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#geff248d6814f6c7f1aaaa335863373a8">_gdsl_node_write</a> (const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, const <a class="el" href="group____gdsl__node.html#gdad0aa5e5c7572c5c136ca774ad36e95">_gdsl_node_write_func_t</a> WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Write a low-level node to a file. <a href="#geff248d6814f6c7f1aaaa335863373a8"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#gfc4d8d1cf893dfe2ae31fb1fc6c85406">_gdsl_node_write_xml</a> (const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, const <a class="el" href="group____gdsl__node.html#gdad0aa5e5c7572c5c136ca774ad36e95">_gdsl_node_write_func_t</a> WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Write a low-level node to a file into XML. <a href="#gfc4d8d1cf893dfe2ae31fb1fc6c85406"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group____gdsl__node.html#g7ebf69ff8a7b9c938669753d2cdf7f8b">_gdsl_node_dump</a> (const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, const <a class="el" href="group____gdsl__node.html#gdad0aa5e5c7572c5c136ca774ad36e95">_gdsl_node_write_func_t</a> WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Dump the internal structure of a low-level node to a file. <a href="#g7ebf69ff8a7b9c938669753d2cdf7f8b"></a><br></td></tr></table><hr><h2>Typedef Documentation</h2><a class="anchor" name="g05a586e2272f3b89acaa43e1efc73e1b"></a><!-- doxytag: member="_gdsl_node.h::_gdsl_node_t" ref="g05a586e2272f3b89acaa43e1efc73e1b" args="" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">typedef struct _gdsl_node* <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> </td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>GDSL low-level doubly linked node type. <p>This type is voluntary opaque. Variables of this kind could'nt be directly used, but by the functions of this module. <p>Definition at line <a class="el" href="__gdsl__node_8h-source.html#l00053">53</a> of file <a class="el" href="__gdsl__node_8h-source.html">_gdsl_node.h</a>. </td> </tr></table><a class="anchor" name="g0b641a2e9711f86cfaa79db3b5756be9"></a><!-- doxytag: member="_gdsl_node.h::_gdsl_node_map_func_t" ref="g0b641a2e9711f86cfaa79db3b5756be9" args=")(const _gdsl_node_t NODE, void *USER_DATA)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">typedef int(* <a class="el" href="group____gdsl__node.html#g0b641a2e9711f86cfaa79db3b5756be9">_gdsl_node_map_func_t</a>)(const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, void *USER_DATA) </td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>GDSL low-level doubly-linked node map function type. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>NODE</em> </td><td>The low-level node to map. </td></tr> <tr><td valign="top"></td><td valign="top"><em>USER_DATA</em> </td><td>The user datas to pass to this function. </td></tr> </table></dl><dl compact><dt><b>Returns:</b></dt><dd>GDSL_MAP_STOP if the mapping must be stopped. <p>GDSL_MAP_CONT if the mapping must be continued. </dd></dl><p>Definition at line <a class="el" href="__gdsl__node_8h-source.html#l00062">62</a> of file <a class="el" href="__gdsl__node_8h-source.html">_gdsl_node.h</a>. </td> </tr></table><a class="anchor" name="gdad0aa5e5c7572c5c136ca774ad36e95"></a><!-- doxytag: member="_gdsl_node.h::_gdsl_node_write_func_t" ref="gdad0aa5e5c7572c5c136ca774ad36e95" args=")(const _gdsl_node_t NODE, FILE *OUTPUT_FILE, void *USER_DATA)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">typedef void(* <a class="el" href="group____gdsl__node.html#gdad0aa5e5c7572c5c136ca774ad36e95">_gdsl_node_write_func_t</a>)(const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> NODE, FILE *OUTPUT_FILE, void *USER_DATA) </td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>GDSL low-level doubly-linked node write function type. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>TREE</em> </td><td>The low-level doubly-linked node to write. </td></tr> <tr><td valign="top"></td><td valign="top"><em>OUTPUT_FILE</em> </td><td>The file where to write NODE. </td></tr> <tr><td valign="top"></td><td valign="top"><em>USER_DATA</em> </td><td>The user datas to pass to this function. </td></tr> </table></dl><p>Definition at line <a class="el" href="__gdsl__node_8h-source.html#l00072">72</a> of file <a class="el" href="__gdsl__node_8h-source.html">_gdsl_node.h</a>. </td> </tr></table><hr><h2>Function Documentation</h2><a class="anchor" name="gdf2d81e5b91e94dd9f4d0aa12436dfc8"></a><!-- doxytag: member="_gdsl_node.h::_gdsl_node_alloc" ref="gdf2d81e5b91e94dd9f4d0aa12436dfc8" args="(void)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> _gdsl_node_alloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Create a new low-level node. <p>Allocate a new low-level node data structure.<p><dl compact><dt><b>Note:</b></dt><dd>Complexity: O( 1 ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>nothing. </dd></dl><dl compact><dt><b>Returns:</b></dt><dd>the newly allocated low-level node in case of success. <p>NULL in case of insufficient memory. </dd></dl><dl compact><dt><b>See also:</b></dt><dd><a class="el" href="group____gdsl__node.html#g581e0771588b65cdac543468abcf745f">_gdsl_node_free()</a> </dd></dl> </td> </tr></table><a class="anchor" name="g581e0771588b65cdac543468abcf745f"></a><!-- doxytag: member="_gdsl_node.h::_gdsl_node_free" ref="g581e0771588b65cdac543468abcf745f" args="(_gdsl_node_t NODE)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group__gdsl__types.html#g0e2b9d7fb5ca9e6d50100e5d9e4bcae7">gdsl_element_t</a> _gdsl_node_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> </td> <td class="mdname1" valign="top" nowrap> <em>NODE</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Destroy a low-level node. <p>Deallocate the low-level node NODE.<p><dl compact><dt><b>Note:</b></dt><dd>O( 1 ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>NODE != NULL </dd></dl><dl compact><dt><b>Returns:</b></dt><dd>the content of NODE (without modification). </dd></dl><dl compact><dt><b>See also:</b></dt><dd><a class="el" href="group____gdsl__node.html#gdf2d81e5b91e94dd9f4d0aa12436dfc8">_gdsl_node_alloc()</a> </dd></dl> </td> </tr></table><a class="anchor" name="g54337e9b4b1e164e8a05846752d2765b"></a><!-- doxytag: member="_gdsl_node.h::_gdsl_node_get_succ" ref="g54337e9b4b1e164e8a05846752d2765b" args="(const _gdsl_node_t NODE)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> _gdsl_node_get_succ </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group____gdsl__node.html#g05a586e2272f3b89acaa43e1efc73e1b">_gdsl_node_t</a> </td> <td class="mdname1" valign="top" nowrap> <em>NODE</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Get the successor of a low-level node. <p><dl compact><dt><b>Note:</b></dt><dd>Complexity: O( 1 ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>NODE != NULL </dd></dl><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0">
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -