1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>GObject Introspection Reference Manual: GICallableInfo</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="gi-GIBaseInfo.html" title="GIBaseInfo">
10 <link rel="next" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">
11 <meta name="generator" content="GTK-Doc V1.19.1 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
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="10"><tr valign="middle">
16 <td width="100%" align="left">
17 <a href="#" class="shortcut">Top</a>
19 <a href="#gi-GICallableInfo.description" class="shortcut">Description</a>
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="gi-GIBaseInfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
24 <td><a accesskey="n" href="gi-GIFunctionInfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
26 <div class="refentry">
27 <a name="gi-GICallableInfo"></a><div class="titlepage"></div>
28 <div class="refnamediv"><table width="100%"><tr>
30 <h2><span class="refentrytitle"><a name="gi-GICallableInfo.top_of_page"></a>GICallableInfo</span></h2>
31 <p>GICallableInfo — Struct representing a callable</p>
33 <td valign="top" align="right"></td>
35 <div class="refsynopsisdiv">
36 <a name="gi-GICallableInfo.synopsis"></a><h2>Synopsis</h2>
37 <pre class="synopsis">#define <a class="link" href="gi-GICallableInfo.html#GI-IS-CALLABLE-INFO:CAPS" title="GI_IS_CALLABLE_INFO()">GI_IS_CALLABLE_INFO</a> (info)
38 typedef <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo">GICallableInfo</a>;
39 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-can-throw-gerror" title="g_callable_info_can_throw_gerror ()">g_callable_info_can_throw_gerror</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
40 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()">g_callable_info_get_n_args</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
41 <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="returnvalue">GIArgInfo</span></a> * <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()">g_callable_info_get_arg</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
42 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n</code></em>);
43 <a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-caller-owns" title="g_callable_info_get_caller_owns ()">g_callable_info_get_caller_owns</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
44 const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-attribute" title="g_callable_info_get_return_attribute ()">g_callable_info_get_return_attribute</a>
45 (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
46 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);
47 <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> * <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()">g_callable_info_get_return_type</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
48 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-invoke" title="g_callable_info_invoke ()">g_callable_info_invoke</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
49 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> function</code></em>,
50 <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
51 <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
52 <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
53 <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
54 <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
55 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> is_method</code></em>,
56 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> throws</code></em>,
57 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
58 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-is-method" title="g_callable_info_is_method ()">g_callable_info_is_method</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
59 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-iterate-return-attributes" title="g_callable_info_iterate_return_attributes ()">g_callable_info_iterate_return_attributes</a>
60 (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
61 <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
62 <em class="parameter"><code><span class="type">char</span> **name</code></em>,
63 <em class="parameter"><code><span class="type">char</span> **value</code></em>);
64 <span class="returnvalue">void</span> <a class="link" href="gi-GICallableInfo.html#g-callable-info-load-arg" title="g_callable_info_load_arg ()">g_callable_info_load_arg</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
65 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n</code></em>,
66 <em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *arg</code></em>);
67 <span class="returnvalue">void</span> <a class="link" href="gi-GICallableInfo.html#g-callable-info-load-return-type" title="g_callable_info_load_return_type ()">g_callable_info_load_return_type</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
68 <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);
69 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-may-return-null" title="g_callable_info_may_return_null ()">g_callable_info_may_return_null</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
70 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gi-GICallableInfo.html#g-callable-info-skip-return" title="g_callable_info_skip_return ()">g_callable_info_skip_return</a> (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);
73 <div class="refsect1">
74 <a name="gi-GICallableInfo.description"></a><h2>Description</h2>
76 GICallableInfo represents an entity which is callable.
77 Currently a function (<a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>), virtual function,
78 (<a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>) or callback (<a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a>).
81 A callable has a list of arguments (<a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>), a return type,
82 direction and a flag which decides if it returns null.
86 <div class="refsect1">
87 <a name="gi-gicallableinfo.struct-hierarchy"></a><h2>Struct hierarchy</h2>
88 <pre class="synopsis">
89 <a class="link" href="gi-GIBaseInfo.html" title="GIBaseInfo">GIBaseInfo</a>
91 +----<a class="link" href="gi-GIFunctionInfo.html" title="GIFunctionInfo">GIFunctionInfo</a>
92 +----<a class="link" href="gi-GISignalInfo.html" title="GISignalInfo">GISignalInfo</a>
93 +----<a class="link" href="gi-GIVFuncInfo.html" title="GIVFuncInfo">GIVFuncInfo</a>
99 <div class="refsect1">
100 <a name="gi-GICallableInfo.details"></a><h2>Details</h2>
101 <div class="refsect2">
102 <a name="GI-IS-CALLABLE-INFO:CAPS"></a><h3>GI_IS_CALLABLE_INFO()</h3>
103 <pre class="programlisting">#define GI_IS_CALLABLE_INFO(info)</pre>
105 Checks if <em class="parameter"><code>info</code></em> is a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> or derived from it.
107 <div class="variablelist"><table border="0" class="variablelist">
109 <col align="left" valign="top">
113 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
114 <td>an info structure</td>
119 <div class="refsect2">
120 <a name="GICallableInfo"></a><h3>GICallableInfo</h3>
121 <pre class="programlisting">typedef GIBaseInfo GICallableInfo;
124 Represents a callable, either <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>, <a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a> or
125 <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>.
129 <div class="refsect2">
130 <a name="g-callable-info-can-throw-gerror"></a><h3>g_callable_info_can_throw_gerror ()</h3>
131 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_callable_info_can_throw_gerror (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
135 <div class="variablelist"><table border="0" class="variablelist">
137 <col align="left" valign="top">
142 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
143 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
147 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
149 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if this <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> can throw a <a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>
154 <p class="since">Since 1.34</p>
157 <div class="refsect2">
158 <a name="g-callable-info-get-n-args"></a><h3>g_callable_info_get_n_args ()</h3>
159 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> g_callable_info_get_n_args (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
161 Obtain the number of arguments (both IN and OUT) for this callable.
163 <div class="variablelist"><table border="0" class="variablelist">
165 <col align="left" valign="top">
170 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
171 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
175 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
176 <td>The number of arguments this callable expects.</td>
182 <div class="refsect2">
183 <a name="g-callable-info-get-arg"></a><h3>g_callable_info_get_arg ()</h3>
184 <pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="returnvalue">GIArgInfo</span></a> * g_callable_info_get_arg (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
185 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n</code></em>);</pre>
187 Obtain information about a particular argument of this callable.
189 <div class="variablelist"><table border="0" class="variablelist">
191 <col align="left" valign="top">
196 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
197 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
201 <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
202 <td>the argument index to fetch</td>
205 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
206 <td>the <a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a>. Free it with
207 <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
214 <div class="refsect2">
215 <a name="g-callable-info-get-caller-owns"></a><h3>g_callable_info_get_caller_owns ()</h3>
216 <pre class="programlisting"><a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="returnvalue">GITransfer</span></a> g_callable_info_get_caller_owns (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
218 See whether the caller owns the return value of this callable.
219 <a class="link" href="gi-GIArgInfo.html#GITransfer" title="enum GITransfer"><span class="type">GITransfer</span></a> contains a list of possible transfer values.
221 <div class="variablelist"><table border="0" class="variablelist">
223 <col align="left" valign="top">
228 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
229 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
233 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
235 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the caller owns the return value, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
241 <div class="refsect2">
242 <a name="g-callable-info-get-return-attribute"></a><h3>g_callable_info_get_return_attribute ()</h3>
243 <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * g_callable_info_get_return_attribute
244 (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
245 <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
247 Retrieve an arbitrary attribute associated with the return value.
249 <div class="variablelist"><table border="0" class="variablelist">
251 <col align="left" valign="top">
256 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
257 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
261 <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
262 <td>a freeform string naming an attribute</td>
265 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
266 <td>The value of the attribute, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no such attribute exists</td>
272 <div class="refsect2">
273 <a name="g-callable-info-get-return-type"></a><h3>g_callable_info_get_return_type ()</h3>
274 <pre class="programlisting"><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="returnvalue">GITypeInfo</span></a> * g_callable_info_get_return_type (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
276 Obtain the return type of a callable item as a <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>.
278 <div class="variablelist"><table border="0" class="variablelist">
280 <col align="left" valign="top">
285 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
286 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
290 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
291 <td>the <a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a>. Free the struct by calling
292 <a class="link" href="gi-GIBaseInfo.html#g-base-info-unref" title="g_base_info_unref ()"><code class="function">g_base_info_unref()</code></a> when done. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
299 <div class="refsect2">
300 <a name="g-callable-info-invoke"></a><h3>g_callable_info_invoke ()</h3>
301 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_callable_info_invoke (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
302 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> function</code></em>,
303 <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *in_args</code></em>,
304 <em class="parameter"><code><span class="type">int</span> n_in_args</code></em>,
305 <em class="parameter"><code>const <a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *out_args</code></em>,
306 <em class="parameter"><code><span class="type">int</span> n_out_args</code></em>,
307 <em class="parameter"><code><a class="link" href="gi-common-types.html#GIArgument" title="union GIArgument"><span class="type">GIArgument</span></a> *return_value</code></em>,
308 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> is_method</code></em>,
309 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> throws</code></em>,
310 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
314 <div class="variablelist"><table border="0" class="variablelist">
316 <col align="left" valign="top">
321 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
325 <td><p><span class="term"><em class="parameter"><code>function</code></em> :</span></p></td>
329 <td><p><span class="term"><em class="parameter"><code>in_args</code></em> :</span></p></td>
333 <td><p><span class="term"><em class="parameter"><code>n_in_args</code></em> :</span></p></td>
337 <td><p><span class="term"><em class="parameter"><code>out_args</code></em> :</span></p></td>
341 <td><p><span class="term"><em class="parameter"><code>n_out_args</code></em> :</span></p></td>
345 <td><p><span class="term"><em class="parameter"><code>return_value</code></em> :</span></p></td>
349 <td><p><span class="term"><em class="parameter"><code>is_method</code></em> :</span></p></td>
353 <td><p><span class="term"><em class="parameter"><code>throws</code></em> :</span></p></td>
357 <td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
364 <div class="refsect2">
365 <a name="g-callable-info-is-method"></a><h3>g_callable_info_is_method ()</h3>
366 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_callable_info_is_method (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
368 Determines if the callable info is a method. For <a class="link" href="gi-GIVFuncInfo.html#GIVFuncInfo" title="GIVFuncInfo"><span class="type">GIVFuncInfo</span></a>s,
369 <a class="link" href="gi-GICallbackInfo.html#GICallbackInfo" title="GICallbackInfo"><span class="type">GICallbackInfo</span></a>s, and <a class="link" href="gi-GISignalInfo.html#GISignalInfo" title="GISignalInfo"><span class="type">GISignalInfo</span></a>s,
370 this is always true. Otherwise, this looks at the <a class="link" href="gi-GIFunctionInfo.html#GI-FUNCTION-IS-METHOD:CAPS"><code class="literal">GI_FUNCTION_IS_METHOD</code></a>
371 flag on the <a class="link" href="gi-GIFunctionInfo.html#GIFunctionInfo" title="GIFunctionInfo"><span class="type">GIFunctionInfo</span></a>.
374 Concretely, this function returns whether <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-n-args" title="g_callable_info_get_n_args ()"><code class="function">g_callable_info_get_n_args()</code></a>
375 matches the number of arguments in the raw C method. For methods, there
376 is one more C argument than is exposed by introspection: the "self"
379 <div class="variablelist"><table border="0" class="variablelist">
381 <col align="left" valign="top">
386 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
387 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
391 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
393 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>info</code></em> is a method, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</td>
397 <p class="since">Since 1.34</p>
400 <div class="refsect2">
401 <a name="g-callable-info-iterate-return-attributes"></a><h3>g_callable_info_iterate_return_attributes ()</h3>
402 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_callable_info_iterate_return_attributes
403 (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
404 <em class="parameter"><code><a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> *iterator</code></em>,
405 <em class="parameter"><code><span class="type">char</span> **name</code></em>,
406 <em class="parameter"><code><span class="type">char</span> **value</code></em>);</pre>
408 Iterate over all attributes associated with the return value. The
409 iterator structure is typically stack allocated, and must have its
410 first member initialized to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
413 Both the <em class="parameter"><code>name</code></em> and <em class="parameter"><code>value</code></em> should be treated as constants
414 and must not be freed.
417 See <a class="link" href="gi-GIBaseInfo.html#g-base-info-iterate-attributes" title="g_base_info_iterate_attributes ()"><code class="function">g_base_info_iterate_attributes()</code></a> for an example of how to use a
420 <div class="variablelist"><table border="0" class="variablelist">
422 <col align="left" valign="top">
427 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
428 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
432 <td><p><span class="term"><em class="parameter"><code>iterator</code></em> :</span></p></td>
433 <td>a <a class="link" href="gi-GIBaseInfo.html#GIAttributeIter" title="GIAttributeIter"><span class="type">GIAttributeIter</span></a> structure, must be initialized; see below</td>
436 <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
437 <td>Returned name, must not be freed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
441 <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
442 <td>Returned name, must not be freed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
446 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
448 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there are more attributes</td>
454 <div class="refsect2">
455 <a name="g-callable-info-load-arg"></a><h3>g_callable_info_load_arg ()</h3>
456 <pre class="programlisting"><span class="returnvalue">void</span> g_callable_info_load_arg (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
457 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> n</code></em>,
458 <em class="parameter"><code><a class="link" href="gi-GIArgInfo.html#GIArgInfo" title="GIArgInfo"><span class="type">GIArgInfo</span></a> *arg</code></em>);</pre>
460 Obtain information about a particular argument of this callable; this
461 function is a variant of <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-arg" title="g_callable_info_get_arg ()"><code class="function">g_callable_info_get_arg()</code></a> designed for stack
465 The initialized <em class="parameter"><code>arg</code></em> must not be referenced after <em class="parameter"><code>info</code></em> is deallocated.
467 <div class="variablelist"><table border="0" class="variablelist">
469 <col align="left" valign="top">
474 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
475 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
479 <td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
480 <td>the argument index to fetch</td>
483 <td><p><span class="term"><em class="parameter"><code>arg</code></em> :</span></p></td>
484 <td>Initialize with argument number <em class="parameter"><code>n</code></em>. <span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span>
491 <div class="refsect2">
492 <a name="g-callable-info-load-return-type"></a><h3>g_callable_info_load_return_type ()</h3>
493 <pre class="programlisting"><span class="returnvalue">void</span> g_callable_info_load_return_type (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>,
494 <em class="parameter"><code><a class="link" href="gi-GITypeInfo.html#GITypeInfo" title="GITypeInfo"><span class="type">GITypeInfo</span></a> *type</code></em>);</pre>
496 Obtain information about a return value of callable; this
497 function is a variant of <a class="link" href="gi-GICallableInfo.html#g-callable-info-get-return-type" title="g_callable_info_get_return_type ()"><code class="function">g_callable_info_get_return_type()</code></a> designed for stack
501 The initialized <em class="parameter"><code>type</code></em> must not be referenced after <em class="parameter"><code>info</code></em> is deallocated.
503 <div class="variablelist"><table border="0" class="variablelist">
505 <col align="left" valign="top">
510 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
511 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
515 <td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
516 <td>Initialized with return type of <em class="parameter"><code>info</code></em>. <span class="annotation">[<acronym title="Out parameter, where caller must allocate storage."><span class="acronym">out caller-allocates</span></acronym>]</span>
523 <div class="refsect2">
524 <a name="g-callable-info-may-return-null"></a><h3>g_callable_info_may_return_null ()</h3>
525 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_callable_info_may_return_null (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
527 See if a callable could return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
529 <div class="variablelist"><table border="0" class="variablelist">
531 <col align="left" valign="top">
536 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
537 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
541 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
543 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if callable could return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
550 <div class="refsect2">
551 <a name="g-callable-info-skip-return"></a><h3>g_callable_info_skip_return ()</h3>
552 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_callable_info_skip_return (<em class="parameter"><code><a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a> *info</code></em>);</pre>
554 See if a callable's return value is only useful in C.
556 <div class="variablelist"><table border="0" class="variablelist">
558 <col align="left" valign="top">
563 <td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
564 <td>a <a class="link" href="gi-GICallableInfo.html#GICallableInfo" title="GICallableInfo"><span class="type">GICallableInfo</span></a>
568 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
570 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if return value is only useful in C.</td>
579 Generated by GTK-Doc V1.19.1</div>