diff options
author | Philip Chimento <philip.chimento@gmail.com> | 2019-08-01 13:37:47 -0700 |
---|---|---|
committer | Philip Chimento <philip.chimento@gmail.com> | 2019-08-01 22:12:52 -0700 |
commit | 99db7d7fb3dbb9f4da416a21282aadf351eb3471 (patch) | |
tree | 9de6f70136b2f8dcb98a97b492a6b9d75b2f342a | |
parent | 3bdb82991f2767a2d43a8ee15251e48e46e82c3c (diff) | |
download | gobject-introspection-99db7d7fb3dbb9f4da416a21282aadf351eb3471.tar.gz |
regress: Add regression test for signal with GError param
This exercises the little-used code path where a signal is emitted with
a nullable GError as a parameter. It's modeled after
GstPbutils.Discoverer's 'discovered' signal.
See GNOME/gjs#262.
13 files changed, 701 insertions, 283 deletions
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-gerror.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-gerror.page new file mode 100644 index 00000000..b511ced1 --- /dev/null +++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-sig-with-gerror.page @@ -0,0 +1,34 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj-sig-with-gerror" + type="topic" + style="signal" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="signal" type="guide"/> + <title type="link" role="topic">sig-with-gerror</title> + </info> + <title>Regress.TestObj::sig-with-gerror</title> + <synopsis><code mime="text/x-csrc"> +void sig-with-gerror (GError error); + </code></synopsis> + <p>This signal is modeled after #GstDiscoverer::discovered, and is added to +exercise the path of a <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link> being marshalled as a boxed type instead of +an exception in the introspected language.</p> <p>Use via <link xref="Regress.TestObj.emit_sig_with_error"/> and +<link xref="Regress.TestObj.emit_sig_with_null_error"/>, or emit via the introspected +language.</p> + +<terms> +<item> +<title><code>error</code></title> + <p>A <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link> if something went wrong + internally in @self. You must not free this <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link>.</p> +</item> +<item> +<title><code>Returns</code></title> + +</item> +</terms> + +</page> diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_error.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_error.page new file mode 100644 index 00000000..a2acb8ca --- /dev/null +++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_error.page @@ -0,0 +1,38 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj.emit_sig_with_error" + type="topic" + style="method" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="method" type="guide"/> + <api:function> + <api:returns> + <api:type>void</api:type> + </api:returns> + <api:name>regress_test_obj_emit_sig_with_error</api:name> + <api:arg> + <api:type>RegressTestObj*</api:type> + <api:name>self</api:name> + </api:arg> + </api:function> + </info> + <title>regress_test_obj_emit_sig_with_error</title> + <synopsis><code mime="text/x-csrc"> +void regress_test_obj_emit_sig_with_error (RegressTestObj* self); + </code></synopsis> + + +<terms> +<item> +<title><code>self</code></title> + <p>The object to emit the signal.</p> +</item> +<item> +<title><code>Returns</code></title> + +</item> +</terms> + +</page> diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_null_error.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_null_error.page new file mode 100644 index 00000000..11e38be4 --- /dev/null +++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj.emit_sig_with_null_error.page @@ -0,0 +1,38 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj.emit_sig_with_null_error" + type="topic" + style="method" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="method" type="guide"/> + <api:function> + <api:returns> + <api:type>void</api:type> + </api:returns> + <api:name>regress_test_obj_emit_sig_with_null_error</api:name> + <api:arg> + <api:type>RegressTestObj*</api:type> + <api:name>self</api:name> + </api:arg> + </api:function> + </info> + <title>regress_test_obj_emit_sig_with_null_error</title> + <synopsis><code mime="text/x-csrc"> +void regress_test_obj_emit_sig_with_null_error (RegressTestObj* self); + </code></synopsis> + + +<terms> +<item> +<title><code>self</code></title> + <p>The object to emit the signal.</p> +</item> +<item> +<title><code>Returns</code></title> + +</item> +</terms> + +</page> diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-gerror.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-gerror.page new file mode 100644 index 00000000..5a2c10f1 --- /dev/null +++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj-sig-with-gerror.page @@ -0,0 +1,34 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj-sig-with-gerror" + type="topic" + style="signal" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="signal" type="guide"/> + <title type="link" role="topic">sig-with-gerror</title> + </info> + <title>Regress.TestObj::sig-with-gerror</title> + <synopsis><code mime="text/x-gjs"> +connect('sig-with-gerror', function (testObj, error: <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link>, ): void); + </code></synopsis> + <p>This signal is modeled after #GstDiscoverer::discovered, and is added to +exercise the path of a <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link> being marshalled as a boxed type instead of +an exception in the introspected language.</p> <p>Use via <link xref="Regress.TestObj.emit_sig_with_error"/> and +<link xref="Regress.TestObj.emit_sig_with_null_error"/>, or emit via the introspected +language.</p> + +<terms> +<item> +<title><code>testObj</code></title> +<p>instance of <link xref="Regress.TestObj"/> that is emitting the signal</p> +</item> +<item> +<title><code>error</code></title> + <p>A <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link> if something went wrong + internally in @self. You must not free this <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link>.</p> +</item> +</terms> + +</page> diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_error.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_error.page new file mode 100644 index 00000000..1d0128eb --- /dev/null +++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_error.page @@ -0,0 +1,26 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj.emit_sig_with_error" + type="topic" + style="method" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="method" type="guide"/> + <api:function> + <api:returns> + <api:type>void</api:type> + </api:returns> + <api:name>regress_test_obj_emit_sig_with_error</api:name> + </api:function> + </info> + <title>Regress.TestObj.prototype.emit_sig_with_error</title> + <synopsis><code mime="text/x-gjs"> +function emit_sig_with_error(): void { + // Gjs wrapper for regress_test_obj_emit_sig_with_error() +} + </code></synopsis> + + + +</page> diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_null_error.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_null_error.page new file mode 100644 index 00000000..84ff3771 --- /dev/null +++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestObj.emit_sig_with_null_error.page @@ -0,0 +1,26 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj.emit_sig_with_null_error" + type="topic" + style="method" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="method" type="guide"/> + <api:function> + <api:returns> + <api:type>void</api:type> + </api:returns> + <api:name>regress_test_obj_emit_sig_with_null_error</api:name> + </api:function> + </info> + <title>Regress.TestObj.prototype.emit_sig_with_null_error</title> + <synopsis><code mime="text/x-gjs"> +function emit_sig_with_null_error(): void { + // Gjs wrapper for regress_test_obj_emit_sig_with_null_error() +} + </code></synopsis> + + + +</page> diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-gerror.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-gerror.page new file mode 100644 index 00000000..9e0cd6e4 --- /dev/null +++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-sig-with-gerror.page @@ -0,0 +1,40 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj-sig-with-gerror" + type="topic" + style="signal" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="signal" type="guide"/> + <title type="link" role="topic">sig-with-gerror</title> + </info> + <title>Regress.TestObj::sig-with-gerror</title> + <synopsis><code mime="text/x-python"> +def callback(test_obj, error, user_param1, ...) + </code></synopsis> + <p>This signal is modeled after #GstDiscoverer::discovered, and is added to +exercise the path of a <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link> being marshalled as a boxed type instead of +an exception in the introspected language.</p> <p>Use via <link xref="Regress.TestObj.emit_sig_with_error"/> and +<link xref="Regress.TestObj.emit_sig_with_null_error"/>, or emit via the introspected +language.</p> + +<terms> +<item> +<title><code>test_obj</code></title> +<p>instance of <link xref="Regress.TestObj"/> that is emitting the signal</p> +</item> +<item> +<title><code>error</code></title> + <p>A <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link> if something went wrong + internally in @self. You must not free this <link href="../GLib-2.0/GLib.Error.html">GLib.Error</link>.</p> +</item> +<title><code>user_param1</code></title> +<p>first user parameter (if any) specified with the connect() method</p> +<item> +<title><code>...</code></title> +<p>additional user parameters (if any)</p> +</item> +</terms> + +</page> diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_error.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_error.page new file mode 100644 index 00000000..de973b13 --- /dev/null +++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_error.page @@ -0,0 +1,37 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj.emit_sig_with_error" + type="topic" + style="method" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="method" type="guide"/> + <api:function> + <api:returns> + <api:type>none</api:type> + </api:returns> + <api:name>regress_test_obj_emit_sig_with_error</api:name> + <api:arg> + <api:type>Regress.TestObj</api:type> + <api:name>self</api:name> + </api:arg> + </api:function> + </info> + <title>Regress.TestObj.emit_sig_with_error</title> + <synopsis><code mime="text/x-python"> +@accepts(Regress.TestObj) +@returns(none) +def emit_sig_with_error(self): + # Python wrapper for regress_test_obj_emit_sig_with_error() + </code></synopsis> + + +<terms> +<item> +<title><code>self</code></title> + <p>The object to emit the signal.</p> +</item> +</terms> + +</page> diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_null_error.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_null_error.page new file mode 100644 index 00000000..4ced2eb6 --- /dev/null +++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj.emit_sig_with_null_error.page @@ -0,0 +1,37 @@ +<?xml version="1.0"?> +<page id="Regress.TestObj.emit_sig_with_null_error" + type="topic" + style="method" + xmlns="http://projectmallard.org/1.0/" + xmlns:api="http://projectmallard.org/experimental/api/" + xmlns:ui="http://projectmallard.org/1.0/ui/"> + <info> + <link xref="Regress.TestObj" group="method" type="guide"/> + <api:function> + <api:returns> + <api:type>none</api:type> + </api:returns> + <api:name>regress_test_obj_emit_sig_with_null_error</api:name> + <api:arg> + <api:type>Regress.TestObj</api:type> + <api:name>self</api:name> + </api:arg> + </api:function> + </info> + <title>Regress.TestObj.emit_sig_with_null_error</title> + <synopsis><code mime="text/x-python"> +@accepts(Regress.TestObj) +@returns(none) +def emit_sig_with_null_error(self): + # Python wrapper for regress_test_obj_emit_sig_with_null_error() + </code></synopsis> + + +<terms> +<item> +<title><code>self</code></title> + <p>The object to emit the signal.</p> +</item> +</terms> + +</page> diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir index a5e3665d..949df37b 100644 --- a/tests/scanner/Regress-1.0-expected.gir +++ b/tests/scanner/Regress-1.0-expected.gir @@ -18,8 +18,8 @@ and/or use gtk-doc annotations. --> <alias name="AliasedTestBoxed" c:type="RegressAliasedTestBoxed"> <doc xml:space="preserve" filename="regress.h" - line="1375">Typedef TestBoxed to test caller-allocates correctness</doc> - <source-position filename="regress.h" line="1380"/> + line="1381">Typedef TestBoxed to test caller-allocates correctness</doc> + <source-position filename="regress.h" line="1386"/> <type name="TestBoxed" c:type="RegressTestBoxed"/> </alias> <alias name="FooObjectCookie" c:type="RegressFooObjectCookie"> @@ -33,15 +33,15 @@ and/or use gtk-doc annotations. --> <alias name="IntsetAlias" c:type="RegressIntsetAlias" introspectable="0"> <doc xml:space="preserve" filename="regress.h" - line="1345">Compatibility typedef, like telepathy-glib's TpIntSet</doc> - <source-position filename="regress.h" line="1351"/> + line="1351">Compatibility typedef, like telepathy-glib's TpIntSet</doc> + <source-position filename="regress.h" line="1357"/> <type name="Intset" c:type="RegressIntset"/> </alias> <alias name="PtrArrayAlias" c:type="RegressPtrArrayAlias"> <doc xml:space="preserve" filename="regress.h" - line="1353">Typedef'd GPtrArray for some reason</doc> - <source-position filename="regress.h" line="1358"/> + line="1359">Typedef'd GPtrArray for some reason</doc> + <source-position filename="regress.h" line="1364"/> <type name="GLib.PtrArray" c:type="GPtrArray"/> </alias> <alias name="TestTypeGUInt64" c:type="RegressTestTypeGUInt64"> @@ -51,8 +51,8 @@ and/or use gtk-doc annotations. --> <alias name="VaListAlias" c:type="RegressVaListAlias" introspectable="0"> <doc xml:space="preserve" filename="regress.h" - line="1364">Typedef'd va_list for additional reasons</doc> - <source-position filename="regress.h" line="1369"/> + line="1370">Typedef'd va_list for additional reasons</doc> + <source-position filename="regress.h" line="1375"/> <type name="va_list" c:type="va_list"/> </alias> <constant name="ANNOTATION_CALCULATED_DEFINE" @@ -92,12 +92,12 @@ and/or use gtk-doc annotations. --> </member> </enumeration> <record name="AnAnonymousUnion" c:type="RegressAnAnonymousUnion"> - <source-position filename="regress.h" line="1481"/> + <source-position filename="regress.h" line="1487"/> <field name="x" writable="1"> <type name="gint" c:type="int"/> </field> <union> - <source-position filename="regress.h" line="1480"/> + <source-position filename="regress.h" line="1486"/> <field name="a" writable="1"> <array zero-terminated="0" fixed-size="2"> <type name="LikeGnomeKeyringPasswordSchema" @@ -1214,14 +1214,14 @@ it says it's pointer but it's actually a string.</doc> </record> <record name="AnonymousUnionAndStruct" c:type="RegressAnonymousUnionAndStruct"> - <source-position filename="regress.h" line="1494"/> + <source-position filename="regress.h" line="1500"/> <field name="x" writable="1"> <type name="gint" c:type="int"/> </field> <union> - <source-position filename="regress.h" line="1493"/> + <source-position filename="regress.h" line="1499"/> <record> - <source-position filename="regress.h" line="1490"/> + <source-position filename="regress.h" line="1496"/> <field name="a" writable="1"> <type name="LikeGnomeKeyringPasswordSchema" c:type="RegressLikeGnomeKeyringPasswordSchema*"/> @@ -2582,13 +2582,13 @@ exposed to language bindings.</doc> <constant name="GI_SCANNER_ELSE" value="3" c:type="REGRESS_GI_SCANNER_ELSE"> - <source-position filename="regress.h" line="1458"/> + <source-position filename="regress.h" line="1464"/> <type name="gint" c:type="gint"/> </constant> <constant name="GI_SCANNER_IFDEF" value="3" c:type="REGRESS_GI_SCANNER_IFDEF"> - <source-position filename="regress.h" line="1462"/> + <source-position filename="regress.h" line="1468"/> <type name="gint" c:type="gint"/> </constant> <constant name="GUINT64_CONSTANT" @@ -2616,18 +2616,18 @@ exposed to language bindings.</doc> <record name="Intset" c:type="RegressIntset" disguised="1"> <doc xml:space="preserve" filename="regress.h" - line="1337">Like telepathy-glib's TpIntset.</doc> - <source-position filename="regress.h" line="1343"/> + line="1343">Like telepathy-glib's TpIntset.</doc> + <source-position filename="regress.h" line="1349"/> </record> <constant name="LONG_STRING_CONSTANT" value="TYPE,VALUE,ENCODING,CHARSET,LANGUAGE,DOM,INTL,POSTAL,PARCEL,HOME,WORK,PREF,VOICE,FAX,MSG,CELL,PAGER,BBS,MODEM,CAR,ISDN,VIDEO,AOL,APPLELINK,ATTMAIL,CIS,EWORLD,INTERNET,IBMMAIL,MCIMAIL,POWERSHARE,PRODIGY,TLX,X400,GIF,CGM,WMF,BMP,MET,PMB,DIB,PICT,TIFF,PDF,PS,JPEG,QTIME,MPEG,MPEG2,AVI,WAVE,AIFF,PCM,X509,PGP" c:type="REGRESS_LONG_STRING_CONSTANT"> - <source-position filename="regress.h" line="1429"/> + <source-position filename="regress.h" line="1435"/> <type name="utf8" c:type="gchar*"/> </constant> <record name="LikeGnomeKeyringPasswordSchema" c:type="RegressLikeGnomeKeyringPasswordSchema"> - <source-position filename="regress.h" line="1448"/> + <source-position filename="regress.h" line="1454"/> <field name="dummy" writable="1"> <type name="gint" c:type="int"/> </field> @@ -2641,7 +2641,7 @@ exposed to language bindings.</doc> </field> </record> <record name="LikeXklConfigItem" c:type="RegressLikeXklConfigItem"> - <source-position filename="regress.h" line="1415"/> + <source-position filename="regress.h" line="1421"/> <field name="name" writable="1"> <array zero-terminated="0" fixed-size="32"> <type name="gchar" c:type="gchar"/> @@ -2649,7 +2649,7 @@ exposed to language bindings.</doc> </field> <method name="set_name" c:identifier="regress_like_xkl_config_item_set_name"> - <source-position filename="regress.h" line="1419"/> + <source-position filename="regress.h" line="1425"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -2666,13 +2666,13 @@ exposed to language bindings.</doc> <constant name="MAXUINT64" value="18446744073709551615" c:type="REGRESS_MAXUINT64"> - <source-position filename="regress.h" line="1452"/> + <source-position filename="regress.h" line="1458"/> <type name="guint64" c:type="guint64"/> </constant> <constant name="MININT64" value="-9223372036854775808" c:type="REGRESS_MININT64"> - <source-position filename="regress.h" line="1451"/> + <source-position filename="regress.h" line="1457"/> <type name="gint64" c:type="gint64"/> </constant> <constant name="Mixed_Case_Constant" @@ -2698,9 +2698,9 @@ exposed to language bindings.</doc> introspectable="0"> <doc xml:space="preserve" filename="regress.h" - line="1319">This should be skipped, and moreover, all function which + line="1325">This should be skipped, and moreover, all function which use it should be.</doc> - <source-position filename="regress.h" line="1329"/> + <source-position filename="regress.h" line="1335"/> <field name="x" writable="1"> <type name="gint" c:type="int"/> </field> @@ -2711,7 +2711,7 @@ use it should be.</doc> <function-macro name="TEST_FLOATING" c:identifier="REGRESS_TEST_FLOATING" introspectable="0"> - <source-position filename="regress.h" line="1247"/> + <source-position filename="regress.h" line="1253"/> <parameters> <parameter name="object"> </parameter> @@ -2720,7 +2720,7 @@ use it should be.</doc> <function-macro name="TEST_FLOATING_GET_CLASS" c:identifier="REGRESS_TEST_FLOATING_GET_CLASS" introspectable="0"> - <source-position filename="regress.h" line="1249"/> + <source-position filename="regress.h" line="1255"/> <parameters> <parameter name="obj"> </parameter> @@ -2729,7 +2729,7 @@ use it should be.</doc> <function-macro name="TEST_FUNDAMENTAL_OBJECT" c:identifier="REGRESS_TEST_FUNDAMENTAL_OBJECT" introspectable="0"> - <source-position filename="regress.h" line="1001"/> + <source-position filename="regress.h" line="1007"/> <parameters> <parameter name="obj"> </parameter> @@ -2738,7 +2738,7 @@ use it should be.</doc> <function-macro name="TEST_FUNDAMENTAL_OBJECT_CAST" c:identifier="REGRESS_TEST_FUNDAMENTAL_OBJECT_CAST" introspectable="0"> - <source-position filename="regress.h" line="1003"/> + <source-position filename="regress.h" line="1009"/> <parameters> <parameter name="obj"> </parameter> @@ -2747,7 +2747,7 @@ use it should be.</doc> <function-macro name="TEST_FUNDAMENTAL_OBJECT_CLASS" c:identifier="REGRESS_TEST_FUNDAMENTAL_OBJECT_CLASS" introspectable="0"> - <source-position filename="regress.h" line="1002"/> + <source-position filename="regress.h" line="1008"/> <parameters> <parameter name="klass"> </parameter> @@ -2756,7 +2756,7 @@ use it should be.</doc> <function-macro name="TEST_FUNDAMENTAL_OBJECT_GET_CLASS" c:identifier="REGRESS_TEST_FUNDAMENTAL_OBJECT_GET_CLASS" introspectable="0"> - <source-position filename="regress.h" line="1000"/> + <source-position filename="regress.h" line="1006"/> <parameters> <parameter name="obj"> </parameter> @@ -2765,7 +2765,7 @@ use it should be.</doc> <function-macro name="TEST_GNUC_EXTENSION_STMT" c:identifier="REGRESS_TEST_GNUC_EXTENSION_STMT" introspectable="0"> - <source-position filename="regress.h" line="1425"/> + <source-position filename="regress.h" line="1431"/> <parameters> <parameter name="foo"> </parameter> @@ -2774,7 +2774,7 @@ use it should be.</doc> <function-macro name="TEST_INTERFACE" c:identifier="REGRESS_TEST_INTERFACE" introspectable="0"> - <source-position filename="regress.h" line="1195"/> + <source-position filename="regress.h" line="1201"/> <parameters> <parameter name="object"> </parameter> @@ -2783,7 +2783,7 @@ use it should be.</doc> <function-macro name="TEST_INTERFACE_GET_IFACE" c:identifier="REGRESS_TEST_INTERFACE_GET_IFACE" introspectable="0"> - <source-position filename="regress.h" line="1197"/> + <source-position filename="regress.h" line="1203"/> <parameters> <parameter name="obj"> </parameter> @@ -2792,7 +2792,7 @@ use it should be.</doc> <function-macro name="TEST_IS_FLOATING" c:identifier="REGRESS_TEST_IS_FLOATING" introspectable="0"> - <source-position filename="regress.h" line="1248"/> + <source-position filename="regress.h" line="1254"/> <parameters> <parameter name="object"> </parameter> @@ -2801,7 +2801,7 @@ use it should be.</doc> <function-macro name="TEST_IS_FUNDAMENTAL_OBJECT" c:identifier="REGRESS_TEST_IS_FUNDAMENTAL_OBJECT" introspectable="0"> - <source-position filename="regress.h" line="998"/> + <source-position filename="regress.h" line="1004"/> <parameters> <parameter name="obj"> </parameter> @@ -2810,7 +2810,7 @@ use it should be.</doc> <function-macro name="TEST_IS_FUNDAMENTAL_OBJECT_CLASS" c:identifier="REGRESS_TEST_IS_FUNDAMENTAL_OBJECT_CLASS" introspectable="0"> - <source-position filename="regress.h" line="999"/> + <source-position filename="regress.h" line="1005"/> <parameters> <parameter name="klass"> </parameter> @@ -2819,7 +2819,7 @@ use it should be.</doc> <function-macro name="TEST_IS_INTERFACE" c:identifier="REGRESS_TEST_IS_INTERFACE" introspectable="0"> - <source-position filename="regress.h" line="1196"/> + <source-position filename="regress.h" line="1202"/> <parameters> <parameter name="object"> </parameter> @@ -2837,7 +2837,7 @@ use it should be.</doc> <function-macro name="TEST_IS_SUB_OBJECT" c:identifier="REGRESS_TEST_IS_SUB_OBJECT" introspectable="0"> - <source-position filename="regress.h" line="964"/> + <source-position filename="regress.h" line="970"/> <parameters> <parameter name="object"> </parameter> @@ -2846,7 +2846,7 @@ use it should be.</doc> <function-macro name="TEST_IS_WI_802_1X" c:identifier="REGRESS_TEST_IS_WI_802_1X" introspectable="0"> - <source-position filename="regress.h" line="1214"/> + <source-position filename="regress.h" line="1220"/> <parameters> <parameter name="object"> </parameter> @@ -2873,7 +2873,7 @@ use it should be.</doc> <function-macro name="TEST_SUB_OBJECT" c:identifier="REGRESS_TEST_SUB_OBJECT" introspectable="0"> - <source-position filename="regress.h" line="963"/> + <source-position filename="regress.h" line="969"/> <parameters> <parameter name="object"> </parameter> @@ -2882,7 +2882,7 @@ use it should be.</doc> <function-macro name="TEST_SUB_OBJ_GET_CLASS" c:identifier="REGRESS_TEST_SUB_OBJ_GET_CLASS" introspectable="0"> - <source-position filename="regress.h" line="965"/> + <source-position filename="regress.h" line="971"/> <parameters> <parameter name="obj"> </parameter> @@ -2891,7 +2891,7 @@ use it should be.</doc> <function-macro name="TEST_VALUE_HOLDS_FUNDAMENTAL_OBJECT" c:identifier="REGRESS_TEST_VALUE_HOLDS_FUNDAMENTAL_OBJECT" introspectable="0"> - <source-position filename="regress.h" line="1038"/> + <source-position filename="regress.h" line="1044"/> <parameters> <parameter name="value"> </parameter> @@ -2900,7 +2900,7 @@ use it should be.</doc> <function-macro name="TEST_WI_802_1X" c:identifier="REGRESS_TEST_WI_802_1X" introspectable="0"> - <source-position filename="regress.h" line="1213"/> + <source-position filename="regress.h" line="1219"/> <parameters> <parameter name="object"> </parameter> @@ -2909,7 +2909,7 @@ use it should be.</doc> <function-macro name="TEST_WI_802_1X_GET_CLASS" c:identifier="REGRESS_TEST_WI_802_1X_GET_CLASS" introspectable="0"> - <source-position filename="regress.h" line="1215"/> + <source-position filename="regress.h" line="1221"/> <parameters> <parameter name="obj"> </parameter> @@ -3157,13 +3157,13 @@ use it should be.</doc> <source-position filename="regress.h" line="666"/> </record> <callback name="TestCallback" c:type="RegressTestCallback"> - <source-position filename="regress.h" line="1075"/> + <source-position filename="regress.h" line="1081"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> </callback> <callback name="TestCallbackArray" c:type="RegressTestCallbackArray"> - <source-position filename="regress.h" line="1107"/> + <source-position filename="regress.h" line="1113"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -3188,7 +3188,7 @@ use it should be.</doc> </callback> <callback name="TestCallbackArrayInOut" c:type="RegressTestCallbackArrayInOut"> - <source-position filename="regress.h" line="1113"/> + <source-position filename="regress.h" line="1119"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3210,7 +3210,7 @@ use it should be.</doc> </parameters> </callback> <callback name="TestCallbackFull" c:type="RegressTestCallbackFull"> - <source-position filename="regress.h" line="1094"/> + <source-position filename="regress.h" line="1100"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -3218,25 +3218,25 @@ use it should be.</doc> <parameter name="foo" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.h" - line="1090">the investment rate</doc> + line="1096">the investment rate</doc> <type name="gint" c:type="int"/> </parameter> <parameter name="bar" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.h" - line="1091">how much money</doc> + line="1097">how much money</doc> <type name="gdouble" c:type="double"/> </parameter> <parameter name="path" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.h" - line="1092">Path to file</doc> + line="1098">Path to file</doc> <type name="filename" c:type="char*"/> </parameter> </parameters> </callback> <callback name="TestCallbackGError" c:type="RegressTestCallbackGError"> - <source-position filename="regress.h" line="1082"/> + <source-position filename="regress.h" line="1088"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3248,7 +3248,7 @@ use it should be.</doc> </callback> <callback name="TestCallbackHashtable" c:type="RegressTestCallbackHashtable"> - <source-position filename="regress.h" line="1081"/> + <source-position filename="regress.h" line="1087"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3256,7 +3256,7 @@ use it should be.</doc> <parameter name="data" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.h" - line="1079">a hash table; will be modified</doc> + line="1085">a hash table; will be modified</doc> <type name="GLib.HashTable" c:type="GHashTable*"> <type name="utf8"/> <type name="gint"/> @@ -3266,7 +3266,7 @@ use it should be.</doc> </callback> <callback name="TestCallbackOwnedGError" c:type="RegressTestCallbackOwnedGError"> - <source-position filename="regress.h" line="1087"/> + <source-position filename="regress.h" line="1093"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3274,20 +3274,20 @@ use it should be.</doc> <parameter name="error" transfer-ownership="full"> <doc xml:space="preserve" filename="regress.h" - line="1085">GError instance; must be freed by the callback</doc> + line="1091">GError instance; must be freed by the callback</doc> <type name="GLib.Error" c:type="GError*"/> </parameter> </parameters> </callback> <callback name="TestCallbackReturnFull" c:type="RegressTestCallbackReturnFull"> - <source-position filename="regress.h" line="1099"/> + <source-position filename="regress.h" line="1105"/> <return-value transfer-ownership="full"> <type name="TestObj" c:type="RegressTestObj*"/> </return-value> </callback> <callback name="TestCallbackUserData" c:type="RegressTestCallbackUserData"> - <source-position filename="regress.h" line="1076"/> + <source-position filename="regress.h" line="1082"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -3456,13 +3456,13 @@ use it should be.</doc> glib:type-name="RegressTestFloating" glib:get-type="regress_test_floating_get_type" glib:type-struct="TestFloatingClass"> - <source-position filename="regress.h" line="1259"/> + <source-position filename="regress.h" line="1265"/> <constructor name="new" c:identifier="regress_test_floating_new"> - <source-position filename="regress.h" line="1266"/> + <source-position filename="regress.h" line="1272"/> <return-value transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4223">A new floating #RegressTestFloating</doc> + line="4267">A new floating #RegressTestFloating</doc> <type name="TestFloating" c:type="RegressTestFloating*"/> </return-value> </constructor> @@ -3473,7 +3473,7 @@ use it should be.</doc> <record name="TestFloatingClass" c:type="RegressTestFloatingClass" glib:is-gtype-struct-for="TestFloating"> - <source-position filename="regress.h" line="1259"/> + <source-position filename="regress.h" line="1265"/> <field name="parent_class"> <type name="GObject.InitiallyUnownedClass" c:type="GInitiallyUnownedClass"/> @@ -3491,9 +3491,9 @@ use it should be.</doc> glib:unref-func="regress_test_fundamental_object_unref" glib:set-value-func="regress_test_value_set_fundamental_object" glib:get-value-func="regress_test_value_get_fundamental_object"> - <source-position filename="regress.h" line="1027"/> + <source-position filename="regress.h" line="1033"/> <virtual-method name="copy"> - <source-position filename="regress.h" line="1012"/> + <source-position filename="regress.h" line="1018"/> <return-value transfer-ownership="full"> <type name="TestFundamentalObject" c:type="RegressTestFundamentalObject*"/> @@ -3506,7 +3506,7 @@ use it should be.</doc> </parameters> </virtual-method> <virtual-method name="finalize"> - <source-position filename="regress.h" line="1013"/> + <source-position filename="regress.h" line="1019"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3518,11 +3518,11 @@ use it should be.</doc> </parameters> </virtual-method> <method name="ref" c:identifier="regress_test_fundamental_object_ref"> - <source-position filename="regress.h" line="1033"/> + <source-position filename="regress.h" line="1039"/> <return-value transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3340">A new #RegressTestFundamentalObject</doc> + line="3384">A new #RegressTestFundamentalObject</doc> <type name="TestFundamentalObject" c:type="RegressTestFundamentalObject*"/> </return-value> @@ -3536,7 +3536,7 @@ use it should be.</doc> </method> <method name="unref" c:identifier="regress_test_fundamental_object_unref"> - <source-position filename="regress.h" line="1036"/> + <source-position filename="regress.h" line="1042"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3561,7 +3561,7 @@ use it should be.</doc> <record name="TestFundamentalObjectClass" c:type="RegressTestFundamentalObjectClass" glib:is-gtype-struct-for="TestFundamentalObject"> - <source-position filename="regress.h" line="1027"/> + <source-position filename="regress.h" line="1033"/> <field name="type_class"> <type name="GObject.TypeClass" c:type="GTypeClass"/> </field> @@ -3576,7 +3576,7 @@ use it should be.</doc> </record> <callback name="TestFundamentalObjectCopyFunction" c:type="RegressTestFundamentalObjectCopyFunction"> - <source-position filename="regress.h" line="1012"/> + <source-position filename="regress.h" line="1018"/> <return-value transfer-ownership="full"> <type name="TestFundamentalObject" c:type="RegressTestFundamentalObject*"/> @@ -3590,7 +3590,7 @@ use it should be.</doc> </callback> <callback name="TestFundamentalObjectFinalizeFunction" c:type="RegressTestFundamentalObjectFinalizeFunction"> - <source-position filename="regress.h" line="1013"/> + <source-position filename="regress.h" line="1019"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3609,10 +3609,10 @@ use it should be.</doc> glib:get-type="regress_test_fundamental_sub_object_get_type" glib:type-struct="TestFundamentalSubObjectClass" glib:fundamental="1"> - <source-position filename="regress.h" line="1057"/> + <source-position filename="regress.h" line="1063"/> <constructor name="new" c:identifier="regress_test_fundamental_sub_object_new"> - <source-position filename="regress.h" line="1066"/> + <source-position filename="regress.h" line="1072"/> <return-value transfer-ownership="full"> <type name="TestFundamentalSubObject" c:type="RegressTestFundamentalSubObject*"/> @@ -3634,7 +3634,7 @@ use it should be.</doc> <record name="TestFundamentalSubObjectClass" c:type="RegressTestFundamentalSubObjectClass" glib:is-gtype-struct-for="TestFundamentalSubObject"> - <source-position filename="regress.h" line="1057"/> + <source-position filename="regress.h" line="1063"/> <field name="fundamental_object_class"> <type name="TestFundamentalObjectClass" c:type="RegressTestFundamentalObjectClass"/> @@ -3758,10 +3758,10 @@ use it should be.</doc> glib:type-name="RegressTestInterface" glib:get-type="regress_test_interface_get_type" glib:type-struct="TestInterfaceIface"> - <source-position filename="regress.h" line="1203"/> + <source-position filename="regress.h" line="1209"/> <method name="emit_signal" c:identifier="regress_test_interface_emit_signal"> - <source-position filename="regress.h" line="1209"/> + <source-position filename="regress.h" line="1215"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3769,7 +3769,7 @@ use it should be.</doc> <instance-parameter name="self" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4082">the object to emit the signal</doc> + line="4126">the object to emit the signal</doc> <type name="TestInterface" c:type="RegressTestInterface*"/> </instance-parameter> </parameters> @@ -3788,7 +3788,7 @@ use it should be.</doc> <parameter name="ptr" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4063">the code must look up the signal with + line="4107">the code must look up the signal with g_interface_info_find_signal() in order to get this to work.</doc> <type name="gint" c:type="gpointer"/> </parameter> @@ -3798,13 +3798,13 @@ use it should be.</doc> <record name="TestInterfaceIface" c:type="RegressTestInterfaceIface" glib:is-gtype-struct-for="TestInterface"> - <source-position filename="regress.h" line="1203"/> + <source-position filename="regress.h" line="1209"/> <field name="base_iface"> <type name="GObject.TypeInterface" c:type="GTypeInterface"/> </field> </record> <callback name="TestNoPtrCallback" c:type="RegressTestNoPtrCallback"> - <source-position filename="regress.h" line="1074"/> + <source-position filename="regress.h" line="1080"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3832,14 +3832,14 @@ use it should be.</doc> <parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2770">A #RegressTestObj</doc> + line="2791">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </parameter> </parameters> </constructor> <constructor name="new_callback" c:identifier="regress_test_obj_new_callback"> - <source-position filename="regress.h" line="1171"/> + <source-position filename="regress.h" line="1177"/> <return-value transfer-ownership="full"> <type name="TestObj" c:type="RegressTestObj*"/> </return-value> @@ -3877,7 +3877,7 @@ use it should be.</doc> </parameters> </constructor> <function name="null_out" c:identifier="regress_test_obj_null_out"> - <source-position filename="regress.h" line="947"/> + <source-position filename="regress.h" line="953"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3890,14 +3890,14 @@ use it should be.</doc> allow-none="1"> <doc xml:space="preserve" filename="regress.c" - line="3159">A #RegressTestObj</doc> + line="3203">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj**"/> </parameter> </parameters> </function> <function name="static_method" c:identifier="regress_test_obj_static_method"> - <source-position filename="regress.h" line="855"/> + <source-position filename="regress.h" line="861"/> <return-value transfer-ownership="none"> <type name="gdouble" c:type="double"/> </return-value> @@ -3909,7 +3909,7 @@ use it should be.</doc> </function> <function name="static_method_callback" c:identifier="regress_test_obj_static_method_callback"> - <source-position filename="regress.h" line="1168"/> + <source-position filename="regress.h" line="1174"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -3960,7 +3960,7 @@ use it should be.</doc> <virtual-method name="matrix" invoker="do_matrix"> <doc xml:space="preserve" filename="regress.c" - line="3133">This method is virtual. Notably its name differs from the virtual + line="3177">This method is virtual. Notably its name differs from the virtual slot name, which makes it useful for testing bindings handle this case.</doc> <source-position filename="regress.h" line="797"/> @@ -3971,13 +3971,13 @@ case.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3135">A #RegressTestObj</doc> + line="3179">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="somestr" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3136">Meaningless string</doc> + line="3180">Meaningless string</doc> <type name="utf8" c:type="const char*"/> </parameter> </parameters> @@ -3985,10 +3985,10 @@ case.</doc> <method name="do_matrix" c:identifier="regress_test_obj_do_matrix"> <doc xml:space="preserve" filename="regress.c" - line="3133">This method is virtual. Notably its name differs from the virtual + line="3177">This method is virtual. Notably its name differs from the virtual slot name, which makes it useful for testing bindings handle this case.</doc> - <source-position filename="regress.h" line="940"/> + <source-position filename="regress.h" line="946"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -3996,13 +3996,13 @@ case.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3135">A #RegressTestObj</doc> + line="3179">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="somestr" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3136">Meaningless string</doc> + line="3180">Meaningless string</doc> <type name="utf8" c:type="const char*"/> </parameter> </parameters> @@ -4019,6 +4019,21 @@ case.</doc> </instance-parameter> </parameters> </method> + <method name="emit_sig_with_error" + c:identifier="regress_test_obj_emit_sig_with_error"> + <source-position filename="regress.h" line="849"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <instance-parameter name="self" transfer-ownership="none"> + <doc xml:space="preserve" + filename="regress.c" + line="2898">The object to emit the signal.</doc> + <type name="TestObj" c:type="RegressTestObj*"/> + </instance-parameter> + </parameters> + </method> <method name="emit_sig_with_foreign_struct" c:identifier="regress_test_obj_emit_sig_with_foreign_struct"> <source-position filename="regress.h" line="834"/> @@ -4035,7 +4050,7 @@ case.</doc> c:identifier="regress_test_obj_emit_sig_with_inout_int"> <doc xml:space="preserve" filename="regress.c" - line="2861">The signal handler must increment the inout parameter by 1.</doc> + line="2882">The signal handler must increment the inout parameter by 1.</doc> <source-position filename="regress.h" line="846"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> @@ -4044,7 +4059,7 @@ case.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2863">The object to emit the signal.</doc> + line="2884">The object to emit the signal.</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> </parameters> @@ -4061,6 +4076,21 @@ case.</doc> </instance-parameter> </parameters> </method> + <method name="emit_sig_with_null_error" + c:identifier="regress_test_obj_emit_sig_with_null_error"> + <source-position filename="regress.h" line="852"/> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <instance-parameter name="self" transfer-ownership="none"> + <doc xml:space="preserve" + filename="regress.c" + line="2911">The object to emit the signal.</doc> + <type name="TestObj" c:type="RegressTestObj*"/> + </instance-parameter> + </parameters> + </method> <method name="emit_sig_with_obj" c:identifier="regress_test_obj_emit_sig_with_obj"> <source-position filename="regress.h" line="831"/> @@ -4086,7 +4116,7 @@ case.</doc> </parameters> </method> <method name="forced_method" c:identifier="regress_forced_method"> - <source-position filename="regress.h" line="858"/> + <source-position filename="regress.h" line="864"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4094,14 +4124,14 @@ case.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2900">A #RegressTestObj</doc> + line="2944">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> </parameters> </method> <method name="instance_method" c:identifier="regress_test_obj_instance_method"> - <source-position filename="regress.h" line="849"/> + <source-position filename="regress.h" line="855"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -4113,7 +4143,7 @@ case.</doc> </method> <method name="instance_method_callback" c:identifier="regress_test_obj_instance_method_callback"> - <source-position filename="regress.h" line="1165"/> + <source-position filename="regress.h" line="1171"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4132,7 +4162,7 @@ case.</doc> </method> <method name="instance_method_full" c:identifier="regress_test_obj_instance_method_full"> - <source-position filename="regress.h" line="852"/> + <source-position filename="regress.h" line="858"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4144,7 +4174,7 @@ case.</doc> </method> <method name="name_conflict" c:identifier="regress_test_obj_name_conflict"> - <source-position filename="regress.h" line="959"/> + <source-position filename="regress.h" line="965"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4152,14 +4182,14 @@ case.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3203">A #RegressTestObj</doc> + line="3247">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> </parameters> </method> <method name="not_nullable_element_typed_gpointer_in" c:identifier="regress_test_obj_not_nullable_element_typed_gpointer_in"> - <source-position filename="regress.h" line="954"/> + <source-position filename="regress.h" line="960"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4167,13 +4197,13 @@ case.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3190">A #RegressTestObj</doc> + line="3234">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="input" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3191">some uint8 array</doc> + line="3235">some uint8 array</doc> <array length="1" zero-terminated="0" c:type="gpointer"> <type name="guint8"/> </array> @@ -4181,14 +4211,14 @@ case.</doc> <parameter name="count" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3192">length of @input</doc> + line="3236">length of @input</doc> <type name="guint" c:type="guint"/> </parameter> </parameters> </method> <method name="not_nullable_typed_gpointer_in" c:identifier="regress_test_obj_not_nullable_typed_gpointer_in"> - <source-position filename="regress.h" line="951"/> + <source-position filename="regress.h" line="957"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4196,13 +4226,13 @@ case.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3179">A #RegressTestObj</doc> + line="3223">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="input" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3180">some #GObject</doc> + line="3224">some #GObject</doc> <type name="GObject.Object" c:type="gpointer"/> </parameter> </parameters> @@ -4229,25 +4259,25 @@ case.</doc> throws="1"> <doc xml:space="preserve" filename="regress.c" - line="3097">Check that the out value is skipped</doc> - <source-position filename="regress.h" line="928"/> + line="3141">Check that the out value is skipped</doc> + <source-position filename="regress.h" line="934"/> <return-value transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3111">%TRUE if the call succeeds, %FALSE if @error is set.</doc> + line="3155">%TRUE if the call succeeds, %FALSE if @error is set.</doc> <type name="gboolean" c:type="gboolean"/> </return-value> <parameters> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3099">A #RegressTestObj.</doc> + line="3143">A #RegressTestObj.</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="a" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3100">Parameter.</doc> + line="3144">Parameter.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="out_b" @@ -4256,13 +4286,13 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3101">Return value.</doc> + line="3145">Return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="c" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3102">Other parameter.</doc> + line="3146">Other parameter.</doc> <type name="gdouble" c:type="gdouble"/> </parameter> <parameter name="inout_d" @@ -4272,7 +4302,7 @@ case.</doc> skip="1"> <doc xml:space="preserve" filename="regress.c" - line="3103">Will be incremented.</doc> + line="3147">Will be incremented.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="out_sum" @@ -4281,19 +4311,19 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3104">Return value.</doc> + line="3148">Return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="num1" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3105">Number.</doc> + line="3149">Number.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="num2" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3106">Number.</doc> + line="3150">Number.</doc> <type name="gint" c:type="gint"/> </parameter> </parameters> @@ -4303,25 +4333,25 @@ case.</doc> throws="1"> <doc xml:space="preserve" filename="regress.c" - line="3061">Check that the out value is skipped</doc> - <source-position filename="regress.h" line="916"/> + line="3105">Check that the out value is skipped</doc> + <source-position filename="regress.h" line="922"/> <return-value transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3075">%TRUE if the call succeeds, %FALSE if @error is set.</doc> + line="3119">%TRUE if the call succeeds, %FALSE if @error is set.</doc> <type name="gboolean" c:type="gboolean"/> </return-value> <parameters> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3063">A #RegressTestObj.</doc> + line="3107">A #RegressTestObj.</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="a" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3064">Parameter.</doc> + line="3108">Parameter.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="out_b" @@ -4331,13 +4361,13 @@ case.</doc> skip="1"> <doc xml:space="preserve" filename="regress.c" - line="3065">Return value.</doc> + line="3109">Return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="c" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3066">Other parameter.</doc> + line="3110">Other parameter.</doc> <type name="gdouble" c:type="gdouble"/> </parameter> <parameter name="inout_d" @@ -4346,7 +4376,7 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3067">Will be incremented.</doc> + line="3111">Will be incremented.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="out_sum" @@ -4355,19 +4385,19 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3068">Return value.</doc> + line="3112">Return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="num1" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3069">Number.</doc> + line="3113">Number.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="num2" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3070">Number.</doc> + line="3114">Number.</doc> <type name="gint" c:type="gint"/> </parameter> </parameters> @@ -4377,25 +4407,25 @@ case.</doc> throws="1"> <doc xml:space="preserve" filename="regress.c" - line="3025">Check that a parameter is skipped</doc> - <source-position filename="regress.h" line="904"/> + line="3069">Check that a parameter is skipped</doc> + <source-position filename="regress.h" line="910"/> <return-value transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3039">%TRUE if the call succeeds, %FALSE if @error is set.</doc> + line="3083">%TRUE if the call succeeds, %FALSE if @error is set.</doc> <type name="gboolean" c:type="gboolean"/> </return-value> <parameters> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3027">A #RegressTestObj.</doc> + line="3071">A #RegressTestObj.</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="a" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3028">Parameter.</doc> + line="3072">Parameter.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="out_b" @@ -4404,13 +4434,13 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3029">Return value.</doc> + line="3073">Return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="c" transfer-ownership="none" skip="1"> <doc xml:space="preserve" filename="regress.c" - line="3030">Other parameter.</doc> + line="3074">Other parameter.</doc> <type name="gdouble" c:type="gdouble"/> </parameter> <parameter name="inout_d" @@ -4419,7 +4449,7 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3031">Will be incremented.</doc> + line="3075">Will be incremented.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="out_sum" @@ -4428,19 +4458,19 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3032">Return value.</doc> + line="3076">Return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="num1" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3033">Number.</doc> + line="3077">Number.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="num2" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3034">Number.</doc> + line="3078">Number.</doc> <type name="gint" c:type="gint"/> </parameter> </parameters> @@ -4450,25 +4480,25 @@ case.</doc> throws="1"> <doc xml:space="preserve" filename="regress.c" - line="2965">Check that the return value is skipped</doc> - <source-position filename="regress.h" line="886"/> + line="3009">Check that the return value is skipped</doc> + <source-position filename="regress.h" line="892"/> <return-value transfer-ownership="none" skip="1"> <doc xml:space="preserve" filename="regress.c" - line="2979">%TRUE if the call succeeds, %FALSE if @error is set.</doc> + line="3023">%TRUE if the call succeeds, %FALSE if @error is set.</doc> <type name="gboolean" c:type="gboolean"/> </return-value> <parameters> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2967">a #RegressTestObj</doc> + line="3011">a #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="a" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2968">Parameter.</doc> + line="3012">Parameter.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="out_b" @@ -4477,13 +4507,13 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="2969">A return value.</doc> + line="3013">A return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="c" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2970">Other parameter.</doc> + line="3014">Other parameter.</doc> <type name="gdouble" c:type="gdouble"/> </parameter> <parameter name="inout_d" @@ -4492,7 +4522,7 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="2971">Will be incremented.</doc> + line="3015">Will be incremented.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="out_sum" @@ -4501,19 +4531,19 @@ case.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="2972">Return value.</doc> + line="3016">Return value.</doc> <type name="gint" c:type="gint*"/> </parameter> <parameter name="num1" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2973">Number.</doc> + line="3017">Number.</doc> <type name="gint" c:type="gint"/> </parameter> <parameter name="num2" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2974">Number.</doc> + line="3018">Number.</doc> <type name="gint" c:type="gint"/> </parameter> </parameters> @@ -4523,33 +4553,33 @@ case.</doc> throws="1"> <doc xml:space="preserve" filename="regress.c" - line="3001">Check that the return value is skipped. Succeed if a is nonzero, otherwise + line="3045">Check that the return value is skipped. Succeed if a is nonzero, otherwise raise an error.</doc> - <source-position filename="regress.h" line="898"/> + <source-position filename="regress.h" line="904"/> <return-value transfer-ownership="none" skip="1"> <doc xml:space="preserve" filename="regress.c" - line="3010">%TRUE if the call succeeds, %FALSE if @error is set.</doc> + line="3054">%TRUE if the call succeeds, %FALSE if @error is set.</doc> <type name="gboolean" c:type="gboolean"/> </return-value> <parameters> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3003">a #RegressTestObj</doc> + line="3047">a #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="a" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3004">Parameter.</doc> + line="3048">Parameter.</doc> <type name="gint" c:type="gint"/> </parameter> </parameters> </method> <method name="torture_signature_0" c:identifier="regress_test_obj_torture_signature_0"> - <source-position filename="regress.h" line="866"/> + <source-position filename="regress.h" line="872"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4557,7 +4587,7 @@ raise an error.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2910">A #RegressTestObj</doc> + line="2954">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="x" transfer-ownership="none"> @@ -4594,8 +4624,8 @@ raise an error.</doc> throws="1"> <doc xml:space="preserve" filename="regress.c" - line="2933">This function throws an error if m is odd.</doc> - <source-position filename="regress.h" line="875"/> + line="2977">This function throws an error if m is odd.</doc> + <source-position filename="regress.h" line="881"/> <return-value transfer-ownership="none"> <type name="gboolean" c:type="gboolean"/> </return-value> @@ -4603,7 +4633,7 @@ raise an error.</doc> <instance-parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2935">A #RegressTestObj</doc> + line="2979">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </instance-parameter> <parameter name="x" transfer-ownership="none"> @@ -4779,7 +4809,7 @@ raise an error.</doc> <glib:signal name="sig-with-array-len-prop" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2360">This test signal similar to GSettings::change-event. + line="2361">This test signal similar to GSettings::change-event. You can use this with regress_test_obj_emit_sig_with_array_len_prop(), or raise from the introspection client language.</doc> <return-value transfer-ownership="none"> @@ -4792,7 +4822,7 @@ raise from the introspection client language.</doc> allow-none="1"> <doc xml:space="preserve" filename="regress.c" - line="2363">numbers, or %NULL</doc> + line="2364">numbers, or %NULL</doc> <array length="1" zero-terminated="0" c:type="gpointer"> <type name="guint"/> </array> @@ -4800,7 +4830,7 @@ raise from the introspection client language.</doc> <parameter name="len" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2364">length of @arr, or 0</doc> + line="2365">length of @arr, or 0</doc> <type name="gint" c:type="gint"/> </parameter> </parameters> @@ -4808,7 +4838,7 @@ raise from the introspection client language.</doc> <glib:signal name="sig-with-array-prop" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2340">This test signal is like TelepathyGlib's + line="2341">This test signal is like TelepathyGlib's TpChannel:: group-members-changed-detailed:</doc> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> @@ -4817,7 +4847,7 @@ raise from the introspection client language.</doc> <parameter name="arr" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2343">numbers</doc> + line="2344">numbers</doc> <array name="GLib.Array"> <type name="guint"/> </array> @@ -4832,15 +4862,41 @@ raise from the introspection client language.</doc> <parameter name="cr" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2446">A cairo context.</doc> + line="2447">A cairo context.</doc> <type name="cairo.Context"/> </parameter> </parameters> </glib:signal> + <glib:signal name="sig-with-gerror" when="last"> + <doc xml:space="preserve" + filename="regress.c" + line="2575">This signal is modeled after #GstDiscoverer::discovered, and is added to +exercise the path of a #GError being marshalled as a boxed type instead of +an exception in the introspected language. + +Use via regress_test_obj_emit_sig_with_error() and +regress_test_obj_emit_sig_with_null_error(), or emit via the introspected +language.</doc> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + <parameters> + <parameter name="error" + transfer-ownership="none" + nullable="1" + allow-none="1"> + <doc xml:space="preserve" + filename="regress.c" + line="2578">A #GError if something went wrong + internally in @self. You must not free this #GError.</doc> + <type name="GLib.Error"/> + </parameter> + </parameters> + </glib:signal> <glib:signal name="sig-with-hash-prop" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2383">This test signal is like TelepathyGlib's + line="2384">This test signal is like TelepathyGlib's TpAccount::status-changed</doc> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> @@ -4857,7 +4913,7 @@ raise from the introspection client language.</doc> <glib:signal name="sig-with-inout-int" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2553">This signal is modeled after GtkEditable::insert-text.</doc> + line="2554">This signal is modeled after GtkEditable::insert-text.</doc> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4868,7 +4924,7 @@ raise from the introspection client language.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="2556">The position, in characters, at which to + line="2557">The position, in characters, at which to insert the new text. This is an in-out paramter. After the signal emission is finished, it should point after the newly inserted text.</doc> <type name="gint" c:type="gpointer"/> @@ -4878,7 +4934,7 @@ raise from the introspection client language.</doc> <glib:signal name="sig-with-int64-prop" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2494">You can use this with regress_test_obj_emit_sig_with_int64, or raise from + line="2495">You can use this with regress_test_obj_emit_sig_with_int64, or raise from the introspection client langage.</doc> <return-value transfer-ownership="none"> <type name="gint64" c:type="gint64"/> @@ -4887,7 +4943,7 @@ the introspection client langage.</doc> <parameter name="i" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2497">an integer</doc> + line="2498">an integer</doc> <type name="gint64" c:type="gint64"/> </parameter> </parameters> @@ -4902,7 +4958,7 @@ the introspection client langage.</doc> <parameter name="i" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2537">an integer</doc> + line="2538">an integer</doc> <type name="gint" c:type="gint"/> </parameter> </parameters> @@ -4910,7 +4966,7 @@ the introspection client langage.</doc> <glib:signal name="sig-with-obj" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2422">Test transfer none GObject as a param (tests refcounting). + line="2423">Test transfer none GObject as a param (tests refcounting). Use with regress_test_obj_emit_sig_with_obj</doc> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> @@ -4919,7 +4975,7 @@ Use with regress_test_obj_emit_sig_with_obj</doc> <parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2425">A newly created RegressTestObj</doc> + line="2426">A newly created RegressTestObj</doc> <type name="GObject.Object"/> </parameter> </parameters> @@ -4927,7 +4983,7 @@ Use with regress_test_obj_emit_sig_with_obj</doc> <glib:signal name="sig-with-strv" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2403">Test GStrv as a param.</doc> + line="2404">Test GStrv as a param.</doc> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -4935,7 +4991,7 @@ Use with regress_test_obj_emit_sig_with_obj</doc> <parameter name="strs" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2406">strings</doc> + line="2407">strings</doc> <array> <type name="utf8"/> </array> @@ -4945,7 +5001,7 @@ Use with regress_test_obj_emit_sig_with_obj</doc> <glib:signal name="sig-with-uint64-prop" when="last"> <doc xml:space="preserve" filename="regress.c" - line="2514">You can use this with regress_test_obj_emit_sig_with_uint64, or raise from + line="2515">You can use this with regress_test_obj_emit_sig_with_uint64, or raise from the introspection client langage.</doc> <return-value transfer-ownership="none"> <type name="guint64" c:type="guint64"/> @@ -4954,7 +5010,7 @@ the introspection client langage.</doc> <parameter name="i" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="2517">an integer</doc> + line="2518">an integer</doc> <type name="guint64" c:type="guint64"/> </parameter> </parameters> @@ -4995,13 +5051,13 @@ the introspection client langage.</doc> <parameter name="obj" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3135">A #RegressTestObj</doc> + line="3179">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </parameter> <parameter name="somestr" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3136">Meaningless string</doc> + line="3180">Meaningless string</doc> <type name="utf8" c:type="const char*"/> </parameter> </parameters> @@ -5084,7 +5140,7 @@ the introspection client langage.</doc> </function> </enumeration> <bitfield name="TestPrivateEnum" c:type="RegressTestPrivateEnum"> - <source-position filename="regress.h" line="1402"/> + <source-position filename="regress.h" line="1408"/> <member name="public_enum_before" value="1" c:identifier="REGRESS_TEST_PUBLIC_ENUM_BEFORE"> @@ -5095,7 +5151,7 @@ the introspection client langage.</doc> </member> </bitfield> <record name="TestPrivateStruct" c:type="RegressTestPrivateStruct"> - <source-position filename="regress.h" line="1394"/> + <source-position filename="regress.h" line="1400"/> <field name="this_is_public_before" writable="1"> <type name="gint" c:type="gint"/> </field> @@ -5107,7 +5163,7 @@ the introspection client langage.</doc> </field> </record> <record name="TestReferenceCounters" c:type="RegressTestReferenceCounters"> - <source-position filename="regress.h" line="1504"/> + <source-position filename="regress.h" line="1510"/> <field name="refcount" writable="1"> <type name="gint" c:type="grefcount"/> </field> @@ -5207,7 +5263,7 @@ the introspection client langage.</doc> </method> </record> <callback name="TestSimpleCallback" c:type="RegressTestSimpleCallback"> - <source-position filename="regress.h" line="1073"/> + <source-position filename="regress.h" line="1079"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -5414,7 +5470,7 @@ the introspection client langage.</doc> </field> </record> <record name="TestStructFixedArray" c:type="RegressTestStructFixedArray"> - <source-position filename="regress.h" line="1407"/> + <source-position filename="regress.h" line="1413"/> <field name="just_int" writable="1"> <type name="gint" c:type="gint"/> </field> @@ -5424,7 +5480,7 @@ the introspection client langage.</doc> </array> </field> <method name="frob" c:identifier="regress_test_struct_fixed_array_frob"> - <source-position filename="regress.h" line="1411"/> + <source-position filename="regress.h" line="1417"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -5443,17 +5499,17 @@ the introspection client langage.</doc> glib:type-name="RegressTestSubObj" glib:get-type="regress_test_sub_obj_get_type" glib:type-struct="TestSubObjClass"> - <source-position filename="regress.h" line="981"/> + <source-position filename="regress.h" line="987"/> <implements name="TestInterface"/> <constructor name="new" c:identifier="regress_test_sub_obj_new"> - <source-position filename="regress.h" line="988"/> + <source-position filename="regress.h" line="994"/> <return-value transfer-ownership="full"> <type name="TestObj" c:type="RegressTestObj*"/> </return-value> </constructor> <method name="instance_method" c:identifier="regress_test_sub_obj_instance_method"> - <source-position filename="regress.h" line="994"/> + <source-position filename="regress.h" line="1000"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -5464,7 +5520,7 @@ the introspection client langage.</doc> </parameters> </method> <method name="unset_bare" c:identifier="regress_test_sub_obj_unset_bare"> - <source-position filename="regress.h" line="991"/> + <source-position filename="regress.h" line="997"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -5493,7 +5549,7 @@ the introspection client langage.</doc> <record name="TestSubObjClass" c:type="RegressTestSubObjClass" glib:is-gtype-struct-for="TestSubObj"> - <source-position filename="regress.h" line="981"/> + <source-position filename="regress.h" line="987"/> <field name="parent_class"> <type name="TestObjClass" c:type="RegressTestObjClass"/> </field> @@ -5505,16 +5561,16 @@ the introspection client langage.</doc> glib:type-name="RegressTestWi8021x" glib:get-type="regress_test_wi_802_1x_get_type" glib:type-struct="TestWi8021xClass"> - <source-position filename="regress.h" line="1227"/> + <source-position filename="regress.h" line="1233"/> <constructor name="new" c:identifier="regress_test_wi_802_1x_new"> - <source-position filename="regress.h" line="1234"/> + <source-position filename="regress.h" line="1240"/> <return-value transfer-ownership="full"> <type name="TestWi8021x" c:type="RegressTestWi8021x*"/> </return-value> </constructor> <function name="static_method" c:identifier="regress_test_wi_802_1x_static_method"> - <source-position filename="regress.h" line="1243"/> + <source-position filename="regress.h" line="1249"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -5526,7 +5582,7 @@ the introspection client langage.</doc> </function> <method name="get_testbool" c:identifier="regress_test_wi_802_1x_get_testbool"> - <source-position filename="regress.h" line="1237"/> + <source-position filename="regress.h" line="1243"/> <return-value transfer-ownership="none"> <type name="gboolean" c:type="gboolean"/> </return-value> @@ -5538,7 +5594,7 @@ the introspection client langage.</doc> </method> <method name="set_testbool" c:identifier="regress_test_wi_802_1x_set_testbool"> - <source-position filename="regress.h" line="1240"/> + <source-position filename="regress.h" line="1246"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -5564,7 +5620,7 @@ the introspection client langage.</doc> <record name="TestWi8021xClass" c:type="RegressTestWi8021xClass" glib:is-gtype-struct-for="TestWi8021x"> - <source-position filename="regress.h" line="1227"/> + <source-position filename="regress.h" line="1233"/> <field name="parent_class"> <type name="GObject.ObjectClass" c:type="GObjectClass"/> </field> @@ -5572,12 +5628,12 @@ the introspection client langage.</doc> <constant name="UTF8_CONSTANT" value="const ♥ utf8" c:type="REGRESS_UTF8_CONSTANT"> - <source-position filename="regress.h" line="1422"/> + <source-position filename="regress.h" line="1428"/> <type name="utf8" c:type="gchar*"/> </constant> <function name="aliased_caller_alloc" c:identifier="regress_aliased_caller_alloc"> - <source-position filename="regress.h" line="1384"/> + <source-position filename="regress.h" line="1390"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6234,7 +6290,7 @@ exposed to language bindings.</doc> </parameters> </function> <function name="func_obj_null_in" c:identifier="regress_func_obj_null_in"> - <source-position filename="regress.h" line="944"/> + <source-position filename="regress.h" line="950"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6245,14 +6301,14 @@ exposed to language bindings.</doc> allow-none="1"> <doc xml:space="preserve" filename="regress.c" - line="3150">A #RegressTestObj</doc> + line="3194">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </parameter> </parameters> </function> <function name="func_obj_nullable_in" c:identifier="regress_func_obj_nullable_in"> - <source-position filename="regress.h" line="949"/> + <source-position filename="regress.h" line="955"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6263,17 +6319,17 @@ exposed to language bindings.</doc> allow-none="1"> <doc xml:space="preserve" filename="regress.c" - line="3170">A #RegressTestObj</doc> + line="3214">A #RegressTestObj</doc> <type name="TestObj" c:type="RegressTestObj*"/> </parameter> </parameters> </function> <function name="get_variant" c:identifier="regress_get_variant"> - <source-position filename="regress.h" line="1497"/> + <source-position filename="regress.h" line="1503"/> <return-value transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4499">A new variant</doc> + line="4543">A new variant</doc> <type name="GLib.Variant" c:type="GVariant*"/> </return-value> </function> @@ -6299,9 +6355,9 @@ exposed to language bindings.</doc> c:identifier="regress_has_parameter_named_attrs"> <doc xml:space="preserve" filename="regress.c" - line="4459">This test case mirrors GnomeKeyringPasswordSchema from + line="4503">This test case mirrors GnomeKeyringPasswordSchema from libgnome-keyring.</doc> - <source-position filename="regress.h" line="1437"/> + <source-position filename="regress.h" line="1443"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6309,13 +6365,13 @@ libgnome-keyring.</doc> <parameter name="foo" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4461">some int</doc> + line="4505">some int</doc> <type name="gint" c:type="int"/> </parameter> <parameter name="attributes" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4462">list of attributes</doc> + line="4506">list of attributes</doc> <array zero-terminated="0" c:type="gpointer" fixed-size="32"> <type name="guint32" c:type="gpointer"/> </array> @@ -6324,7 +6380,7 @@ libgnome-keyring.</doc> </function> <function name="introspectable_via_alias" c:identifier="regress_introspectable_via_alias"> - <source-position filename="regress.h" line="1362"/> + <source-position filename="regress.h" line="1368"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6337,7 +6393,7 @@ libgnome-keyring.</doc> <function name="not_introspectable_via_alias" c:identifier="regress_not_introspectable_via_alias" introspectable="0"> - <source-position filename="regress.h" line="1373"/> + <source-position filename="regress.h" line="1379"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6350,7 +6406,7 @@ libgnome-keyring.</doc> <function name="random_function_with_skipped_structure" c:identifier="regress_random_function_with_skipped_structure" introspectable="0"> - <source-position filename="regress.h" line="1333"/> + <source-position filename="regress.h" line="1339"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6387,7 +6443,7 @@ libgnome-keyring.</doc> </function> <function name="test_array_callback" c:identifier="regress_test_array_callback"> - <source-position filename="regress.h" line="1128"/> + <source-position filename="regress.h" line="1134"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -6399,7 +6455,7 @@ libgnome-keyring.</doc> </function> <function name="test_array_fixed_out_objects" c:identifier="regress_test_array_fixed_out_objects"> - <source-position filename="regress.h" line="862"/> + <source-position filename="regress.h" line="868"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6410,7 +6466,7 @@ libgnome-keyring.</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="3212">An array of #RegressTestObj</doc> + line="3256">An array of #RegressTestObj</doc> <array zero-terminated="0" c:type="RegressTestObj***" fixed-size="2"> <type name="TestObj" c:type="RegressTestObj**"/> </array> @@ -6574,7 +6630,7 @@ libgnome-keyring.</doc> </function> <function name="test_array_inout_callback" c:identifier="regress_test_array_inout_callback"> - <source-position filename="regress.h" line="1131"/> + <source-position filename="regress.h" line="1137"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -6764,12 +6820,12 @@ libgnome-keyring.</doc> c:identifier="regress_test_array_struct_in_full"> <doc xml:space="preserve" filename="regress.c" - line="4591">Test flat array input with transfer full. + line="4635">Test flat array input with transfer full. Similar to: - gsf_property_settings_free() with structs but they contain pointers - g_byte_array_new_take() with guint8s</doc> - <source-position filename="regress.h" line="1519"/> + <source-position filename="regress.h" line="1525"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6777,7 +6833,7 @@ Similar to: <parameter name="arr" transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="4593">An array</doc> + line="4637">An array</doc> <array length="1" zero-terminated="0" c:type="RegressTestStructA*"> <type name="TestStructA" c:type="RegressTestStructA"/> </array> @@ -6785,7 +6841,7 @@ Similar to: <parameter name="len" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4594">Length of @arr</doc> + line="4638">Length of @arr</doc> <type name="gsize" c:type="gsize"/> </parameter> </parameters> @@ -6794,10 +6850,10 @@ Similar to: c:identifier="regress_test_array_struct_in_none"> <doc xml:space="preserve" filename="regress.c" - line="4611">Test flat array input with transfer none. + line="4655">Test flat array input with transfer none. Similar to g_main_context_check() or gtk_target_list_new().</doc> - <source-position filename="regress.h" line="1522"/> + <source-position filename="regress.h" line="1528"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6805,7 +6861,7 @@ Similar to g_main_context_check() or gtk_target_list_new().</doc> <parameter name="arr" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4613">An array.</doc> + line="4657">An array.</doc> <array length="1" zero-terminated="0" c:type="RegressTestStructA*"> <type name="TestStructA" c:type="RegressTestStructA"/> </array> @@ -6813,7 +6869,7 @@ Similar to g_main_context_check() or gtk_target_list_new().</doc> <parameter name="len" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4614">Length of @arr</doc> + line="4658">Length of @arr</doc> <type name="gsize" c:type="gsize"/> </parameter> </parameters> @@ -6848,10 +6904,10 @@ Similar to g_main_context_check() or gtk_target_list_new().</doc> c:identifier="regress_test_array_struct_out_caller_alloc"> <doc xml:space="preserve" filename="regress.c" - line="4570">Test flat caller-allocated array output. + line="4614">Test flat caller-allocated array output. Similar to g_main_context_query().</doc> - <source-position filename="regress.h" line="1516"/> + <source-position filename="regress.h" line="1522"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6862,7 +6918,7 @@ Similar to g_main_context_query().</doc> transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4572">An array</doc> + line="4616">An array</doc> <array length="1" zero-terminated="0" c:type="RegressTestStructA*"> <type name="TestStructA" c:type="RegressTestStructA"/> </array> @@ -6873,7 +6929,7 @@ Similar to g_main_context_query().</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="4573">Length of @arr</doc> + line="4617">Length of @arr</doc> <type name="gsize" c:type="gsize"/> </parameter> </parameters> @@ -6882,10 +6938,10 @@ Similar to g_main_context_query().</doc> c:identifier="regress_test_array_struct_out_container"> <doc xml:space="preserve" filename="regress.c" - line="4532">Test flat array output with transfer container. + line="4576">Test flat array output with transfer container. Similar to pango_layout_get_log_attrs().</doc> - <source-position filename="regress.h" line="1510"/> + <source-position filename="regress.h" line="1516"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6896,7 +6952,7 @@ Similar to pango_layout_get_log_attrs().</doc> transfer-ownership="container"> <doc xml:space="preserve" filename="regress.c" - line="4534">An array</doc> + line="4578">An array</doc> <array length="1" zero-terminated="0" c:type="RegressTestStructA**"> <type name="TestStructA" c:type="RegressTestStructA*"/> </array> @@ -6907,7 +6963,7 @@ Similar to pango_layout_get_log_attrs().</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="4535">Length of @arr</doc> + line="4579">Length of @arr</doc> <type name="gsize" c:type="gsize*"/> </parameter> </parameters> @@ -6916,8 +6972,8 @@ Similar to pango_layout_get_log_attrs().</doc> c:identifier="regress_test_array_struct_out_full_fixed"> <doc xml:space="preserve" filename="regress.c" - line="4554">Test flat fixed-size array output with transfer full.</doc> - <source-position filename="regress.h" line="1513"/> + line="4598">Test flat fixed-size array output with transfer full.</doc> + <source-position filename="regress.h" line="1519"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6928,7 +6984,7 @@ Similar to pango_layout_get_log_attrs().</doc> transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="4556">An array</doc> + line="4600">An array</doc> <array zero-terminated="0" c:type="RegressTestStructA**" fixed-size="4"> @@ -6941,13 +6997,13 @@ Similar to pango_layout_get_log_attrs().</doc> c:identifier="regress_test_array_struct_out_none"> <doc xml:space="preserve" filename="regress.c" - line="4507">Test flat array output with transfer none. + line="4551">Test flat array output with transfer none. Similar to: - mm_modem_peek_ports() with structs - gdk_query_visual_types() with enums - gdk_event_get_axes() with doubles</doc> - <source-position filename="regress.h" line="1507"/> + <source-position filename="regress.h" line="1513"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -6958,7 +7014,7 @@ Similar to: transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4509">An array</doc> + line="4553">An array</doc> <array length="1" zero-terminated="0" c:type="RegressTestStructA**"> <type name="TestStructA" c:type="RegressTestStructA*"/> </array> @@ -6969,14 +7025,14 @@ Similar to: transfer-ownership="full"> <doc xml:space="preserve" filename="regress.c" - line="4510">Length of @arr</doc> + line="4554">Length of @arr</doc> <type name="gsize" c:type="gsize*"/> </parameter> </parameters> </function> <function name="test_async_ready_callback" c:identifier="regress_test_async_ready_callback"> - <source-position filename="regress.h" line="1161"/> + <source-position filename="regress.h" line="1167"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -7105,7 +7161,7 @@ Similar to: </return-value> </function> <function name="test_callback" c:identifier="regress_test_callback"> - <source-position filename="regress.h" line="1122"/> + <source-position filename="regress.h" line="1128"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -7121,7 +7177,7 @@ Similar to: </function> <function name="test_callback_async" c:identifier="regress_test_callback_async"> - <source-position filename="regress.h" line="1154"/> + <source-position filename="regress.h" line="1160"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -7145,9 +7201,9 @@ Similar to: c:identifier="regress_test_callback_destroy_notify"> <doc xml:space="preserve" filename="regress.c" - line="3813">Notified - callback persists until a DestroyNotify delegate + line="3857">Notified - callback persists until a DestroyNotify delegate is invoked.</doc> - <source-position filename="regress.h" line="1141"/> + <source-position filename="regress.h" line="1147"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -7175,9 +7231,9 @@ is invoked.</doc> c:identifier="regress_test_callback_destroy_notify_no_user_data"> <doc xml:space="preserve" filename="regress.c" - line="3840">Adds a scope notified callback with no user data. This can invoke an error + line="3884">Adds a scope notified callback with no user data. This can invoke an error condition in bindings which needs to be tested.</doc> - <source-position filename="regress.h" line="1146"/> + <source-position filename="regress.h" line="1152"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -7196,7 +7252,7 @@ condition in bindings which needs to be tested.</doc> </function> <function name="test_callback_return_full" c:identifier="regress_test_callback_return_full"> - <source-position filename="regress.h" line="1138"/> + <source-position filename="regress.h" line="1144"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -7209,7 +7265,7 @@ condition in bindings which needs to be tested.</doc> </function> <function name="test_callback_thaw_async" c:identifier="regress_test_callback_thaw_async"> - <source-position filename="regress.h" line="1157"/> + <source-position filename="regress.h" line="1163"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -7218,14 +7274,14 @@ condition in bindings which needs to be tested.</doc> c:identifier="regress_test_callback_thaw_notifications"> <doc xml:space="preserve" filename="regress.c" - line="3854">Invokes all callbacks installed by #test_callback_destroy_notify(), + line="3898">Invokes all callbacks installed by #test_callback_destroy_notify(), adding up their return values, and removes them, invoking the corresponding destroy notfications.</doc> - <source-position filename="regress.h" line="1150"/> + <source-position filename="regress.h" line="1156"/> <return-value transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3861">Sum of the return values of the invoked callbacks.</doc> + line="3905">Sum of the return values of the invoked callbacks.</doc> <type name="gint" c:type="int"/> </return-value> </function> @@ -7233,9 +7289,9 @@ corresponding destroy notfications.</doc> c:identifier="regress_test_callback_user_data"> <doc xml:space="preserve" filename="regress.c" - line="3782">Call - callback parameter persists for the duration of the method + line="3826">Call - callback parameter persists for the duration of the method call and can be released on return.</doc> - <source-position filename="regress.h" line="1134"/> + <source-position filename="regress.h" line="1140"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -7307,7 +7363,7 @@ call and can be released on return.</doc> </function> <function name="test_create_fundamental_hidden_class_instance" c:identifier="regress_test_create_fundamental_hidden_class_instance"> - <source-position filename="regress.h" line="1070"/> + <source-position filename="regress.h" line="1076"/> <return-value transfer-ownership="full"> <type name="TestFundamentalObject" c:type="RegressTestFundamentalObject*"/> @@ -7315,7 +7371,7 @@ call and can be released on return.</doc> </function> <function name="test_date_in_gvalue" c:identifier="regress_test_date_in_gvalue"> - <source-position filename="regress.h" line="1300"/> + <source-position filename="regress.h" line="1306"/> <return-value transfer-ownership="full"> <type name="GObject.Value" c:type="GValue*"/> </return-value> @@ -7400,7 +7456,7 @@ call and can be released on return.</doc> </function> <function name="test_gerror_callback" c:identifier="regress_test_gerror_callback"> - <source-position filename="regress.h" line="1179"/> + <source-position filename="regress.h" line="1185"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -7863,7 +7919,7 @@ element-type annotation.</doc> </function> <function name="test_hash_table_callback" c:identifier="regress_test_hash_table_callback"> - <source-position filename="regress.h" line="1176"/> + <source-position filename="regress.h" line="1182"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -7871,7 +7927,7 @@ element-type annotation.</doc> <parameter name="data" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="3985">GHashTable that gets passed to callback</doc> + line="4029">GHashTable that gets passed to callback</doc> <type name="GLib.HashTable" c:type="GHashTable*"> <type name="utf8"/> <type name="gint"/> @@ -7981,7 +8037,7 @@ element-type annotation.</doc> </function> <function name="test_multi_callback" c:identifier="regress_test_multi_callback"> - <source-position filename="regress.h" line="1125"/> + <source-position filename="regress.h" line="1131"/> <return-value transfer-ownership="none"> <type name="gint" c:type="int"/> </return-value> @@ -8023,14 +8079,14 @@ element-type annotation.</doc> c:identifier="regress_test_multiline_doc_comments"> <doc xml:space="preserve" filename="regress.c" - line="4367">This is a function. + line="4411">This is a function. It has multiple lines in the documentation. The sky is blue. You will give me your credit card number.</doc> - <source-position filename="regress.h" line="1314"/> + <source-position filename="regress.h" line="1320"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8039,7 +8095,7 @@ You will give me your credit card number.</doc> c:identifier="regress_test_nested_parameter"> <doc xml:space="preserve" filename="regress.c" - line="4383"><informaltable> + line="4427"><informaltable> <tgroup cols="3"> <thead> <row> @@ -8067,7 +8123,7 @@ rgb(20%, 30%, 0%)</literallayout></entry> </informaltable> What we're testing here is that the scanner ignores the @a nested inside XML.</doc> - <source-position filename="regress.h" line="1317"/> + <source-position filename="regress.h" line="1323"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8075,14 +8131,14 @@ What we're testing here is that the scanner ignores the @a nested inside XML.</d <parameter name="a" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4385">An integer</doc> + line="4429">An integer</doc> <type name="gint" c:type="int"/> </parameter> </parameters> </function> <function name="test_noptr_callback" c:identifier="regress_test_noptr_callback"> - <source-position filename="regress.h" line="1119"/> + <source-position filename="regress.h" line="1125"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8098,7 +8154,7 @@ What we're testing here is that the scanner ignores the @a nested inside XML.</d </function> <function name="test_null_gerror_callback" c:identifier="regress_test_null_gerror_callback"> - <source-position filename="regress.h" line="1182"/> + <source-position filename="regress.h" line="1188"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8110,14 +8166,14 @@ What we're testing here is that the scanner ignores the @a nested inside XML.</d </function> <function name="test_null_strv_in_gvalue" c:identifier="regress_test_null_strv_in_gvalue"> - <source-position filename="regress.h" line="1306"/> + <source-position filename="regress.h" line="1312"/> <return-value transfer-ownership="full"> <type name="GObject.Value" c:type="GValue*"/> </return-value> </function> <function name="test_owned_gerror_callback" c:identifier="regress_test_owned_gerror_callback"> - <source-position filename="regress.h" line="1185"/> + <source-position filename="regress.h" line="1191"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8163,7 +8219,7 @@ What we're testing here is that the scanner ignores the @a nested inside XML.</d </function> <function name="test_simple_callback" c:identifier="regress_test_simple_callback"> - <source-position filename="regress.h" line="1116"/> + <source-position filename="regress.h" line="1122"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8193,9 +8249,9 @@ What we're testing here is that the scanner ignores the @a nested inside XML.</d introspectable="0"> <doc xml:space="preserve" filename="regress.c" - line="4035">Should not emit a warning: + line="4079">Should not emit a warning: https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> - <source-position filename="regress.h" line="1189"/> + <source-position filename="regress.h" line="1195"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8203,7 +8259,7 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> <parameter name="callback" transfer-ownership="none"> <doc xml:space="preserve" filename="regress.c" - line="4037">No annotation here</doc> + line="4081">No annotation here</doc> <type name="TestCallback" c:type="RegressTestCallback"/> </parameter> </parameters> @@ -8259,7 +8315,7 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> </function> <function name="test_strv_in_gvalue" c:identifier="regress_test_strv_in_gvalue"> - <source-position filename="regress.h" line="1303"/> + <source-position filename="regress.h" line="1309"/> <return-value transfer-ownership="full"> <type name="GObject.Value" c:type="GValue*"/> </return-value> @@ -8318,7 +8374,7 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> </function> <function name="test_torture_signature_0" c:identifier="regress_test_torture_signature_0"> - <source-position filename="regress.h" line="1271"/> + <source-position filename="regress.h" line="1277"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8357,8 +8413,8 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> throws="1"> <doc xml:space="preserve" filename="regress.c" - line="4255">This function throws an error if m is odd.</doc> - <source-position filename="regress.h" line="1279"/> + line="4299">This function throws an error if m is odd.</doc> + <source-position filename="regress.h" line="1285"/> <return-value transfer-ownership="none"> <type name="gboolean" c:type="gboolean"/> </return-value> @@ -8394,7 +8450,7 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> </function> <function name="test_torture_signature_2" c:identifier="regress_test_torture_signature_2"> - <source-position filename="regress.h" line="1288"/> + <source-position filename="regress.h" line="1294"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> @@ -8695,7 +8751,7 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> <function name="test_value_get_fundamental_object" c:identifier="regress_test_value_get_fundamental_object" introspectable="0"> - <source-position filename="regress.h" line="1044"/> + <source-position filename="regress.h" line="1050"/> <return-value> <type name="TestFundamentalObject" c:type="RegressTestFundamentalObject*"/> @@ -8727,7 +8783,7 @@ https://bugzilla.gnome.org/show_bug.cgi?id=685399</doc> <function name="test_value_set_fundamental_object" c:identifier="regress_test_value_set_fundamental_object" introspectable="0"> - <source-position filename="regress.h" line="1041"/> + <source-position filename="regress.h" line="1047"/> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> diff --git a/tests/scanner/Regress-1.0-sections-expected.txt b/tests/scanner/Regress-1.0-sections-expected.txt index ba180b4d..0a0bf082 100644 --- a/tests/scanner/Regress-1.0-sections-expected.txt +++ b/tests/scanner/Regress-1.0-sections-expected.txt @@ -346,9 +346,11 @@ RegressTestObj RegressTestObjClass regress_test_obj_do_matrix regress_test_obj_emit_sig_with_array_len_prop +regress_test_obj_emit_sig_with_error regress_test_obj_emit_sig_with_foreign_struct regress_test_obj_emit_sig_with_inout_int regress_test_obj_emit_sig_with_int64 +regress_test_obj_emit_sig_with_null_error regress_test_obj_emit_sig_with_obj regress_test_obj_emit_sig_with_uint64 regress_forced_method diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c index eca7cdd4..bc04079c 100644 --- a/tests/scanner/regress.c +++ b/tests/scanner/regress.c @@ -2300,6 +2300,7 @@ enum { REGRESS_TEST_OBJ_SIGNAL_SIG_WITH_UINT64_PROP, REGRESS_TEST_OBJ_SIGNAL_SIG_WITH_INTARRAY_RET, REGRESS_TEST_OBJ_SIGNAL_SIG_WITH_INOUT_INT, + REGRESS_TEST_OBJ_SIGNAL_SIG_WITH_GERROR, N_REGRESS_TEST_OBJ_SIGNALS }; @@ -2571,6 +2572,26 @@ regress_test_obj_class_init (RegressTestObjClass *klass) 1, G_TYPE_POINTER); + /** + * RegressTestObj::sig-with-gerror: + * @self: The object that emitted the signal + * @error: (nullable) (type GLib.Error): A #GError if something went wrong + * internally in @self. You must not free this #GError. + * + * This signal is modeled after #GstDiscoverer::discovered, and is added to + * exercise the path of a #GError being marshalled as a boxed type instead of + * an exception in the introspected language. + * + * Use via regress_test_obj_emit_sig_with_error() and + * regress_test_obj_emit_sig_with_null_error(), or emit via the introspected + * language. + */ + regress_test_obj_signals[REGRESS_TEST_OBJ_SIGNAL_SIG_WITH_GERROR] = + g_signal_new ("sig-with-gerror", G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, 0, NULL, NULL, + g_cclosure_marshal_generic, G_TYPE_NONE, 1, + G_TYPE_ERROR | G_SIGNAL_TYPE_STATIC_SCOPE); + gobject_class->set_property = regress_test_obj_set_property; gobject_class->get_property = regress_test_obj_get_property; gobject_class->dispose = regress_test_obj_dispose; @@ -2872,6 +2893,29 @@ regress_test_obj_emit_sig_with_inout_int (RegressTestObj *obj) g_assert_cmpint (inout, ==, 43); } +/** + * regress_test_obj_emit_sig_with_error: + * @self: The object to emit the signal. + */ +void +regress_test_obj_emit_sig_with_error (RegressTestObj *self) +{ + GError *err = g_error_new_literal (G_IO_ERROR, G_IO_ERROR_FAILED, + "Something failed"); + g_signal_emit_by_name (self, "sig-with-gerror", err); + g_error_free (err); +} + +/** + * regress_test_obj_emit_sig_with_null_error: + * @self: The object to emit the signal. + */ +void +regress_test_obj_emit_sig_with_null_error (RegressTestObj *self) +{ + g_signal_emit_by_name (self, "sig-with-gerror", NULL); +} + int regress_test_obj_instance_method (RegressTestObj *obj G_GNUC_UNUSED) { diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h index 82fd6b55..cf5302e4 100644 --- a/tests/scanner/regress.h +++ b/tests/scanner/regress.h @@ -846,6 +846,12 @@ _GI_TEST_EXTERN void regress_test_obj_emit_sig_with_inout_int (RegressTestObj *obj); _GI_TEST_EXTERN +void regress_test_obj_emit_sig_with_error (RegressTestObj *self); + +_GI_TEST_EXTERN +void regress_test_obj_emit_sig_with_null_error (RegressTestObj *self); + +_GI_TEST_EXTERN int regress_test_obj_instance_method (RegressTestObj *obj); _GI_TEST_EXTERN |