gobject-introspection r606 - trunk/giscanner



Author: walters
Date: Mon Sep 15 18:39:45 2008
New Revision: 606
URL: http://svn.gnome.org/viewvc/gobject-introspection?rev=606&view=rev

Log:
Fix up deprecated parsing - this commit went missing


Modified:
   trunk/giscanner/scannerlexer.l
   trunk/giscanner/transformer.py

Modified: trunk/giscanner/scannerlexer.l
==============================================================================
--- trunk/giscanner/scannerlexer.l	(original)
+++ trunk/giscanner/scannerlexer.l	Mon Sep 15 18:39:45 2008
@@ -235,7 +235,7 @@
   if (g_ascii_strcasecmp (parts[0], "eprecated") == 0)
     {
       if (n_parts == 3)
-	options = g_slist_prepend (options, g_strdup (parts[2]));
+	options = g_slist_prepend (options, g_strdup_printf ("%s: %s", parts[1], parts[2]));
       else if (n_parts == 2)
 	options = g_slist_prepend (options, g_strdup (parts[1]));
       else

Modified: trunk/giscanner/transformer.py
==============================================================================
--- trunk/giscanner/transformer.py	(original)
+++ trunk/giscanner/transformer.py	Mon Sep 15 18:39:45 2008
@@ -215,24 +215,28 @@
         return Member(symbol.ident, symbol.base_type.name,
                       symbol.ident)
 
-    def _create_function(self, symbol):
-        directives = symbol.directives()
-        parameters = list(self._create_parameters(
-            symbol.base_type, directives))
-        return_ = self._create_return(symbol.base_type.base_type,
-                                      directives.get('return', []))
-        name = self._strip_namespace_func(symbol.ident)
-        func = Function(name, return_, parameters, symbol.ident)
+    def _parse_deprecated(self, node, directives):
         deprecated = directives.get('deprecated', False)
         if deprecated:
             deprecated_value = deprecated[0]
+            print "DEPRECATED: %r" % (deprecated_value, )
             if ':' in deprecated_value:
                 # Split out gtk-doc version
-                (func.deprecated_version, func.deprecated) = \
+                (node.deprecated_version, node.deprecated) = \
                     [x.strip() for x in deprecated_value.split(':', 1)]
             else:
                 # No version, just include str
-                func.deprecated = deprecated_value.strip()
+                node.deprecated = deprecated_value.strip()
+
+    def _create_function(self, symbol):
+        directives = symbol.directives()
+        parameters = list(self._create_parameters(
+            symbol.base_type, directives))
+        return_ = self._create_return(symbol.base_type.base_type,
+                                      directives.get('return', []))
+        name = self._strip_namespace_func(symbol.ident)
+        func = Function(name, return_, parameters, symbol.ident)
+        self._parse_deprecated(func, directives)
         return func
 
     def _create_source_type(self, source_type):



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