diff options
author | Colin Walters <walters@verbum.org> | 2009-02-26 16:52:42 -0500 |
---|---|---|
committer | Colin Walters <walters@verbum.org> | 2009-02-26 16:52:42 -0500 |
commit | ca21c1ce6f2fa9f8be9307121ce27a46cc9c0ed0 (patch) | |
tree | be25649d977e3daa4d461a5359b7cef677c94975 /tests | |
parent | e49a883d0997127cd3a0ad7e522666f30190e792 (diff) | |
download | gobject-introspection-ca21c1ce6f2fa9f8be9307121ce27a46cc9c0ed0.tar.gz |
Revert "Bug 557383 - Virtual function support"
This reverts commit 4470a24e8cf3827efaddcfe240c3271cf1a0d6c0.
Needs more work as it turns out, we need to figure out the binding
story.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/scanner/foo-1.0-expected.gir | 35 | ||||
-rw-r--r-- | tests/scanner/foo-1.0-expected.tgir | 27 | ||||
-rw-r--r-- | tests/scanner/foo.c | 10 | ||||
-rw-r--r-- | tests/scanner/foo.h | 6 |
4 files changed, 25 insertions, 53 deletions
diff --git a/tests/scanner/foo-1.0-expected.gir b/tests/scanner/foo-1.0-expected.gir index 38bde586..0f6b1f1f 100644 --- a/tests/scanner/foo-1.0-expected.gir +++ b/tests/scanner/foo-1.0-expected.gir @@ -232,16 +232,16 @@ and/or use gtk-doc annotations. --> glib:type-name="FooInterface" glib:get-type="foo_interface_get_type" glib:type-struct="InterfaceIface"> - <vfunc name="do_foo" c:identifier="foo_interface_do_foo"> + <callback name="do_foo" c:type="do_foo"> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> <parameters> - <parameter name="x" transfer-ownership="none"> - <type name="int" c:type="int"/> + <parameter name="self" transfer-ownership="none"> + <type name="Interface" c:type="FooInterface*"/> </parameter> </parameters> - </vfunc> + </callback> </interface> <record name="InterfaceIface" c:type="FooInterfaceIface" @@ -257,9 +257,6 @@ and/or use gtk-doc annotations. --> <parameter name="self" transfer-ownership="none"> <type name="Interface" c:type="FooInterface*"/> </parameter> - <parameter name="x" transfer-ownership="none"> - <type name="int" c:type="int"/> - </parameter> </parameters> </callback> </record> @@ -362,16 +359,6 @@ and/or use gtk-doc annotations. --> </parameter> </parameters> </method> - <vfunc name="virtual_method" c:identifier="foo_object_virtual_method"> - <return-value transfer-ownership="none"> - <type name="none" c:type="void"/> - </return-value> - <parameters> - <parameter name="first_param" transfer-ownership="none"> - <type name="int" c:type="int"/> - </parameter> - </parameters> - </vfunc> <property name="string" writable="1" construct="1"> <type name="utf8" c:type="gchararray"/> </property> @@ -480,11 +467,21 @@ and/or use gtk-doc annotations. --> glib:get-type="foo_sub_interface_get_type" glib:type-struct="SubInterfaceIface"> <prerequisite name="Interface"/> - <vfunc name="do_bar" c:identifier="foo_sub_interface_do_bar"> + <method name="do_bar" c:identifier="foo_sub_interface_do_bar"> + <return-value transfer-ownership="none"> + <type name="none" c:type="void"/> + </return-value> + </method> + <callback name="do_bar" c:type="do_bar"> <return-value transfer-ownership="none"> <type name="none" c:type="void"/> </return-value> - </vfunc> + <parameters> + <parameter name="self" transfer-ownership="none"> + <type name="SubInterface" c:type="FooSubInterface*"/> + </parameter> + </parameters> + </callback> </interface> <record name="SubInterfaceIface" c:type="FooSubInterfaceIface" diff --git a/tests/scanner/foo-1.0-expected.tgir b/tests/scanner/foo-1.0-expected.tgir index e2a02b13..f8e1ee59 100644 --- a/tests/scanner/foo-1.0-expected.tgir +++ b/tests/scanner/foo-1.0-expected.tgir @@ -161,18 +161,7 @@ <member name="second" value="2"/> <member name="third" value="4"/> </bitfield> - <interface name="Interface" glib:type-name="FooInterface" glib:get-type="foo_interface_get_type" glib:type-struct="InterfaceIface"> - <vfunc name="do_foo" offset="0"> - <return-value transfer-ownership="none"> - <type name="none"/> - </return-value> - <parameters> - <parameter name="x" transfer-ownership="none"> - <type name="int"/> - </parameter> - </parameters> - </vfunc> - </interface> + <interface name="Interface" glib:type-name="FooInterface" glib:get-type="foo_interface_get_type" glib:type-struct="InterfaceIface"/> <record name="InterfaceIface" glib:is-gtype-struct="1"> <field name="parent_iface"> <type name="GObject.TypeInterface"/> @@ -282,16 +271,6 @@ </parameter> </parameters> </glib:signal> - <vfunc name="virtual_method" offset="0"> - <return-value transfer-ownership="none"> - <type name="none"/> - </return-value> - <parameters> - <parameter name="first_param" transfer-ownership="none"> - <type name="int"/> - </parameter> - </parameters> - </vfunc> </class> <record name="ObjectClass" glib:is-gtype-struct="1"> <field name="parent_class"> @@ -358,11 +337,11 @@ <record name="StructPrivate"/> <interface name="SubInterface" glib:type-name="FooSubInterface" glib:get-type="foo_sub_interface_get_type" glib:type-struct="SubInterfaceIface"> <prerequisite name="Interface"/> - <vfunc name="do_bar" offset="0"> + <method name="do_bar" c:identifier="foo_sub_interface_do_bar"> <return-value transfer-ownership="none"> <type name="none"/> </return-value> - </vfunc> + </method> </interface> <record name="SubInterfaceIface" glib:is-gtype-struct="1"> <field name="parent_iface"> diff --git a/tests/scanner/foo.c b/tests/scanner/foo.c index 98d2f4be..04882603 100644 --- a/tests/scanner/foo.c +++ b/tests/scanner/foo.c @@ -8,8 +8,8 @@ int foo_init_argv (int argc, char **argv); int foo_init_argv_address (int *argc, char ***argv); void foo_private_function (FooObject *foo); void foo_test_unsigned (unsigned int uint); -void foo_interface_do_foo (FooInterface *self, int x); -void foo_do_foo (FooInterface *self, int x); +void foo_interface_do_foo (FooInterface *self); +void foo_do_foo (FooInterface *self); int foo_enum_method (FooEnumType foo_enum); FooHidden * foo_hidden_copy (const FooHidden *boxed); void foo_hidden_free (FooHidden *boxed); @@ -47,9 +47,9 @@ foo_interface_get_type (void) return object_type; } -void foo_interface_do_foo (FooInterface *self, int x) +void foo_interface_do_foo (FooInterface *self) { - FOO_INTERFACE_GET_INTERFACE(self)->do_foo (self, x); + FOO_INTERFACE_GET_INTERFACE(self)->do_foo (self); } enum { @@ -191,7 +191,7 @@ foo_object_take_all (FooObject *object, int x, ...) } void -foo_do_foo (FooInterface *self, int x) +foo_do_foo (FooInterface *self) { diff --git a/tests/scanner/foo.h b/tests/scanner/foo.h index 2eeed6dc..da30df38 100644 --- a/tests/scanner/foo.h +++ b/tests/scanner/foo.h @@ -48,13 +48,11 @@ struct _FooInterfaceIface { GTypeInterface parent_iface; - void (*do_foo) (FooInterface *self, int x); + void (*do_foo) (FooInterface *self); }; GType foo_interface_get_type (void) G_GNUC_CONST; -void foo_interface_do_foo (FooInterface *iface, int x); - struct _FooSubInterfaceIface { GTypeInterface parent_iface; @@ -107,8 +105,6 @@ char * foo_object_dup_name (FooObject *object); void foo_object_handle_glyph (FooObject *object, UtilityGlyph glyph); -void foo_object_virtual_method (FooObject *object, int first_param); - int foo_object_static_meth (); struct _FooSubobject |