|
Bernhard M. Wiedemann |
f155be |
From c44d8e323affd7f1043f300f3325b358cd5b5f0b Mon Sep 17 00:00:00 2001
|
|
Bernhard M. Wiedemann |
f155be |
From: Rico Tzschichholz <ricotz@ubuntu.com>
|
|
Bernhard M. Wiedemann |
f155be |
Date: Sun, 30 Jan 2022 19:42:32 +0100
|
|
Bernhard M. Wiedemann |
f155be |
Subject: [PATCH] folks-generics: Add missing generic type argument
|
|
Bernhard M. Wiedemann |
f155be |
|
|
Bernhard M. Wiedemann |
f155be |
---
|
|
Bernhard M. Wiedemann |
f155be |
folks/folks-generics.vapi | 2 +-
|
|
Bernhard M. Wiedemann |
f155be |
folks/small-set.c | 15 ++++-----------
|
|
Bernhard M. Wiedemann |
f155be |
folks/small-set.h | 5 ++++-
|
|
Bernhard M. Wiedemann |
f155be |
3 files changed, 9 insertions(+), 13 deletions(-)
|
|
Bernhard M. Wiedemann |
f155be |
|
|
Bernhard M. Wiedemann |
f155be |
diff --git a/folks/folks-generics.vapi b/folks/folks-generics.vapi
|
|
Bernhard M. Wiedemann |
f155be |
index 389025b6..c8a06e96 100644
|
|
Bernhard M. Wiedemann |
f155be |
--- a/folks/folks-generics.vapi
|
|
Bernhard M. Wiedemann |
f155be |
+++ b/folks/folks-generics.vapi
|
|
Bernhard M. Wiedemann |
f155be |
@@ -37,7 +37,7 @@ namespace Folks
|
|
Bernhard M. Wiedemann |
f155be |
internal SmallSet (owned Gee.HashDataFunc<G>? item_hash = null,
|
|
Bernhard M. Wiedemann |
f155be |
owned Gee.EqualDataFunc<G>? item_equals = null);
|
|
Bernhard M. Wiedemann |
f155be |
|
|
Bernhard M. Wiedemann |
f155be |
- internal static SmallSet<G> copy (Gee.Iterable<G> iterable,
|
|
Bernhard M. Wiedemann |
f155be |
+ internal static SmallSet<G> copy<G> (Gee.Iterable<G> iterable,
|
|
Bernhard M. Wiedemann |
f155be |
owned Gee.HashDataFunc<G>? item_hash = null,
|
|
Bernhard M. Wiedemann |
f155be |
owned Gee.EqualDataFunc<G>? item_equals = null);
|
|
Bernhard M. Wiedemann |
f155be |
|
|
Bernhard M. Wiedemann |
f155be |
diff --git a/folks/small-set.c b/folks/small-set.c
|
|
Bernhard M. Wiedemann |
f155be |
index b5a19683..39790755 100644
|
|
Bernhard M. Wiedemann |
f155be |
--- a/folks/small-set.c
|
|
Bernhard M. Wiedemann |
f155be |
+++ b/folks/small-set.c
|
|
Bernhard M. Wiedemann |
f155be |
@@ -337,7 +337,10 @@ _folks_small_set_new_take_array (GPtrArray *arr,
|
|
Bernhard M. Wiedemann |
f155be |
* Returns: (transfer full):
|
|
Bernhard M. Wiedemann |
f155be |
*/
|
|
Bernhard M. Wiedemann |
f155be |
FolksSmallSet *
|
|
Bernhard M. Wiedemann |
f155be |
-folks_small_set_copy (GeeIterable *iterable,
|
|
Bernhard M. Wiedemann |
f155be |
+folks_small_set_copy (GType item_type,
|
|
Bernhard M. Wiedemann |
f155be |
+ GBoxedCopyFunc item_dup,
|
|
Bernhard M. Wiedemann |
f155be |
+ GDestroyNotify item_free,
|
|
Bernhard M. Wiedemann |
f155be |
+ GeeIterable *iterable,
|
|
Bernhard M. Wiedemann |
f155be |
GeeHashDataFunc item_hash,
|
|
Bernhard M. Wiedemann |
f155be |
gpointer item_hash_data,
|
|
Bernhard M. Wiedemann |
f155be |
GDestroyNotify item_hash_data_free,
|
|
Bernhard M. Wiedemann |
f155be |
@@ -347,10 +350,6 @@ folks_small_set_copy (GeeIterable *iterable,
|
|
Bernhard M. Wiedemann |
f155be |
{
|
|
Bernhard M. Wiedemann |
f155be |
FolksSmallSet *self;
|
|
Bernhard M. Wiedemann |
f155be |
GeeIterator *iter;
|
|
Bernhard M. Wiedemann |
f155be |
- GeeTraversableIface *traversable_iface;
|
|
Bernhard M. Wiedemann |
f155be |
- GType item_type;
|
|
Bernhard M. Wiedemann |
f155be |
- GBoxedCopyFunc item_dup;
|
|
Bernhard M. Wiedemann |
f155be |
- GDestroyNotify item_free;
|
|
Bernhard M. Wiedemann |
f155be |
|
|
Bernhard M. Wiedemann |
f155be |
/* Deliberately not allowing for subclasses here: this class is not
|
|
Bernhard M. Wiedemann |
f155be |
* subclassable, and it's slower if we do check for subclasses. */
|
|
Bernhard M. Wiedemann |
f155be |
@@ -376,12 +375,6 @@ folks_small_set_copy (GeeIterable *iterable,
|
|
Bernhard M. Wiedemann |
f155be |
return self;
|
|
Bernhard M. Wiedemann |
f155be |
}
|
|
Bernhard M. Wiedemann |
f155be |
|
|
Bernhard M. Wiedemann |
f155be |
- traversable_iface = GEE_TRAVERSABLE_GET_INTERFACE (iterable);
|
|
Bernhard M. Wiedemann |
f155be |
- g_assert (traversable_iface != NULL);
|
|
Bernhard M. Wiedemann |
f155be |
- item_type = traversable_iface->get_g_type ((GeeTraversable *) iterable);
|
|
Bernhard M. Wiedemann |
f155be |
- item_dup = traversable_iface->get_g_dup_func ((GeeTraversable *) iterable);
|
|
Bernhard M. Wiedemann |
f155be |
- item_free = traversable_iface->get_g_destroy_func ((GeeTraversable *) iterable);
|
|
Bernhard M. Wiedemann |
f155be |
-
|
|
Bernhard M. Wiedemann |
f155be |
self = folks_small_set_new (item_type, item_dup, item_free,
|
|
Bernhard M. Wiedemann |
f155be |
item_hash, item_hash_data, item_hash_data_free,
|
|
Bernhard M. Wiedemann |
f155be |
item_equals, item_equals_data, item_equals_data_free);
|
|
Bernhard M. Wiedemann |
f155be |
diff --git a/folks/small-set.h b/folks/small-set.h
|
|
Bernhard M. Wiedemann |
f155be |
index e61f387e..5df54ce3 100644
|
|
Bernhard M. Wiedemann |
f155be |
--- a/folks/small-set.h
|
|
Bernhard M. Wiedemann |
f155be |
+++ b/folks/small-set.h
|
|
Bernhard M. Wiedemann |
f155be |
@@ -68,7 +68,10 @@ folks_small_set_empty (GType item_type,
|
|
Bernhard M. Wiedemann |
f155be |
GBoxedCopyFunc item_dup,
|
|
Bernhard M. Wiedemann |
f155be |
GDestroyNotify item_free);
|
|
Bernhard M. Wiedemann |
f155be |
|
|
Bernhard M. Wiedemann |
f155be |
-FolksSmallSet *folks_small_set_copy (GeeIterable *iterable,
|
|
Bernhard M. Wiedemann |
f155be |
+FolksSmallSet *folks_small_set_copy (GType item_type,
|
|
Bernhard M. Wiedemann |
f155be |
+ GBoxedCopyFunc item_dup,
|
|
Bernhard M. Wiedemann |
f155be |
+ GDestroyNotify item_free,
|
|
Bernhard M. Wiedemann |
f155be |
+ GeeIterable *iterable,
|
|
Bernhard M. Wiedemann |
f155be |
GeeHashDataFunc item_hash,
|
|
Bernhard M. Wiedemann |
f155be |
gpointer item_hash_data,
|
|
Bernhard M. Wiedemann |
f155be |
GDestroyNotify item_hash_data_free,
|
|
Bernhard M. Wiedemann |
f155be |
--
|
|
Bernhard M. Wiedemann |
f155be |
GitLab
|
|
Bernhard M. Wiedemann |
f155be |
|