summaryrefslogtreecommitdiff
path: root/girepository/giinterfaceinfo.h
diff options
context:
space:
mode:
authorChun-wei Fan <fanchunwei@src.gnome.org>2014-07-04 18:18:32 +0800
committerChun-wei Fan <fanchunwei@src.gnome.org>2014-08-15 09:45:41 +0800
commit94380459c1e33c0f47a7f21a3608d7966aaf9208 (patch)
treebb539aaae0e903289c62a3407d79b140d33e0f94 /girepository/giinterfaceinfo.h
parent4bfe7f1da88c6bd73cc51666a13840661ab9edb1 (diff)
downloadgobject-introspection-94380459c1e33c0f47a7f21a3608d7966aaf9208.tar.gz
girepository: Add Header for Version Macros
This adds a header to the girepository library, which is then included either directly or indirectly by the other headers so that all the public symbols (and the 2 symbols in gitypelib-internal.h used by the tools) are decorated by a macro, that can later be used to export the symbols and also to be used to display compile-time warnings for usage of deprecated APIs, which is like what is now being done in GLib (and GTK+, Clutter, and so on). This marks the first step that we begin to stop depending on the .symbols/ .def files to export the symbols. https://bugzilla.gnome.org/show_bug.cgi?id=732669
Diffstat (limited to 'girepository/giinterfaceinfo.h')
-rw-r--r--girepository/giinterfaceinfo.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/girepository/giinterfaceinfo.h b/girepository/giinterfaceinfo.h
index ec33a630..c8cb815c 100644
--- a/girepository/giinterfaceinfo.h
+++ b/girepository/giinterfaceinfo.h
@@ -40,31 +40,63 @@ G_BEGIN_DECLS
#define GI_IS_INTERFACE_INFO(info) \
(g_base_info_get_type((GIBaseInfo*)info) == GI_INFO_TYPE_INTERFACE)
+
+GI_AVAILABLE_IN_ALL
gint g_interface_info_get_n_prerequisites (GIInterfaceInfo *info);
+
+GI_AVAILABLE_IN_ALL
GIBaseInfo * g_interface_info_get_prerequisite (GIInterfaceInfo *info,
gint n);
+
+GI_AVAILABLE_IN_ALL
gint g_interface_info_get_n_properties (GIInterfaceInfo *info);
+
+GI_AVAILABLE_IN_ALL
GIPropertyInfo * g_interface_info_get_property (GIInterfaceInfo *info,
gint n);
+
+GI_AVAILABLE_IN_ALL
gint g_interface_info_get_n_methods (GIInterfaceInfo *info);
+
+GI_AVAILABLE_IN_ALL
GIFunctionInfo * g_interface_info_get_method (GIInterfaceInfo *info,
gint n);
+
+GI_AVAILABLE_IN_ALL
GIFunctionInfo * g_interface_info_find_method (GIInterfaceInfo *info,
const gchar *name);
+
+GI_AVAILABLE_IN_ALL
gint g_interface_info_get_n_signals (GIInterfaceInfo *info);
+
+GI_AVAILABLE_IN_ALL
GISignalInfo * g_interface_info_get_signal (GIInterfaceInfo *info,
gint n);
+
+GI_AVAILABLE_IN_1_34
GISignalInfo * g_interface_info_find_signal (GIInterfaceInfo *info,
const gchar *name);
+
+GI_AVAILABLE_IN_ALL
gint g_interface_info_get_n_vfuncs (GIInterfaceInfo *info);
+
+GI_AVAILABLE_IN_ALL
GIVFuncInfo * g_interface_info_get_vfunc (GIInterfaceInfo *info,
gint n);
+
+GI_AVAILABLE_IN_ALL
GIVFuncInfo * g_interface_info_find_vfunc (GIInterfaceInfo *info,
const gchar *name);
+
+GI_AVAILABLE_IN_ALL
gint g_interface_info_get_n_constants (GIInterfaceInfo *info);
+
+GI_AVAILABLE_IN_ALL
GIConstantInfo * g_interface_info_get_constant (GIInterfaceInfo *info,
gint n);
+
+GI_AVAILABLE_IN_ALL
GIStructInfo * g_interface_info_get_iface_struct (GIInterfaceInfo *info);
G_END_DECLS