#ifndef Py_INTERNAL_FREELIST_H
#define Py_INTERNAL_FREELIST_H
#ifdef __cplusplus
extern "C" {
#endif
#ifndef Py_BUILD_CORE
# error "this header requires Py_BUILD_CORE define"
#endif
#include "pycore_freelist_state.h"
#include "pycore_object.h"
#include "pycore_pystate.h"
#include "pycore_code.h"
static inline struct _Py_freelists *
_Py_freelists_GET(void)
{ … }
#define _Py_FREELIST_FREE(NAME, op, freefunc) …
#define _Py_FREELIST_PUSH(NAME, op, limit) …
#define _Py_FREELIST_POP(TYPE, NAME) …
#define _Py_FREELIST_POP_MEM(NAME) …
#define _Py_FREELIST_SIZE(NAME) …
static inline int
_PyFreeList_Push(struct _Py_freelist *fl, void *obj, Py_ssize_t maxsize)
{ … }
static inline void
_PyFreeList_Free(struct _Py_freelist *fl, void *obj, Py_ssize_t maxsize,
freefunc dofree)
{ … }
static inline void *
_PyFreeList_PopNoStats(struct _Py_freelist *fl)
{ … }
static inline PyObject *
_PyFreeList_Pop(struct _Py_freelist *fl)
{ … }
static inline void *
_PyFreeList_PopMem(struct _Py_freelist *fl)
{ … }
extern void _PyObject_ClearFreeLists(struct _Py_freelists *freelists, int is_finalization);
#ifdef __cplusplus
}
#endif
#endif