summaryrefslogtreecommitdiff
path: root/vapigen/valagidlparser.vala
diff options
context:
space:
mode:
Diffstat (limited to 'vapigen/valagidlparser.vala')
-rw-r--r--vapigen/valagidlparser.vala9
1 files changed, 9 insertions, 0 deletions
diff --git a/vapigen/valagidlparser.vala b/vapigen/valagidlparser.vala
index 316e42024..137bf2cca 100644
--- a/vapigen/valagidlparser.vala
+++ b/vapigen/valagidlparser.vala
@@ -2597,6 +2597,7 @@ public class Vala.GIdlParser : CodeVisitor {
string deprecated_since = null;
string replacement = null;
bool experimental = false;
+ bool no_delegate_target = false;
var attributes = get_attributes ("%s.%s".printf (current_data_type.get_cname (), node.name));
if (attributes != null) {
@@ -2646,6 +2647,10 @@ public class Vala.GIdlParser : CodeVisitor {
array_length_cname = eval (nv[1]);
} else if (nv[0] == "array_length_type") {
array_length_type = eval (nv[1]);
+ } else if (nv[0] == "no_delegate_target") {
+ if (eval (nv[1]) == "1") {
+ no_delegate_target = true;
+ }
} else if (nv[0] == "experimental") {
if (eval (nv[1]) == "1") {
experimental = true;
@@ -2714,6 +2719,10 @@ public class Vala.GIdlParser : CodeVisitor {
field.no_array_length = true;
}
+ if (no_delegate_target) {
+ field.no_delegate_target = true;
+ }
+
return field;
}