diff options
author | Colin Walters <walters@verbum.org> | 2009-02-25 23:43:14 (GMT) |
---|---|---|
committer | Colin Walters <walters@verbum.org> | 2009-02-26 19:07:21 (GMT) |
commit | 4470a24e8cf3827efaddcfe240c3271cf1a0d6c0 (patch) | |
tree | 4bbcd76c1c325c403ec0408a81489ab97c5465f0 /tests/scanner/foo-1.0-expected.tgir | |
parent | 251de52b083d3e0e42f25cb164a46865c2c2b9a9 (diff) |
Bug 557383 - Virtual function support
In order to determine whether a method is virtual, by default we look
at the class table to find a callback field. This should be fairly reliable,
but we may also later need annotations to more finely control this
in the case of a name clash with a signal.
Diffstat (limited to 'tests/scanner/foo-1.0-expected.tgir')
-rw-r--r-- | tests/scanner/foo-1.0-expected.tgir | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/tests/scanner/foo-1.0-expected.tgir b/tests/scanner/foo-1.0-expected.tgir index f8e1ee5..e2a02b1 100644 --- a/tests/scanner/foo-1.0-expected.tgir +++ b/tests/scanner/foo-1.0-expected.tgir @@ -161,7 +161,18 @@ <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"/> + <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> <record name="InterfaceIface" glib:is-gtype-struct="1"> <field name="parent_iface"> <type name="GObject.TypeInterface"/> @@ -271,6 +282,16 @@ </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"> @@ -337,11 +358,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"/> - <method name="do_bar" c:identifier="foo_sub_interface_do_bar"> + <vfunc name="do_bar" offset="0"> <return-value transfer-ownership="none"> <type name="none"/> </return-value> - </method> + </vfunc> </interface> <record name="SubInterfaceIface" glib:is-gtype-struct="1"> <field name="parent_iface"> |