summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorentin Noël <corentin@elementary.io>2020-11-03 17:22:48 +0100
committerRico Tzschichholz <ricotz@ubuntu.com>2020-11-03 17:22:48 +0100
commitcee58e15ccc3b98d6d46700132cf533bdbcc8558 (patch)
tree65a6825acfd0dd441b9bfb4a7ad789d2f63993ed
parent88178a7dbe5bbedc24d672fc3e0a2d9a3086048f (diff)
downloadvala-wip/tintou/glib.tar.gz
glib-2.0: Add GenericArray.find_custom() as variant of find_with_equal_func()wip/tintou/glib
This allows the needle to be a different type as the actual element type. The implementation of ArraySearchFunc<G,T> is more customizable this way.
-rw-r--r--vapi/glib-2.0.vapi6
1 files changed, 6 insertions, 0 deletions
diff --git a/vapi/glib-2.0.vapi b/vapi/glib-2.0.vapi
index d024eb294..23841a337 100644
--- a/vapi/glib-2.0.vapi
+++ b/vapi/glib-2.0.vapi
@@ -5399,6 +5399,9 @@ namespace GLib {
public void** pdata;
}
+ [CCode (cname = "GEqualFunc", has_target = false)]
+ public delegate bool ArraySearchFunc<G,T> (G element, T needle);
+
[Compact]
[CCode (cname = "GPtrArray", cprefix = "g_ptr_array_", ref_function = "g_ptr_array_ref", unref_function = "g_ptr_array_unref", type_id = "G_TYPE_PTR_ARRAY")]
[GIR (name = "PtrArray")]
@@ -5416,6 +5419,9 @@ namespace GLib {
[Version (since = "2.54")]
public bool find (G needle, out uint index = null);
[Version (since = "2.54")]
+ [CCode (cname = "g_ptr_array_find_with_equal_func")]
+ public bool find_custom<T> (T needle, GLib.ArraySearchFunc<G,T>? equal_func, out uint index = null);
+ [Version (since = "2.54")]
public bool find_with_equal_func (G needle, GLib.EqualFunc<G>? equal_func, out uint index = null);
public void foreach (GLib.Func<G> func);
[CCode (cname = "g_ptr_array_index")]