[gobject-introspection] tests: Move do_moo to warnlib
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gobject-introspection] tests: Move do_moo to warnlib
- Date: Thu, 7 Feb 2013 09:29:46 +0000 (UTC)
commit b714353e38cf72b6cb2754d413b3688a47624028
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Sun Feb 3 10:50:21 2013 -0500
tests: Move do_moo to warnlib
We want to warn on unnamed params in declarations to ensure that
all functions are bindable. Thus, we need to move a test containing
unnamed params to WarnLib so it can be tested.
https://bugzilla.gnome.org/show_bug.cgi?id=693098
tests/scanner/Regress-1.0-expected.gir | 50 -------------------------
tests/scanner/WarnLib-1.0-expected.gir | 64 ++++++++++++++++++++++++++++++++
tests/scanner/foo.c | 6 ---
tests/scanner/foo.h | 4 --
tests/scanner/warnlib.c | 13 ++++++
tests/scanner/warnlib.h | 23 +++++++++++
6 files changed, 100 insertions(+), 60 deletions(-)
---
diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir
index 98ad01b..04b1e39 100644
--- a/tests/scanner/Regress-1.0-expected.gir
+++ b/tests/scanner/Regress-1.0-expected.gir
@@ -1754,22 +1754,6 @@ exposed to language bindings.</doc>
</parameter>
</parameters>
</virtual-method>
- <virtual-method name="do_moo" invoker="do_moo">
- <return-value transfer-ownership="none">
- <type name="none" c:type="void"/>
- </return-value>
- <parameters>
- <instance-parameter name="self" transfer-ownership="none">
- <type name="FooSubInterface" c:type="RegressFooSubInterface*"/>
- </instance-parameter>
- <parameter transfer-ownership="none">
- <type name="gint" c:type="int"/>
- </parameter>
- <parameter transfer-ownership="none">
- <type name="gpointer" c:type="gpointer"/>
- </parameter>
- </parameters>
- </virtual-method>
<method name="do_bar" c:identifier="regress_foo_sub_interface_do_bar">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
@@ -1799,22 +1783,6 @@ exposed to language bindings.</doc>
</parameter>
</parameters>
</method>
- <method name="do_moo" c:identifier="regress_foo_sub_interface_do_moo">
- <return-value transfer-ownership="none">
- <type name="none" c:type="void"/>
- </return-value>
- <parameters>
- <instance-parameter name="self" transfer-ownership="none">
- <type name="FooSubInterface" c:type="RegressFooSubInterface*"/>
- </instance-parameter>
- <parameter transfer-ownership="none">
- <type name="gint" c:type="int"/>
- </parameter>
- <parameter transfer-ownership="none">
- <type name="gpointer" c:type="gpointer"/>
- </parameter>
- </parameters>
- </method>
<glib:signal name="destroy-event" when="last">
<return-value transfer-ownership="none">
<type name="none" c:type="void"/>
@@ -1851,24 +1819,6 @@ exposed to language bindings.</doc>
</parameters>
</callback>
</field>
- <field name="do_moo">
- <callback name="do_moo">
- <return-value transfer-ownership="none">
- <type name="none" c:type="void"/>
- </return-value>
- <parameters>
- <parameter name="self" transfer-ownership="none">
- <type name="FooSubInterface" c:type="RegressFooSubInterface*"/>
- </parameter>
- <parameter transfer-ownership="none">
- <type name="gint" c:type="int"/>
- </parameter>
- <parameter transfer-ownership="none">
- <type name="gpointer" c:type="gpointer"/>
- </parameter>
- </parameters>
- </callback>
- </field>
<field name="do_baz">
<callback name="do_baz">
<return-value transfer-ownership="none">
diff --git a/tests/scanner/WarnLib-1.0-expected.gir b/tests/scanner/WarnLib-1.0-expected.gir
index 9f3b348..3f8be71 100644
--- a/tests/scanner/WarnLib-1.0-expected.gir
+++ b/tests/scanner/WarnLib-1.0-expected.gir
@@ -15,6 +15,70 @@ and/or use gtk-doc annotations. -->
shared-library=""
c:identifier-prefixes="WarnLib"
c:symbol-prefixes="warnlib_">
+ <interface name="Whatever"
+ c:symbol-prefix="whatever"
+ c:type="WarnLibWhatever"
+ glib:type-name="WarnLibWhatever"
+ glib:get-type="warnlib_whatever_get_type"
+ glib:type-struct="WhateverIface">
+ <virtual-method name="do_moo" invoker="do_moo">
+ <return-value transfer-ownership="none">
+ <type name="none" c:type="void"/>
+ </return-value>
+ <parameters>
+ <instance-parameter name="self" transfer-ownership="none">
+ <type name="Whatever" c:type="WarnLibWhatever*"/>
+ </instance-parameter>
+ <parameter transfer-ownership="none">
+ <type name="gint" c:type="int"/>
+ </parameter>
+ <parameter transfer-ownership="none">
+ <type name="gpointer" c:type="gpointer"/>
+ </parameter>
+ </parameters>
+ </virtual-method>
+ <method name="do_moo" c:identifier="warnlib_whatever_do_moo">
+ <return-value transfer-ownership="none">
+ <type name="none" c:type="void"/>
+ </return-value>
+ <parameters>
+ <instance-parameter name="self" transfer-ownership="none">
+ <type name="Whatever" c:type="WarnLibWhatever*"/>
+ </instance-parameter>
+ <parameter transfer-ownership="none">
+ <type name="gint" c:type="int"/>
+ </parameter>
+ <parameter transfer-ownership="none">
+ <type name="gpointer" c:type="gpointer"/>
+ </parameter>
+ </parameters>
+ </method>
+ </interface>
+ <record name="WhateverIface"
+ c:type="WarnLibWhateverIface"
+ glib:is-gtype-struct-for="Whatever">
+ <field name="parent_iface">
+ <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
+ </field>
+ <field name="do_moo">
+ <callback name="do_moo">
+ <return-value transfer-ownership="none">
+ <type name="none" c:type="void"/>
+ </return-value>
+ <parameters>
+ <parameter name="self" transfer-ownership="none">
+ <type name="Whatever" c:type="WarnLibWhatever*"/>
+ </parameter>
+ <parameter transfer-ownership="none">
+ <type name="gint" c:type="int"/>
+ </parameter>
+ <parameter transfer-ownership="none">
+ <type name="gpointer" c:type="gpointer"/>
+ </parameter>
+ </parameters>
+ </callback>
+ </field>
+ </record>
<function name="throw_unpaired"
c:identifier="warnlib_throw_unpaired"
throws="1">
diff --git a/tests/scanner/foo.c b/tests/scanner/foo.c
index c883ada..4d5090b 100644
--- a/tests/scanner/foo.c
+++ b/tests/scanner/foo.c
@@ -124,12 +124,6 @@ regress_foo_sub_interface_do_bar (RegressFooSubInterface *self)
REGRESS_FOO_SUBINTERFACE_GET_INTERFACE(self)->do_bar (self);
}
-void
-regress_foo_sub_interface_do_moo (RegressFooSubInterface *self, int x, gpointer y)
-{
- REGRESS_FOO_SUBINTERFACE_GET_INTERFACE(self)->do_moo (self, x, y);
-}
-
/**
* regress_foo_sub_interface_do_baz:
* @self:
diff --git a/tests/scanner/foo.h b/tests/scanner/foo.h
index 20c92eb..e097560 100644
--- a/tests/scanner/foo.h
+++ b/tests/scanner/foo.h
@@ -76,16 +76,12 @@ struct _RegressFooSubInterfaceIface
void (*do_bar) (RegressFooSubInterface *self);
- /* explicitly test un-named parameters */
- void (*do_moo) (RegressFooSubInterface *self, int, gpointer);
-
void (*do_baz) (RegressFooSubInterface *self, GCallback callback, gpointer user_data);
};
GType regress_foo_sub_interface_get_type (void) G_GNUC_CONST;
void regress_foo_sub_interface_do_bar (RegressFooSubInterface *self);
-void regress_foo_sub_interface_do_moo (RegressFooSubInterface *self, int, gpointer);
void regress_foo_sub_interface_do_baz (RegressFooSubInterface *self,
GCallback callback,
gpointer user_data);
diff --git a/tests/scanner/warnlib.c b/tests/scanner/warnlib.c
index 4fc8515..940d2b6 100644
--- a/tests/scanner/warnlib.c
+++ b/tests/scanner/warnlib.c
@@ -18,3 +18,16 @@ warnlib_throw_unpaired (GError **error)
return FALSE;
}
+typedef WarnLibWhateverIface WarnLibWhateverInterface;
+G_DEFINE_INTERFACE (WarnLibWhatever, warnlib_whatever, G_TYPE_OBJECT)
+
+static void
+warnlib_whatever_default_init(WarnLibWhateverIface *iface)
+{
+}
+
+void
+warnlib_whatever_do_moo (WarnLibWhatever *self, int x, gpointer y)
+{
+ WARNLIB_WHATEVER_GET_IFACE(self)->do_moo (self, x, y);
+}
diff --git a/tests/scanner/warnlib.h b/tests/scanner/warnlib.h
index 8aca901..9e448c0 100644
--- a/tests/scanner/warnlib.h
+++ b/tests/scanner/warnlib.h
@@ -10,4 +10,27 @@ GQuark warnlib_unpaired_error_quark (void);
gboolean warnlib_throw_unpaired (GError **error);
+/* interface */
+#define WARNLIB_TYPE_WHATEVER (warnlib_whatever_get_type ())
+#define WARNLIB_WHATEVER(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), WARNLIB_TYPE_WHATEVER, WarnLibWhatever))
+#define WARNLIB_IS_WHATEVER(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), WARNLIB_TYPE_WHATEVER))
+#define WARNLIB_WHATEVER_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), WARNLIB_TYPE_WHATEVER, WarnLibWhateverIface))
+
+typedef struct _WarnLibWhateverIface WarnLibWhateverIface;
+typedef struct _WarnLibWhatever WarnLibWhatever;
+
+struct _WarnLibWhateverIface
+{
+ GTypeInterface parent_iface;
+
+ /* virtual table */
+
+ /* explicitly test un-named parameters */
+ void (*do_moo) (WarnLibWhatever *self, int, gpointer);
+};
+
+void warnlib_whatever_do_moo (WarnLibWhatever *self, int, gpointer);
+
+GType warnlib_whatever_get_type (void) G_GNUC_CONST;
+
#endif
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]