]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
girparser: allow setting base_type of boxed types in metadata
authorEvan Nemerson <evan@coeus-group.com>
Tue, 12 Jun 2012 18:48:55 +0000 (11:48 -0700)
committerEvan Nemerson <evan@coeus-group.com>
Tue, 12 Jun 2012 19:04:29 +0000 (12:04 -0700)
Fixes bug 677906.

vala/valagirparser.vala

index 902870d67bf6a413aaf5649e37ffd971f7e4fb9a..cade19e12ea8db5124f182bf5c49e7365c938d61 100644 (file)
@@ -70,7 +70,8 @@ public class Vala.GirParser : CodeVisitor {
                CPREFIX,
                LOWER_CASE_CPREFIX,
                ERRORDOMAIN,
-               DESTROYS_INSTANCE;
+               DESTROYS_INSTANCE,
+               BASE_TYPE;
 
                public static ArgumentType? from_string (string name) {
                        var enum_class = (EnumClass) typeof(ArgumentType).class_ref ();
@@ -2902,6 +2903,10 @@ public class Vala.GirParser : CodeVisitor {
                cl.access = SymbolAccessibility.PUBLIC;
                cl.external = true;
 
+               if (metadata.has_argument (ArgumentType.BASE_TYPE)) {
+                       cl.add_base_type (parse_type_from_string (metadata.get_string (ArgumentType.BASE_TYPE), true, metadata.get_source_reference (ArgumentType.BASE_TYPE)));
+               }
+
                next ();
 
                cl.comment = parse_symbol_doc ();