{
g_return_if_fail (self != NULL);
g_return_if_fail (other != NULL);
-
+
if (self == other)
return;
{
g_return_if_fail (self != NULL);
g_return_if_fail (other != NULL);
-
+
if (self == other)
return;
{
g_return_if_fail (self != NULL);
g_return_if_fail (other != NULL);
-
+
if (self == other)
{
roaring_bitmap_clear (&self->roaring);
{
g_return_if_fail (self != NULL);
g_return_if_fail (other != NULL);
-
+
if (self == other)
{
roaring_bitmap_clear (&self->roaring);
G_STATIC_ASSERT (sizeof (GtkBitsetIter) >= sizeof (roaring_uint32_iterator_t));
+static GtkBitsetIter *
+gtk_bitset_iter_copy (GtkBitsetIter *iter)
+{
+ roaring_uint32_iterator_t *riter = (roaring_uint32_iterator_t *) iter;
+
+ return (GtkBitsetIter *) roaring_copy_uint32_iterator (riter);
+}
+
+static void
+gtk_bitset_iter_free (GtkBitsetIter *iter)
+{
+ roaring_uint32_iterator_t *riter = (roaring_uint32_iterator_t *) iter;
+
+ roaring_free_uint32_iterator (riter);
+}
+
+G_DEFINE_BOXED_TYPE (GtkBitsetIter, gtk_bitset_iter, gtk_bitset_iter_copy, gtk_bitset_iter_free)
+
/**
* gtk_bitset_iter_init_first:
* @iter: (out): a pointer to an uninitialized `GtkBitsetIter`
gpointer private_data[10];
};
+GDK_AVAILABLE_IN_4_6
+GType gtk_bitset_iter_get_type (void) G_GNUC_CONST;
+
GDK_AVAILABLE_IN_ALL
gboolean gtk_bitset_iter_init_first (GtkBitsetIter *iter,
const GtkBitset *set,
guint gtk_bitset_iter_get_value (const GtkBitsetIter *iter);
GDK_AVAILABLE_IN_ALL
gboolean gtk_bitset_iter_is_valid (const GtkBitsetIter *iter);
-
-
G_END_DECLS