Update page '2. Заголовочные файлы'
parent
0f81b8e490
commit
e4cbfccf75
@ -34,93 +34,119 @@
|
||||
|
||||
##### 1. Определение размера контейнера
|
||||
- `size_t string_size(const vtype_string* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_string**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_string**.
|
||||
- Возвращает подсчитанное количество символов в строке (с поддержкой юникода).
|
||||
- `size_t string_nmemb(const vtype_string* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_string**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_string**.
|
||||
- Возвращает подсчитанный размер строки в байтах (также как это сделал бы **strlen**)
|
||||
- `size_t array_size(const vtype_array* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_array**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_array**.
|
||||
- Возвращает количество элементов находящихся внутри контейнера.
|
||||
- `size_t array_nmemb(const vtype_array* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_array**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_array**.
|
||||
- Возвращает размер блока памяти контейнера в байтах.
|
||||
- `size_t list_size(const vtype_list* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_list**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_list**.
|
||||
- Возвращает подсчитанное количество элементов, находящихся внутри контейнера.
|
||||
- `size_t map_size(const vtype_map* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_map**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_map**.
|
||||
- Возвращает подсчитанное количество элементов, находящихся внутри контейнера.
|
||||
- `size_t vset_size(const vtype_set* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_set**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_set**.
|
||||
- Возвращает подсчитанное количество элементов, находящихся внутри контейнера.
|
||||
- `size_t dict_size(const vtype_dict* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_dict**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_dict**.
|
||||
- Возвращает количество элементов, находящихся внутри контейнера.
|
||||
- `size_t dict_capacity(const vtype_dict* x)`
|
||||
- Принимает указатель на инициализированное значение **vtype_dict**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_dict**.
|
||||
- Возвращает текущий размер таблицы, доступной для вставки значений.
|
||||
|
||||
|
||||
##### 2. Сравнение контейнеров между собой (также см. [1.1. Система типов](https://gogs.lirent.ru/lirent/libcdsb/wiki/1.1.+%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0+%D1%82%D0%B8%D0%BF%D0%BE%D0%B2))
|
||||
- `int string_compare(const vtype_string* s0, const vtype_string* s1)`
|
||||
- Принимает два указателя на инициализированные значения **vtype_string**.
|
||||
- Принимает два указателя на области памяти, содержащие инициализированные значения **vtype_string**.
|
||||
- Возвращает 0 если строки равны, значения < 0 и > 0, если значение s0 меньше или больше значения s1 соответственно.
|
||||
- `int array_compare(const vtype_array* s0, const vtype_array* s1)`
|
||||
- Принимает два указателя на инициализированные значения **vtype_array**.
|
||||
- Принимает два указателя на области памяти, содержащие инициализированные значения **vtype_array**.
|
||||
- Возвращает 0 если значения контейнеров равны, значения < 0 и > 0, если значения s0 меньше или больше значений s1 соответственно.
|
||||
- `int list_compare(const vtype_list* s0, const vtype_list* s1)`
|
||||
- Принимает два указателя на инициализированные значения **vtype_list**.
|
||||
- Принимает два указателя на области памяти, содержащие инициализированные значения **vtype_list**.
|
||||
- Возвращает 0 если значения контейнеров равны, значения < 0 и > 0, если значения s0 меньше или больше значений s1 соответственно.
|
||||
- `int map_compare(const vtype_map* s0, const vtype_map* s1)`
|
||||
- Принимает два указателя на инициализированные значения **vtype_map**.
|
||||
- Принимает два указателя на области памяти, содержащие инициализированные значения **vtype_map**.
|
||||
- Возвращает 0 если значения контейнеров равны, значения < 0 и > 0, если значения s0 меньше или больше значений s1 соответственно.
|
||||
- `int vset_compare(const vtype_set* s0, const vtype_set* s1)`
|
||||
- Принимает два указателя на инициализированные значения **vtype_set**.
|
||||
- Принимает два указателя на области памяти, содержащие инициализированные значения **vtype_set**.
|
||||
- Возвращает 0 если значения контейнеров равны, значения < 0 и > 0, если значения s0 меньше или больше значений s1 соответственно.
|
||||
- `int dict_compare(const vtype_dict* s0, const vtype_dict* s1)`
|
||||
- Принимает два указателя на инициализированные значения **vtype_dict**.
|
||||
- Принимает два указателя на области памяти, содержащие инициализированные значения **vtype_dict**.
|
||||
- Возвращает 0 если значения контейнеров равны, значения < 0 и > 0, если значения s0 меньше или больше значений s1 соответственно.
|
||||
|
||||
|
||||
##### 3. Глубокое копирование контейнера
|
||||
- `vtype_string string_copy(const vtype_string* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_string**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_string**.
|
||||
- Возвращает новое инициализированное значение строки, равное содержимому `s`.
|
||||
- `vtype_array array_copy(const vtype_array* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_array**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_array**.
|
||||
- Возвращает новое инициализированное значение контейнера, равное содержимому `s`.
|
||||
- `vtype_list list_copy(const vtype_list* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_list**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_list**.
|
||||
- Возвращает новое инициализированное значение контейнера, равное содержимому `s`.
|
||||
- `vtype_map map_copy(const vtype_map* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_map**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_map**.
|
||||
- Возвращает новое инициализированное значение контейнера, равное содержимому `s`.
|
||||
- `vtype_set vset_copy(const vtype_set* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_set**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_set**.
|
||||
- Возвращает новое инициализированное значение контейнера, равное содержимому `s`.
|
||||
- `vtype_dict dict_copy(const vtype_dict* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_dict**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_dict**.
|
||||
- Возвращает новое инициализированное значение контейнера, равное содержимому `s`.
|
||||
|
||||
|
||||
##### 4. Глубокое копирование области памяти, содержащей контейнер
|
||||
- `vtype_string* string_duplicate(const vtype_string* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_string**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_string**.
|
||||
- Возвращает новый выделенный блок памяти (равный `sizeof(vtype_string)`), инициализированный значением строки, равным содержимому `s`.
|
||||
- `vtype_array* array_duplicate(const vtype_array* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_array**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_array**.
|
||||
- Возвращает новый выделенный блок памяти (равный `sizeof(vtype_array)`), инициализированный значением контейнера, равным содержимому `s`.
|
||||
- `vtype_list* list_duplicate(const vtype_list* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_list**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_list**.
|
||||
- Возвращает новый выделенный блок памяти (равный `sizeof(vtype_list)`), инициализированный значением контейнера, равным содержимому `s`.
|
||||
- `vtype_map* map_duplicate(const vtype_map* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_map**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_map**.
|
||||
- Возвращает новый выделенный блок памяти (равный `sizeof(vtype_map)`), инициализированный значением контейнера, равным содержимому `s`.
|
||||
- `vtype_set* vset_duplicate(const vtype_set* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_set**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_set**.
|
||||
- Возвращает новый выделенный блок памяти (равный `sizeof(vtype_set)`), инициализированный значением контейнера, равным содержимому `s`.
|
||||
- `vtype_dict* dict_duplicate(const vtype_dict* s)`
|
||||
- Принимает указатель на инициализированное значение **vtype_dict**.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_dict**.
|
||||
- Возвращает новый выделенный блок памяти (равный `sizeof(vtype_dict)`), инициализированный значением контейнера, равным содержимому `s`.
|
||||
|
||||
|
||||
##### 5. Инициализация контейнера значением другого контейнера
|
||||
- `void string_copy_init(vtype_string* x, const vtype_string* s)`
|
||||
- Принимает указатель на область памяти, содержащую инициализируемую строку `x`.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_string** `s`.
|
||||
- Инициализирует область памяти `x` значением строки, равным содержимому `s`.
|
||||
- `void array_copy_init(vtype_array* x, const vtype_array* s)`
|
||||
- Принимает указатель на область памяти, содержащую инициализируемый контейнер `x`.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_array** `s`.
|
||||
- Инициализирует область памяти `x` значением контейнера, равным содержимому `s`.
|
||||
- `void list_copy_init(vtype_list* x, const vtype_list* s)`
|
||||
- Принимает указатель на область памяти, содержащую инициализируемый контейнер `x`.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_list** `s`.
|
||||
- Инициализирует область памяти `x` значением контейнера, равным содержимому `s`.
|
||||
- `void map_copy_init(vtype_map* x, const vtype_map* s)`
|
||||
- Принимает указатель на область памяти, содержащую инициализируемый контейнер `x`.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_map** `s`.
|
||||
- Инициализирует область памяти `x` значением контейнера, равным содержимому `s`.
|
||||
- `void vset_copy_init(vtype_set* x, const vtype_set* s)`
|
||||
- Принимает указатель на область памяти, содержащую инициализируемый контейнер `x`.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_set** `s`.
|
||||
- Инициализирует область памяти `x` значением контейнера, равным содержимому `s`.
|
||||
- `void dict_copy_init(vtype_dict* x, const vtype_dict* s)`
|
||||
- Принимает указатель на область памяти, содержащую инициализируемый контейнер `x`.
|
||||
- Принимает указатель на область памяти, содержащую инициализированное значение **vtype_dict** `s`.
|
||||
- Инициализирует область памяти `x` значением контейнера, равным содержимому `s`.
|
||||
|
Loading…
Reference in New Issue
Block a user