if (prop.get_accessor != null) {
generate_property_accessor_declaration (prop.base_property.get_accessor, cfile);
- string cname = get_ccode_real_name (prop.get_accessor);
- ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "get_%s".printf (prop.name)), new CCodeIdentifier (cname));
+ CCodeExpression cfunc = new CCodeIdentifier (get_ccode_real_name (prop.get_accessor));
+ cfunc = cast_method_pointer (prop.base_property.get_accessor.get_method (), cfunc, base_type);
+ ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "get_%s".printf (prop.name)), cfunc);
}
if (prop.set_accessor != null) {
generate_property_accessor_declaration (prop.base_property.set_accessor, cfile);
- string cname = get_ccode_real_name (prop.set_accessor);
- ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "set_%s".printf (prop.name)), new CCodeIdentifier (cname));
+ CCodeExpression cfunc = new CCodeIdentifier (get_ccode_real_name (prop.set_accessor));
+ cfunc = cast_method_pointer (prop.base_property.set_accessor.get_method (), cfunc, base_type);
+ ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "set_%s".printf (prop.name)), cfunc);
}
}
}
CCodeExpression cfunc = new CCodeIdentifier (cname);
if (prop.is_abstract || prop.is_virtual) {
- cfunc = cast_property_accessor_pointer (prop.get_accessor, cfunc, base_type);
+ cfunc = cast_method_pointer (prop.base_interface_property.get_accessor.get_method (), cfunc, base_type);
}
ccode.add_assignment (new CCodeMemberAccess.pointer (ciface, "get_%s".printf (prop.name)), cfunc);
}
CCodeExpression cfunc = new CCodeIdentifier (cname);
if (prop.is_abstract || prop.is_virtual) {
- cfunc = cast_property_accessor_pointer (prop.set_accessor, cfunc, base_type);
+ cfunc = cast_method_pointer (prop.base_interface_property.set_accessor.get_method (), cfunc, base_type);
}
ccode.add_assignment (new CCodeMemberAccess.pointer (ciface, "set_%s".printf (prop.name)), cfunc);
}
string cname = get_ccode_name (base_property.get_accessor);
CCodeExpression cfunc = new CCodeIdentifier (cname);
- cfunc = cast_property_accessor_pointer (prop.get_accessor, cfunc, iface);
+ cfunc = cast_method_pointer (base_property.get_accessor.get_method (), cfunc, iface);
ccode.add_assignment (new CCodeMemberAccess.pointer (ciface, "get_%s".printf (prop.name)), cfunc);
}
if (base_property.set_accessor != null && prop.set_accessor != null) {
string cname = get_ccode_name (base_property.set_accessor);
CCodeExpression cfunc = new CCodeIdentifier (cname);
- cfunc = cast_property_accessor_pointer (prop.set_accessor, cfunc, iface);
+ cfunc = cast_method_pointer (base_property.set_accessor.get_method (), cfunc, iface);
ccode.add_assignment (new CCodeMemberAccess.pointer (ciface, "set_%s".printf (prop.name)), cfunc);
}
}
cfile.add_function (iface_init);
}
- CCodeExpression cast_property_accessor_pointer (PropertyAccessor acc, CCodeExpression cfunc, ObjectTypeSymbol base_type) {
- string cast;
- if (acc.readable && acc.value_type.is_real_non_null_struct_type ()) {
- cast = "void (*) (%s *, %s *)".printf (get_ccode_name (base_type), get_ccode_name (acc.value_type));
- } else if (acc.readable) {
- cast = "%s (*) (%s *)".printf (get_ccode_name (acc.value_type), get_ccode_name (base_type));
- } else if (acc.value_type.is_real_non_null_struct_type ()) {
- cast = "void (*) (%s *, %s *)".printf (get_ccode_name (base_type), get_ccode_name (acc.value_type));
- } else {
- cast = "void (*) (%s *, %s)".printf (get_ccode_name (base_type), get_ccode_name (acc.value_type));
- }
- return new CCodeCastExpression (cfunc, cast);
- }
-
CCodeExpression cast_method_pointer (Method m, CCodeExpression cfunc, ObjectTypeSymbol base_type, int direction = 3) {
// Cast the function pointer to match the interface
string cast;
if (prop.base_property == null || is_gsource) {
continue;
}
- var base_type = prop.base_property.parent_symbol;
+ var base_type = (ObjectTypeSymbol) prop.base_property.parent_symbol;
var ccast = new CCodeCastExpression (new CCodeIdentifier ("self"), "%s *".printf (get_ccode_name (base_type)));
if (prop.get_accessor != null) {
generate_property_accessor_declaration (prop.base_property.get_accessor, cfile);
- string cname = get_ccode_real_name (prop.get_accessor);
- ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "get_%s".printf (prop.name)), new CCodeIdentifier (cname));
+ CCodeExpression cfunc = new CCodeIdentifier (get_ccode_real_name (prop.get_accessor));
+ cfunc = cast_method_pointer (prop.base_property.get_accessor.get_method (), cfunc, base_type);
+ ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "get_%s".printf (prop.name)), cfunc);
}
if (prop.set_accessor != null) {
generate_property_accessor_declaration (prop.base_property.set_accessor, cfile);
- string cname = get_ccode_real_name (prop.set_accessor);
- ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "set_%s".printf (prop.name)), new CCodeIdentifier (cname));
+ CCodeExpression cfunc = new CCodeIdentifier (get_ccode_real_name (prop.set_accessor));
+ cfunc = cast_method_pointer (prop.base_property.set_accessor.get_method (), cfunc, base_type);
+ ccode.add_assignment (new CCodeMemberAccess.pointer (ccast, "set_%s".printf (prop.name)), cfunc);
}
}
}
g_type_class_adjust_private_offset (klass, &Foo_private_offset);
((FooClass *) klass)->get_bar = (gint* (*) (Foo*, guint8*)) foo_real_get_bar;
((FooClass *) klass)->set_bar = (void (*) (Foo*, gint**, guint8*)) foo_real_set_bar;
- FOO_CLASS (klass)->get_manar = foo_real_get_manar;
- FOO_CLASS (klass)->set_manar = foo_real_set_manar;
+ FOO_CLASS (klass)->get_manar = (gint* (*) (Foo*, guint8*)) foo_real_get_manar;
+ FOO_CLASS (klass)->set_manar = (void (*) (Foo*, gint*, guint8)) foo_real_set_manar;
}
static void
g_type_class_adjust_private_offset (klass, &Bar_private_offset);
((FooClass *) klass)->get_bar = (gint* (*) (Foo*, guint8*)) bar_real_get_bar;
((FooClass *) klass)->set_bar = (void (*) (Foo*, gint**, guint8*)) bar_real_set_bar;
- FOO_CLASS (klass)->get_manar = bar_real_get_manar;
- FOO_CLASS (klass)->set_manar = bar_real_set_manar;
+ FOO_CLASS (klass)->get_manar = (gint* (*) (Foo*, guint8*)) bar_real_get_manar;
+ FOO_CLASS (klass)->set_manar = (void (*) (Foo*, gint*, guint8)) bar_real_set_manar;
}
static void
{
bar_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &Bar_private_offset);
- FOO_CLASS (klass)->get_foo = bar_real_get_foo;
- FOO_CLASS (klass)->set_foo = bar_real_set_foo;
+ FOO_CLASS (klass)->get_foo = (gconstpointer (*) (Foo*)) bar_real_get_foo;
+ FOO_CLASS (klass)->set_foo = (void (*) (Foo*, gconstpointer)) bar_real_set_foo;
G_OBJECT_CLASS (klass)->get_property = _vala_bar_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_bar_set_property;
G_OBJECT_CLASS (klass)->finalize = bar_finalize;
gpointer klass_data)
{
class_b_parent_class = g_type_class_peek_parent (klass);
- CLASS_A_CLASS (klass)->get_flags = class_b_real_get_flags;
+ CLASS_A_CLASS (klass)->get_flags = (gint (*) (ClassA*)) class_b_real_get_flags;
G_OBJECT_CLASS (klass)->get_property = _vala_class_b_get_property;
g_object_class_install_property (G_OBJECT_CLASS (klass), CLASS_B_FLAGS_PROPERTY, class_b_properties[CLASS_B_FLAGS_PROPERTY] = g_param_spec_int ("flags", "flags", "flags", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}
gpointer klass_data)
{
class_d_parent_class = g_type_class_peek_parent (klass);
- CLASS_A_CLASS (klass)->get_flags = class_d_real_get_flags;
+ CLASS_A_CLASS (klass)->get_flags = (gint (*) (ClassA*)) class_d_real_get_flags;
G_OBJECT_CLASS (klass)->get_property = _vala_class_d_get_property;
g_object_class_install_property (G_OBJECT_CLASS (klass), CLASS_D_FLAGS_PROPERTY, class_d_properties[CLASS_D_FLAGS_PROPERTY] = g_param_spec_int ("flags", "flags", "flags", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}
foo_instance_init (Foo * self)
{
((AbstractFoo *) self)->foo = (const gchar* (*) (AbstractFoo*)) foo_real_foo;
- ((AbstractFoo *) self)->get_prop = foo_real_get_prop;
- ((AbstractFoo *) self)->set_prop = foo_real_set_prop;
+ ((AbstractFoo *) self)->get_prop = (gint (*) (AbstractFoo*)) foo_real_get_prop;
+ ((AbstractFoo *) self)->set_prop = (void (*) (AbstractFoo*, gint)) foo_real_set_prop;
}
Bar*
bar_instance_init (Bar * self)
{
((AbstractFoo *) self)->foo = (const gchar* (*) (AbstractFoo*)) bar_real_foo;
- ((AbstractFoo *) self)->get_prop = bar_real_get_prop;
- ((AbstractFoo *) self)->set_prop = bar_real_set_prop;
+ ((AbstractFoo *) self)->get_prop = (gint (*) (AbstractFoo*)) bar_real_get_prop;
+ ((AbstractFoo *) self)->set_prop = (void (*) (AbstractFoo*, gint)) bar_real_set_prop;
}
static const gchar*
{
((Manam *) self)->foo = (const gchar* (*) (Manam*)) manam_real_foo;
((Manam *) self)->foo_plain = (gint (*) (Manam*)) manam_real_foo_plain;
- ((Manam *) self)->get_prop = manam_real_get_prop;
- ((Manam *) self)->set_prop = manam_real_set_prop;
+ ((Manam *) self)->get_prop = (gint (*) (Manam*)) manam_real_get_prop;
+ ((Manam *) self)->set_prop = (void (*) (Manam*, gint)) manam_real_set_prop;
self->field = 23;
}
{
base_foo_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &BaseFoo_private_offset);
- BASE_FOO_CLASS (klass)->get_st = base_foo_real_get_st;
- BASE_FOO_CLASS (klass)->set_st = base_foo_real_set_st;
+ BASE_FOO_CLASS (klass)->get_st = (void (*) (BaseFoo*, Manam*)) base_foo_real_get_st;
+ BASE_FOO_CLASS (klass)->set_st = (void (*) (BaseFoo*, Manam*)) base_foo_real_set_st;
G_OBJECT_CLASS (klass)->get_property = _vala_base_foo_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_base_foo_set_property;
G_OBJECT_CLASS (klass)->finalize = base_foo_finalize;
{
foo_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &Foo_private_offset);
- FOO_CLASS (klass)->get_st = foo_real_get_st;
- FOO_CLASS (klass)->set_st = foo_real_set_st;
+ FOO_CLASS (klass)->get_st = (void (*) (Foo*, Manam*)) foo_real_get_st;
+ FOO_CLASS (klass)->set_st = (void (*) (Foo*, Manam*)) foo_real_set_st;
G_OBJECT_CLASS (klass)->get_property = _vala_foo_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_foo_set_property;
G_OBJECT_CLASS (klass)->finalize = foo_finalize;
gpointer klass_data)
{
bar_parent_class = g_type_class_peek_parent (klass);
- FOO_CLASS (klass)->get_st = bar_real_get_st;
- FOO_CLASS (klass)->set_st = bar_real_set_st;
+ FOO_CLASS (klass)->get_st = (void (*) (Foo*, Manam*)) bar_real_get_st;
+ FOO_CLASS (klass)->set_st = (void (*) (Foo*, Manam*)) bar_real_set_st;
G_OBJECT_CLASS (klass)->get_property = _vala_bar_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_bar_set_property;
g_object_class_install_property (G_OBJECT_CLASS (klass), BAR_ST_PROPERTY, bar_properties[BAR_ST_PROPERTY] = g_param_spec_boxed ("st", "st", "st", TYPE_MANAM, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
gpointer klass_data)
{
baz_parent_class = g_type_class_peek_parent (klass);
- BASE_FOO_CLASS (klass)->get_st = baz_real_get_st;
- BASE_FOO_CLASS (klass)->set_st = baz_real_set_st;
+ BASE_FOO_CLASS (klass)->get_st = (void (*) (BaseFoo*, Manam*)) baz_real_get_st;
+ BASE_FOO_CLASS (klass)->set_st = (void (*) (BaseFoo*, Manam*)) baz_real_set_st;
G_OBJECT_CLASS (klass)->get_property = _vala_baz_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_baz_set_property;
g_object_class_install_property (G_OBJECT_CLASS (klass), BAZ_ST_PROPERTY, baz_properties[BAZ_ST_PROPERTY] = g_param_spec_boxed ("st", "st", "st", TYPE_MANAM, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE | G_PARAM_WRITABLE));
gpointer iface_data)
{
foo_ifoo_parent_iface = g_type_interface_peek_parent (iface);
- iface->get_foo = (gint (*) (IFoo *)) foo_get_foo;
+ iface->get_foo = (gint (*) (IFoo*)) foo_get_foo;
}
static void
gpointer klass_data)
{
bar_parent_class = g_type_class_peek_parent (klass);
- FOO_CLASS (klass)->get_foo = bar_real_get_foo;
+ FOO_CLASS (klass)->get_foo = (gint (*) (Foo*)) bar_real_get_foo;
G_OBJECT_CLASS (klass)->get_property = _vala_bar_get_property;
g_object_class_install_property (G_OBJECT_CLASS (klass), BAR_FOO_PROPERTY, bar_properties[BAR_FOO_PROPERTY] = g_param_spec_int ("foo", "foo", "foo", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_STRINGS | G_PARAM_READABLE));
}
bar_parent_class = g_type_class_peek_parent (klass);
((BarClass *) klass)->finalize = bar_finalize;
g_type_class_adjust_private_offset (klass, &Bar_private_offset);
- BAR_CLASS (klass)->get_prop_v = bar_real_get_prop_v;
- BAR_CLASS (klass)->set_prop_v = bar_real_set_prop_v;
+ BAR_CLASS (klass)->get_prop_v = (const gchar* (*) (Bar*)) bar_real_get_prop_v;
+ BAR_CLASS (klass)->set_prop_v = (void (*) (Bar*, const gchar*)) bar_real_set_prop_v;
}
static void
foo_parent_class = g_type_class_peek_parent (klass);
((BarClass *) klass)->finalize = foo_finalize;
g_type_class_adjust_private_offset (klass, &Foo_private_offset);
- BAR_CLASS (klass)->get_prop_v = foo_real_get_prop_v;
- BAR_CLASS (klass)->set_prop_v = foo_real_set_prop_v;
+ BAR_CLASS (klass)->get_prop_v = (const gchar* (*) (Bar*)) foo_real_get_prop_v;
+ BAR_CLASS (klass)->set_prop_v = (void (*) (Bar*, const gchar*)) foo_real_set_prop_v;
}
static void
{
maman_bar_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &MamanBar_private_offset);
- MAMAN_FOO_CLASS (klass)->get_abstract_base_property = maman_bar_real_get_abstract_base_property;
- MAMAN_FOO_CLASS (klass)->set_abstract_base_property = maman_bar_real_set_abstract_base_property;
+ MAMAN_FOO_CLASS (klass)->get_abstract_base_property = (gint (*) (MamanFoo*)) maman_bar_real_get_abstract_base_property;
+ MAMAN_FOO_CLASS (klass)->set_abstract_base_property = (void (*) (MamanFoo*, gint)) maman_bar_real_set_abstract_base_property;
G_OBJECT_CLASS (klass)->get_property = _vala_maman_bar_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_maman_bar_set_property;
G_OBJECT_CLASS (klass)->finalize = maman_bar_finalize;
{
maman_biz_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &MamanBiz_private_offset);
- MAMAN_ABIZ_CLASS (klass)->get_number2 = maman_biz_real_get_number2;
- MAMAN_ABIZ_CLASS (klass)->set_number2 = maman_biz_real_set_number2;
+ MAMAN_ABIZ_CLASS (klass)->get_number2 = (gint (*) (MamanABiz*)) maman_biz_real_get_number2;
+ MAMAN_ABIZ_CLASS (klass)->set_number2 = (void (*) (MamanABiz*, gint)) maman_biz_real_set_number2;
G_OBJECT_CLASS (klass)->get_property = _vala_maman_biz_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_maman_biz_set_property;
G_OBJECT_CLASS (klass)->finalize = maman_biz_finalize;
foo_parent_class = g_type_class_peek_parent (klass);
((FooClass *) klass)->finalize = foo_finalize;
g_type_class_adjust_private_offset (klass, &Foo_private_offset);
- FOO_CLASS (klass)->get_array_v = foo_real_get_array_v;
- FOO_CLASS (klass)->set_array_v = foo_real_set_array_v;
- FOO_CLASS (klass)->get_array_no_length_v = foo_real_get_array_no_length_v;
- FOO_CLASS (klass)->set_array_no_length_v = foo_real_set_array_no_length_v;
- FOO_CLASS (klass)->get_strv_v = foo_real_get_strv_v;
- FOO_CLASS (klass)->set_strv_v = foo_real_set_strv_v;
+ FOO_CLASS (klass)->get_array_v = (Manam** (*) (Foo*, gint*)) foo_real_get_array_v;
+ FOO_CLASS (klass)->set_array_v = (void (*) (Foo*, Manam**, gint)) foo_real_set_array_v;
+ FOO_CLASS (klass)->get_array_no_length_v = (Manam** (*) (Foo*)) foo_real_get_array_no_length_v;
+ FOO_CLASS (klass)->set_array_no_length_v = (void (*) (Foo*, Manam**)) foo_real_set_array_no_length_v;
+ FOO_CLASS (klass)->get_strv_v = (gchar** (*) (Foo*)) foo_real_get_strv_v;
+ FOO_CLASS (klass)->set_strv_v = (void (*) (Foo*, gchar**)) foo_real_set_strv_v;
}
static void
{
bar_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &Bar_private_offset);
- BAR_CLASS (klass)->get_array_v = bar_real_get_array_v;
- BAR_CLASS (klass)->set_array_v = bar_real_set_array_v;
- BAR_CLASS (klass)->get_strv_v = bar_real_get_strv_v;
- BAR_CLASS (klass)->set_strv_v = bar_real_set_strv_v;
+ BAR_CLASS (klass)->get_array_v = (Manam** (*) (Bar*)) bar_real_get_array_v;
+ BAR_CLASS (klass)->set_array_v = (void (*) (Bar*, Manam**)) bar_real_set_array_v;
+ BAR_CLASS (klass)->get_strv_v = (gchar** (*) (Bar*)) bar_real_get_strv_v;
+ BAR_CLASS (klass)->set_strv_v = (void (*) (Bar*, gchar**)) bar_real_set_strv_v;
G_OBJECT_CLASS (klass)->get_property = _vala_bar_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_bar_set_property;
G_OBJECT_CLASS (klass)->finalize = bar_finalize;
foo_parent_class = g_type_class_peek_parent (klass);
((FooClass *) klass)->finalize = foo_finalize;
g_type_class_adjust_private_offset (klass, &Foo_private_offset);
- FOO_CLASS (klass)->get_foo = foo_real_get_foo;
- FOO_CLASS (klass)->set_foo = foo_real_set_foo;
- FOO_CLASS (klass)->get_bar = foo_real_get_bar;
- FOO_CLASS (klass)->set_bar = foo_real_set_bar;
+ FOO_CLASS (klass)->get_foo = (FooFunc (*) (Foo*, gpointer*)) foo_real_get_foo;
+ FOO_CLASS (klass)->set_foo = (void (*) (Foo*, FooFunc, gpointer, GDestroyNotify)) foo_real_set_foo;
+ FOO_CLASS (klass)->get_bar = (FooFunc (*) (Foo*, gpointer*)) foo_real_get_bar;
+ FOO_CLASS (klass)->set_bar = (void (*) (Foo*, FooFunc, gpointer, GDestroyNotify)) foo_real_set_bar;
}
static void
gpointer iface_data)
{
foo_ifoo_parent_iface = g_type_interface_peek_parent (iface);
- iface->get_foo = (FooFunc (*) (IFoo *)) foo_get_foo;
- iface->set_foo = (void (*) (IFoo *, FooFunc)) foo_set_foo;
- iface->get_bar = (FooFunc (*) (IFoo *)) foo_get_bar;
- iface->set_bar = (void (*) (IFoo *, FooFunc)) foo_set_bar;
+ iface->get_foo = (FooFunc (*) (IFoo*, gpointer*)) foo_get_foo;
+ iface->set_foo = (void (*) (IFoo*, FooFunc, gpointer, GDestroyNotify)) foo_set_foo;
+ iface->get_bar = (FooFunc (*) (IFoo*, gpointer*)) foo_get_bar;
+ iface->set_bar = (void (*) (IFoo*, FooFunc, gpointer, GDestroyNotify)) foo_set_bar;
}
static void
bar_parent_class = g_type_class_peek_parent (klass);
((FooClass *) klass)->finalize = bar_finalize;
g_type_class_adjust_private_offset (klass, &Bar_private_offset);
- FOO_CLASS (klass)->get_foo = bar_real_get_foo;
- FOO_CLASS (klass)->set_foo = bar_real_set_foo;
- FOO_CLASS (klass)->get_bar = bar_real_get_bar;
- FOO_CLASS (klass)->set_bar = bar_real_set_bar;
+ FOO_CLASS (klass)->get_foo = (FooFunc (*) (Foo*, gpointer*)) bar_real_get_foo;
+ FOO_CLASS (klass)->set_foo = (void (*) (Foo*, FooFunc, gpointer, GDestroyNotify)) bar_real_set_foo;
+ FOO_CLASS (klass)->get_bar = (FooFunc (*) (Foo*, gpointer*)) bar_real_get_bar;
+ FOO_CLASS (klass)->set_bar = (void (*) (Foo*, FooFunc, gpointer, GDestroyNotify)) bar_real_set_bar;
}
static void
foo_parent_class = g_type_class_peek_parent (klass);
((FooClass *) klass)->finalize = foo_finalize;
g_type_class_adjust_private_offset (klass, &Foo_private_offset);
- FOO_CLASS (klass)->get_deleg_v = foo_real_get_deleg_v;
- FOO_CLASS (klass)->set_deleg_v = foo_real_set_deleg_v;
- FOO_CLASS (klass)->get_deleg_no_target_v = foo_real_get_deleg_no_target_v;
- FOO_CLASS (klass)->set_deleg_no_target_v = foo_real_set_deleg_no_target_v;
+ FOO_CLASS (klass)->get_deleg_v = (Manam (*) (Foo*, gpointer*)) foo_real_get_deleg_v;
+ FOO_CLASS (klass)->set_deleg_v = (void (*) (Foo*, Manam, gpointer)) foo_real_set_deleg_v;
+ FOO_CLASS (klass)->get_deleg_no_target_v = (Manam (*) (Foo*)) foo_real_get_deleg_no_target_v;
+ FOO_CLASS (klass)->set_deleg_no_target_v = (void (*) (Foo*, Manam)) foo_real_set_deleg_no_target_v;
}
static void
{
bar_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &Bar_private_offset);
- BAR_CLASS (klass)->get_deleg_v = bar_real_get_deleg_v;
- BAR_CLASS (klass)->set_deleg_v = bar_real_set_deleg_v;
+ BAR_CLASS (klass)->get_deleg_v = (Manam (*) (Bar*)) bar_real_get_deleg_v;
+ BAR_CLASS (klass)->set_deleg_v = (void (*) (Bar*, Manam)) bar_real_set_deleg_v;
G_OBJECT_CLASS (klass)->get_property = _vala_bar_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_bar_set_property;
G_OBJECT_CLASS (klass)->finalize = bar_finalize;
{
manam_parent_class = g_type_class_peek_parent (klass);
g_type_class_adjust_private_offset (klass, &Manam_private_offset);
- MANAM_CLASS (klass)->get_faz = manam_real_get_faz;
- MANAM_CLASS (klass)->set_faz = manam_real_set_faz;
+ MANAM_CLASS (klass)->get_faz = (void (*) (Manam*, Foo*)) manam_real_get_faz;
+ MANAM_CLASS (klass)->set_faz = (void (*) (Manam*, Foo*)) manam_real_set_faz;
G_OBJECT_CLASS (klass)->get_property = _vala_manam_get_property;
G_OBJECT_CLASS (klass)->set_property = _vala_manam_set_property;
G_OBJECT_CLASS (klass)->finalize = manam_finalize;