Changeset 4b1c6a4b in mainline for uspace/lib/c/include/adt/dyn_array.h
- Timestamp:
- 2019-08-03T08:40:30Z (6 years ago)
- Children:
- 7671231
- Parents:
- 8432ae1
- git-author:
- Michal Koutny <xm.koutny+hos@…> (2015-04-25 00:30:34)
- git-committer:
- Matthieu Riolo <matthieu.riolo@…> (2019-08-03 08:40:30)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/include/adt/dyn_array.h
r8432ae1 r4b1c6a4b 97 97 /** Dynamic array iteration 98 98 * 99 * @param[in] it name of variable used as iterator, it's pointer to @p type 99 * @param[in] dyn_array dyn_array_t (not pointer) 100 * @param[in] it name of variable used as iterator, it's pointer 101 * to @p type 100 102 */ 101 103 #define dyn_array_foreach(dyn_array, type, it) \ … … 103 105 it != ((type *)(dyn_array)._data + (dyn_array).size); ++it) 104 106 107 /** Find first occurence of value 108 * 109 * @param[in] dyn_array dyn_array_t * 110 * @param[in] value value to search for 111 * 112 * @return index of found value or size of array when no found 113 */ 114 #define dyn_array_find(dyn_array, type, value) \ 115 ({ \ 116 size_t _result = (dyn_array)->size; \ 117 dyn_array_foreach(*(dyn_array), type, _it) { \ 118 if (*_it == value) { \ 119 _result = _it - (type *)(dyn_array)->_data; \ 120 break; \ 121 } \ 122 } \ 123 _result; \ 124 }) 105 125 106 126 extern void dyn_array_destroy(dyn_array_t *); 107 127 extern void dyn_array_remove(dyn_array_t *, size_t); 128 void dyn_array_clear(dyn_array_t *); 108 129 109 130 extern int _dyn_array_initialize(dyn_array_t *, size_t, size_t);
Note:
See TracChangeset
for help on using the changeset viewer.