From: Rico Tzschichholz Date: Tue, 16 Mar 2021 14:34:02 +0000 (+0100) Subject: girparser: Add support for NoWrapper metadata for methods X-Git-Tag: 0.50.5~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8037c3c1bdcfbe94b0ad6bc6db634871608aac39;p=thirdparty%2Fvala.git girparser: Add support for NoWrapper metadata for methods --- diff --git a/vala/valagirparser.vala b/vala/valagirparser.vala index 34a74e252..6c8a5f2d5 100644 --- a/vala/valagirparser.vala +++ b/vala/valagirparser.vala @@ -94,6 +94,7 @@ public class Vala.GirParser : CodeVisitor { DESTROY_NOTIFY_CNAME, FINISH_VFUNC_NAME, NO_ACCESSOR_METHOD, + NO_WRAPPER, CNAME, DELEGATE_TARGET, CTYPE; @@ -3319,9 +3320,12 @@ public class Vala.GirParser : CodeVisitor { } else { m.is_virtual = true; } - if (invoker == null && !metadata.has_argument (ArgumentType.VFUNC_NAME)) { + if (metadata.has_argument (ArgumentType.NO_WRAPPER)) { + s.set_attribute ("NoWrapper", metadata.get_bool (ArgumentType.NO_WRAPPER), s.source_reference); + } else if (invoker == null && !metadata.has_argument (ArgumentType.VFUNC_NAME)) { s.set_attribute ("NoWrapper", true, s.source_reference); - } if (current.girdata["name"] != name) { + } + if (current.girdata["name"] != name) { m.set_attribute_string ("CCode", "vfunc_name", current.girdata["name"]); } } else if (symbol_type == "function") {