summaryrefslogtreecommitdiff
path: root/girepository/girepository-private.h
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu.vizoso@collabora.co.uk>2010-12-13 13:53:55 +0100
committerTomeu Vizoso <tomeu.vizoso@collabora.co.uk>2011-01-12 20:05:09 +0100
commit0c3a1d82f2543b74468d1806f87aa0cb258a925d (patch)
treed7919bfab9e8e03599468939852bff69ed50f97d /girepository/girepository-private.h
parent36e79f8d485bb670ac53be52ff3962f9e157dc42 (diff)
downloadgobject-introspection-0c3a1d82f2543b74468d1806f87aa0cb258a925d.tar.gz
Add g_vfunc_info_invoke and g_vfunc_info_get_address
for calling the native implementation of a virtual function. Refactors the code common with g_function_info_invoke in _g_callable_info_invoke. https://bugzilla.gnome.org/show_bug.cgi?id=637145
Diffstat (limited to 'girepository/girepository-private.h')
-rw-r--r--girepository/girepository-private.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/girepository/girepository-private.h b/girepository/girepository-private.h
index 897c52c4..52d65b2b 100644
--- a/girepository/girepository-private.h
+++ b/girepository/girepository-private.h
@@ -108,6 +108,17 @@ GIVFuncInfo * _g_base_info_find_vfunc (GIRealInfo *rinfo,
gint n_vfuncs,
const gchar *name);
+gboolean _g_callable_info_invoke (GICallableInfo *info,
+ gpointer function,
+ const GIArgument *in_args,
+ int n_in_args,
+ const GIArgument *out_args,
+ int n_out_args,
+ GIArgument *return_value,
+ gboolean is_method,
+ gboolean throws,
+ GError **error);
+
extern ffi_status ffi_prep_closure_loc (ffi_closure *,
ffi_cif *,
void (*fun)(ffi_cif *, void *, void **, void *),