[gobject-introspection] Don't emit shadowed methods into the typelib



commit f135e6f2f81e9dd52385cb1449779ef420c950c3
Author: Andreas Rottmann <a rottmann gmx at>
Date:   Tue Dec 7 00:07:08 2010 +0100

    Don't emit shadowed methods into the typelib
    
    Ignore shadowed methods when parsing the GIR.

 girepository/girparser.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
---
diff --git a/girepository/girparser.c b/girepository/girparser.c
index 0b05839..03ab6d2 100644
--- a/girepository/girparser.c
+++ b/girepository/girparser.c
@@ -688,12 +688,15 @@ introspectable_prelude (GMarkupParseContext *context,
 		    ParseState           new_state)
 {
   const gchar *introspectable_arg;
+  const gchar *shadowed_by;
   gboolean introspectable;
 
   g_assert (ctx->state != STATE_PASSTHROUGH);
 
   introspectable_arg = find_attribute ("introspectable", attribute_names, attribute_values);
-  introspectable = !(introspectable_arg && atoi (introspectable_arg) == 0);
+  shadowed_by = find_attribute ("shadowed-by", attribute_names, attribute_values);
+
+  introspectable = !(introspectable_arg && atoi (introspectable_arg) == 0) && shadowed_by == NULL;
 
   if (introspectable)
     state_switch (ctx, new_state);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]