diff options
author | Chun-wei Fan <fanchunwei@src.gnome.org> | 2014-07-04 18:18:32 +0800 |
---|---|---|
committer | Chun-wei Fan <fanchunwei@src.gnome.org> | 2014-08-15 09:45:41 +0800 |
commit | 94380459c1e33c0f47a7f21a3608d7966aaf9208 (patch) | |
tree | bb539aaae0e903289c62a3407d79b140d33e0f94 /girepository/girepository.h | |
parent | 4bfe7f1da88c6bd73cc51666a13840661ab9edb1 (diff) | |
download | gobject-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/girepository.h')
-rw-r--r-- | girepository/girepository.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/girepository/girepository.h b/girepository/girepository.h index dea250df..dcc34ce2 100644 --- a/girepository/girepository.h +++ b/girepository/girepository.h @@ -45,6 +45,7 @@ #include <gitypelib.h> #include <gitypes.h> #include <giunioninfo.h> +#include <giversionmacros.h> #include <givfuncinfo.h> G_BEGIN_DECLS @@ -92,57 +93,99 @@ typedef enum /* Repository */ +GI_AVAILABLE_IN_ALL GType g_irepository_get_type (void) G_GNUC_CONST; + +GI_AVAILABLE_IN_ALL GIRepository *g_irepository_get_default (void); + +GI_AVAILABLE_IN_ALL void g_irepository_prepend_search_path (const char *directory); + +GI_AVAILABLE_IN_1_36 void g_irepository_prepend_library_path (const char *directory); + +GI_AVAILABLE_IN_ALL GSList * g_irepository_get_search_path (void); + +GI_AVAILABLE_IN_ALL const char * g_irepository_load_typelib (GIRepository *repository, GITypelib *typelib, GIRepositoryLoadFlags flags, GError **error); + +GI_AVAILABLE_IN_ALL gboolean g_irepository_is_registered (GIRepository *repository, const gchar *namespace_, const gchar *version); + +GI_AVAILABLE_IN_ALL GIBaseInfo * g_irepository_find_by_name (GIRepository *repository, const gchar *namespace_, const gchar *name); + +GI_AVAILABLE_IN_ALL GList * g_irepository_enumerate_versions (GIRepository *repository, const gchar *namespace_); + +GI_AVAILABLE_IN_ALL GITypelib * g_irepository_require (GIRepository *repository, const gchar *namespace_, const gchar *version, GIRepositoryLoadFlags flags, GError **error); + +GI_AVAILABLE_IN_ALL GITypelib * g_irepository_require_private (GIRepository *repository, const gchar *typelib_dir, const gchar *namespace_, const gchar *version, GIRepositoryLoadFlags flags, GError **error); + +GI_AVAILABLE_IN_ALL gchar ** g_irepository_get_dependencies (GIRepository *repository, const gchar *namespace_); + +GI_AVAILABLE_IN_ALL gchar ** g_irepository_get_loaded_namespaces (GIRepository *repository); + +GI_AVAILABLE_IN_ALL GIBaseInfo * g_irepository_find_by_gtype (GIRepository *repository, GType gtype); + +GI_AVAILABLE_IN_ALL gint g_irepository_get_n_infos (GIRepository *repository, const gchar *namespace_); + +GI_AVAILABLE_IN_ALL GIBaseInfo * g_irepository_get_info (GIRepository *repository, const gchar *namespace_, gint index); + +GI_AVAILABLE_IN_ALL GIEnumInfo * g_irepository_find_by_error_domain (GIRepository *repository, GQuark domain); + +GI_AVAILABLE_IN_ALL const gchar * g_irepository_get_typelib_path (GIRepository *repository, const gchar *namespace_); +GI_AVAILABLE_IN_ALL const gchar * g_irepository_get_shared_library (GIRepository *repository, const gchar *namespace_); +GI_AVAILABLE_IN_ALL const gchar * g_irepository_get_c_prefix (GIRepository *repository, const gchar *namespace_); +GI_AVAILABLE_IN_ALL const gchar * g_irepository_get_version (GIRepository *repository, const gchar *namespace_); + +GI_AVAILABLE_IN_ALL GOptionGroup * g_irepository_get_option_group (void); + +GI_AVAILABLE_IN_ALL gboolean g_irepository_dump (const char *arg, GError **error); /** @@ -175,11 +218,13 @@ typedef enum */ #define G_IREPOSITORY_ERROR (g_irepository_error_quark ()) +GI_AVAILABLE_IN_ALL GQuark g_irepository_error_quark (void); /* Global utility functions */ +GI_AVAILABLE_IN_ALL void gi_cclosure_marshal_generic (GClosure *closure, GValue *return_gvalue, guint n_param_values, |