/
githubmirror
/
cpython
Обзор
Документация
Войти
/
githubmirror
/
cpython
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
Include/internal/pycore_c_array.h
39 строк
971 B
Irit Katriel
gh-130080: move _Py_EnsureArrayLargeEnough to a separate header so it can be used outside of the compiler (#130930)
13 мар 2025, 19:02
Не верифицирован
13 мар 2025, 19:02
4242c2b
Код
Авторство
О чём код?
#ifndef Py_INTERNAL_C_ARRAY_H #define Py_INTERNAL_C_ARRAY_H #ifdef __cplusplus extern "C" { #endif #ifndef Py_BUILD_CORE # error "this header requires Py_BUILD_CORE define" #endif /* Utility for a number of growing arrays */ typedef struct { void *array; /* pointer to the array */ int allocated_entries; /* pointer to the capacity of the array */ size_t item_size; /* size of each element */ int initial_num_entries; /* initial allocation size */ } _Py_c_array_t; int _Py_CArray_Init(_Py_c_array_t* array, int item_size, int initial_num_entries); void _Py_CArray_Fini(_Py_c_array_t* array); /* If idx is out of bounds: * If arr->array is NULL, allocate arr->initial_num_entries slots. * Otherwise, double its size. * * Return 0 if successful and -1 (with exception set) otherwise. */ int _Py_CArray_EnsureCapacity(_Py_c_array_t *c_array, int idx); #ifdef __cplusplus } #endif #endif /* !Py_INTERNAL_C_ARRAY_H */