summaryrefslogtreecommitdiff
path: root/libpeas/peas-object-module.h
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2019-08-05 18:12:27 -0700
committerChristian Hergert <chergert@redhat.com>2019-08-05 19:17:18 -0700
commit7ad862c039ad5861ab270ac14ee59f664d7e1c32 (patch)
tree69e5b8c84bb45021e14bc6b6a9b96376d45b3845 /libpeas/peas-object-module.h
parent58d4718139f0e64915ee4eadb1fafb7c2603def8 (diff)
downloadlibpeas-7ad862c039ad5861ab270ac14ee59f664d7e1c32.tar.gz
version: add version macros and use them for public API
This adds the necessary bits to specify what is public ABI and what version it has been added. A followup commit will alter things so that we limit what symbols are visibile.
Diffstat (limited to 'libpeas/peas-object-module.h')
-rw-r--r--libpeas/peas-object-module.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/libpeas/peas-object-module.h b/libpeas/peas-object-module.h
index 7c84eac..986d2de 100644
--- a/libpeas/peas-object-module.h
+++ b/libpeas/peas-object-module.h
@@ -28,6 +28,8 @@
#include <glib-object.h>
#include <gmodule.h>
+#include "peas-version-macros.h"
+
G_BEGIN_DECLS
#define PEAS_TYPE_OBJECT_MODULE (peas_object_module_get_type ())
@@ -85,38 +87,50 @@ struct _PeasObjectModuleClass {
gpointer padding[8];
};
+PEAS_AVAILABLE_IN_ALL
GType peas_object_module_get_type (void) G_GNUC_CONST;
+PEAS_AVAILABLE_IN_ALL
PeasObjectModule *peas_object_module_new (const gchar *module_name,
const gchar *path,
gboolean resident);
+PEAS_AVAILABLE_IN_ALL
PeasObjectModule *peas_object_module_new_full (const gchar *module_name,
const gchar *path,
gboolean resident,
gboolean local_linkage);
+PEAS_AVAILABLE_IN_ALL
PeasObjectModule *peas_object_module_new_embedded (const gchar *module_name,
const gchar *symbol);
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+PEAS_AVAILABLE_IN_ALL
GObject *peas_object_module_create_object (PeasObjectModule *module,
GType exten_type,
guint n_parameters,
GParameter *parameters);
G_GNUC_END_IGNORE_DEPRECATIONS
+PEAS_AVAILABLE_IN_ALL
gboolean peas_object_module_provides_object (PeasObjectModule *module,
GType exten_type);
+PEAS_AVAILABLE_IN_ALL
const gchar *peas_object_module_get_path (PeasObjectModule *module);
+PEAS_AVAILABLE_IN_ALL
const gchar *peas_object_module_get_module_name (PeasObjectModule *module);
+PEAS_AVAILABLE_IN_ALL
const gchar *peas_object_module_get_symbol (PeasObjectModule *module);
+PEAS_AVAILABLE_IN_ALL
GModule *peas_object_module_get_library (PeasObjectModule *module);
+PEAS_AVAILABLE_IN_ALL
void peas_object_module_register_extension_factory
(PeasObjectModule *module,
GType exten_type,
PeasFactoryFunc factory_func,
gpointer user_data,
GDestroyNotify destroy_func);
+PEAS_AVAILABLE_IN_ALL
void peas_object_module_register_extension_type
(PeasObjectModule *module,
GType exten_type,