gobject-introspection r216 - in trunk: . girepository



Author: hp
Date: Wed Apr 23 00:57:48 2008
New Revision: 216
URL: http://svn.gnome.org/viewvc/gobject-introspection?rev=216&view=rev

Log:
2008-04-22  Havoc Pennington  <hp pobox com>

 	* girepository/ginfo.c (g_registered_type_info_get_g_type): new
	function to get the GType given a RegisteredTypeInfo



Modified:
   trunk/ChangeLog
   trunk/girepository/ginfo.c
   trunk/girepository/girepository.h

Modified: trunk/girepository/ginfo.c
==============================================================================
--- trunk/girepository/ginfo.c	(original)
+++ trunk/girepository/ginfo.c	Wed Apr 23 00:57:48 2008
@@ -968,6 +968,25 @@
   return NULL;
 }
 
+GType
+g_registered_type_info_get_g_type (GIRegisteredTypeInfo *info)
+{
+  const char *type_init;
+  GType (* get_type_func) (void);
+
+  type_init = g_registered_type_info_get_type_init (info);  
+  
+  if (type_init == NULL)
+    return G_TYPE_NONE;
+  
+  get_type_func = NULL;
+  if (!g_module_symbol (((GIBaseInfo*)info)->metadata->module,
+                        type_init,
+                        (void**) &get_type_func))
+    return G_TYPE_NONE;
+  
+  return (* get_type_func) ();
+}
 
 /* GIStructInfo functions */
 gint

Modified: trunk/girepository/girepository.h
==============================================================================
--- trunk/girepository/girepository.h	(original)
+++ trunk/girepository/girepository.h	Wed Apr 23 00:57:48 2008
@@ -350,7 +350,7 @@
 
 const gchar *          g_registered_type_info_get_type_name (GIRegisteredTypeInfo *info);
 const gchar *          g_registered_type_info_get_type_init (GIRegisteredTypeInfo *info);
-
+GType                  g_registered_type_info_get_g_type    (GIRegisteredTypeInfo *info);
 
 /* GIEnumInfo */
 



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