g_object_set_property (G_OBJECT (self), "int", &val);
}
+/**
+ * gi_marshalling_tests_object_vfunc_with_callback:
+ * @callback: (scope call) (closure callback_data):
+ * @callback_data: (allow-none):
+ *
+ * Virtual: vfunc_with_callback
+ */
+void
+gi_marshalling_tests_object_vfunc_with_callback (GIMarshallingTestsObject *object,
+ GIMarshallingTestsCallbackIntInt callback,
+ void *callback_data)
+{
+
+}
+
+static int
+_callback (int val, void *user_data)
+{
+ g_assert(user_data == 0xdeadbeef);
+ return val;
+}
+
+void
+gi_marshalling_tests_object_call_vfunc_with_callback (GIMarshallingTestsObject *object)
+{
+ GI_MARSHALLING_TESTS_OBJECT_GET_CLASS (object)->vfunc_with_callback (object,
+ _callback,
+ (void *) 0xdeadbeef);
+}
/**
* gi_marshalling_tests_object_none_return:
typedef struct _GIMarshallingTestsObjectClass GIMarshallingTestsObjectClass;
typedef struct _GIMarshallingTestsObject GIMarshallingTestsObject;
+typedef int (* GIMarshallingTestsCallbackIntInt) (int val, void *user_data);
+
struct _GIMarshallingTestsObjectClass
{
GObjectClass parent_class;
*/
void (* method_deep_hierarchy) (GIMarshallingTestsObject *self, gint8 in);
+ void (* vfunc_with_callback) (GIMarshallingTestsObject *self,
+ GIMarshallingTestsCallbackIntInt callback,
+ void *callback_data);
+
/**
* GIMarshallingTestsObjectClass::vfunc_return_value_only:
*/
void gi_marshalling_tests_object_int8_in (GIMarshallingTestsObject *object, gint8 in);
void gi_marshalling_tests_object_int8_out (GIMarshallingTestsObject *object, gint8 *out);
+void gi_marshalling_tests_object_vfunc_with_callback (GIMarshallingTestsObject *object,
+ GIMarshallingTestsCallbackIntInt callback,
+ void *callback_data);
+void gi_marshalling_tests_object_call_vfunc_with_callback (GIMarshallingTestsObject *object);
+
#define GI_MARSHALLING_TESTS_TYPE_SUB_OBJECT (gi_marshalling_tests_sub_object_get_type ())
#define GI_MARSHALLING_TESTS_SUB_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GI_MARSHALLING_TESTS_TYPE_SUB_OBJECT, GIMarshallingTestsSubObject))
#define GI_MARSHALLING_TESTS_SUB_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GI_MARSHALLING_TESTS_TYPE_SUB_OBJECT, GIMarshallingTestsSubObjectClass))