Changeset 25697163 in mainline for uspace/lib/c
- Timestamp:
- 2019-10-06T19:47:15Z (6 years ago)
- Children:
- 9559cf8
- Parents:
- 102f641
- git-author:
- Matthieu Riolo <matthieu.riolo@…> (2019-09-06 17:58:36)
- git-committer:
- Matthieu Riolo <matthieu.riolo@…> (2019-10-06 19:47:15)
- Location:
- uspace/lib/c
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/adt/dyn_array.c
r102f641 r25697163 44 44 #include <stdlib.h> 45 45 46 static int dyn_array_realloc(dyn_array_t *da, size_t capacity)46 static errno_t dyn_array_realloc(dyn_array_t *da, size_t capacity) 47 47 { 48 48 if (capacity == da->capacity) { … … 70 70 assert(index < da->size); 71 71 _dyn_array_unshift(da, index, 1); 72 int rc = dyn_array_reserve(da, da->size);72 errno_t rc = dyn_array_reserve(da, da->size); 73 73 assert(rc == EOK); 74 74 } … … 92 92 93 93 _dyn_array_unshift(da, begin, end - begin); 94 int rc = dyn_array_reserve(da, da->size);94 errno_t rc = dyn_array_reserve(da, da->size); 95 95 assert(rc == EOK); 96 96 } … … 104 104 * @return ENOMEM when allocation fails 105 105 */ 106 int dyn_array_concat(dyn_array_t *da1, dyn_array_t *da2)106 errno_t dyn_array_concat(dyn_array_t *da1, dyn_array_t *da2) 107 107 { 108 108 assert(da1->_item_size == da2->_item_size); 109 109 110 int rc = dyn_array_reserve(da1, da1->size + da2->size);110 errno_t rc = dyn_array_reserve(da1, da1->size + da2->size); 111 111 if (rc != EOK) { 112 112 return rc; … … 129 129 * @return ENOMEM 130 130 */ 131 int dyn_array_reserve(dyn_array_t *da, size_t capacity)131 errno_t dyn_array_reserve(dyn_array_t *da, size_t capacity) 132 132 { 133 133 const size_t factor = 2; -
uspace/lib/c/include/adt/dyn_array.h
r102f641 r25697163 36 36 #define LIBC_DYN_ARRAY_H_ 37 37 38 #include <errno.h> 38 39 #include <stdbool.h> 39 40 #include <stddef.h> … … 83 84 size_t _index = (index); \ 84 85 dyn_array_t *_da = (dyn_array); \ 85 int rc = dyn_array_reserve(_da, _da->size + 1); \86 errno_t rc = dyn_array_reserve(_da, _da->size + 1); \ 86 87 if (!rc) { \ 87 88 _dyn_array_shift(_da, _index, 1); \ … … 134 135 void dyn_array_clear(dyn_array_t *); 135 136 void dyn_array_clear_range(dyn_array_t *, size_t, size_t); 136 extern int dyn_array_concat(dyn_array_t *, dyn_array_t *);137 extern int dyn_array_reserve(dyn_array_t *, size_t);137 extern errno_t dyn_array_concat(dyn_array_t *, dyn_array_t *); 138 extern errno_t dyn_array_reserve(dyn_array_t *, size_t); 138 139 139 140 extern void _dyn_array_initialize(dyn_array_t *, size_t); -
uspace/lib/c/include/taskman_noasync.h
r102f641 r25697163 37 37 38 38 /* Internal functions to be used by NS only */ 39 extern int taskman_intro_ns_noasync(void);39 extern errno_t taskman_intro_ns_noasync(void); 40 40 41 41 extern void task_retval_noasync(int); -
uspace/lib/c/test/dyn_array.c
r102f641 r25697163 41 41 { 42 42 dyn_array_initialize(&da, data_t); 43 int rc = dyn_array_reserve(&da, 3);43 errno_t rc = dyn_array_reserve(&da, 3); 44 44 assert(rc == EOK); 45 45 }
Note:
See TracChangeset
for help on using the changeset viewer.