Update page '2.1. vtype_array'

Gregory Lirent 2022-08-17 15:04:34 +03:00
parent 99e8c3a7ad
commit 2bc1887dd6

@ -2,6 +2,15 @@
### [include/array.h](https://gogs.lirent.ru/lirent/libcdsb/src/master/include/array.h)
##### Интерфейс callback-функции доступа к элементу (далее CallbackT)
-`int callback(void* value, ssize_t index, vtype type, void* data)`
- `value` <- указатель на область памяти, в которой располагается объект, доступ к которому обеспечивается данной функцией.
- `index` <- индекс элемента, к которому обеспечивается доступ, в рамках контейнера.
- `type` <- значение типа, заданное константой перечисления **vtype**, соответствующее типу данных, к которым обеспечивается доступ.
- `data` <- произвольные пользовательские данные, которые будут переданны в callback вызывающим методом.
##### Базовый блок
- `void array_init(vtype_array* x, vtype type)`
- `void* array_at(const vtype_array* s, ssize_t index)`
@ -10,17 +19,14 @@
- `void array_reverse(vtype_array* x)`
##### Callback-функция доступа к элементу (далее Callback)
##### Макросы
- `void array_push_back(vtype_array* x, T value)`
- `bool array_countof(vtype_array* x, T value)`
- `bool array_remove(vtype_array* x, T value)`
- `bool in_array(vtype_array* x, T value)`
- `int array_pop(vtype_array* x, T value, void* data, Callback callback)`
- `int array_find(vtype_array* x, T value, void* data, Callback callback)`
- `int array_rfind(vtype_array* x, T value, void* data, Callback callback)`
- `int array_pop(vtype_array* x, T value, void* data, CallbackT callback)`
- `int array_find(vtype_array* x, T value, void* data, CallbackT callback)`
- `int array_rfind(vtype_array* x, T value, void* data, CallbackT callback)`
### [include/extra/array.h](https://gogs.lirent.ru/lirent/libcdsb/src/master/include/extra/array.h)
@ -34,10 +40,10 @@
##### Макросы
- `int array_get_by_index(vtype_array* x, ssize_t index, void* data, Callback callback)`
- `int array_pop_by_index(vtype_array* x, ssize_t index, void* data, Callback callback)`
- `int array_get_by_index(vtype_array* x, ssize_t index, void* data, CallbackT callback)`
- `int array_pop_by_index(vtype_array* x, ssize_t index, void* data, CallbackT callback)`
- `int array_remove_by_index(vtype_array* x, ssize_t index)`
- `int array_foreach(vtype_array* x, void* data, Callback callback)`
- `int array_foreach(vtype_array* x, void* data, CallbackT callback)`