4
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
6
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
7
7
<link rel="home" href="index.html" title="Evolution-Data-Server Manual: Utilities (libedataserver)">
8
8
<link rel="up" href="ch01.html" title="Evolution-Data-Server Manual: Utilities (libedataserver)">
9
9
<link rel="prev" href="libedataserver-e-time-utils.html" title="Time-Related Utility Functions">
10
10
<link rel="next" href="libedataserver-e-uid.html" title="User ID Generation">
11
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
11
<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
<link rel="chapter" href="ch01.html" title="Evolution-Data-Server Manual: Utilities (libedataserver)">
14
<link rel="index" href="ix01.html" title="Index">
16
14
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
17
15
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
38
36
<td valign="top" align="right"></td>
39
37
</tr></table></div>
40
<div class="refsynopsisdiv" title="Synopsis">
38
<div class="refsynopsisdiv">
41
39
<a name="libedataserver-e-trie.synopsis"></a><h2>Synopsis</h2>
42
<pre class="synopsis">
43
<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a>;
44
<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> * <a class="link" href="libedataserver-e-trie.html#e-trie-new" title="e_trie_new ()">e_trie_new</a> (<a
45
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
47
void <a class="link" href="libedataserver-e-trie.html#e-trie-free" title="e_trie_free ()">e_trie_free</a> (<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> *trie);
48
void <a class="link" href="libedataserver-e-trie.html#e-trie-add" title="e_trie_add ()">e_trie_add</a> (<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> *trie,
50
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
53
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
54
>gint</a> pattern_id);
56
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
57
>gchar</a> * <a class="link" href="libedataserver-e-trie.html#e-trie-search" title="e_trie_search ()">e_trie_search</a> (<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> *trie,
59
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
62
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
65
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
66
>gint</a> *matched_id);
40
<pre class="synopsis"> <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a>;
41
<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="returnvalue">ETrie</span></a> * <a class="link" href="libedataserver-e-trie.html#e-trie-new" title="e_trie_new ()">e_trie_new</a> (<em class="parameter"><code><span class="type">gboolean</span> icase</code></em>);
42
<span class="returnvalue">void</span> <a class="link" href="libedataserver-e-trie.html#e-trie-free" title="e_trie_free ()">e_trie_free</a> (<em class="parameter"><code><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> *trie</code></em>);
43
<span class="returnvalue">void</span> <a class="link" href="libedataserver-e-trie.html#e-trie-add" title="e_trie_add ()">e_trie_add</a> (<em class="parameter"><code><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> *trie</code></em>,
44
<em class="parameter"><code>const <span class="type">gchar</span> *pattern</code></em>,
45
<em class="parameter"><code><span class="type">gint</span> pattern_id</code></em>);
46
const <span class="returnvalue">gchar</span> * <a class="link" href="libedataserver-e-trie.html#e-trie-search" title="e_trie_search ()">e_trie_search</a> (<em class="parameter"><code><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> *trie</code></em>,
47
<em class="parameter"><code>const <span class="type">gchar</span> *buffer</code></em>,
48
<em class="parameter"><code><span class="type">gsize</span> buflen</code></em>,
49
<em class="parameter"><code><span class="type">gint</span> *matched_id</code></em>);
69
<div class="refsect1" title="Description">
52
<div class="refsect1" lang="en">
70
53
<a name="libedataserver-e-trie.description"></a><h2>Description</h2>
74
<div class="refsect1" title="Details">
57
<div class="refsect1" lang="en">
75
58
<a name="libedataserver-e-trie.details"></a><h2>Details</h2>
76
<div class="refsect2" title="ETrie">
59
<div class="refsect2" lang="en">
77
60
<a name="ETrie"></a><h3>ETrie</h3>
78
61
<pre class="programlisting">typedef struct _ETrie ETrie;</pre>
79
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
62
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
80
63
<h3 class="title">Warning</h3>
81
64
<p><code class="literal">ETrie</code> is deprecated and should not be used in newly-written code.</p>
84
67
A trie data structure.</p>
89
<div class="refsect2" title="e_trie_new ()">
70
<div class="refsect2" lang="en">
90
71
<a name="e-trie-new"></a><h3>e_trie_new ()</h3>
91
<pre class="programlisting"><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> * e_trie_new (<a
92
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
93
>gboolean</a> icase);</pre>
94
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
72
<pre class="programlisting"><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="returnvalue">ETrie</span></a> * e_trie_new (<em class="parameter"><code><span class="type">gboolean</span> icase</code></em>);</pre>
73
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
95
74
<h3 class="title">Warning</h3>
96
75
<p><code class="literal">e_trie_new</code> is deprecated and should not be used in newly-written code.</p>
99
Creates a new <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a>. If <em class="parameter"><code>icase</code></em> is <a
100
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE--CAPS"
101
><code class="literal">TRUE</code></a>, then pattern matching
78
Creates a new <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a>. If <em class="parameter"><code>icase</code></em> is <code class="literal">TRUE</code>, then pattern matching
102
79
done by the ETrie will be case insensitive.</p>
105
80
<div class="variablelist"><table border="0">
106
81
<col align="left" valign="top">
109
84
<td><p><span class="term"><em class="parameter"><code>icase</code></em> :</span></p></td>
110
<td> Case sensitivity for the <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a>.
85
<td>Case sensitivity for the <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a>.
122
<div class="refsect2" title="e_trie_free ()">
97
<div class="refsect2" lang="en">
123
98
<a name="e-trie-free"></a><h3>e_trie_free ()</h3>
124
<pre class="programlisting">void e_trie_free (<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> *trie);</pre>
125
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
99
<pre class="programlisting"><span class="returnvalue">void</span> e_trie_free (<em class="parameter"><code><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> *trie</code></em>);</pre>
100
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
126
101
<h3 class="title">Warning</h3>
127
102
<p><code class="literal">e_trie_free</code> is deprecated and should not be used in newly-written code.</p>
130
105
Frees the memory associated with the <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> <em class="parameter"><code>trie</code></em>.</p>
133
106
<div class="variablelist"><table border="0">
134
107
<col align="left" valign="top">
136
109
<td><p><span class="term"><em class="parameter"><code>trie</code></em> :</span></p></td>
137
<td> The <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> to free.
110
<td>The <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> to free.
143
<div class="refsect2" title="e_trie_add ()">
116
<div class="refsect2" lang="en">
144
117
<a name="e-trie-add"></a><h3>e_trie_add ()</h3>
145
<pre class="programlisting">void e_trie_add (<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> *trie,
147
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
150
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
151
>gint</a> pattern_id);</pre>
152
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
118
<pre class="programlisting"><span class="returnvalue">void</span> e_trie_add (<em class="parameter"><code><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> *trie</code></em>,
119
<em class="parameter"><code>const <span class="type">gchar</span> *pattern</code></em>,
120
<em class="parameter"><code><span class="type">gint</span> pattern_id</code></em>);</pre>
121
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
153
122
<h3 class="title">Warning</h3>
154
123
<p><code class="literal">e_trie_add</code> is deprecated and should not be used in newly-written code.</p>
157
126
Add a new pattern to the <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> <em class="parameter"><code>trie</code></em>.</p>
160
127
<div class="variablelist"><table border="0">
161
128
<col align="left" valign="top">
164
131
<td><p><span class="term"><em class="parameter"><code>trie</code></em> :</span></p></td>
165
<td> The <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> to add a pattern to.
132
<td>The <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> to add a pattern to.
169
136
<td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
170
<td> The pattern to add.
137
<td>The pattern to add.
174
141
<td><p><span class="term"><em class="parameter"><code>pattern_id</code></em> :</span></p></td>
175
<td> The id to use for the pattern.
142
<td>The id to use for the pattern.
182
<div class="refsect2" title="e_trie_search ()">
149
<div class="refsect2" lang="en">
183
150
<a name="e-trie-search"></a><h3>e_trie_search ()</h3>
184
<pre class="programlisting">const <a
185
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
186
>gchar</a> * e_trie_search (<a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie">ETrie</a> *trie,
188
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
191
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
194
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
195
>gint</a> *matched_id);</pre>
196
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
151
<pre class="programlisting">const <span class="returnvalue">gchar</span> * e_trie_search (<em class="parameter"><code><a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> *trie</code></em>,
152
<em class="parameter"><code>const <span class="type">gchar</span> *buffer</code></em>,
153
<em class="parameter"><code><span class="type">gsize</span> buflen</code></em>,
154
<em class="parameter"><code><span class="type">gint</span> *matched_id</code></em>);</pre>
155
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
197
156
<h3 class="title">Warning</h3>
198
157
<p><code class="literal">e_trie_search</code> is deprecated and should not be used in newly-written code.</p>
201
160
Try to match the string <em class="parameter"><code>buffer</code></em> with a pattern in <em class="parameter"><code>trie</code></em>.</p>
204
161
<div class="variablelist"><table border="0">
205
162
<col align="left" valign="top">
208
165
<td><p><span class="term"><em class="parameter"><code>trie</code></em> :</span></p></td>
209
<td> The <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> to search in.
166
<td>The <a class="link" href="libedataserver-e-trie.html#ETrie" title="ETrie"><span class="type">ETrie</span></a> to search in.
213
170
<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
214
<td> The string to match against a pattern in <em class="parameter"><code>trie</code></em>.
171
<td>The string to match against a pattern in <em class="parameter"><code>trie</code></em>.
218
175
<td><p><span class="term"><em class="parameter"><code>buflen</code></em> :</span></p></td>
219
<td> The length of <em class="parameter"><code>buffer</code></em>.
176
<td>The length of <em class="parameter"><code>buffer</code></em>.
223
180
<td><p><span class="term"><em class="parameter"><code>matched_id</code></em> :</span></p></td>
224
<td> An integer address to store the matched pattern id in.
181
<td>An integer address to store the matched pattern id in.
228
185
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
229
<td> The matched pattern, or <a
230
href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL--CAPS"
231
><code class="literal">NULL</code></a> if no pattern is matched.
186
<td> The matched pattern, or <code class="literal">NULL</code> if no pattern is matched.