poldek: trurlib/include/trurl/narray.h - iterator (NFY)
mis
mis at pld-linux.org
Thu Jul 12 12:57:04 CEST 2007
Author: mis Date: Thu Jul 12 10:57:04 2007 GMT
Module: poldek Tag: HEAD
---- Log message:
- iterator (NFY)
---- Files affected:
poldek/trurlib/include/trurl:
narray.h (1.31 -> 1.32)
---- Diffs:
================================================================
Index: poldek/trurlib/include/trurl/narray.h
diff -u poldek/trurlib/include/trurl/narray.h:1.31 poldek/trurlib/include/trurl/narray.h:1.32
--- poldek/trurlib/include/trurl/narray.h:1.31 Sun Jul 1 22:44:01 2007
+++ poldek/trurlib/include/trurl/narray.h Thu Jul 12 12:56:59 2007
@@ -71,7 +71,7 @@
tn_fn_free n_array_ctl_set_freefn(tn_array *arr, tn_fn_free free_fn);
tn_fn_cmp n_array_ctl_set_cmpfn(tn_array *arr, tn_fn_cmp cmp_fn);
-tn_fn_cmp n_array_ctl_get_cmpfn(tn_array *arr);
+tn_fn_cmp n_array_ctl_get_cmpfn(const tn_array *arr);
void n_array_free(tn_array *arr);
void n_array_cfree(tn_array **arrptr);
@@ -167,11 +167,9 @@
trurl_die__if_frozen(arr);
- if (arr->items == arr->allocated) {
- if (n_array_grow_priv_(arr, arr->allocated + 1) == 0)
- return 0;
- }
-
+ if (arr->items == arr->allocated)
+ n_array_grow_priv_(arr, arr->allocated + 1);
+
arr->data[arr->start_index + arr->items] = data;
arr->items++;
TN_ARRAY_clr_sorted(arr);
@@ -268,5 +266,32 @@
/* for debugging */
void n_array_dump_stats(const tn_array *arr, const char *name);
+
+#if 0 /* NFY */
+/* iterator */
+struct trurl_array_iterator {
+ tn_array *arr;
+ uint32_t i;
+};
+typedef struct trurl_array_iterator tn_array_it;
+
+static inline void n_array_it_init(tn_array_it *it, tn_array *arr)
+{
+ it->arr = arr;
+ it->i = arr->start_index;
+}
+
+static inline void *n_array_it_get(tn_array_it *it)
+{
+ void *ptr;
+
+ if (it->i >= it->arr->items)
+ return NULL;
+
+ ptr = n_array_nth(it->arr, it->i);
+ it->i++;
+ return ptr;
+}
+#endif /* NFY */
#endif /* TRURL_ARRAY_H */
================================================================
---- CVS-web:
http://cvs.pld-linux.org/poldek/trurlib/include/trurl/narray.h?r1=1.31&r2=1.32&f=u
More information about the pld-cvs-commit
mailing list