1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.10"/>
<title>C Standard Library Extensions: cxdeque.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">C Standard Library Extensions
 <span id="projectnumber">1.2.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.10 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File List</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_c2959b2ad5731f3b356ab222d87e802c.html">cext</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">cxdeque.h</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/* $Id: cxdeque.h,v 1.3 2011-02-21 14:15:31 rpalsa Exp $</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> *</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * This file is part of the ESO C Extension Library</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * Copyright (C) 2001-2011 European Southern Observatory</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * it under the terms of the GNU General Public License as published by</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * This program is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * GNU General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * You should have received a copy of the GNU General Public License</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> * along with this program; if not, write to the Free Software</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment"> * $Author: rpalsa $</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment"> * $Date: 2011-02-21 14:15:31 $</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment"> * $Revision: 1.3 $</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment"> * $Name: not supported by cvs2svn $</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#ifndef CX_DEQUE_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#define CX_DEQUE_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <cxtypes.h></span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <cxmemory.h></span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> CX_BEGIN_DECLS</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">typedef</span> <span class="keyword">struct </span>_cx_deque_ cx_deque;</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">typedef</span> cxsize cx_deque_const_iterator;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">typedef</span> cxsize cx_deque_iterator;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"> * Create, copy and destroy operations</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> cx_deque *<a class="code" href="group__cxdeque.html#ga08414696dbbe9888ae5f8d1e346e94c8">cx_deque_new</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#gaccc454dff4ccc6be34f54427f7cbd44a">cx_deque_delete</a>(cx_deque* deque);</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#gaa2fc80632e4d71a70b41ad428b725fd2">cx_deque_destroy</a>(cx_deque *deque, cx_free_func deallocate);</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> * Non-modifying operations</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> cxsize <a class="code" href="group__cxdeque.html#ga5a3a8e35681c3553e40b980e30d333f7">cx_deque_size</a>(<span class="keyword">const</span> cx_deque *deque);</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> cxbool <a class="code" href="group__cxdeque.html#gac76b0d1a0364b2fc9ae0eec8bab7e53b">cx_deque_empty</a>(<span class="keyword">const</span> cx_deque *deque);</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> cxsize <a class="code" href="group__cxdeque.html#ga8fd5474fc6be1684f6b964ae71626b0b">cx_deque_max_size</a>(<span class="keyword">const</span> cx_deque *deque);</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment"> * Assignment operations</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga1468b31126cccf70990247bf1629d7b5">cx_deque_swap</a>(cx_deque *deque, cx_deque *other);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> cxptr <a class="code" href="group__cxdeque.html#ga9c9278302d630b0cd955f71553f02a92">cx_deque_assign</a>(cx_deque *deque, cx_deque_iterator position, cxptr data);</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"> * Element access</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> cxptr <a class="code" href="group__cxdeque.html#gadc972ac99ddbca0a82ca4133fa5ff1ed">cx_deque_front</a>(<span class="keyword">const</span> cx_deque *deque);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> cxptr <a class="code" href="group__cxdeque.html#ga45a29a6526f9d754289b3fe2a42d4a8e">cx_deque_back</a>(<span class="keyword">const</span> cx_deque *deque);</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> cxptr <a class="code" href="group__cxdeque.html#ga30fd04264fec944999d39d62a48a09fc">cx_deque_get</a>(<span class="keyword">const</span> cx_deque *deque, cx_deque_const_iterator position);</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment"> * Iterator functions</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> cx_deque_iterator <a class="code" href="group__cxdeque.html#gad29871e44bf1e90a9ec77a1b8f353182">cx_deque_begin</a>(<span class="keyword">const</span> cx_deque *deque);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> cx_deque_iterator <a class="code" href="group__cxdeque.html#ga24ba79d19e01d953a4a249f57836f9c1">cx_deque_end</a>(<span class="keyword">const</span> cx_deque *deque);</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> cx_deque_iterator <a class="code" href="group__cxdeque.html#gac615671b4a9ba93eafdc37a8641a40d0">cx_deque_next</a>(<span class="keyword">const</span> cx_deque *deque,</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  cx_deque_const_iterator position);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> cx_deque_iterator <a class="code" href="group__cxdeque.html#ga85b439c6ddfa9f73cb89b968286ff996">cx_deque_previous</a>(<span class="keyword">const</span> cx_deque *deque,</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  cx_deque_const_iterator position);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment"> * Inserting and removing elements</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#gaf93f33c892ead7b2ced1c7417ec3076a">cx_deque_push_front</a>(cx_deque *deque, cxcptr data);</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> cxptr <a class="code" href="group__cxdeque.html#ga28ee348bdd3fb6a09488bf1867381d2a">cx_deque_pop_front</a>(cx_deque *deque);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga75310934211aac1916975a5c0a5db654">cx_deque_push_back</a>(cx_deque *deque, cxcptr data);</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> cxptr <a class="code" href="group__cxdeque.html#ga4f3183c0256c05f86ac94ece2cfec9bb">cx_deque_pop_back</a>(cx_deque *deque);</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> cx_deque_iterator <a class="code" href="group__cxdeque.html#ga2ce86c4fc6ecbfd0642cf01ba7417716">cx_deque_insert</a>(cx_deque *deque, cx_deque_iterator position,</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  cxcptr data);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> cx_deque_iterator <a class="code" href="group__cxdeque.html#ga19f6812a711e91faa4549f815c1c8a17">cx_deque_erase</a>(cx_deque *deque, cx_deque_iterator position,</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  cx_free_func deallocate);</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga6f346315cb2fba4efe3e5978f65edf5e">cx_deque_clear</a>(cx_deque *deque);</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="comment"> * Extra deque interfaces</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="comment"> * Removing elements</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> cxptr <a class="code" href="group__cxdeque.html#gaa6b6977bbddfd9ce593caadfe6055b55">cx_deque_extract</a>(cx_deque *deque, cx_deque_iterator position);</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga0cf7b04e8acb40fbbd1f3727c7ae5981">cx_deque_remove</a>(cx_deque *deque, cxcptr data);</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">/*</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment"> * Splice functions</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment"> */</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga2ca9af2987ea657a140ad084979abad0">cx_deque_unique</a>(cx_deque *deque, cx_compare_func compare);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga462895062b73db7aebb3d1b4e01960f8">cx_deque_splice</a>(cx_deque *deque, cx_deque_iterator position,</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  cx_deque *other, cx_deque_iterator start,</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  cx_deque_iterator end);</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga7a1a134e57f98d00273d3b7c061c9d47">cx_deque_merge</a>(cx_deque *deque, cx_deque *other, cx_compare_func compare);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#gab0fd66397386847260275b8b43649d55">cx_deque_sort</a>(cx_deque *deque, cx_compare_func compare);</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordtype">void</span> <a class="code" href="group__cxdeque.html#ga8f823cbda988974e970cd228bb8dcea2">cx_deque_reverse</a>(cx_deque *deque);</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> CX_END_DECLS</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="preprocessor">#endif </span><span class="comment">/* CX_DEQUE_H */</span><span class="preprocessor"></span></div>
