+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
+Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org>
+
+ * glib.h garray.[ch]: added g_array_insert_vals() to
+ insert elements at an arbitrary index, and
+ g_array_insert_val() macro.
+
Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org>
* glib.h:
}
GArray*
+g_array_insert_vals (GArray *farray,
+ guint index,
+ gconstpointer data,
+ guint len)
+{
+ GRealArray *array = (GRealArray*) farray;
+
+ g_array_maybe_expand (array, len);
+
+ g_memmove (array->data + array->elt_size * (len + index),
+ array->data + array->elt_size * index,
+ array->elt_size * (array->len - index));
+
+ memcpy (array->data + array->elt_size * index, data, len * array->elt_size);
+
+ array->len += len;
+
+ return farray;
+}
+
+GArray*
g_array_set_size (GArray *farray,
guint length)
{
#define g_array_append_val(a,v) g_array_append_vals(a,&v,1)
#define g_array_prepend_val(a,v) g_array_prepend_vals(a,&v,1)
+#define g_array_insert_val(a,i,v) g_array_prepend_vals(a,i,&v,1)
#define g_array_index(a,t,i) (((t*)a->data)[i])
GArray* g_array_new (gboolean zero_terminated,
GArray* g_array_prepend_vals (GArray *array,
gconstpointer data,
guint len);
+GArray* g_array_insert_vals (GArray *array,
+ guint index,
+ gconstpointer data,
+ guint len);
GArray* g_array_set_size (GArray *array,
guint length);
GArray* g_array_remove_index (GArray *array,
}
GArray*
+g_array_insert_vals (GArray *farray,
+ guint index,
+ gconstpointer data,
+ guint len)
+{
+ GRealArray *array = (GRealArray*) farray;
+
+ g_array_maybe_expand (array, len);
+
+ g_memmove (array->data + array->elt_size * (len + index),
+ array->data + array->elt_size * index,
+ array->elt_size * (array->len - index));
+
+ memcpy (array->data + array->elt_size * index, data, len * array->elt_size);
+
+ array->len += len;
+
+ return farray;
+}
+
+GArray*
g_array_set_size (GArray *farray,
guint length)
{
#define g_array_append_val(a,v) g_array_append_vals(a,&v,1)
#define g_array_prepend_val(a,v) g_array_prepend_vals(a,&v,1)
+#define g_array_insert_val(a,i,v) g_array_prepend_vals(a,i,&v,1)
#define g_array_index(a,t,i) (((t*)a->data)[i])
GArray* g_array_new (gboolean zero_terminated,
GArray* g_array_prepend_vals (GArray *array,
gconstpointer data,
guint len);
+GArray* g_array_insert_vals (GArray *array,
+ guint index,
+ gconstpointer data,
+ guint len);
GArray* g_array_set_size (GArray *array,
guint length);
GArray* g_array_remove_index (GArray *array,