You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

31 lines
779 B

ctypedef void* (*malloc_t)(size_t n)
ctypedef void (*free_t)(void *p)
cdef class PyMalloc:
cdef malloc_t malloc
cdef void _set(self, malloc_t malloc)
cdef PyMalloc WrapMalloc(malloc_t malloc)
cdef class PyFree:
cdef free_t free
cdef void _set(self, free_t free)
cdef PyFree WrapFree(free_t free)
cdef class Pool:
cdef readonly size_t size
cdef readonly dict addresses
cdef readonly list refs
cdef readonly PyMalloc pymalloc
cdef readonly PyFree pyfree
cdef void* alloc(self, size_t number, size_t size) except NULL
cdef void free(self, void* addr) except *
cdef void* realloc(self, void* addr, size_t n) except NULL
cdef class Address:
cdef void* ptr
cdef readonly PyMalloc pymalloc
cdef readonly PyFree pyfree