Imported Upstream version 1.43.3
[platform/upstream/gobject-introspection.git] / docs / reference / html / GIRepository.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>GIRepository: GObject Introspection Reference Manual</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
7 <link rel="home" href="index.html" title="GObject Introspection Reference Manual">
8 <link rel="up" href="ch01.html" title="GIRepository">
9 <link rel="prev" href="ch01.html" title="GIRepository">
10 <link rel="next" href="gi-struct-hierarchy.html" title="Struct hierarchy">
11 <meta name="generator" content="GTK-Doc V1.21.1 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
16 <td width="100%" align="left" class="shortcuts">
17 <a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
18                   <a href="#GIRepository.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
19                   <a href="#GIRepository.object-hierarchy" class="shortcut">Object Hierarchy</a></span>
20 </td>
21 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
22 <td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
23 <td><a accesskey="p" href="ch01.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
24 <td><a accesskey="n" href="gi-struct-hierarchy.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
25 </tr></table>
26 <div class="refentry">
27 <a name="GIRepository"></a><div class="titlepage"></div>
28 <div class="refnamediv"><table width="100%"><tr>
29 <td valign="top">
30 <h2><span class="refentrytitle"><a name="GIRepository.top_of_page"></a>GIRepository</span></h2>
31 <p>GIRepository — GObject Introspection repository manager</p>
32 </td>
33 <td class="gallery_image" valign="top" align="right"></td>
34 </tr></table></div>
35 <div class="refsect1">
36 <a name="GIRepository.functions"></a><h2>Functions</h2>
37 <div class="informaltable"><table width="100%" border="0">
38 <colgroup>
39 <col width="150px" class="functions_return">
40 <col class="functions_name">
41 </colgroup>
42 <tbody>
43 <tr>
44 <td class="function_type">
45 <a class="link" href="GIRepository.html" title="GIRepository"><span class="returnvalue">GIRepository</span></a> *
46 </td>
47 <td class="function_name">
48 <a class="link" href="GIRepository.html#g-irepository-get-default" title="g_irepository_get_default ()">g_irepository_get_default</a> <span class="c_punctuation">()</span>
49 </td>
50 </tr>
51 <tr>
52 <td class="function_type">
53 <span class="returnvalue">gchar</span> **
54 </td>
55 <td class="function_name">
56 <a class="link" href="GIRepository.html#g-irepository-get-dependencies" title="g_irepository_get_dependencies ()">g_irepository_get_dependencies</a> <span class="c_punctuation">()</span>
57 </td>
58 </tr>
59 <tr>
60 <td class="function_type">
61 <span class="returnvalue">gchar</span> **
62 </td>
63 <td class="function_name">
64 <a class="link" href="GIRepository.html#g-irepository-get-loaded-namespaces" title="g_irepository_get_loaded_namespaces ()">g_irepository_get_loaded_namespaces</a> <span class="c_punctuation">()</span>
65 </td>
66 </tr>
67 <tr>
68 <td class="function_type">
69 <span class="returnvalue">gint</span>
70 </td>
71 <td class="function_name">
72 <a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()">g_irepository_get_n_infos</a> <span class="c_punctuation">()</span>
73 </td>
74 </tr>
75 <tr>
76 <td class="function_type">
77 <span class="returnvalue">GIBaseInfo</span> *
78 </td>
79 <td class="function_name">
80 <a class="link" href="GIRepository.html#g-irepository-get-info" title="g_irepository_get_info ()">g_irepository_get_info</a> <span class="c_punctuation">()</span>
81 </td>
82 </tr>
83 <tr>
84 <td class="function_type">
85 <span class="returnvalue">GOptionGroup</span> *
86 </td>
87 <td class="function_name">
88 <a class="link" href="GIRepository.html#g-irepository-get-option-group" title="g_irepository_get_option_group ()">g_irepository_get_option_group</a> <span class="c_punctuation">()</span>
89 </td>
90 </tr>
91 <tr>
92 <td class="function_type">
93 <span class="returnvalue">GList</span> *
94 </td>
95 <td class="function_name">
96 <a class="link" href="GIRepository.html#g-irepository-enumerate-versions" title="g_irepository_enumerate_versions ()">g_irepository_enumerate_versions</a> <span class="c_punctuation">()</span>
97 </td>
98 </tr>
99 <tr>
100 <td class="function_type">
101 <span class="returnvalue">void</span>
102 </td>
103 <td class="function_name">
104 <a class="link" href="GIRepository.html#g-irepository-prepend-library-path" title="g_irepository_prepend_library_path ()">g_irepository_prepend_library_path</a> <span class="c_punctuation">()</span>
105 </td>
106 </tr>
107 <tr>
108 <td class="function_type">
109 <span class="returnvalue">void</span>
110 </td>
111 <td class="function_name">
112 <a class="link" href="GIRepository.html#g-irepository-prepend-search-path" title="g_irepository_prepend_search_path ()">g_irepository_prepend_search_path</a> <span class="c_punctuation">()</span>
113 </td>
114 </tr>
115 <tr>
116 <td class="function_type">
117 <span class="returnvalue">GSList</span> *
118 </td>
119 <td class="function_name">
120 <a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()">g_irepository_get_search_path</a> <span class="c_punctuation">()</span>
121 </td>
122 </tr>
123 <tr>
124 <td class="function_type">const <span class="returnvalue">char</span> *
125 </td>
126 <td class="function_name">
127 <a class="link" href="GIRepository.html#g-irepository-load-typelib" title="g_irepository_load_typelib ()">g_irepository_load_typelib</a> <span class="c_punctuation">()</span>
128 </td>
129 </tr>
130 <tr>
131 <td class="function_type">const <span class="returnvalue">gchar</span> *
132 </td>
133 <td class="function_name">
134 <a class="link" href="GIRepository.html#g-irepository-get-typelib-path" title="g_irepository_get_typelib_path ()">g_irepository_get_typelib_path</a> <span class="c_punctuation">()</span>
135 </td>
136 </tr>
137 <tr>
138 <td class="function_type">
139 <span class="returnvalue">gboolean</span>
140 </td>
141 <td class="function_name">
142 <a class="link" href="GIRepository.html#g-irepository-is-registered" title="g_irepository_is_registered ()">g_irepository_is_registered</a> <span class="c_punctuation">()</span>
143 </td>
144 </tr>
145 <tr>
146 <td class="function_type">
147 <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
148 </td>
149 <td class="function_name">
150 <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()">g_irepository_require</a> <span class="c_punctuation">()</span>
151 </td>
152 </tr>
153 <tr>
154 <td class="function_type">
155 <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
156 </td>
157 <td class="function_name">
158 <a class="link" href="GIRepository.html#g-irepository-require-private" title="g_irepository_require_private ()">g_irepository_require_private</a> <span class="c_punctuation">()</span>
159 </td>
160 </tr>
161 <tr>
162 <td class="function_type">const <span class="returnvalue">gchar</span> *
163 </td>
164 <td class="function_name">
165 <a class="link" href="GIRepository.html#g-irepository-get-c-prefix" title="g_irepository_get_c_prefix ()">g_irepository_get_c_prefix</a> <span class="c_punctuation">()</span>
166 </td>
167 </tr>
168 <tr>
169 <td class="function_type">const <span class="returnvalue">gchar</span> *
170 </td>
171 <td class="function_name">
172 <a class="link" href="GIRepository.html#g-irepository-get-shared-library" title="g_irepository_get_shared_library ()">g_irepository_get_shared_library</a> <span class="c_punctuation">()</span>
173 </td>
174 </tr>
175 <tr>
176 <td class="function_type">const <span class="returnvalue">gchar</span> *
177 </td>
178 <td class="function_name">
179 <a class="link" href="GIRepository.html#g-irepository-get-version" title="g_irepository_get_version ()">g_irepository_get_version</a> <span class="c_punctuation">()</span>
180 </td>
181 </tr>
182 <tr>
183 <td class="function_type">
184 <span class="returnvalue">GIBaseInfo</span> *
185 </td>
186 <td class="function_name">
187 <a class="link" href="GIRepository.html#g-irepository-find-by-gtype" title="g_irepository_find_by_gtype ()">g_irepository_find_by_gtype</a> <span class="c_punctuation">()</span>
188 </td>
189 </tr>
190 <tr>
191 <td class="function_type">
192 <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="returnvalue">GIEnumInfo</span></a> *
193 </td>
194 <td class="function_name">
195 <a class="link" href="GIRepository.html#g-irepository-find-by-error-domain" title="g_irepository_find_by_error_domain ()">g_irepository_find_by_error_domain</a> <span class="c_punctuation">()</span>
196 </td>
197 </tr>
198 <tr>
199 <td class="function_type">
200 <span class="returnvalue">GIBaseInfo</span> *
201 </td>
202 <td class="function_name">
203 <a class="link" href="GIRepository.html#g-irepository-find-by-name" title="g_irepository_find_by_name ()">g_irepository_find_by_name</a> <span class="c_punctuation">()</span>
204 </td>
205 </tr>
206 <tr>
207 <td class="function_type">
208 <span class="returnvalue">gboolean</span>
209 </td>
210 <td class="function_name">
211 <a class="link" href="GIRepository.html#g-irepository-dump" title="g_irepository_dump ()">g_irepository_dump</a> <span class="c_punctuation">()</span>
212 </td>
213 </tr>
214 <tr>
215 <td class="function_type">
216 <span class="returnvalue">void</span>
217 </td>
218 <td class="function_name">
219 <a class="link" href="GIRepository.html#gi-cclosure-marshal-generic" title="gi_cclosure_marshal_generic ()">gi_cclosure_marshal_generic</a> <span class="c_punctuation">()</span>
220 </td>
221 </tr>
222 <tr>
223 <td class="define_keyword">#define</td>
224 <td class="function_name"><a class="link" href="GIRepository.html#G-IREPOSITORY-ERROR:CAPS" title="G_IREPOSITORY_ERROR">G_IREPOSITORY_ERROR</a></td>
225 </tr>
226 </tbody>
227 </table></div>
228 </div>
229 <div class="refsect1">
230 <a name="GIRepository.other"></a><h2>Types and Values</h2>
231 <div class="informaltable"><table width="100%" border="0">
232 <colgroup>
233 <col width="150px" class="name">
234 <col class="description">
235 </colgroup>
236 <tbody>
237 <tr>
238 <td class="datatype_keyword">struct</td>
239 <td class="function_name"><a class="link" href="GIRepository.html#GIRepository-struct" title="struct GIRepository">GIRepository</a></td>
240 </tr>
241 <tr>
242 <td class="datatype_keyword">enum</td>
243 <td class="function_name"><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags">GIRepositoryLoadFlags</a></td>
244 </tr>
245 <tr>
246 <td class="datatype_keyword">enum</td>
247 <td class="function_name"><a class="link" href="GIRepository.html#GIRepositoryError" title="enum GIRepositoryError">GIRepositoryError</a></td>
248 </tr>
249 </tbody>
250 </table></div>
251 </div>
252 <div class="refsect1">
253 <a name="GIRepository.object-hierarchy"></a><h2>Object Hierarchy</h2>
254 <pre class="screen">    GObject
255     <span class="lineart">╰──</span> GIRepository
256 </pre>
257 </div>
258 <div class="refsect1">
259 <a name="GIRepository.includes"></a><h2>Includes</h2>
260 <pre class="synopsis">#include &lt;girepository.h&gt;
261 </pre>
262 </div>
263 <div class="refsect1">
264 <a name="GIRepository.description"></a><h2>Description</h2>
265 <p><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> is used to manage repositories of namespaces. Namespaces
266 are represented on disk by type libraries (.typelib files).</p>
267 </div>
268 <div class="refsect1">
269 <a name="GIRepository.functions_details"></a><h2>Functions</h2>
270 <div class="refsect2">
271 <a name="g-irepository-get-default"></a><h3>g_irepository_get_default ()</h3>
272 <pre class="programlisting"><a class="link" href="GIRepository.html" title="GIRepository"><span class="returnvalue">GIRepository</span></a> *
273 g_irepository_get_default (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
274 <p>Returns the singleton process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. It is
275 not currently supported to have multiple repositories in a
276 particular process, but this function is provided in the unlikely
277 eventuality that it would become possible, and as a convenience for
278 higher level language bindings to conform to the GObject method
279 call conventions.</p>
280 <p>All methods on <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> also accept <code class="literal">NULL</code> as an instance
281 parameter to mean this default repository, which is usually more
282 convenient for C.</p>
283 <div class="refsect3">
284 <a name="id-1.4.2.2.8.2.6"></a><h4>Returns</h4>
285 <p> The global singleton <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p>
286 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
287 </div>
288 </div>
289 <hr>
290 <div class="refsect2">
291 <a name="g-irepository-get-dependencies"></a><h3>g_irepository_get_dependencies ()</h3>
292 <pre class="programlisting"><span class="returnvalue">gchar</span> **
293 g_irepository_get_dependencies (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
294                                 <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
295 <p>Return an array of all (transitive) versioned dependencies for
296 <em class="parameter"><code>namespace_</code></em>
297 . Returned strings are of the form</p>
298 <code class="code">namespace-version</code>.
299 <p>Note: <em class="parameter"><code>namespace_</code></em>
300  must have already been loaded using a function
301 such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
302 <div class="refsect3">
303 <a name="id-1.4.2.2.8.3.7"></a><h4>Parameters</h4>
304 <div class="informaltable"><table width="100%" border="0">
305 <colgroup>
306 <col width="150px" class="parameters_name">
307 <col class="parameters_description">
308 <col width="200px" class="parameters_annotations">
309 </colgroup>
310 <tbody>
311 <tr>
312 <td class="parameter_name"><p>repository</p></td>
313 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
314 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
315 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
316 </tr>
317 <tr>
318 <td class="parameter_name"><p>namespace_</p></td>
319 <td class="parameter_description"><p>Namespace of interest</p></td>
320 <td class="parameter_annotations"> </td>
321 </tr>
322 </tbody>
323 </table></div>
324 </div>
325 <div class="refsect3">
326 <a name="id-1.4.2.2.8.3.8"></a><h4>Returns</h4>
327 <p> Zero-terminated string array of versioned
328 dependencies. </p>
329 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
330 </div>
331 </div>
332 <hr>
333 <div class="refsect2">
334 <a name="g-irepository-get-loaded-namespaces"></a><h3>g_irepository_get_loaded_namespaces ()</h3>
335 <pre class="programlisting"><span class="returnvalue">gchar</span> **
336 g_irepository_get_loaded_namespaces (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>);</pre>
337 <p>Return the list of currently loaded namespaces.</p>
338 <div class="refsect3">
339 <a name="id-1.4.2.2.8.4.5"></a><h4>Parameters</h4>
340 <div class="informaltable"><table width="100%" border="0">
341 <colgroup>
342 <col width="150px" class="parameters_name">
343 <col class="parameters_description">
344 <col width="200px" class="parameters_annotations">
345 </colgroup>
346 <tbody><tr>
347 <td class="parameter_name"><p>repository</p></td>
348 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
349 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
350 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
351 </tr></tbody>
352 </table></div>
353 </div>
354 <div class="refsect3">
355 <a name="id-1.4.2.2.8.4.6"></a><h4>Returns</h4>
356 <p> List of namespaces. </p>
357 <p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
358 </div>
359 </div>
360 <hr>
361 <div class="refsect2">
362 <a name="g-irepository-get-n-infos"></a><h3>g_irepository_get_n_infos ()</h3>
363 <pre class="programlisting"><span class="returnvalue">gint</span>
364 g_irepository_get_n_infos (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
365                            <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
366 <p>This function returns the number of metadata entries in
367 given namespace <em class="parameter"><code>namespace_</code></em>
368 .  The namespace must have
369 already been loaded before calling this function.</p>
370 <div class="refsect3">
371 <a name="id-1.4.2.2.8.5.5"></a><h4>Parameters</h4>
372 <div class="informaltable"><table width="100%" border="0">
373 <colgroup>
374 <col width="150px" class="parameters_name">
375 <col class="parameters_description">
376 <col width="200px" class="parameters_annotations">
377 </colgroup>
378 <tbody>
379 <tr>
380 <td class="parameter_name"><p>repository</p></td>
381 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
382 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
383 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
384 </tr>
385 <tr>
386 <td class="parameter_name"><p>namespace_</p></td>
387 <td class="parameter_description"><p>Namespace to inspect</p></td>
388 <td class="parameter_annotations"> </td>
389 </tr>
390 </tbody>
391 </table></div>
392 </div>
393 <div class="refsect3">
394 <a name="id-1.4.2.2.8.5.6"></a><h4>Returns</h4>
395 <p> number of metadata entries</p>
396 <p></p>
397 </div>
398 </div>
399 <hr>
400 <div class="refsect2">
401 <a name="g-irepository-get-info"></a><h3>g_irepository_get_info ()</h3>
402 <pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
403 g_irepository_get_info (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
404                         <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
405                         <em class="parameter"><code><span class="type">gint</span> index</code></em>);</pre>
406 <p>This function returns a particular metadata entry in the
407 given namespace <em class="parameter"><code>namespace_</code></em>
408 .  The namespace must have
409 already been loaded before calling this function.
410 See <a class="link" href="GIRepository.html#g-irepository-get-n-infos" title="g_irepository_get_n_infos ()"><code class="function">g_irepository_get_n_infos()</code></a> to find the maximum number of
411 entries.</p>
412 <div class="refsect3">
413 <a name="id-1.4.2.2.8.6.5"></a><h4>Parameters</h4>
414 <div class="informaltable"><table width="100%" border="0">
415 <colgroup>
416 <col width="150px" class="parameters_name">
417 <col class="parameters_description">
418 <col width="200px" class="parameters_annotations">
419 </colgroup>
420 <tbody>
421 <tr>
422 <td class="parameter_name"><p>repository</p></td>
423 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
424 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
425 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
426 </tr>
427 <tr>
428 <td class="parameter_name"><p>namespace_</p></td>
429 <td class="parameter_description"><p>Namespace to inspect</p></td>
430 <td class="parameter_annotations"> </td>
431 </tr>
432 <tr>
433 <td class="parameter_name"><p>index</p></td>
434 <td class="parameter_description"><p>0-based offset into namespace metadata for entry</p></td>
435 <td class="parameter_annotations"> </td>
436 </tr>
437 </tbody>
438 </table></div>
439 </div>
440 <div class="refsect3">
441 <a name="id-1.4.2.2.8.6.6"></a><h4>Returns</h4>
442 <p> <span class="type">GIBaseInfo</span> containing metadata. </p>
443 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
444 </div>
445 </div>
446 <hr>
447 <div class="refsect2">
448 <a name="g-irepository-get-option-group"></a><h3>g_irepository_get_option_group ()</h3>
449 <pre class="programlisting"><span class="returnvalue">GOptionGroup</span> *
450 g_irepository_get_option_group (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
451 <p>Obtain the option group for girepository, it's used
452 by the dumper and for programs that wants to provide
453 introspection information</p>
454 <div class="refsect3">
455 <a name="id-1.4.2.2.8.7.5"></a><h4>Returns</h4>
456 <p> the option group. </p>
457 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
458 </div>
459 </div>
460 <hr>
461 <div class="refsect2">
462 <a name="g-irepository-enumerate-versions"></a><h3>g_irepository_enumerate_versions ()</h3>
463 <pre class="programlisting"><span class="returnvalue">GList</span> *
464 g_irepository_enumerate_versions (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
465                                   <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
466 <p>Obtain an unordered list of versions (either currently loaded or
467 available) for <em class="parameter"><code>namespace_</code></em>
468  in this <em class="parameter"><code>repository</code></em>
469 .</p>
470 <div class="refsect3">
471 <a name="id-1.4.2.2.8.8.5"></a><h4>Parameters</h4>
472 <div class="informaltable"><table width="100%" border="0">
473 <colgroup>
474 <col width="150px" class="parameters_name">
475 <col class="parameters_description">
476 <col width="200px" class="parameters_annotations">
477 </colgroup>
478 <tbody>
479 <tr>
480 <td class="parameter_name"><p>repository</p></td>
481 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
482 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
483 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
484 </tr>
485 <tr>
486 <td class="parameter_name"><p>namespace_</p></td>
487 <td class="parameter_description"><p>GI namespace, e.g. "Gtk"</p></td>
488 <td class="parameter_annotations"> </td>
489 </tr>
490 </tbody>
491 </table></div>
492 </div>
493 <div class="refsect3">
494 <a name="id-1.4.2.2.8.8.6"></a><h4>Returns</h4>
495 <p> the array of versions. </p>
496 <p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
497 </div>
498 </div>
499 <hr>
500 <div class="refsect2">
501 <a name="g-irepository-prepend-library-path"></a><h3>g_irepository_prepend_library_path ()</h3>
502 <pre class="programlisting"><span class="returnvalue">void</span>
503 g_irepository_prepend_library_path (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);</pre>
504 <p>Prepends <em class="parameter"><code>directory</code></em>
505  to the search path that is used to
506 search shared libraries referenced by imported namespaces.
507 Multiple calls to this function all contribute to the final
508 list of paths.
509 The list of paths is unique and shared for all <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>
510 instances across the process, but it doesn't affect namespaces
511 imported before the call.</p>
512 <p>If the library is not found in the directories configured
513 in this way, loading will fall back to the system library
514 path (ie. LD_LIBRARY_PATH and DT_RPATH in ELF systems).
515 See the documentation of your dynamic linker for full details.</p>
516 <div class="refsect3">
517 <a name="id-1.4.2.2.8.9.6"></a><h4>Parameters</h4>
518 <div class="informaltable"><table width="100%" border="0">
519 <colgroup>
520 <col width="150px" class="parameters_name">
521 <col class="parameters_description">
522 <col width="200px" class="parameters_annotations">
523 </colgroup>
524 <tbody><tr>
525 <td class="parameter_name"><p>directory</p></td>
526 <td class="parameter_description"><p> a single directory to scan for shared libraries. </p></td>
527 <td class="parameter_annotations"><span class="annotation">[<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> filename]</span></td>
528 </tr></tbody>
529 </table></div>
530 </div>
531 <p class="since">Since 1.35.8</p>
532 </div>
533 <hr>
534 <div class="refsect2">
535 <a name="g-irepository-prepend-search-path"></a><h3>g_irepository_prepend_search_path ()</h3>
536 <pre class="programlisting"><span class="returnvalue">void</span>
537 g_irepository_prepend_search_path (<em class="parameter"><code>const <span class="type">char</span> *directory</code></em>);</pre>
538 <p>Prepends <em class="parameter"><code>directory</code></em>
539  to the typelib search path.
540 See <a class="link" href="GIRepository.html#g-irepository-get-search-path" title="g_irepository_get_search_path ()"><code class="function">g_irepository_get_search_path()</code></a>.</p>
541 <div class="refsect3">
542 <a name="id-1.4.2.2.8.10.5"></a><h4>Parameters</h4>
543 <div class="informaltable"><table width="100%" border="0">
544 <colgroup>
545 <col width="150px" class="parameters_name">
546 <col class="parameters_description">
547 <col width="200px" class="parameters_annotations">
548 </colgroup>
549 <tbody><tr>
550 <td class="parameter_name"><p>directory</p></td>
551 <td class="parameter_description"><p> directory name to prepend to the typelib
552 search path. </p></td>
553 <td class="parameter_annotations"><span class="annotation">[<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> filename]</span></td>
554 </tr></tbody>
555 </table></div>
556 </div>
557 </div>
558 <hr>
559 <div class="refsect2">
560 <a name="g-irepository-get-search-path"></a><h3>g_irepository_get_search_path ()</h3>
561 <pre class="programlisting"><span class="returnvalue">GSList</span> *
562 g_irepository_get_search_path (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
563 <p>Returns the current search path <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> will use when loading
564 typelib files. The list is internal to <span class="type">GIRespository</span> and should not
565 be freed, nor should its string elements.</p>
566 <div class="refsect3">
567 <a name="id-1.4.2.2.8.11.5"></a><h4>Returns</h4>
568 <p> <span class="type">GSList</span> of strings. </p>
569 <p><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> filename][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
570 </div>
571 </div>
572 <hr>
573 <div class="refsect2">
574 <a name="g-irepository-load-typelib"></a><h3>g_irepository_load_typelib ()</h3>
575 <pre class="programlisting">const <span class="returnvalue">char</span> *
576 g_irepository_load_typelib (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
577                             <em class="parameter"><code><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> *typelib</code></em>,
578                             <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
579                             <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
580 <p>TODO</p>
581 <div class="refsect3">
582 <a name="id-1.4.2.2.8.12.5"></a><h4>Parameters</h4>
583 <div class="informaltable"><table width="100%" border="0">
584 <colgroup>
585 <col width="150px" class="parameters_name">
586 <col class="parameters_description">
587 <col width="200px" class="parameters_annotations">
588 </colgroup>
589 <tbody>
590 <tr>
591 <td class="parameter_name"><p>repository</p></td>
592 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
593 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
594 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
595 </tr>
596 <tr>
597 <td class="parameter_name"><p>typelib</p></td>
598 <td class="parameter_description"><p>TODO</p></td>
599 <td class="parameter_annotations"> </td>
600 </tr>
601 <tr>
602 <td class="parameter_name"><p>flags</p></td>
603 <td class="parameter_description"><p>TODO</p></td>
604 <td class="parameter_annotations"> </td>
605 </tr>
606 <tr>
607 <td class="parameter_name"><p>error</p></td>
608 <td class="parameter_description"><p>TODO</p></td>
609 <td class="parameter_annotations"> </td>
610 </tr>
611 </tbody>
612 </table></div>
613 </div>
614 </div>
615 <hr>
616 <div class="refsect2">
617 <a name="g-irepository-get-typelib-path"></a><h3>g_irepository_get_typelib_path ()</h3>
618 <pre class="programlisting">const <span class="returnvalue">gchar</span> *
619 g_irepository_get_typelib_path (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
620                                 <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
621 <p>If namespace <em class="parameter"><code>namespace_</code></em>
622  is loaded, return the full path to the
623 .typelib file it was loaded from.  If the typelib for
624 namespace <em class="parameter"><code>namespace_</code></em>
625  was included in a shared library, return
626 the special string "&lt;builtin&gt;".</p>
627 <div class="refsect3">
628 <a name="id-1.4.2.2.8.13.5"></a><h4>Parameters</h4>
629 <div class="informaltable"><table width="100%" border="0">
630 <colgroup>
631 <col width="150px" class="parameters_name">
632 <col class="parameters_description">
633 <col width="200px" class="parameters_annotations">
634 </colgroup>
635 <tbody>
636 <tr>
637 <td class="parameter_name"><p>repository</p></td>
638 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
639 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
640 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
641 </tr>
642 <tr>
643 <td class="parameter_name"><p>namespace_</p></td>
644 <td class="parameter_description"><p>GI namespace to use, e.g. "Gtk"</p></td>
645 <td class="parameter_annotations"> </td>
646 </tr>
647 </tbody>
648 </table></div>
649 </div>
650 <div class="refsect3">
651 <a name="id-1.4.2.2.8.13.6"></a><h4>Returns</h4>
652 <p> Filesystem path (or $lt;builtin$gt;) if successful, <code class="literal">NULL</code> if namespace is not loaded</p>
653 <p></p>
654 </div>
655 </div>
656 <hr>
657 <div class="refsect2">
658 <a name="g-irepository-is-registered"></a><h3>g_irepository_is_registered ()</h3>
659 <pre class="programlisting"><span class="returnvalue">gboolean</span>
660 g_irepository_is_registered (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
661                              <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
662                              <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>);</pre>
663 <p>Check whether a particular namespace (and optionally, a specific
664 version thereof) is currently loaded.  This function is likely to
665 only be useful in unusual circumstances; in order to act upon
666 metadata in the namespace, you should call <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a>
667 instead which will ensure the namespace is loaded, and return as
668 quickly as this function will if it has already been loaded.</p>
669 <div class="refsect3">
670 <a name="id-1.4.2.2.8.14.5"></a><h4>Parameters</h4>
671 <div class="informaltable"><table width="100%" border="0">
672 <colgroup>
673 <col width="150px" class="parameters_name">
674 <col class="parameters_description">
675 <col width="200px" class="parameters_annotations">
676 </colgroup>
677 <tbody>
678 <tr>
679 <td class="parameter_name"><p>repository</p></td>
680 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
681 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
682 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
683 </tr>
684 <tr>
685 <td class="parameter_name"><p>namespace_</p></td>
686 <td class="parameter_description"><p>Namespace of interest</p></td>
687 <td class="parameter_annotations"> </td>
688 </tr>
689 <tr>
690 <td class="parameter_name"><p>version</p></td>
691 <td class="parameter_description"><p> Required version, may be <code class="literal">NULL</code> for latest. </p></td>
692 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
693 </tr>
694 </tbody>
695 </table></div>
696 </div>
697 <div class="refsect3">
698 <a name="id-1.4.2.2.8.14.6"></a><h4>Returns</h4>
699 <p> <code class="literal">TRUE</code> if namespace-version is loaded, <code class="literal">FALSE</code> otherwise</p>
700 <p></p>
701 </div>
702 </div>
703 <hr>
704 <div class="refsect2">
705 <a name="g-irepository-require"></a><h3>g_irepository_require ()</h3>
706 <pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
707 g_irepository_require (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
708                        <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
709                        <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
710                        <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
711                        <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
712 <p>Force the namespace <em class="parameter"><code>namespace_</code></em>
713  to be loaded if it isn't already.
714 If <em class="parameter"><code>namespace_</code></em>
715  is not loaded, this function will search for a
716 ".typelib" file using the repository search path.  In addition, a
717 version <em class="parameter"><code>version</code></em>
718  of namespace may be specified.  If <em class="parameter"><code>version</code></em>
719  is
720 not specified, the latest will be used.</p>
721 <div class="refsect3">
722 <a name="id-1.4.2.2.8.15.5"></a><h4>Parameters</h4>
723 <div class="informaltable"><table width="100%" border="0">
724 <colgroup>
725 <col width="150px" class="parameters_name">
726 <col class="parameters_description">
727 <col width="200px" class="parameters_annotations">
728 </colgroup>
729 <tbody>
730 <tr>
731 <td class="parameter_name"><p>repository</p></td>
732 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
733 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
734 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
735 </tr>
736 <tr>
737 <td class="parameter_name"><p>namespace_</p></td>
738 <td class="parameter_description"><p>GI namespace to use, e.g. "Gtk"</p></td>
739 <td class="parameter_annotations"> </td>
740 </tr>
741 <tr>
742 <td class="parameter_name"><p>version</p></td>
743 <td class="parameter_description"><p> Version of namespace, may be <code class="literal">NULL</code> for latest. </p></td>
744 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
745 </tr>
746 <tr>
747 <td class="parameter_name"><p>flags</p></td>
748 <td class="parameter_description"><p>Set of <a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><code class="literal">GIRepositoryLoadFlags</code></a>, may be 0</p></td>
749 <td class="parameter_annotations"> </td>
750 </tr>
751 <tr>
752 <td class="parameter_name"><p>error</p></td>
753 <td class="parameter_description"><p>a <span class="type">GError</span>.</p></td>
754 <td class="parameter_annotations"> </td>
755 </tr>
756 </tbody>
757 </table></div>
758 </div>
759 <div class="refsect3">
760 <a name="id-1.4.2.2.8.15.6"></a><h4>Returns</h4>
761 <p> a pointer to the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> if successful, <code class="literal">NULL</code> otherwise. </p>
762 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
763 </div>
764 </div>
765 <hr>
766 <div class="refsect2">
767 <a name="g-irepository-require-private"></a><h3>g_irepository_require_private ()</h3>
768 <pre class="programlisting"><a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="returnvalue">GITypelib</span></a> *
769 g_irepository_require_private (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
770                                <em class="parameter"><code>const <span class="type">gchar</span> *typelib_dir</code></em>,
771                                <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
772                                <em class="parameter"><code>const <span class="type">gchar</span> *version</code></em>,
773                                <em class="parameter"><code><a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><span class="type">GIRepositoryLoadFlags</span></a> flags</code></em>,
774                                <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
775 <p>Force the namespace <em class="parameter"><code>namespace_</code></em>
776  to be loaded if it isn't already.
777 If <em class="parameter"><code>namespace_</code></em>
778  is not loaded, this function will search for a
779 ".typelib" file within the private directory only. In addition, a
780 version <em class="parameter"><code>version</code></em>
781  of namespace should be specified.  If <em class="parameter"><code>version</code></em>
782  is
783 not specified, the latest will be used.</p>
784 <div class="refsect3">
785 <a name="id-1.4.2.2.8.16.5"></a><h4>Parameters</h4>
786 <div class="informaltable"><table width="100%" border="0">
787 <colgroup>
788 <col width="150px" class="parameters_name">
789 <col class="parameters_description">
790 <col width="200px" class="parameters_annotations">
791 </colgroup>
792 <tbody>
793 <tr>
794 <td class="parameter_name"><p>repository</p></td>
795 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
796 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
797 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
798 </tr>
799 <tr>
800 <td class="parameter_name"><p>typelib_dir</p></td>
801 <td class="parameter_description"><p>Private directory where to find the requested typelib</p></td>
802 <td class="parameter_annotations"> </td>
803 </tr>
804 <tr>
805 <td class="parameter_name"><p>namespace_</p></td>
806 <td class="parameter_description"><p>GI namespace to use, e.g. "Gtk"</p></td>
807 <td class="parameter_annotations"> </td>
808 </tr>
809 <tr>
810 <td class="parameter_name"><p>version</p></td>
811 <td class="parameter_description"><p> Version of namespace, may be <code class="literal">NULL</code> for latest. </p></td>
812 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
813 </tr>
814 <tr>
815 <td class="parameter_name"><p>flags</p></td>
816 <td class="parameter_description"><p>Set of <a class="link" href="GIRepository.html#GIRepositoryLoadFlags" title="enum GIRepositoryLoadFlags"><code class="literal">GIRepositoryLoadFlags</code></a>, may be 0</p></td>
817 <td class="parameter_annotations"> </td>
818 </tr>
819 <tr>
820 <td class="parameter_name"><p>error</p></td>
821 <td class="parameter_description"><p>a <span class="type">GError</span>.</p></td>
822 <td class="parameter_annotations"> </td>
823 </tr>
824 </tbody>
825 </table></div>
826 </div>
827 <div class="refsect3">
828 <a name="id-1.4.2.2.8.16.6"></a><h4>Returns</h4>
829 <p> a pointer to the <a class="link" href="gi-gitypelib.html#GITypelib" title="GITypelib"><span class="type">GITypelib</span></a> if successful, <code class="literal">NULL</code> otherwise. </p>
830 <p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
831 </div>
832 </div>
833 <hr>
834 <div class="refsect2">
835 <a name="g-irepository-get-c-prefix"></a><h3>g_irepository_get_c_prefix ()</h3>
836 <pre class="programlisting">const <span class="returnvalue">gchar</span> *
837 g_irepository_get_c_prefix (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
838                             <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
839 <p>This function returns the "C prefix", or the C level namespace
840 associated with the given introspection namespace.  Each C symbol
841 starts with this prefix, as well each <span class="type">GType</span> in the library.</p>
842 <p>Note: The namespace must have already been loaded using a function
843 such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
844 <div class="refsect3">
845 <a name="id-1.4.2.2.8.17.6"></a><h4>Parameters</h4>
846 <div class="informaltable"><table width="100%" border="0">
847 <colgroup>
848 <col width="150px" class="parameters_name">
849 <col class="parameters_description">
850 <col width="200px" class="parameters_annotations">
851 </colgroup>
852 <tbody>
853 <tr>
854 <td class="parameter_name"><p>repository</p></td>
855 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
856 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
857 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
858 </tr>
859 <tr>
860 <td class="parameter_name"><p>namespace_</p></td>
861 <td class="parameter_description"><p>Namespace to inspect</p></td>
862 <td class="parameter_annotations"> </td>
863 </tr>
864 </tbody>
865 </table></div>
866 </div>
867 <div class="refsect3">
868 <a name="id-1.4.2.2.8.17.7"></a><h4>Returns</h4>
869 <p> C namespace prefix, or <code class="literal">NULL</code> if none associated</p>
870 <p></p>
871 </div>
872 </div>
873 <hr>
874 <div class="refsect2">
875 <a name="g-irepository-get-shared-library"></a><h3>g_irepository_get_shared_library ()</h3>
876 <pre class="programlisting">const <span class="returnvalue">gchar</span> *
877 g_irepository_get_shared_library (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
878                                   <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
879 <p>This function returns the full path to the shared C library
880 associated with the given namespace <em class="parameter"><code>namespace_</code></em>
881 . There may be no
882 shared library path associated, in which case this function will
883 return <code class="literal">NULL</code>.</p>
884 <p>Note: The namespace must have already been loaded using a function
885 such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
886 <div class="refsect3">
887 <a name="id-1.4.2.2.8.18.6"></a><h4>Parameters</h4>
888 <div class="informaltable"><table width="100%" border="0">
889 <colgroup>
890 <col width="150px" class="parameters_name">
891 <col class="parameters_description">
892 <col width="200px" class="parameters_annotations">
893 </colgroup>
894 <tbody>
895 <tr>
896 <td class="parameter_name"><p>repository</p></td>
897 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
898 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
899 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
900 </tr>
901 <tr>
902 <td class="parameter_name"><p>namespace_</p></td>
903 <td class="parameter_description"><p>Namespace to inspect</p></td>
904 <td class="parameter_annotations"> </td>
905 </tr>
906 </tbody>
907 </table></div>
908 </div>
909 <div class="refsect3">
910 <a name="id-1.4.2.2.8.18.7"></a><h4>Returns</h4>
911 <p> Full path to shared library, or <code class="literal">NULL</code> if none associated</p>
912 <p></p>
913 </div>
914 </div>
915 <hr>
916 <div class="refsect2">
917 <a name="g-irepository-get-version"></a><h3>g_irepository_get_version ()</h3>
918 <pre class="programlisting">const <span class="returnvalue">gchar</span> *
919 g_irepository_get_version (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
920                            <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>);</pre>
921 <p>This function returns the loaded version associated with the given
922 namespace <em class="parameter"><code>namespace_</code></em>
923 .</p>
924 <p>Note: The namespace must have already been loaded using a function
925 such as <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> before calling this function.</p>
926 <div class="refsect3">
927 <a name="id-1.4.2.2.8.19.6"></a><h4>Parameters</h4>
928 <div class="informaltable"><table width="100%" border="0">
929 <colgroup>
930 <col width="150px" class="parameters_name">
931 <col class="parameters_description">
932 <col width="200px" class="parameters_annotations">
933 </colgroup>
934 <tbody>
935 <tr>
936 <td class="parameter_name"><p>repository</p></td>
937 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
938 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
939 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
940 </tr>
941 <tr>
942 <td class="parameter_name"><p>namespace_</p></td>
943 <td class="parameter_description"><p>Namespace to inspect</p></td>
944 <td class="parameter_annotations"> </td>
945 </tr>
946 </tbody>
947 </table></div>
948 </div>
949 <div class="refsect3">
950 <a name="id-1.4.2.2.8.19.7"></a><h4>Returns</h4>
951 <p> Loaded version</p>
952 <p></p>
953 </div>
954 </div>
955 <hr>
956 <div class="refsect2">
957 <a name="g-irepository-find-by-gtype"></a><h3>g_irepository_find_by_gtype ()</h3>
958 <pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
959 g_irepository_find_by_gtype (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
960                              <em class="parameter"><code><span class="type">GType</span> gtype</code></em>);</pre>
961 <p>Searches all loaded namespaces for a particular <span class="type">GType</span>.  Note that
962 in order to locate the metadata, the namespace corresponding to
963 the type must first have been loaded.  There is currently no
964 mechanism for determining the namespace which corresponds to an
965 arbitrary GType - thus, this function will operate most reliably
966 when you know the GType to originate from be from a loaded namespace.</p>
967 <div class="refsect3">
968 <a name="id-1.4.2.2.8.20.5"></a><h4>Parameters</h4>
969 <div class="informaltable"><table width="100%" border="0">
970 <colgroup>
971 <col width="150px" class="parameters_name">
972 <col class="parameters_description">
973 <col width="200px" class="parameters_annotations">
974 </colgroup>
975 <tbody>
976 <tr>
977 <td class="parameter_name"><p>repository</p></td>
978 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
979 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
980 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
981 </tr>
982 <tr>
983 <td class="parameter_name"><p>gtype</p></td>
984 <td class="parameter_description"><p>GType to search for</p></td>
985 <td class="parameter_annotations"> </td>
986 </tr>
987 </tbody>
988 </table></div>
989 </div>
990 <div class="refsect3">
991 <a name="id-1.4.2.2.8.20.6"></a><h4>Returns</h4>
992 <p> <span class="type">GIBaseInfo</span> representing metadata about <em class="parameter"><code>type</code></em>
993 , or <code class="literal">NULL</code>. </p>
994 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
995 </div>
996 </div>
997 <hr>
998 <div class="refsect2">
999 <a name="g-irepository-find-by-error-domain"></a><h3>g_irepository_find_by_error_domain ()</h3>
1000 <pre class="programlisting"><a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="returnvalue">GIEnumInfo</span></a> *
1001 g_irepository_find_by_error_domain (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
1002                                     <em class="parameter"><code><span class="type">GQuark</span> domain</code></em>);</pre>
1003 <p>Searches for the enum type corresponding to the given <span class="type">GError</span>
1004 domain. Before calling this function for a particular namespace,
1005 you must call <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> once to load the namespace, or
1006 otherwise ensure the namespace has already been loaded.</p>
1007 <div class="refsect3">
1008 <a name="id-1.4.2.2.8.21.5"></a><h4>Parameters</h4>
1009 <div class="informaltable"><table width="100%" border="0">
1010 <colgroup>
1011 <col width="150px" class="parameters_name">
1012 <col class="parameters_description">
1013 <col width="200px" class="parameters_annotations">
1014 </colgroup>
1015 <tbody>
1016 <tr>
1017 <td class="parameter_name"><p>repository</p></td>
1018 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
1019 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
1020 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
1021 </tr>
1022 <tr>
1023 <td class="parameter_name"><p>domain</p></td>
1024 <td class="parameter_description"><p>a <span class="type">GError</span> domain</p></td>
1025 <td class="parameter_annotations"> </td>
1026 </tr>
1027 </tbody>
1028 </table></div>
1029 </div>
1030 <div class="refsect3">
1031 <a name="id-1.4.2.2.8.21.6"></a><h4>Returns</h4>
1032 <p> <a class="link" href="gi-GIEnumInfo.html#GIEnumInfo" title="GIEnumInfo"><span class="type">GIEnumInfo</span></a> representing metadata about <em class="parameter"><code>domain</code></em>
1033 's
1034 enum type, or <code class="literal">NULL</code>. </p>
1035 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
1036 </div>
1037 <p class="since">Since 1.29.17</p>
1038 </div>
1039 <hr>
1040 <div class="refsect2">
1041 <a name="g-irepository-find-by-name"></a><h3>g_irepository_find_by_name ()</h3>
1042 <pre class="programlisting"><span class="returnvalue">GIBaseInfo</span> *
1043 g_irepository_find_by_name (<em class="parameter"><code><a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> *repository</code></em>,
1044                             <em class="parameter"><code>const <span class="type">gchar</span> *namespace_</code></em>,
1045                             <em class="parameter"><code>const <span class="type">gchar</span> *name</code></em>);</pre>
1046 <p>Searches for a particular entry in a namespace.  Before calling
1047 this function for a particular namespace, you must call
1048 <a class="link" href="GIRepository.html#g-irepository-require" title="g_irepository_require ()"><code class="function">g_irepository_require()</code></a> once to load the namespace, or otherwise
1049 ensure the namespace has already been loaded.</p>
1050 <div class="refsect3">
1051 <a name="id-1.4.2.2.8.22.5"></a><h4>Parameters</h4>
1052 <div class="informaltable"><table width="100%" border="0">
1053 <colgroup>
1054 <col width="150px" class="parameters_name">
1055 <col class="parameters_description">
1056 <col width="200px" class="parameters_annotations">
1057 </colgroup>
1058 <tbody>
1059 <tr>
1060 <td class="parameter_name"><p>repository</p></td>
1061 <td class="parameter_description"><p> A <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> or <code class="literal">NULL</code> for the singleton
1062 process-global default <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. </p></td>
1063 <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
1064 </tr>
1065 <tr>
1066 <td class="parameter_name"><p>namespace_</p></td>
1067 <td class="parameter_description"><p>Namespace which will be searched</p></td>
1068 <td class="parameter_annotations"> </td>
1069 </tr>
1070 <tr>
1071 <td class="parameter_name"><p>name</p></td>
1072 <td class="parameter_description"><p>Entry name to find</p></td>
1073 <td class="parameter_annotations"> </td>
1074 </tr>
1075 </tbody>
1076 </table></div>
1077 </div>
1078 <div class="refsect3">
1079 <a name="id-1.4.2.2.8.22.6"></a><h4>Returns</h4>
1080 <p> <span class="type">GIBaseInfo</span> representing metadata about <em class="parameter"><code>name</code></em>
1081 , or <code class="literal">NULL</code>. </p>
1082 <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p>
1083 </div>
1084 </div>
1085 <hr>
1086 <div class="refsect2">
1087 <a name="g-irepository-dump"></a><h3>g_irepository_dump ()</h3>
1088 <pre class="programlisting"><span class="returnvalue">gboolean</span>
1089 g_irepository_dump (<em class="parameter"><code>const <span class="type">char</span> *arg</code></em>,
1090                     <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
1091 <p>Argument specified is a comma-separated pair of filenames; i.e. of
1092 the form "input.txt,output.xml".  The input file should be a
1093 UTF-8 Unix-line-ending text file, with each line containing either
1094 "get-type:" followed by the name of a GType _get_type function, or
1095 "error-quark:" followed by the name of an error quark function.  No
1096 extra whitespace is allowed.</p>
1097 <p>The output file should already exist, but be empty.  This function will
1098 overwrite its contents.</p>
1099 <div class="refsect3">
1100 <a name="id-1.4.2.2.8.23.6"></a><h4>Parameters</h4>
1101 <div class="informaltable"><table width="100%" border="0">
1102 <colgroup>
1103 <col width="150px" class="parameters_name">
1104 <col class="parameters_description">
1105 <col width="200px" class="parameters_annotations">
1106 </colgroup>
1107 <tbody>
1108 <tr>
1109 <td class="parameter_name"><p>arg</p></td>
1110 <td class="parameter_description"><p>Comma-separated pair of input and output filenames</p></td>
1111 <td class="parameter_annotations"> </td>
1112 </tr>
1113 <tr>
1114 <td class="parameter_name"><p>error</p></td>
1115 <td class="parameter_description"><p>a <code class="literal">GError</code></p></td>
1116 <td class="parameter_annotations"> </td>
1117 </tr>
1118 </tbody>
1119 </table></div>
1120 </div>
1121 <div class="refsect3">
1122 <a name="id-1.4.2.2.8.23.7"></a><h4>Returns</h4>
1123 <p> <code class="literal">TRUE</code> on success, <code class="literal">FALSE</code> on error</p>
1124 <p></p>
1125 </div>
1126 </div>
1127 <hr>
1128 <div class="refsect2">
1129 <a name="gi-cclosure-marshal-generic"></a><h3>gi_cclosure_marshal_generic ()</h3>
1130 <pre class="programlisting"><span class="returnvalue">void</span>
1131 gi_cclosure_marshal_generic (<em class="parameter"><code><span class="type">GClosure</span> *closure</code></em>,
1132                              <em class="parameter"><code><span class="type">GValue</span> *return_gvalue</code></em>,
1133                              <em class="parameter"><code><span class="type">guint</span> n_param_values</code></em>,
1134                              <em class="parameter"><code>const <span class="type">GValue</span> *param_values</code></em>,
1135                              <em class="parameter"><code><span class="type">gpointer</span> invocation_hint</code></em>,
1136                              <em class="parameter"><code><span class="type">gpointer</span> marshal_data</code></em>);</pre>
1137 <p>TODO</p>
1138 <div class="refsect3">
1139 <a name="id-1.4.2.2.8.24.5"></a><h4>Parameters</h4>
1140 <div class="informaltable"><table width="100%" border="0">
1141 <colgroup>
1142 <col width="150px" class="parameters_name">
1143 <col class="parameters_description">
1144 <col width="200px" class="parameters_annotations">
1145 </colgroup>
1146 <tbody>
1147 <tr>
1148 <td class="parameter_name"><p>closure</p></td>
1149 <td class="parameter_description"><p>TODO</p></td>
1150 <td class="parameter_annotations"> </td>
1151 </tr>
1152 <tr>
1153 <td class="parameter_name"><p>return_gvalue</p></td>
1154 <td class="parameter_description"><p>TODO</p></td>
1155 <td class="parameter_annotations"> </td>
1156 </tr>
1157 <tr>
1158 <td class="parameter_name"><p>n_param_values</p></td>
1159 <td class="parameter_description"><p>TODO</p></td>
1160 <td class="parameter_annotations"> </td>
1161 </tr>
1162 <tr>
1163 <td class="parameter_name"><p>param_values</p></td>
1164 <td class="parameter_description"><p>TODO</p></td>
1165 <td class="parameter_annotations"> </td>
1166 </tr>
1167 <tr>
1168 <td class="parameter_name"><p>invocation_hint</p></td>
1169 <td class="parameter_description"><p>TODO</p></td>
1170 <td class="parameter_annotations"> </td>
1171 </tr>
1172 <tr>
1173 <td class="parameter_name"><p>marshal_data</p></td>
1174 <td class="parameter_description"><p>TODO</p></td>
1175 <td class="parameter_annotations"> </td>
1176 </tr>
1177 </tbody>
1178 </table></div>
1179 </div>
1180 </div>
1181 <hr>
1182 <div class="refsect2">
1183 <a name="G-IREPOSITORY-ERROR:CAPS"></a><h3>G_IREPOSITORY_ERROR</h3>
1184 <pre class="programlisting">#define G_IREPOSITORY_ERROR (g_irepository_error_quark ())
1185 </pre>
1186 <p>Error domain for <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a>. Errors in this domain will be from the
1187 <a class="link" href="GIRepository.html#GIRepositoryError" title="enum GIRepositoryError"><span class="type">GIRepositoryError</span></a> enumeration. See <span class="type">GError</span> for more information on
1188 error domains.</p>
1189 </div>
1190 </div>
1191 <div class="refsect1">
1192 <a name="GIRepository.other_details"></a><h2>Types and Values</h2>
1193 <div class="refsect2">
1194 <a name="GIRepository-struct"></a><h3>struct GIRepository</h3>
1195 <pre class="programlisting">struct GIRepository;</pre>
1196 <p>The GIRepository structure contains private data and should only be
1197 accessed using the provided API.</p>
1198 </div>
1199 <hr>
1200 <div class="refsect2">
1201 <a name="GIRepositoryLoadFlags"></a><h3>enum GIRepositoryLoadFlags</h3>
1202 <p>Flags that control how a typelib is loaded.</p>
1203 <div class="refsect3">
1204 <a name="id-1.4.2.2.9.3.4"></a><h4>Members</h4>
1205 <div class="informaltable"><table width="100%" border="0">
1206 <colgroup>
1207 <col width="300px" class="enum_members_name">
1208 <col class="enum_members_description">
1209 <col width="200px" class="enum_members_annotations">
1210 </colgroup>
1211 <tbody><tr>
1212 <td class="enum_member_name"><p><a name="G-IREPOSITORY-LOAD-FLAG-LAZY:CAPS"></a>G_IREPOSITORY_LOAD_FLAG_LAZY</p></td>
1213 <td class="enum_member_description">
1214 <p>Lazily load the typelib.</p>
1215 </td>
1216 <td class="enum_member_annotations"> </td>
1217 </tr></tbody>
1218 </table></div>
1219 </div>
1220 </div>
1221 <hr>
1222 <div class="refsect2">
1223 <a name="GIRepositoryError"></a><h3>enum GIRepositoryError</h3>
1224 <p>An error code used with <a class="link" href="GIRepository.html#G-IREPOSITORY-ERROR:CAPS" title="G_IREPOSITORY_ERROR"><span class="type">G_IREPOSITORY_ERROR</span></a> in a <span class="type">GError</span> returned
1225 from a <a class="link" href="GIRepository.html" title="GIRepository"><span class="type">GIRepository</span></a> routine.</p>
1226 <div class="refsect3">
1227 <a name="id-1.4.2.2.9.4.4"></a><h4>Members</h4>
1228 <div class="informaltable"><table width="100%" border="0">
1229 <colgroup>
1230 <col width="300px" class="enum_members_name">
1231 <col class="enum_members_description">
1232 <col width="200px" class="enum_members_annotations">
1233 </colgroup>
1234 <tbody>
1235 <tr>
1236 <td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-TYPELIB-NOT-FOUND:CAPS"></a>G_IREPOSITORY_ERROR_TYPELIB_NOT_FOUND</p></td>
1237 <td class="enum_member_description">
1238 <p>the typelib could not be found.</p>
1239 </td>
1240 <td class="enum_member_annotations"> </td>
1241 </tr>
1242 <tr>
1243 <td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-NAMESPACE-MISMATCH:CAPS"></a>G_IREPOSITORY_ERROR_NAMESPACE_MISMATCH</p></td>
1244 <td class="enum_member_description">
1245 <p>the namespace does not match the
1246   requested namespace.</p>
1247 </td>
1248 <td class="enum_member_annotations"> </td>
1249 </tr>
1250 <tr>
1251 <td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-NAMESPACE-VERSION-CONFLICT:CAPS"></a>G_IREPOSITORY_ERROR_NAMESPACE_VERSION_CONFLICT</p></td>
1252 <td class="enum_member_description">
1253 <p>the version of the
1254   typelib does not match the requested version.</p>
1255 </td>
1256 <td class="enum_member_annotations"> </td>
1257 </tr>
1258 <tr>
1259 <td class="enum_member_name"><p><a name="G-IREPOSITORY-ERROR-LIBRARY-NOT-FOUND:CAPS"></a>G_IREPOSITORY_ERROR_LIBRARY_NOT_FOUND</p></td>
1260 <td class="enum_member_description">
1261 <p>the library used by the typelib
1262   could not be found.</p>
1263 </td>
1264 <td class="enum_member_annotations"> </td>
1265 </tr>
1266 </tbody>
1267 </table></div>
1268 </div>
1269 </div>
1270 </div>
1271 </div>
1272 <div class="footer">
1273 <hr>
1274           Generated by GTK-Doc V1.21.1</div>
1275 </body>
1276 </html>