summaryrefslogtreecommitdiff
path: root/libpeas
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2023-03-16 18:15:12 -0700
committerChristian Hergert <chergert@redhat.com>2023-03-22 16:44:35 -0700
commitf50906cc36777d254dee2bc4b829a9b6aea5b92d (patch)
tree5d5acc2276dd30543c5e0f4f613110f3a5f7d4fa /libpeas
parent8433861900222637fbf92d308b304b4322fc37aa (diff)
downloadlibpeas-f50906cc36777d254dee2bc4b829a9b6aea5b92d.tar.gz
janitorial: modernize PeasExtensionBase
Use modern GLib macros for defining types.
Diffstat (limited to 'libpeas')
-rw-r--r--libpeas/peas-autocleanups.h1
-rw-r--r--libpeas/peas-extension-base.c23
-rw-r--r--libpeas/peas-extension-base.h41
3 files changed, 19 insertions, 46 deletions
diff --git a/libpeas/peas-autocleanups.h b/libpeas/peas-autocleanups.h
index d28f564..f733cd1 100644
--- a/libpeas/peas-autocleanups.h
+++ b/libpeas/peas-autocleanups.h
@@ -35,7 +35,6 @@ G_BEGIN_DECLS
#if GLIB_CHECK_VERSION (2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PeasEngine, g_object_unref)
-G_DEFINE_AUTOPTR_CLEANUP_FUNC (PeasExtensionBase, g_object_unref)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PeasObjectModule, g_object_unref)
#endif /* GLIB_CHECK_VERSION (2, 44, 0) */
diff --git a/libpeas/peas-extension-base.c b/libpeas/peas-extension-base.c
index 5749d03..b68a0ed 100644
--- a/libpeas/peas-extension-base.c
+++ b/libpeas/peas-extension-base.c
@@ -42,9 +42,10 @@
* the same purpose.
**/
-struct _PeasExtensionBasePrivate {
+typedef struct _PeasExtensionBasePrivate
+{
PeasPluginInfo *info;
-};
+} PeasExtensionBasePrivate;
/* properties */
enum {
@@ -56,12 +57,7 @@ enum {
static GParamSpec *properties[N_PROPERTIES] = { NULL };
-G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (PeasExtensionBase,
- peas_extension_base,
- G_TYPE_OBJECT)
-
-#define GET_PRIV(o) \
- (peas_extension_base_get_instance_private (o))
+G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (PeasExtensionBase, peas_extension_base, G_TYPE_OBJECT)
static void
peas_extension_base_get_property (GObject *object,
@@ -76,9 +72,11 @@ peas_extension_base_get_property (GObject *object,
case PROP_PLUGIN_INFO:
g_value_set_boxed (value, peas_extension_base_get_plugin_info (extbase));
break;
+
case PROP_DATA_DIR:
g_value_take_string (value, peas_extension_base_get_data_dir (extbase));
break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -92,13 +90,14 @@ peas_extension_base_set_property (GObject *object,
GParamSpec *pspec)
{
PeasExtensionBase *extbase = PEAS_EXTENSION_BASE (object);
- PeasExtensionBasePrivate *priv = GET_PRIV (extbase);
+ PeasExtensionBasePrivate *priv = peas_extension_base_get_instance_private (extbase);
switch (prop_id)
{
case PROP_PLUGIN_INFO:
priv->info = g_value_get_boxed (value);
break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -165,7 +164,7 @@ peas_extension_base_class_init (PeasExtensionBaseClass *klass)
PeasPluginInfo *
peas_extension_base_get_plugin_info (PeasExtensionBase *extbase)
{
- PeasExtensionBasePrivate *priv = GET_PRIV (extbase);
+ PeasExtensionBasePrivate *priv = peas_extension_base_get_instance_private (extbase);
g_return_val_if_fail (PEAS_IS_EXTENSION_BASE (extbase), NULL);
@@ -182,10 +181,10 @@ peas_extension_base_get_plugin_info (PeasExtensionBase *extbase)
* Returns: A newly allocated string with the path of the
* directory where the plugin should look for its data files
*/
-gchar *
+char *
peas_extension_base_get_data_dir (PeasExtensionBase *extbase)
{
- PeasExtensionBasePrivate *priv = GET_PRIV (extbase);
+ PeasExtensionBasePrivate *priv = peas_extension_base_get_instance_private (extbase);
g_return_val_if_fail (PEAS_IS_EXTENSION_BASE (extbase), NULL);
diff --git a/libpeas/peas-extension-base.h b/libpeas/peas-extension-base.h
index cc8df5a..79fa835 100644
--- a/libpeas/peas-extension-base.h
+++ b/libpeas/peas-extension-base.h
@@ -34,30 +34,10 @@
G_BEGIN_DECLS
-/*
- * Type checking and casting macros
- */
-#define PEAS_TYPE_EXTENSION_BASE (peas_extension_base_get_type())
-#define PEAS_EXTENSION_BASE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PEAS_TYPE_EXTENSION_BASE, PeasExtensionBase))
-#define PEAS_EXTENSION_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PEAS_TYPE_EXTENSION_BASE, PeasExtensionBaseClass))
-#define PEAS_IS_EXTENSION_BASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PEAS_TYPE_EXTENSION_BASE))
-#define PEAS_IS_EXTENSION_BASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PEAS_TYPE_EXTENSION_BASE))
-#define PEAS_EXTENSION_BASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PEAS_TYPE_EXTENSION_BASE, PeasExtensionBaseClass))
-
-/**
- * PeasExtensionBase:
- *
- * Base class for C extensions.
- */
-typedef struct _PeasExtensionBase PeasExtensionBase;
-typedef struct _PeasExtensionBaseClass PeasExtensionBaseClass;
-typedef struct _PeasExtensionBasePrivate PeasExtensionBasePrivate;
-
-struct _PeasExtensionBase {
- GObject parent;
+#define PEAS_TYPE_EXTENSION_BASE (peas_extension_base_get_type())
- PeasExtensionBasePrivate *priv;
-};
+PEAS_AVAILABLE_IN_ALL
+G_DECLARE_DERIVABLE_TYPE (PeasExtensionBase, peas_extension_base, PEAS, EXTENSION_BASE, GObject)
/**
* PeasExtensionBaseClass:
@@ -65,22 +45,17 @@ struct _PeasExtensionBase {
*
* The class structure of #PeasExtensionBase.
*/
-struct _PeasExtensionBaseClass {
+struct _PeasExtensionBaseClass
+{
GObjectClass parent_class;
/*< private >*/
- gpointer padding[8];
+ gpointer _reserved[8];
};
-/*
- * Public methods
- */
-PEAS_AVAILABLE_IN_ALL
-GType peas_extension_base_get_type (void) G_GNUC_CONST;
-
PEAS_AVAILABLE_IN_ALL
-PeasPluginInfo *peas_extension_base_get_plugin_info (PeasExtensionBase *extbase);
+PeasPluginInfo *peas_extension_base_get_plugin_info (PeasExtensionBase *extbase);
PEAS_AVAILABLE_IN_ALL
-gchar *peas_extension_base_get_data_dir (PeasExtensionBase *extbase);
+char *peas_extension_base_get_data_dir (PeasExtensionBase *extbase);
G_END_DECLS