<div class="ttc" id="group__cxdeque_html_ga0cf7b04e8acb40fbbd1f3727c7ae5981"><div class="ttname"><a href="group__cxdeque.html#ga0cf7b04e8acb40fbbd1f3727c7ae5981">cx_deque_remove</a></div><div class="ttdeci">void cx_deque_remove(cx_deque *deque, cxcptr data)</div><div class="ttdoc">Remove all elements with a given value from a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1482</div></div>
<div class="ttc" id="group__cxdeque_html_ga8fd5474fc6be1684f6b964ae71626b0b"><div class="ttname"><a href="group__cxdeque.html#ga8fd5474fc6be1684f6b964ae71626b0b">cx_deque_max_size</a></div><div class="ttdeci">cxsize cx_deque_max_size(const cx_deque *deque)</div><div class="ttdoc">Get the maximum number of deque elements possible. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:937</div></div>
<div class="ttc" id="group__cxdeque_html_ga2ca9af2987ea657a140ad084979abad0"><div class="ttname"><a href="group__cxdeque.html#ga2ca9af2987ea657a140ad084979abad0">cx_deque_unique</a></div><div class="ttdeci">void cx_deque_unique(cx_deque *deque, cx_compare_func compare)</div><div class="ttdoc">Remove duplicates of consecutive elements. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1527</div></div>
<div class="ttc" id="group__cxdeque_html_ga19f6812a711e91faa4549f815c1c8a17"><div class="ttname"><a href="group__cxdeque.html#ga19f6812a711e91faa4549f815c1c8a17">cx_deque_erase</a></div><div class="ttdeci">cx_deque_iterator cx_deque_erase(cx_deque *deque, cx_deque_iterator position, cx_free_func deallocate)</div><div class="ttdoc">Erase a deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1391</div></div>
<div class="ttc" id="group__cxdeque_html_gaa6b6977bbddfd9ce593caadfe6055b55"><div class="ttname"><a href="group__cxdeque.html#gaa6b6977bbddfd9ce593caadfe6055b55">cx_deque_extract</a></div><div class="ttdeci">cxptr cx_deque_extract(cx_deque *deque, cx_deque_iterator position)</div><div class="ttdoc">Extract a deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1455</div></div>
<div class="ttc" id="group__cxdeque_html_ga5a3a8e35681c3553e40b980e30d333f7"><div class="ttname"><a href="group__cxdeque.html#ga5a3a8e35681c3553e40b980e30d333f7">cx_deque_size</a></div><div class="ttdeci">cxsize cx_deque_size(const cx_deque *deque)</div><div class="ttdoc">Get the actual number of deque elements. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:893</div></div>
<div class="ttc" id="group__cxdeque_html_ga4f3183c0256c05f86ac94ece2cfec9bb"><div class="ttname"><a href="group__cxdeque.html#ga4f3183c0256c05f86ac94ece2cfec9bb">cx_deque_pop_back</a></div><div class="ttdeci">cxptr cx_deque_pop_back(cx_deque *deque)</div><div class="ttdoc">Remove the last deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1317</div></div>
<div class="ttc" id="group__cxdeque_html_gab0fd66397386847260275b8b43649d55"><div class="ttname"><a href="group__cxdeque.html#gab0fd66397386847260275b8b43649d55">cx_deque_sort</a></div><div class="ttdeci">void cx_deque_sort(cx_deque *deque, cx_compare_func compare)</div><div class="ttdoc">Sort all elements of a deque using the given comparison function. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1665</div></div>
<div class="ttc" id="group__cxdeque_html_gac615671b4a9ba93eafdc37a8641a40d0"><div class="ttname"><a href="group__cxdeque.html#gac615671b4a9ba93eafdc37a8641a40d0">cx_deque_next</a></div><div class="ttdeci">cx_deque_iterator cx_deque_next(const cx_deque *deque, cx_deque_const_iterator position)</div><div class="ttdoc">Get an iterator for the next deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1158</div></div>
<div class="ttc" id="group__cxdeque_html_ga08414696dbbe9888ae5f8d1e346e94c8"><div class="ttname"><a href="group__cxdeque.html#ga08414696dbbe9888ae5f8d1e346e94c8">cx_deque_new</a></div><div class="ttdeci">cx_deque * cx_deque_new(void)</div><div class="ttdoc">Create a new deque without any elements. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:803</div></div>
<div class="ttc" id="group__cxdeque_html_ga7a1a134e57f98d00273d3b7c061c9d47"><div class="ttname"><a href="group__cxdeque.html#ga7a1a134e57f98d00273d3b7c061c9d47">cx_deque_merge</a></div><div class="ttdeci">void cx_deque_merge(cx_deque *deque, cx_deque *other, cx_compare_func compare)</div><div class="ttdoc">Merge two sorted deques. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1633</div></div>
<div class="ttc" id="group__cxdeque_html_gaf93f33c892ead7b2ced1c7417ec3076a"><div class="ttname"><a href="group__cxdeque.html#gaf93f33c892ead7b2ced1c7417ec3076a">cx_deque_push_front</a></div><div class="ttdeci">void cx_deque_push_front(cx_deque *deque, cxcptr data)</div><div class="ttdoc">Insert data at the beginning of a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1211</div></div>
<div class="ttc" id="group__cxdeque_html_ga30fd04264fec944999d39d62a48a09fc"><div class="ttname"><a href="group__cxdeque.html#ga30fd04264fec944999d39d62a48a09fc">cx_deque_get</a></div><div class="ttdeci">cxptr cx_deque_get(const cx_deque *deque, cx_deque_const_iterator position)</div><div class="ttdoc">Retrieve an element from a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1083</div></div>
<div class="ttc" id="group__cxdeque_html_ga9c9278302d630b0cd955f71553f02a92"><div class="ttname"><a href="group__cxdeque.html#ga9c9278302d630b0cd955f71553f02a92">cx_deque_assign</a></div><div class="ttdeci">cxptr cx_deque_assign(cx_deque *deque, cx_deque_iterator position, cxptr data)</div><div class="ttdoc">Assign data to a deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1004</div></div>
<div class="ttc" id="group__cxdeque_html_gaa2fc80632e4d71a70b41ad428b725fd2"><div class="ttname"><a href="group__cxdeque.html#gaa2fc80632e4d71a70b41ad428b725fd2">cx_deque_destroy</a></div><div class="ttdeci">void cx_deque_destroy(cx_deque *deque, cx_free_func deallocate)</div><div class="ttdoc">Destroy a deque and all its elements. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:855</div></div>
<div class="ttc" id="group__cxdeque_html_ga75310934211aac1916975a5c0a5db654"><div class="ttname"><a href="group__cxdeque.html#ga75310934211aac1916975a5c0a5db654">cx_deque_push_back</a></div><div class="ttdeci">void cx_deque_push_back(cx_deque *deque, cxcptr data)</div><div class="ttdoc">Append data at the end of a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1276</div></div>
<div class="ttc" id="group__cxdeque_html_gaccc454dff4ccc6be34f54427f7cbd44a"><div class="ttname"><a href="group__cxdeque.html#gaccc454dff4ccc6be34f54427f7cbd44a">cx_deque_delete</a></div><div class="ttdeci">void cx_deque_delete(cx_deque *deque)</div><div class="ttdoc">Destroy a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:827</div></div>
<div class="ttc" id="group__cxdeque_html_ga2ce86c4fc6ecbfd0642cf01ba7417716"><div class="ttname"><a href="group__cxdeque.html#ga2ce86c4fc6ecbfd0642cf01ba7417716">cx_deque_insert</a></div><div class="ttdeci">cx_deque_iterator cx_deque_insert(cx_deque *deque, cx_deque_iterator position, cxcptr data)</div><div class="ttdoc">Insert data into a deque at a given iterator position. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1347</div></div>
<div class="ttc" id="group__cxdeque_html_ga24ba79d19e01d953a4a249f57836f9c1"><div class="ttname"><a href="group__cxdeque.html#ga24ba79d19e01d953a4a249f57836f9c1">cx_deque_end</a></div><div class="ttdeci">cx_deque_iterator cx_deque_end(const cx_deque *deque)</div><div class="ttdoc">Get an iterator for the position after the last deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1133</div></div>
<div class="ttc" id="group__cxdeque_html_gadc972ac99ddbca0a82ca4133fa5ff1ed"><div class="ttname"><a href="group__cxdeque.html#gadc972ac99ddbca0a82ca4133fa5ff1ed">cx_deque_front</a></div><div class="ttdeci">cxptr cx_deque_front(const cx_deque *deque)</div><div class="ttdoc">Get the first element of a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1034</div></div>
<div class="ttc" id="group__cxdeque_html_ga28ee348bdd3fb6a09488bf1867381d2a"><div class="ttname"><a href="group__cxdeque.html#ga28ee348bdd3fb6a09488bf1867381d2a">cx_deque_pop_front</a></div><div class="ttdeci">cxptr cx_deque_pop_front(cx_deque *deque)</div><div class="ttdoc">Remove the first deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1246</div></div>
<div class="ttc" id="group__cxdeque_html_gac76b0d1a0364b2fc9ae0eec8bab7e53b"><div class="ttname"><a href="group__cxdeque.html#gac76b0d1a0364b2fc9ae0eec8bab7e53b">cx_deque_empty</a></div><div class="ttdeci">cxbool cx_deque_empty(const cx_deque *deque)</div><div class="ttdoc">Check whether a deque is empty. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:915</div></div>
<div class="ttc" id="group__cxdeque_html_ga462895062b73db7aebb3d1b4e01960f8"><div class="ttname"><a href="group__cxdeque.html#ga462895062b73db7aebb3d1b4e01960f8">cx_deque_splice</a></div><div class="ttdeci">void cx_deque_splice(cx_deque *deque, cx_deque_iterator position, cx_deque *other, cx_deque_iterator start, cx_deque_iterator end)</div><div class="ttdoc">Move a range of elements in front of a given position. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1580</div></div>
<div class="ttc" id="group__cxdeque_html_gad29871e44bf1e90a9ec77a1b8f353182"><div class="ttname"><a href="group__cxdeque.html#gad29871e44bf1e90a9ec77a1b8f353182">cx_deque_begin</a></div><div class="ttdeci">cx_deque_iterator cx_deque_begin(const cx_deque *deque)</div><div class="ttdoc">Get an iterator for the first deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1110</div></div>
<div class="ttc" id="group__cxdeque_html_ga45a29a6526f9d754289b3fe2a42d4a8e"><div class="ttname"><a href="group__cxdeque.html#ga45a29a6526f9d754289b3fe2a42d4a8e">cx_deque_back</a></div><div class="ttdeci">cxptr cx_deque_back(const cx_deque *deque)</div><div class="ttdoc">Get the last element of a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1058</div></div>
<div class="ttc" id="group__cxdeque_html_ga6f346315cb2fba4efe3e5978f65edf5e"><div class="ttname"><a href="group__cxdeque.html#ga6f346315cb2fba4efe3e5978f65edf5e">cx_deque_clear</a></div><div class="ttdeci">void cx_deque_clear(cx_deque *deque)</div><div class="ttdoc">Remove all elements from a deque. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1430</div></div>
<div class="ttc" id="group__cxdeque_html_ga8f823cbda988974e970cd228bb8dcea2"><div class="ttname"><a href="group__cxdeque.html#ga8f823cbda988974e970cd228bb8dcea2">cx_deque_reverse</a></div><div class="ttdeci">void cx_deque_reverse(cx_deque *deque)</div><div class="ttdoc">Reverse the order of all deque elements. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1689</div></div>
<div class="ttc" id="group__cxdeque_html_ga1468b31126cccf70990247bf1629d7b5"><div class="ttname"><a href="group__cxdeque.html#ga1468b31126cccf70990247bf1629d7b5">cx_deque_swap</a></div><div class="ttdeci">void cx_deque_swap(cx_deque *deque, cx_deque *other)</div><div class="ttdoc">Swap the data of two deques. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:961</div></div>
<div class="ttc" id="group__cxdeque_html_ga85b439c6ddfa9f73cb89b968286ff996"><div class="ttname"><a href="group__cxdeque.html#ga85b439c6ddfa9f73cb89b968286ff996">cx_deque_previous</a></div><div class="ttdeci">cx_deque_iterator cx_deque_previous(const cx_deque *deque, cx_deque_const_iterator position)</div><div class="ttdoc">Get an iterator for the previous deque element. </div><div class="ttdef"><b>Definition:</b> cxdeque.c:1183</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.10
</small></address>
</body>
</html>
|