summaryrefslogtreecommitdiff
path: root/codegen/valaccodeattribute.vala
diff options
context:
space:
mode:
authorRico Tzschichholz <ricotz@ubuntu.com>2018-11-27 23:53:56 +0100
committerRico Tzschichholz <ricotz@ubuntu.com>2018-11-28 08:56:24 +0100
commite1139c1a9cfb50e989a6d50f671128b2e0c5df52 (patch)
tree9977fb39430000e9601538d385de732d968ab808 /codegen/valaccodeattribute.vala
parent4aca8df63e6ffe3a57b6300b1a88359742ca6dc4 (diff)
downloadvala-e1139c1a9cfb50e989a6d50f671128b2e0c5df52.tar.gz
codegen: Add support for delegate parameters in signals
Fixes https://gitlab.gnome.org/GNOME/vala/issues/205
Diffstat (limited to 'codegen/valaccodeattribute.vala')
-rw-r--r--codegen/valaccodeattribute.vala10
1 files changed, 10 insertions, 0 deletions
diff --git a/codegen/valaccodeattribute.vala b/codegen/valaccodeattribute.vala
index 0b89230e8..1c3665f80 100644
--- a/codegen/valaccodeattribute.vala
+++ b/codegen/valaccodeattribute.vala
@@ -1063,6 +1063,16 @@ public class Vala.CCodeAttribute : AttributeCache {
}
return ret;
}
+ } else if (node is DelegateType) {
+ unowned DelegateType delegate_type = (DelegateType) node;
+ var ret = "POINTER";
+ if (delegate_type.delegate_symbol.has_target) {
+ ret = "%s,POINTER".printf (ret);
+ if (delegate_type.is_disposable ()) {
+ ret = "%s,POINTER".printf (ret);
+ }
+ }
+ return ret;
} else if (node is VoidType) {
return "VOID";
} else {