From: Florian Brosch Date: Wed, 7 Sep 2011 18:07:51 +0000 (+0200) Subject: driver-0.13.x: Add basic gir support X-Git-Tag: 0.37.1~3^2~280 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c93e1d8deccb1d508e50a890e96cb4dc929ee044;p=thirdparty%2Fvala.git driver-0.13.x: Add basic gir support --- diff --git a/src/driver/0.13.x/treebuilder.vala b/src/driver/0.13.x/treebuilder.vala index 74f42c5e6..efb8d44a0 100644 --- a/src/driver/0.13.x/treebuilder.vala +++ b/src/driver/0.13.x/treebuilder.vala @@ -698,9 +698,9 @@ public class Valadoc.Drivers.TreeBuilder : Vala.CodeVisitor { } context.add_source_file (source_file); - } else if (source.has_suffix (".vapi")) { + } else if (source.has_suffix (".vapi") || source.has_suffix (".gir")) { string file_name = Path.get_basename (source); - file_name = file_name.substring (0, file_name.length - ".vapi".length); + file_name = file_name.substring (0, file_name.last_index_of_char ('.')); var vfile = new Vala.SourceFile (context, Vala.SourceFileType.PACKAGE, rpath); context.add_source_file (vfile); @@ -711,7 +711,6 @@ public class Valadoc.Drivers.TreeBuilder : Vala.CodeVisitor { register_source_file (source_package, vfile); - add_deps (context, Path.build_filename (Path.get_dirname (source), "%s.deps".printf (file_name)), file_name); } else if (source.has_suffix (".c")) { context.add_c_source_file (rpath); @@ -809,6 +808,15 @@ public class Valadoc.Drivers.TreeBuilder : Vala.CodeVisitor { return context; } + // parse gir: + Vala.GirParser gir_parser = new Vala.GirParser (); + + gir_parser.parse (context); + if (context.report.get_errors () > 0) { + return context; + } + + // check context: context.check ();