File: cxdeque_8h_source.html

package info (click to toggle)
cpl 7.0-3
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 21,240 kB
  • sloc: ansic: 126,133; sh: 4,181; makefile: 640
file content (214 lines) | stat: -rw-r--r-- 32,831 bytes parent folder | download
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
   &#160;<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&#160;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&#160;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>&#160;<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>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<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>&#160;<span class="comment"> * Copyright (C) 2001-2011 European Southern Observatory</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<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>&#160;<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>&#160;<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>&#160;<span class="comment"> * (at your option) any later version.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<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>&#160;<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>&#160;<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>&#160;<span class="comment"> * GNU General Public License for more details.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<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>&#160;<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>&#160;<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>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;</div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment"> * $Author: rpalsa $</span></div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment"> * $Date: 2011-02-21 14:15:31 $</span></div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment"> * $Revision: 1.3 $</span></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment"> * $Name: not supported by cvs2svn $</span></div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#ifndef CX_DEQUE_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#define CX_DEQUE_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;cxtypes.h&gt;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &lt;cxmemory.h&gt;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;CX_BEGIN_DECLS</div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<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>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="keyword">typedef</span> cxsize cx_deque_const_iterator;</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="keyword">typedef</span> cxsize cx_deque_iterator;</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="comment"> * Create, copy and destroy operations</span></div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;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>&#160;<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>&#160;<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>&#160;</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment"> * Non-modifying operations</span></div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;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>&#160;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>&#160;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>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment"> * Assignment operations</span></div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<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>&#160;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>&#160;</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="comment"> * Element access</span></div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;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>&#160;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>&#160;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>&#160;</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment"> * Iterator functions</span></div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;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>&#160;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>&#160;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>&#160;                                cx_deque_const_iterator position);</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;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>&#160;                                    cx_deque_const_iterator position);</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="comment"> * Inserting and removing elements</span></div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<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>&#160;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>&#160;<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>&#160;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>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;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>&#160;                                  cxcptr data);</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;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>&#160;                                 cx_free_func deallocate);</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;<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>&#160;</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;<span class="comment"> * Extra deque interfaces</span></div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;<span class="comment"> * Removing elements</span></div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;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>&#160;<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>&#160;</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;<span class="comment"> * Splice functions</span></div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;<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>&#160;<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>&#160;                     cx_deque *other, cx_deque_iterator start,</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                     cx_deque_iterator end);</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;<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>&#160;<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>&#160;<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>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;CX_END_DECLS</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<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 &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.10
</small></address>
</body>
</html>