Initial commit
[platform/upstream/glib2.0.git] / docs / reference / glib / html / glib-Strings.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>Strings</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7 <link rel="home" href="index.html" title="GLib Reference Manual">
8 <link rel="up" href="glib-data-types.html" title="GLib Data Types">
9 <link rel="prev" href="glib-Hash-Tables.html" title="Hash Tables">
10 <link rel="next" href="glib-String-Chunks.html" title="String Chunks">
11 <meta name="generator" content="GTK-Doc V1.13 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 <link rel="chapter" href="glib.html" title="GLib Overview">
14 <link rel="chapter" href="glib-fundamentals.html" title="GLib Fundamentals">
15 <link rel="chapter" href="glib-core.html" title="GLib Core Application Support">
16 <link rel="chapter" href="glib-utilities.html" title="GLib Utilities">
17 <link rel="chapter" href="glib-data-types.html" title="GLib Data Types">
18 <link rel="chapter" href="tools.html" title="GLib Tools">
19 <link rel="index" href="api-index-full.html" title="Index">
20 <link rel="index" href="api-index-deprecated.html" title="Index of deprecated symbols">
21 <link rel="index" href="api-index-2-2.html" title="Index of new symbols in 2.2">
22 <link rel="index" href="api-index-2-4.html" title="Index of new symbols in 2.4">
23 <link rel="index" href="api-index-2-6.html" title="Index of new symbols in 2.6">
24 <link rel="index" href="api-index-2-8.html" title="Index of new symbols in 2.8">
25 <link rel="index" href="api-index-2-10.html" title="Index of new symbols in 2.10">
26 <link rel="index" href="api-index-2-12.html" title="Index of new symbols in 2.12">
27 <link rel="index" href="api-index-2-14.html" title="Index of new symbols in 2.14">
28 <link rel="index" href="api-index-2-16.html" title="Index of new symbols in 2.16">
29 <link rel="index" href="api-index-2-18.html" title="Index of new symbols in 2.18">
30 <link rel="index" href="api-index-2-20.html" title="Index of new symbols in 2.20">
31 <link rel="index" href="api-index-2-22.html" title="Index of new symbols in 2.22">
32 <link rel="index" href="api-index-2-24.html" title="Index of new symbols in 2.24">
33 </head>
34 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
35 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
36 <tr valign="middle">
37 <td><a accesskey="p" href="glib-Hash-Tables.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
38 <td><a accesskey="u" href="glib-data-types.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
39 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
40 <th width="100%" align="center">GLib Reference Manual</th>
41 <td><a accesskey="n" href="glib-String-Chunks.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
42 </tr>
43 <tr><td colspan="5" class="shortcuts">
44 <a href="#glib-Strings.synopsis" class="shortcut">Top</a>
45                    | 
46                   <a href="#glib-Strings.description" class="shortcut">Description</a>
47 </td></tr>
48 </table>
49 <div class="refentry" title="Strings">
50 <a name="glib-Strings"></a><div class="titlepage"></div>
51 <div class="refnamediv"><table width="100%"><tr>
52 <td valign="top">
53 <h2><span class="refentrytitle"><a name="glib-Strings.top_of_page"></a>Strings</span></h2>
54 <p>Strings — text buffers which grow automatically as text is added</p>
55 </td>
56 <td valign="top" align="right"></td>
57 </tr></table></div>
58 <div class="refsynopsisdiv" title="Synopsis">
59 <a name="glib-Strings.synopsis"></a><h2>Synopsis</h2>
60 <pre class="synopsis">
61 #include &lt;glib.h&gt;
62
63                     <a class="link" href="glib-Strings.html#GString" title="GString">GString</a>;
64 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-new" title="g_string_new ()">g_string_new</a>                        (const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *init);
65 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-new-len" title="g_string_new_len ()">g_string_new_len</a>                    (const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *init,
66                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);
67 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-sized-new" title="g_string_sized_new ()">g_string_sized_new</a>                  (<a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> dfl_size);
68 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-assign" title="g_string_assign ()">g_string_assign</a>                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
69                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *rval);
70 #define             <a class="link" href="glib-Strings.html#g-string-sprintf" title="g_string_sprintf">g_string_sprintf</a>
71 #define             <a class="link" href="glib-Strings.html#g-string-sprintfa" title="g_string_sprintfa">g_string_sprintfa</a>
72 <span class="returnvalue">void</span>                <a class="link" href="glib-Strings.html#g-string-vprintf" title="g_string_vprintf ()">g_string_vprintf</a>                    (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
73                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
74                                                          <span class="returnvalue">va_list</span> args);
75 <span class="returnvalue">void</span>                <a class="link" href="glib-Strings.html#g-string-append-vprintf" title="g_string_append_vprintf ()">g_string_append_vprintf</a>             (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
76                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
77                                                          <span class="returnvalue">va_list</span> args);
78 <span class="returnvalue">void</span>                <a class="link" href="glib-Strings.html#g-string-printf" title="g_string_printf ()">g_string_printf</a>                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
79                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
80                                                          ...);
81 <span class="returnvalue">void</span>                <a class="link" href="glib-Strings.html#g-string-append-printf" title="g_string_append_printf ()">g_string_append_printf</a>              (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
82                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
83                                                          ...);
84 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-append" title="g_string_append ()">g_string_append</a>                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
85                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);
86 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-append-c" title="g_string_append_c ()">g_string_append_c</a>                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
87                                                          <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> c);
88 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-append-unichar" title="g_string_append_unichar ()">g_string_append_unichar</a>             (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
89                                                          <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> wc);
90 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-append-len" title="g_string_append_len ()">g_string_append_len</a>                 (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
91                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
92                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);
93 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *           <a class="link" href="glib-Strings.html#g-string-append-uri-escaped" title="g_string_append_uri_escaped ()">g_string_append_uri_escaped</a>         (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
94                                                          const <span class="returnvalue">char</span> *unescaped,
95                                                          const <span class="returnvalue">char</span> *reserved_chars_allowed,
96                                                          <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> allow_utf8);
97 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-prepend" title="g_string_prepend ()">g_string_prepend</a>                    (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
98                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);
99 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-prepend-c" title="g_string_prepend_c ()">g_string_prepend_c</a>                  (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
100                                                          <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> c);
101 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-prepend-unichar" title="g_string_prepend_unichar ()">g_string_prepend_unichar</a>            (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
102                                                          <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> wc);
103 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-prepend-len" title="g_string_prepend_len ()">g_string_prepend_len</a>                (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
104                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
105                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);
106 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-insert" title="g_string_insert ()">g_string_insert</a>                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
107                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
108                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);
109 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-insert-c" title="g_string_insert_c ()">g_string_insert_c</a>                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
110                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
111                                                          <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> c);
112 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-insert-unichar" title="g_string_insert_unichar ()">g_string_insert_unichar</a>             (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
113                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
114                                                          <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> wc);
115 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-insert-len" title="g_string_insert_len ()">g_string_insert_len</a>                 (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
116                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
117                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
118                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);
119 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-overwrite" title="g_string_overwrite ()">g_string_overwrite</a>                  (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
120                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> pos,
121                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);
122 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-overwrite-len" title="g_string_overwrite_len ()">g_string_overwrite_len</a>              (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
123                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> pos,
124                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
125                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);
126 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-erase" title="g_string_erase ()">g_string_erase</a>                      (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
127                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
128                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);
129 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-truncate" title="g_string_truncate ()">g_string_truncate</a>                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
130                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> len);
131 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-set-size" title="g_string_set_size ()">g_string_set_size</a>                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
132                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> len);
133 <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>*              <a class="link" href="glib-Strings.html#g-string-free" title="g_string_free ()">g_string_free</a>                       (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
134                                                          <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> free_segment);
135
136 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-up" title="g_string_up ()">g_string_up</a>                         (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string);
137 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            <a class="link" href="glib-Strings.html#g-string-down" title="g_string_down ()">g_string_down</a>                       (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string);
138
139 <a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="returnvalue">guint</span></a>               <a class="link" href="glib-Strings.html#g-string-hash" title="g_string_hash ()">g_string_hash</a>                       (const <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *str);
140 <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="glib-Strings.html#g-string-equal" title="g_string_equal ()">g_string_equal</a>                      (const <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *v,
141                                                          const <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *v2);
142 </pre>
143 </div>
144 <div class="refsect1" title="Description">
145 <a name="glib-Strings.description"></a><h2>Description</h2>
146 <p>
147 A <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> is similar to a standard C string, except that it grows
148 automatically as text is appended or inserted. Also, it stores the
149 length of the string, so can be used for binary data with embedded
150 nul bytes.
151 </p>
152 </div>
153 <div class="refsect1" title="Details">
154 <a name="glib-Strings.details"></a><h2>Details</h2>
155 <div class="refsect2" title="GString">
156 <a name="GString"></a><h3>GString</h3>
157 <pre class="programlisting">typedef struct {
158   gchar  *str;
159   gsize len;    
160   gsize allocated_len;
161 } GString;
162 </pre>
163 <p>
164 The <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> struct contains the public fields of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
165 </p>
166 <div class="variablelist"><table border="0">
167 <col align="left" valign="top">
168 <tbody>
169 <tr>
170 <td><p><span class="term"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GString.str"></a>str</code></em>;</span></p></td>
171 <td>points to the character data. It may move as text is added.
172   The <em class="structfield"><code>str</code></em> field is nul-terminated and so
173   can be used as an ordinary C string.
174 </td>
175 </tr>
176 <tr>
177 <td><p><span class="term"><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> <em class="structfield"><code><a name="GString.len"></a>len</code></em>;</span></p></td>
178 <td>contains the length of the string, not including the 
179   terminating nul byte.
180 </td>
181 </tr>
182 <tr>
183 <td><p><span class="term"><a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="type">gsize</span></a> <em class="structfield"><code><a name="GString.allocated-len"></a>allocated_len</code></em>;</span></p></td>
184 <td>the number of bytes that can be stored in the
185   string before it needs to be reallocated. May be larger than <em class="parameter"><code>len</code></em>.
186 </td>
187 </tr>
188 </tbody>
189 </table></div>
190 </div>
191 <hr>
192 <div class="refsect2" title="g_string_new ()">
193 <a name="g-string-new"></a><h3>g_string_new ()</h3>
194 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_new                        (const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *init);</pre>
195 <p>
196 Creates a new <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, initialized with the given string.</p>
197 <div class="variablelist"><table border="0">
198 <col align="left" valign="top">
199 <tbody>
200 <tr>
201 <td><p><span class="term"><em class="parameter"><code>init</code></em> :</span></p></td>
202 <td> the initial text to copy into the string
203 </td>
204 </tr>
205 <tr>
206 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
207 <td> the new <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
208 </td>
209 </tr>
210 </tbody>
211 </table></div>
212 </div>
213 <hr>
214 <div class="refsect2" title="g_string_new_len ()">
215 <a name="g-string-new-len"></a><h3>g_string_new_len ()</h3>
216 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_new_len                    (const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *init,
217                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);</pre>
218 <p>
219 Creates a new <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> with <em class="parameter"><code>len</code></em> bytes of the <em class="parameter"><code>init</code></em> buffer.  
220 Because a length is provided, <em class="parameter"><code>init</code></em> need not be nul-terminated,
221 and can contain embedded nul bytes.
222 </p>
223 <p>
224 Since this function does not stop at nul bytes, it is the caller's
225 responsibility to ensure that <em class="parameter"><code>init</code></em> has at least <em class="parameter"><code>len</code></em> addressable 
226 bytes.</p>
227 <div class="variablelist"><table border="0">
228 <col align="left" valign="top">
229 <tbody>
230 <tr>
231 <td><p><span class="term"><em class="parameter"><code>init</code></em> :</span></p></td>
232 <td> initial contents of the string
233 </td>
234 </tr>
235 <tr>
236 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
237 <td> length of <em class="parameter"><code>init</code></em> to use
238 </td>
239 </tr>
240 <tr>
241 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
242 <td> a new <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
243 </td>
244 </tr>
245 </tbody>
246 </table></div>
247 </div>
248 <hr>
249 <div class="refsect2" title="g_string_sized_new ()">
250 <a name="g-string-sized-new"></a><h3>g_string_sized_new ()</h3>
251 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_sized_new                  (<a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> dfl_size);</pre>
252 <p>
253 Creates a new <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, with enough space for <em class="parameter"><code>dfl_size</code></em> 
254 bytes. This is useful if you are going to add a lot of 
255 text to the string and don't want it to be reallocated 
256 too often.</p>
257 <div class="variablelist"><table border="0">
258 <col align="left" valign="top">
259 <tbody>
260 <tr>
261 <td><p><span class="term"><em class="parameter"><code>dfl_size</code></em> :</span></p></td>
262 <td> the default size of the space allocated to 
263            hold the string
264 </td>
265 </tr>
266 <tr>
267 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
268 <td> the new <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
269 </td>
270 </tr>
271 </tbody>
272 </table></div>
273 </div>
274 <hr>
275 <div class="refsect2" title="g_string_assign ()">
276 <a name="g-string-assign"></a><h3>g_string_assign ()</h3>
277 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_assign                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
278                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *rval);</pre>
279 <p>
280 Copies the bytes from a string into a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, 
281 destroying any previous contents. It is rather like 
282 the standard <code class="function">strcpy()</code> function, except that you do not 
283 have to worry about having enough space to copy the string.</p>
284 <div class="variablelist"><table border="0">
285 <col align="left" valign="top">
286 <tbody>
287 <tr>
288 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
289 <td> the destination <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>. Its current contents 
290          are destroyed.
291 </td>
292 </tr>
293 <tr>
294 <td><p><span class="term"><em class="parameter"><code>rval</code></em> :</span></p></td>
295 <td> the string to copy into <em class="parameter"><code>string</code></em>
296 </td>
297 </tr>
298 <tr>
299 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
300 <td> <em class="parameter"><code>string</code></em>
301 </td>
302 </tr>
303 </tbody>
304 </table></div>
305 </div>
306 <hr>
307 <div class="refsect2" title="g_string_sprintf">
308 <a name="g-string-sprintf"></a><h3>g_string_sprintf</h3>
309 <pre class="programlisting">#define             g_string_sprintf</pre>
310 <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
311 <h3 class="title">Warning</h3>
312 <p><code class="literal">g_string_sprintf</code> is deprecated and should not be used in newly-written code. This function has been renamed to <a class="link" href="glib-Strings.html#g-string-printf" title="g_string_printf ()"><code class="function">g_string_printf()</code></a>.</p>
313 </div>
314 <p>
315 Writes a formatted string into a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
316 This is similar to the standard <code class="function">sprintf()</code> function,
317 except that the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> buffer automatically expands 
318 to contain the results. The previous contents of the 
319 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> are destroyed.</p>
320 <div class="variablelist"><table border="0">
321 <col align="left" valign="top">
322 <tbody>
323 <tr>
324 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
325 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
326 </td>
327 </tr>
328 <tr>
329 <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
330 <td> the string format. See the <code class="function">sprintf()</code> documentation
331 </td>
332 </tr>
333 <tr>
334 <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
335 <td> the parameters to insert into the format string
336 </td>
337 </tr>
338 </tbody>
339 </table></div>
340 </div>
341 <hr>
342 <div class="refsect2" title="g_string_sprintfa">
343 <a name="g-string-sprintfa"></a><h3>g_string_sprintfa</h3>
344 <pre class="programlisting">#define             g_string_sprintfa</pre>
345 <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
346 <h3 class="title">Warning</h3>
347 <p><code class="literal">g_string_sprintfa</code> is deprecated and should not be used in newly-written code. This function has been renamed to <a class="link" href="glib-Strings.html#g-string-append-printf" title="g_string_append_printf ()"><code class="function">g_string_append_printf()</code></a></p>
348 </div>
349 <p>
350 Appends a formatted string onto the end of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
351 This function is similar to <a class="link" href="glib-Strings.html#g-string-sprintf" title="g_string_sprintf"><code class="function">g_string_sprintf()</code></a> except that
352 the text is appended to the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.</p>
353 <div class="variablelist"><table border="0">
354 <col align="left" valign="top">
355 <tbody>
356 <tr>
357 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
358 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
359 </td>
360 </tr>
361 <tr>
362 <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
363 <td> the string format. See the <code class="function">sprintf()</code> documentation
364 </td>
365 </tr>
366 <tr>
367 <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
368 <td> the parameters to insert into the format string
369 </td>
370 </tr>
371 </tbody>
372 </table></div>
373 </div>
374 <hr>
375 <div class="refsect2" title="g_string_vprintf ()">
376 <a name="g-string-vprintf"></a><h3>g_string_vprintf ()</h3>
377 <pre class="programlisting"><span class="returnvalue">void</span>                g_string_vprintf                    (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
378                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
379                                                          <span class="returnvalue">va_list</span> args);</pre>
380 <p>
381 Writes a formatted string into a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>. 
382 This function is similar to <a class="link" href="glib-Strings.html#g-string-printf" title="g_string_printf ()"><code class="function">g_string_printf()</code></a> except that 
383 the arguments to the format string are passed as a va_list.</p>
384 <div class="variablelist"><table border="0">
385 <col align="left" valign="top">
386 <tbody>
387 <tr>
388 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
389 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
390 </td>
391 </tr>
392 <tr>
393 <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
394 <td> the string format. See the <code class="function">printf()</code> documentation
395 </td>
396 </tr>
397 <tr>
398 <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
399 <td> the parameters to insert into the format string
400 </td>
401 </tr>
402 </tbody>
403 </table></div>
404 <p class="since">Since 2.14</p>
405 </div>
406 <hr>
407 <div class="refsect2" title="g_string_append_vprintf ()">
408 <a name="g-string-append-vprintf"></a><h3>g_string_append_vprintf ()</h3>
409 <pre class="programlisting"><span class="returnvalue">void</span>                g_string_append_vprintf             (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
410                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
411                                                          <span class="returnvalue">va_list</span> args);</pre>
412 <p>
413 Appends a formatted string onto the end of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
414 This function is similar to <a class="link" href="glib-Strings.html#g-string-append-printf" title="g_string_append_printf ()"><code class="function">g_string_append_printf()</code></a>
415 except that the arguments to the format string are passed
416 as a va_list.</p>
417 <div class="variablelist"><table border="0">
418 <col align="left" valign="top">
419 <tbody>
420 <tr>
421 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
422 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
423 </td>
424 </tr>
425 <tr>
426 <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
427 <td> the string format. See the <code class="function">printf()</code> documentation
428 </td>
429 </tr>
430 <tr>
431 <td><p><span class="term"><em class="parameter"><code>args</code></em> :</span></p></td>
432 <td> the list of arguments to insert in the output
433 </td>
434 </tr>
435 </tbody>
436 </table></div>
437 <p class="since">Since 2.14</p>
438 </div>
439 <hr>
440 <div class="refsect2" title="g_string_printf ()">
441 <a name="g-string-printf"></a><h3>g_string_printf ()</h3>
442 <pre class="programlisting"><span class="returnvalue">void</span>                g_string_printf                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
443                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
444                                                          ...);</pre>
445 <p>
446 Writes a formatted string into a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
447 This is similar to the standard <code class="function">sprintf()</code> function,
448 except that the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> buffer automatically expands 
449 to contain the results. The previous contents of the 
450 <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> are destroyed.</p>
451 <div class="variablelist"><table border="0">
452 <col align="left" valign="top">
453 <tbody>
454 <tr>
455 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
456 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
457 </td>
458 </tr>
459 <tr>
460 <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
461 <td> the string format. See the <code class="function">printf()</code> documentation
462 </td>
463 </tr>
464 <tr>
465 <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
466 <td> the parameters to insert into the format string
467 </td>
468 </tr>
469 </tbody>
470 </table></div>
471 </div>
472 <hr>
473 <div class="refsect2" title="g_string_append_printf ()">
474 <a name="g-string-append-printf"></a><h3>g_string_append_printf ()</h3>
475 <pre class="programlisting"><span class="returnvalue">void</span>                g_string_append_printf              (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
476                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *format,
477                                                          ...);</pre>
478 <p>
479 Appends a formatted string onto the end of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
480 This function is similar to <a class="link" href="glib-Strings.html#g-string-printf" title="g_string_printf ()"><code class="function">g_string_printf()</code></a> except 
481 that the text is appended to the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.</p>
482 <div class="variablelist"><table border="0">
483 <col align="left" valign="top">
484 <tbody>
485 <tr>
486 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
487 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
488 </td>
489 </tr>
490 <tr>
491 <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
492 <td> the string format. See the <code class="function">printf()</code> documentation
493 </td>
494 </tr>
495 <tr>
496 <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
497 <td> the parameters to insert into the format string
498 </td>
499 </tr>
500 </tbody>
501 </table></div>
502 </div>
503 <hr>
504 <div class="refsect2" title="g_string_append ()">
505 <a name="g-string-append"></a><h3>g_string_append ()</h3>
506 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_append                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
507                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);</pre>
508 <p>
509 Adds a string onto the end of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, expanding 
510 it if necessary.</p>
511 <div class="variablelist"><table border="0">
512 <col align="left" valign="top">
513 <tbody>
514 <tr>
515 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
516 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
517 </td>
518 </tr>
519 <tr>
520 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
521 <td> the string to append onto the end of <em class="parameter"><code>string</code></em>
522 </td>
523 </tr>
524 <tr>
525 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
526 <td> <em class="parameter"><code>string</code></em>
527 </td>
528 </tr>
529 </tbody>
530 </table></div>
531 </div>
532 <hr>
533 <div class="refsect2" title="g_string_append_c ()">
534 <a name="g-string-append-c"></a><h3>g_string_append_c ()</h3>
535 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_append_c                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
536                                                          <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> c);</pre>
537 <p>
538 Adds a byte onto the end of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, expanding 
539 it if necessary.</p>
540 <div class="variablelist"><table border="0">
541 <col align="left" valign="top">
542 <tbody>
543 <tr>
544 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
545 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
546 </td>
547 </tr>
548 <tr>
549 <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
550 <td> the byte to append onto the end of <em class="parameter"><code>string</code></em>
551 </td>
552 </tr>
553 <tr>
554 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
555 <td> <em class="parameter"><code>string</code></em>
556 </td>
557 </tr>
558 </tbody>
559 </table></div>
560 </div>
561 <hr>
562 <div class="refsect2" title="g_string_append_unichar ()">
563 <a name="g-string-append-unichar"></a><h3>g_string_append_unichar ()</h3>
564 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_append_unichar             (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
565                                                          <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> wc);</pre>
566 <p>
567 Converts a Unicode character into UTF-8, and appends it
568 to the string.</p>
569 <div class="variablelist"><table border="0">
570 <col align="left" valign="top">
571 <tbody>
572 <tr>
573 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
574 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
575 </td>
576 </tr>
577 <tr>
578 <td><p><span class="term"><em class="parameter"><code>wc</code></em> :</span></p></td>
579 <td> a Unicode character
580 </td>
581 </tr>
582 <tr>
583 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
584 <td> <em class="parameter"><code>string</code></em>
585 </td>
586 </tr>
587 </tbody>
588 </table></div>
589 </div>
590 <hr>
591 <div class="refsect2" title="g_string_append_len ()">
592 <a name="g-string-append-len"></a><h3>g_string_append_len ()</h3>
593 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_append_len                 (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
594                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
595                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);</pre>
596 <p>
597 Appends <em class="parameter"><code>len</code></em> bytes of <em class="parameter"><code>val</code></em> to <em class="parameter"><code>string</code></em>. Because <em class="parameter"><code>len</code></em> is 
598 provided, <em class="parameter"><code>val</code></em> may contain embedded nuls and need not 
599 be nul-terminated.
600 </p>
601 <p>
602 Since this function does not stop at nul bytes, it is 
603 the caller's responsibility to ensure that <em class="parameter"><code>val</code></em> has at 
604 least <em class="parameter"><code>len</code></em> addressable bytes.</p>
605 <div class="variablelist"><table border="0">
606 <col align="left" valign="top">
607 <tbody>
608 <tr>
609 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
610 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
611 </td>
612 </tr>
613 <tr>
614 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
615 <td> bytes to append
616 </td>
617 </tr>
618 <tr>
619 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
620 <td> number of bytes of <em class="parameter"><code>val</code></em> to use
621 </td>
622 </tr>
623 <tr>
624 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
625 <td> <em class="parameter"><code>string</code></em>
626 </td>
627 </tr>
628 </tbody>
629 </table></div>
630 </div>
631 <hr>
632 <div class="refsect2" title="g_string_append_uri_escaped ()">
633 <a name="g-string-append-uri-escaped"></a><h3>g_string_append_uri_escaped ()</h3>
634 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *           g_string_append_uri_escaped         (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
635                                                          const <span class="returnvalue">char</span> *unescaped,
636                                                          const <span class="returnvalue">char</span> *reserved_chars_allowed,
637                                                          <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> allow_utf8);</pre>
638 <p>
639 Appends <em class="parameter"><code>unescaped</code></em> to <em class="parameter"><code>string</code></em>, escaped any characters that
640 are reserved in URIs using URI-style escape sequences.</p>
641 <div class="variablelist"><table border="0">
642 <col align="left" valign="top">
643 <tbody>
644 <tr>
645 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
646 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
647 </td>
648 </tr>
649 <tr>
650 <td><p><span class="term"><em class="parameter"><code>unescaped</code></em> :</span></p></td>
651 <td> a string
652 </td>
653 </tr>
654 <tr>
655 <td><p><span class="term"><em class="parameter"><code>reserved_chars_allowed</code></em> :</span></p></td>
656 <td> a string of reserved characters allowed to be used
657 </td>
658 </tr>
659 <tr>
660 <td><p><span class="term"><em class="parameter"><code>allow_utf8</code></em> :</span></p></td>
661 <td> set <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if the escaped string may include UTF8 characters
662 </td>
663 </tr>
664 <tr>
665 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
666 <td> <em class="parameter"><code>string</code></em>
667
668 </td>
669 </tr>
670 </tbody>
671 </table></div>
672 <p class="since">Since 2.16</p>
673 </div>
674 <hr>
675 <div class="refsect2" title="g_string_prepend ()">
676 <a name="g-string-prepend"></a><h3>g_string_prepend ()</h3>
677 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_prepend                    (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
678                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);</pre>
679 <p>
680 Adds a string on to the start of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, 
681 expanding it if necessary.</p>
682 <div class="variablelist"><table border="0">
683 <col align="left" valign="top">
684 <tbody>
685 <tr>
686 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
687 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
688 </td>
689 </tr>
690 <tr>
691 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
692 <td> the string to prepend on the start of <em class="parameter"><code>string</code></em>
693 </td>
694 </tr>
695 <tr>
696 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
697 <td> <em class="parameter"><code>string</code></em>
698 </td>
699 </tr>
700 </tbody>
701 </table></div>
702 </div>
703 <hr>
704 <div class="refsect2" title="g_string_prepend_c ()">
705 <a name="g-string-prepend-c"></a><h3>g_string_prepend_c ()</h3>
706 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_prepend_c                  (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
707                                                          <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> c);</pre>
708 <p>
709 Adds a byte onto the start of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, 
710 expanding it if necessary.</p>
711 <div class="variablelist"><table border="0">
712 <col align="left" valign="top">
713 <tbody>
714 <tr>
715 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
716 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
717 </td>
718 </tr>
719 <tr>
720 <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
721 <td> the byte to prepend on the start of the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
722 </td>
723 </tr>
724 <tr>
725 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
726 <td> <em class="parameter"><code>string</code></em>
727 </td>
728 </tr>
729 </tbody>
730 </table></div>
731 </div>
732 <hr>
733 <div class="refsect2" title="g_string_prepend_unichar ()">
734 <a name="g-string-prepend-unichar"></a><h3>g_string_prepend_unichar ()</h3>
735 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_prepend_unichar            (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
736                                                          <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> wc);</pre>
737 <p>
738 Converts a Unicode character into UTF-8, and prepends it
739 to the string.</p>
740 <div class="variablelist"><table border="0">
741 <col align="left" valign="top">
742 <tbody>
743 <tr>
744 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
745 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
746 </td>
747 </tr>
748 <tr>
749 <td><p><span class="term"><em class="parameter"><code>wc</code></em> :</span></p></td>
750 <td> a Unicode character
751 </td>
752 </tr>
753 <tr>
754 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
755 <td> <em class="parameter"><code>string</code></em>
756 </td>
757 </tr>
758 </tbody>
759 </table></div>
760 </div>
761 <hr>
762 <div class="refsect2" title="g_string_prepend_len ()">
763 <a name="g-string-prepend-len"></a><h3>g_string_prepend_len ()</h3>
764 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_prepend_len                (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
765                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
766                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);</pre>
767 <p>
768 Prepends <em class="parameter"><code>len</code></em> bytes of <em class="parameter"><code>val</code></em> to <em class="parameter"><code>string</code></em>. 
769 Because <em class="parameter"><code>len</code></em> is provided, <em class="parameter"><code>val</code></em> may contain 
770 embedded nuls and need not be nul-terminated.
771 </p>
772 <p>
773 Since this function does not stop at nul bytes, 
774 it is the caller's responsibility to ensure that 
775 <em class="parameter"><code>val</code></em> has at least <em class="parameter"><code>len</code></em> addressable bytes.</p>
776 <div class="variablelist"><table border="0">
777 <col align="left" valign="top">
778 <tbody>
779 <tr>
780 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
781 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
782 </td>
783 </tr>
784 <tr>
785 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
786 <td> bytes to prepend
787 </td>
788 </tr>
789 <tr>
790 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
791 <td> number of bytes in <em class="parameter"><code>val</code></em> to prepend
792 </td>
793 </tr>
794 <tr>
795 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
796 <td> <em class="parameter"><code>string</code></em>
797 </td>
798 </tr>
799 </tbody>
800 </table></div>
801 </div>
802 <hr>
803 <div class="refsect2" title="g_string_insert ()">
804 <a name="g-string-insert"></a><h3>g_string_insert ()</h3>
805 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_insert                     (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
806                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
807                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);</pre>
808 <p>
809 Inserts a copy of a string into a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, 
810 expanding it if necessary.</p>
811 <div class="variablelist"><table border="0">
812 <col align="left" valign="top">
813 <tbody>
814 <tr>
815 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
816 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
817 </td>
818 </tr>
819 <tr>
820 <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
821 <td> the position to insert the copy of the string
822 </td>
823 </tr>
824 <tr>
825 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
826 <td> the string to insert
827 </td>
828 </tr>
829 <tr>
830 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
831 <td> <em class="parameter"><code>string</code></em>
832 </td>
833 </tr>
834 </tbody>
835 </table></div>
836 </div>
837 <hr>
838 <div class="refsect2" title="g_string_insert_c ()">
839 <a name="g-string-insert-c"></a><h3>g_string_insert_c ()</h3>
840 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_insert_c                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
841                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
842                                                          <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> c);</pre>
843 <p>
844 Inserts a byte into a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, expanding it if necessary.</p>
845 <div class="variablelist"><table border="0">
846 <col align="left" valign="top">
847 <tbody>
848 <tr>
849 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
850 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
851 </td>
852 </tr>
853 <tr>
854 <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
855 <td> the position to insert the byte
856 </td>
857 </tr>
858 <tr>
859 <td><p><span class="term"><em class="parameter"><code>c</code></em> :</span></p></td>
860 <td> the byte to insert
861 </td>
862 </tr>
863 <tr>
864 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
865 <td> <em class="parameter"><code>string</code></em>
866 </td>
867 </tr>
868 </tbody>
869 </table></div>
870 </div>
871 <hr>
872 <div class="refsect2" title="g_string_insert_unichar ()">
873 <a name="g-string-insert-unichar"></a><h3>g_string_insert_unichar ()</h3>
874 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_insert_unichar             (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
875                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
876                                                          <a class="link" href="glib-Unicode-Manipulation.html#gunichar" title="gunichar"><span class="returnvalue">gunichar</span></a> wc);</pre>
877 <p>
878 Converts a Unicode character into UTF-8, and insert it
879 into the string at the given position.</p>
880 <div class="variablelist"><table border="0">
881 <col align="left" valign="top">
882 <tbody>
883 <tr>
884 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
885 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
886 </td>
887 </tr>
888 <tr>
889 <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
890 <td> the position at which to insert character, or -1 to
891       append at the end of the string
892 </td>
893 </tr>
894 <tr>
895 <td><p><span class="term"><em class="parameter"><code>wc</code></em> :</span></p></td>
896 <td> a Unicode character
897 </td>
898 </tr>
899 <tr>
900 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
901 <td> <em class="parameter"><code>string</code></em>
902 </td>
903 </tr>
904 </tbody>
905 </table></div>
906 </div>
907 <hr>
908 <div class="refsect2" title="g_string_insert_len ()">
909 <a name="g-string-insert-len"></a><h3>g_string_insert_len ()</h3>
910 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_insert_len                 (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
911                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
912                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
913                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);</pre>
914 <p>
915 Inserts <em class="parameter"><code>len</code></em> bytes of <em class="parameter"><code>val</code></em> into <em class="parameter"><code>string</code></em> at <em class="parameter"><code>pos</code></em>.  
916 Because <em class="parameter"><code>len</code></em> is provided, <em class="parameter"><code>val</code></em> may contain embedded 
917 nuls and need not be nul-terminated. If <em class="parameter"><code>pos</code></em> is -1, 
918 bytes are inserted at the end of the string.
919 </p>
920 <p>
921 Since this function does not stop at nul bytes, it is 
922 the caller's responsibility to ensure that <em class="parameter"><code>val</code></em> has at 
923 least <em class="parameter"><code>len</code></em> addressable bytes.</p>
924 <div class="variablelist"><table border="0">
925 <col align="left" valign="top">
926 <tbody>
927 <tr>
928 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
929 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
930 </td>
931 </tr>
932 <tr>
933 <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
934 <td> position in <em class="parameter"><code>string</code></em> where insertion should 
935       happen, or -1 for at the end
936 </td>
937 </tr>
938 <tr>
939 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
940 <td> bytes to insert
941 </td>
942 </tr>
943 <tr>
944 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
945 <td> number of bytes of <em class="parameter"><code>val</code></em> to insert
946 </td>
947 </tr>
948 <tr>
949 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
950 <td> <em class="parameter"><code>string</code></em>
951 </td>
952 </tr>
953 </tbody>
954 </table></div>
955 </div>
956 <hr>
957 <div class="refsect2" title="g_string_overwrite ()">
958 <a name="g-string-overwrite"></a><h3>g_string_overwrite ()</h3>
959 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_overwrite                  (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
960                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> pos,
961                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val);</pre>
962 <p>
963 Overwrites part of a string, lengthening it if necessary.</p>
964 <div class="variablelist"><table border="0">
965 <col align="left" valign="top">
966 <tbody>
967 <tr>
968 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
969 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
970 </td>
971 </tr>
972 <tr>
973 <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
974 <td> the position at which to start overwriting
975 </td>
976 </tr>
977 <tr>
978 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
979 <td> the string that will overwrite the <em class="parameter"><code>string</code></em> starting at <em class="parameter"><code>pos</code></em>
980 </td>
981 </tr>
982 <tr>
983 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
984 <td> <em class="parameter"><code>string</code></em>
985
986 </td>
987 </tr>
988 </tbody>
989 </table></div>
990 <p class="since">Since 2.14</p>
991 </div>
992 <hr>
993 <div class="refsect2" title="g_string_overwrite_len ()">
994 <a name="g-string-overwrite-len"></a><h3>g_string_overwrite_len ()</h3>
995 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_overwrite_len              (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
996                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> pos,
997                                                          const <a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a> *val,
998                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);</pre>
999 <p>
1000 Overwrites part of a string, lengthening it if necessary. 
1001 This function will work with embedded nuls.</p>
1002 <div class="variablelist"><table border="0">
1003 <col align="left" valign="top">
1004 <tbody>
1005 <tr>
1006 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1007 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1008 </td>
1009 </tr>
1010 <tr>
1011 <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
1012 <td> the position at which to start overwriting
1013 </td>
1014 </tr>
1015 <tr>
1016 <td><p><span class="term"><em class="parameter"><code>val</code></em> :</span></p></td>
1017 <td> the string that will overwrite the <em class="parameter"><code>string</code></em> starting at <em class="parameter"><code>pos</code></em>
1018 </td>
1019 </tr>
1020 <tr>
1021 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1022 <td> the number of bytes to write from <em class="parameter"><code>val</code></em>
1023 </td>
1024 </tr>
1025 <tr>
1026 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1027 <td> <em class="parameter"><code>string</code></em>
1028
1029 </td>
1030 </tr>
1031 </tbody>
1032 </table></div>
1033 <p class="since">Since 2.14</p>
1034 </div>
1035 <hr>
1036 <div class="refsect2" title="g_string_erase ()">
1037 <a name="g-string-erase"></a><h3>g_string_erase ()</h3>
1038 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_erase                      (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
1039                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> pos,
1040                                                          <a class="link" href="glib-Basic-Types.html#gssize" title="gssize"><span class="returnvalue">gssize</span></a> len);</pre>
1041 <p>
1042 Removes <em class="parameter"><code>len</code></em> bytes from a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>, starting at position <em class="parameter"><code>pos</code></em>.
1043 The rest of the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> is shifted down to fill the gap.</p>
1044 <div class="variablelist"><table border="0">
1045 <col align="left" valign="top">
1046 <tbody>
1047 <tr>
1048 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1049 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1050 </td>
1051 </tr>
1052 <tr>
1053 <td><p><span class="term"><em class="parameter"><code>pos</code></em> :</span></p></td>
1054 <td> the position of the content to remove
1055 </td>
1056 </tr>
1057 <tr>
1058 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1059 <td> the number of bytes to remove, or -1 to remove all
1060       following bytes
1061 </td>
1062 </tr>
1063 <tr>
1064 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1065 <td> <em class="parameter"><code>string</code></em>
1066 </td>
1067 </tr>
1068 </tbody>
1069 </table></div>
1070 </div>
1071 <hr>
1072 <div class="refsect2" title="g_string_truncate ()">
1073 <a name="g-string-truncate"></a><h3>g_string_truncate ()</h3>
1074 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_truncate                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
1075                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> len);</pre>
1076 <p>
1077 Cuts off the end of the GString, leaving the first <em class="parameter"><code>len</code></em> bytes.</p>
1078 <div class="variablelist"><table border="0">
1079 <col align="left" valign="top">
1080 <tbody>
1081 <tr>
1082 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1083 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1084 </td>
1085 </tr>
1086 <tr>
1087 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1088 <td> the new size of <em class="parameter"><code>string</code></em>
1089 </td>
1090 </tr>
1091 <tr>
1092 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1093 <td> <em class="parameter"><code>string</code></em>
1094 </td>
1095 </tr>
1096 </tbody>
1097 </table></div>
1098 </div>
1099 <hr>
1100 <div class="refsect2" title="g_string_set_size ()">
1101 <a name="g-string-set-size"></a><h3>g_string_set_size ()</h3>
1102 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_set_size                   (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
1103                                                          <a class="link" href="glib-Basic-Types.html#gsize" title="gsize"><span class="returnvalue">gsize</span></a> len);</pre>
1104 <p>
1105 Sets the length of a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>. If the length is less than
1106 the current length, the string will be truncated. If the
1107 length is greater than the current length, the contents
1108 of the newly added area are undefined. (However, as
1109 always, string-&gt;str[string-&gt;len] will be a nul byte.)</p>
1110 <div class="variablelist"><table border="0">
1111 <col align="left" valign="top">
1112 <tbody>
1113 <tr>
1114 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1115 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1116 </td>
1117 </tr>
1118 <tr>
1119 <td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1120 <td> the new length
1121 </td>
1122 </tr>
1123 <tr>
1124 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1125 <td> <em class="parameter"><code>string</code></em>
1126 </td>
1127 </tr>
1128 </tbody>
1129 </table></div>
1130 </div>
1131 <hr>
1132 <div class="refsect2" title="g_string_free ()">
1133 <a name="g-string-free"></a><h3>g_string_free ()</h3>
1134 <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gchar" title="gchar"><span class="returnvalue">gchar</span></a>*              g_string_free                       (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string,
1135                                                          <a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a> free_segment);</pre>
1136 <p>
1137 Frees the memory allocated for the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
1138 If <em class="parameter"><code>free_segment</code></em> is <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> it also frees the character data.</p>
1139 <div class="variablelist"><table border="0">
1140 <col align="left" valign="top">
1141 <tbody>
1142 <tr>
1143 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1144 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1145 </td>
1146 </tr>
1147 <tr>
1148 <td><p><span class="term"><em class="parameter"><code>free_segment</code></em> :</span></p></td>
1149 <td> if <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> the actual character data is freed as well
1150 </td>
1151 </tr>
1152 <tr>
1153 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1154 <td> the character data of <em class="parameter"><code>string</code></em> 
1155          (i.e. <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a> if <em class="parameter"><code>free_segment</code></em> is <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a>)
1156 </td>
1157 </tr>
1158 </tbody>
1159 </table></div>
1160 </div>
1161 <hr>
1162 <div class="refsect2" title="g_string_up ()">
1163 <a name="g-string-up"></a><h3>g_string_up ()</h3>
1164 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_up                         (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string);</pre>
1165 <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1166 <h3 class="title">Warning</h3>
1167 <p><code class="literal">g_string_up</code> has been deprecated since version 2.2 and should not be used in newly-written code. This function uses the locale-specific 
1168   <code class="function">toupper()</code> function, which is almost never the right thing. 
1169   Use <a class="link" href="glib-String-Utility-Functions.html#g-string-ascii-up" title="g_string_ascii_up ()"><code class="function">g_string_ascii_up()</code></a> or <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strup" title="g_utf8_strup ()"><code class="function">g_utf8_strup()</code></a> instead.</p>
1170 </div>
1171 <p>
1172 Converts a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> to uppercase.</p>
1173 <div class="variablelist"><table border="0">
1174 <col align="left" valign="top">
1175 <tbody>
1176 <tr>
1177 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1178 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> 
1179 </td>
1180 </tr>
1181 <tr>
1182 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1183 <td> <em class="parameter"><code>string</code></em>
1184
1185 </td>
1186 </tr>
1187 </tbody>
1188 </table></div>
1189 </div>
1190 <hr>
1191 <div class="refsect2" title="g_string_down ()">
1192 <a name="g-string-down"></a><h3>g_string_down ()</h3>
1193 <pre class="programlisting"><a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a>*            g_string_down                       (<a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *string);</pre>
1194 <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1195 <h3 class="title">Warning</h3>
1196 <p><code class="literal">g_string_down</code> has been deprecated since version 2.2 and should not be used in newly-written code. This function uses the locale-specific 
1197   <code class="function">tolower()</code> function, which is almost never the right thing. 
1198   Use <a class="link" href="glib-String-Utility-Functions.html#g-string-ascii-down" title="g_string_ascii_down ()"><code class="function">g_string_ascii_down()</code></a> or <a class="link" href="glib-Unicode-Manipulation.html#g-utf8-strdown" title="g_utf8_strdown ()"><code class="function">g_utf8_strdown()</code></a> instead.</p>
1199 </div>
1200 <p>
1201 Converts a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a> to lowercase.</p>
1202 <div class="variablelist"><table border="0">
1203 <col align="left" valign="top">
1204 <tbody>
1205 <tr>
1206 <td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1207 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1208 </td>
1209 </tr>
1210 <tr>
1211 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1212 <td> the <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>.
1213
1214 </td>
1215 </tr>
1216 </tbody>
1217 </table></div>
1218 </div>
1219 <hr>
1220 <div class="refsect2" title="g_string_hash ()">
1221 <a name="g-string-hash"></a><h3>g_string_hash ()</h3>
1222 <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#guint" title="guint"><span class="returnvalue">guint</span></a>               g_string_hash                       (const <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *str);</pre>
1223 <p>
1224 Creates a hash code for <em class="parameter"><code>str</code></em>; for use with <a class="link" href="glib-Hash-Tables.html#GHashTable" title="GHashTable"><span class="type">GHashTable</span></a>.</p>
1225 <div class="variablelist"><table border="0">
1226 <col align="left" valign="top">
1227 <tbody>
1228 <tr>
1229 <td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
1230 <td> a string to hash
1231 </td>
1232 </tr>
1233 <tr>
1234 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1235 <td> hash code for <em class="parameter"><code>str</code></em>
1236 </td>
1237 </tr>
1238 </tbody>
1239 </table></div>
1240 </div>
1241 <hr>
1242 <div class="refsect2" title="g_string_equal ()">
1243 <a name="g-string-equal"></a><h3>g_string_equal ()</h3>
1244 <pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gboolean" title="gboolean"><span class="returnvalue">gboolean</span></a>            g_string_equal                      (const <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *v,
1245                                                          const <a class="link" href="glib-Strings.html#GString" title="GString"><span class="returnvalue">GString</span></a> *v2);</pre>
1246 <p>
1247 Compares two strings for equality, returning <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if they are equal. 
1248 For use with <a class="link" href="glib-Hash-Tables.html#GHashTable" title="GHashTable"><span class="type">GHashTable</span></a>.</p>
1249 <div class="variablelist"><table border="0">
1250 <col align="left" valign="top">
1251 <tbody>
1252 <tr>
1253 <td><p><span class="term"><em class="parameter"><code>v</code></em> :</span></p></td>
1254 <td> a <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1255 </td>
1256 </tr>
1257 <tr>
1258 <td><p><span class="term"><em class="parameter"><code>v2</code></em> :</span></p></td>
1259 <td> another <a class="link" href="glib-Strings.html#GString" title="GString"><span class="type">GString</span></a>
1260 </td>
1261 </tr>
1262 <tr>
1263 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1264 <td> <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> if they strings are the same length and contain the 
1265   same bytes
1266 </td>
1267 </tr>
1268 </tbody>
1269 </table></div>
1270 </div>
1271 </div>
1272 </div>
1273 <div class="footer">
1274 <hr>
1275           Generated by GTK-Doc V1.13</div>
1276 </body>
1277 </html>