]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
0.20.x: Fix TypeParameter.base
authorFlorian Brosch <flo.brosch@gmail.com>
Wed, 6 Feb 2013 23:26:12 +0000 (00:26 +0100)
committerFlorian Brosch <flo.brosch@gmail.com>
Wed, 6 Feb 2013 23:26:12 +0000 (00:26 +0100)
src/driver/0.20.x/symbolresolver.vala
src/driver/0.20.x/treebuilder.vala

index f548f735d81f19ad53da969285d4cffecc988ade..4adc06b1a66926930492c73ae6fb220a2cea5406 100644 (file)
@@ -83,6 +83,8 @@ public class Valadoc.Drivers.SymbolResolver : Visitor {
                        }
                } else if (vtyperef is Vala.DelegateType) {
                        reference.data_type = resolve (((Vala.DelegateType) vtyperef).delegate_symbol);
+               } else if (vtyperef is Vala.GenericType) {
+                       reference.data_type = resolve (((Vala.GenericType) vtyperef).type_parameter);
                } else if (vtyperef.data_type != null) {
                        reference.data_type = resolve (vtyperef.data_type);
                }
index cc135d4444b1185d1d95bf35f7a54af2896317e6..343527a66009ec1a640489d8a61eaa6fd82d131a 100644 (file)
@@ -170,8 +170,8 @@ public class Valadoc.Drivers.TreeBuilder : Vala.CodeVisitor {
                        type_ref.data_type = create_pointer ((Vala.PointerType) vtyperef,  type_ref, caller);
                } else if (vtyperef is Vala.ArrayType) {
                        type_ref.data_type = create_array ((Vala.ArrayType) vtyperef,  type_ref, caller);
-               } else if (vtyperef is Vala.GenericType) {
-                       type_ref.data_type = new TypeParameter (caller, caller.get_source_file (), ((Vala.GenericType) vtyperef).type_parameter.name, vtyperef);
+               //} else if (vtyperef is Vala.GenericType) {
+               //      type_ref.data_type = new TypeParameter (caller, caller.get_source_file (), ((Vala.GenericType) vtyperef).type_parameter.name, vtyperef);
                }
 
                // type parameters:
@@ -1206,6 +1206,7 @@ public class Valadoc.Drivers.TreeBuilder : Vala.CodeVisitor {
                SourceFile? file = get_source_file (element);
 
                Symbol node = new TypeParameter (parent, file, element.name, element);
+               symbol_map.set (element, node);
                parent.add_child (node);
 
                process_children (node, element);