mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-27 03:18:59 +02:00
Use G_DEFINE_[BOXED|POINTER]_TYPE instead of handwritten code
Now that we have convenience macros to implement boxed and pointer types, use them.
This commit is contained in:
@@ -45,21 +45,8 @@
|
||||
|
||||
/* ---------------------------------------------------------------------------------------------------- */
|
||||
|
||||
/* See also https://bugzilla.gnome.org/show_bug.cgi?id=449565 ... */
|
||||
#define _MY_DEFINE_BOXED_TYPE(TypeName, type_name) \
|
||||
GType \
|
||||
type_name##_get_type (void) \
|
||||
{ \
|
||||
static volatile gsize type_volatile = 0; \
|
||||
if (g_once_init_enter (&type_volatile)) \
|
||||
{ \
|
||||
GType type = g_boxed_type_register_static (g_intern_static_string (#TypeName), \
|
||||
(GBoxedCopyFunc) type_name##_ref, \
|
||||
(GBoxedFreeFunc) type_name##_unref); \
|
||||
g_once_init_leave (&type_volatile, type); \
|
||||
} \
|
||||
return (GType) type_volatile; \
|
||||
}
|
||||
#define _MY_DEFINE_BOXED_TYPE(TypeName, type_name) \
|
||||
G_DEFINE_BOXED_TYPE (TypeName, type_name, type_name##_ref, type_name##_unref)
|
||||
|
||||
_MY_DEFINE_BOXED_TYPE (GDBusNodeInfo, g_dbus_node_info);
|
||||
_MY_DEFINE_BOXED_TYPE (GDBusInterfaceInfo, g_dbus_interface_info);
|
||||
|
@@ -336,23 +336,9 @@ _g_file_attribute_value_dup (const GFileAttributeValue *other)
|
||||
return attr;
|
||||
}
|
||||
|
||||
GType
|
||||
g_file_attribute_info_list_get_type (void)
|
||||
{
|
||||
static volatile gsize g_define_type_id__volatile = 0;
|
||||
|
||||
if (g_once_init_enter (&g_define_type_id__volatile))
|
||||
{
|
||||
GType g_define_type_id =
|
||||
g_boxed_type_register_static (I_("GFileAttributeInfoList"),
|
||||
(GBoxedCopyFunc) g_file_attribute_info_list_dup,
|
||||
(GBoxedFreeFunc) g_file_attribute_info_list_unref);
|
||||
|
||||
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
||||
}
|
||||
|
||||
return g_define_type_id__volatile;
|
||||
}
|
||||
G_DEFINE_BOXED_TYPE (GFileAttributeInfoList, g_file_attribute_info_list,
|
||||
g_file_attribute_info_list_dup,
|
||||
g_file_attribute_info_list_unref)
|
||||
|
||||
static gboolean
|
||||
valid_char (char c)
|
||||
|
@@ -2147,23 +2147,9 @@ matcher_add (GFileAttributeMatcher *matcher,
|
||||
g_array_append_val (matcher->more_sub_matchers, s);
|
||||
}
|
||||
|
||||
GType
|
||||
g_file_attribute_matcher_get_type (void)
|
||||
{
|
||||
static volatile gsize g_define_type_id__volatile = 0;
|
||||
|
||||
if (g_once_init_enter (&g_define_type_id__volatile))
|
||||
{
|
||||
GType g_define_type_id =
|
||||
g_boxed_type_register_static (I_("GFileAttributeMatcher"),
|
||||
(GBoxedCopyFunc) g_file_attribute_matcher_ref,
|
||||
(GBoxedFreeFunc) g_file_attribute_matcher_unref);
|
||||
|
||||
g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
|
||||
}
|
||||
|
||||
return g_define_type_id__volatile;
|
||||
}
|
||||
G_DEFINE_BOXED_TYPE (GFileAttributeMatcher, g_file_attribute_matcher,
|
||||
g_file_attribute_matcher_ref,
|
||||
g_file_attribute_matcher_unref)
|
||||
|
||||
/**
|
||||
* g_file_attribute_matcher_new:
|
||||
|
@@ -65,21 +65,8 @@ struct _GSrvTarget {
|
||||
* A single target host/port that a network service is running on.
|
||||
*/
|
||||
|
||||
GType
|
||||
g_srv_target_get_type (void)
|
||||
{
|
||||
static volatile gsize type_volatile = 0;
|
||||
|
||||
if (g_once_init_enter (&type_volatile))
|
||||
{
|
||||
GType type = g_boxed_type_register_static (
|
||||
g_intern_static_string ("GSrvTarget"),
|
||||
(GBoxedCopyFunc) g_srv_target_copy,
|
||||
(GBoxedFreeFunc) g_srv_target_free);
|
||||
g_once_init_leave (&type_volatile, type);
|
||||
}
|
||||
return type_volatile;
|
||||
}
|
||||
G_DEFINE_BOXED_TYPE (GSrvTarget, g_srv_target,
|
||||
g_srv_target_copy, g_srv_target_free)
|
||||
|
||||
/**
|
||||
* g_srv_target_new:
|
||||
|
Reference in New Issue
Block a user