mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-12 23:46:17 +01:00
minor cleanups, implemented G_TYPE_HASH_TABLE.
Wed Nov 23 13:36:02 2005 Tim Janik <timj@gtk.org> * gboxed.[hc]: minor cleanups, implemented G_TYPE_HASH_TABLE.
This commit is contained in:
parent
fe749cbd3b
commit
02b62d08cc
@ -1,3 +1,7 @@
|
|||||||
|
Wed Nov 23 13:36:02 2005 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gboxed.[hc]: minor cleanups, implemented G_TYPE_HASH_TABLE.
|
||||||
|
|
||||||
2005-11-17 Matthias Clasen <mclasen@redhat.com>
|
2005-11-17 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* === Released 2.9.0 ===
|
* === Released 2.9.0 ===
|
||||||
|
@ -93,30 +93,6 @@ value_free (gpointer boxed)
|
|||||||
g_free (value);
|
g_free (value);
|
||||||
}
|
}
|
||||||
|
|
||||||
static gpointer
|
|
||||||
gdate_copy (gpointer boxed)
|
|
||||||
{
|
|
||||||
const GDate *date = (const GDate*) boxed;
|
|
||||||
|
|
||||||
return g_date_new_julian (g_date_get_julian (date));
|
|
||||||
}
|
|
||||||
|
|
||||||
static gpointer
|
|
||||||
gstring_copy (gpointer boxed)
|
|
||||||
{
|
|
||||||
const GString *src_gstring = boxed;
|
|
||||||
|
|
||||||
return g_string_new_len (src_gstring->str, src_gstring->len);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
gstring_free (gpointer boxed)
|
|
||||||
{
|
|
||||||
GString *gstring = boxed;
|
|
||||||
|
|
||||||
g_string_free (gstring, TRUE);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
g_boxed_type_init (void)
|
g_boxed_type_init (void)
|
||||||
{
|
{
|
||||||
@ -180,6 +156,14 @@ g_value_array_get_type (void)
|
|||||||
return type_id;
|
return type_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static gpointer
|
||||||
|
gdate_copy (gpointer boxed)
|
||||||
|
{
|
||||||
|
const GDate *date = (const GDate*) boxed;
|
||||||
|
|
||||||
|
return g_date_new_julian (g_date_get_julian (date));
|
||||||
|
}
|
||||||
|
|
||||||
GType
|
GType
|
||||||
g_date_get_type (void)
|
g_date_get_type (void)
|
||||||
{
|
{
|
||||||
@ -204,18 +188,59 @@ g_strv_get_type (void)
|
|||||||
return type_id;
|
return type_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static gpointer
|
||||||
|
gstring_copy (gpointer boxed)
|
||||||
|
{
|
||||||
|
const GString *src_gstring = boxed;
|
||||||
|
|
||||||
|
return g_string_new_len (src_gstring->str, src_gstring->len);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gstring_free (gpointer boxed)
|
||||||
|
{
|
||||||
|
GString *gstring = boxed;
|
||||||
|
|
||||||
|
g_string_free (gstring, TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
GType
|
GType
|
||||||
g_gstring_get_type (void)
|
g_gstring_get_type (void)
|
||||||
{
|
{
|
||||||
static GType type_id = 0;
|
static GType type_id = 0;
|
||||||
|
|
||||||
if (!type_id)
|
if (!type_id)
|
||||||
type_id = g_boxed_type_register_static (g_intern_static_string ("GString"), /* the naming is a bit odd, but GString is obviously not G_TYPE_STRING */
|
type_id = g_boxed_type_register_static (g_intern_static_string ("GString"),
|
||||||
|
/* the naming is a bit odd, but GString is obviously not G_TYPE_STRING */
|
||||||
gstring_copy,
|
gstring_copy,
|
||||||
gstring_free);
|
gstring_free);
|
||||||
return type_id;
|
return type_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static gpointer
|
||||||
|
hash_table_copy (gpointer boxed)
|
||||||
|
{
|
||||||
|
GHashTable *hash_table = boxed;
|
||||||
|
return g_hash_table_ref (hash_table);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
hash_table_free (gpointer boxed)
|
||||||
|
{
|
||||||
|
GHashTable *hash_table = boxed;
|
||||||
|
g_hash_table_unref (hash_table);
|
||||||
|
}
|
||||||
|
|
||||||
|
GType
|
||||||
|
g_hash_table_get_type (void)
|
||||||
|
{
|
||||||
|
static GType type_id = 0;
|
||||||
|
if (!type_id)
|
||||||
|
type_id = g_boxed_type_register_static (g_intern_static_string ("GHashTable"),
|
||||||
|
hash_table_copy, hash_table_free);
|
||||||
|
return type_id;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
boxed_proxy_value_init (GValue *value)
|
boxed_proxy_value_init (GValue *value)
|
||||||
{
|
{
|
||||||
|
@ -63,6 +63,7 @@ GType g_boxed_type_register_static (const gchar *name,
|
|||||||
#define G_TYPE_DATE (g_date_get_type ())
|
#define G_TYPE_DATE (g_date_get_type ())
|
||||||
#define G_TYPE_STRV (g_strv_get_type ())
|
#define G_TYPE_STRV (g_strv_get_type ())
|
||||||
#define G_TYPE_GSTRING (g_gstring_get_type ())
|
#define G_TYPE_GSTRING (g_gstring_get_type ())
|
||||||
|
#define G_TYPE_HASH_TABLE (g_hash_table_get_type ())
|
||||||
|
|
||||||
|
|
||||||
void g_value_take_boxed (GValue *value,
|
void g_value_take_boxed (GValue *value,
|
||||||
|
Loading…
Reference in New Issue
Block a user