Mercurial > hg > python
diff cy_works/qu.pyx @ 68:eb91fd5d49b3
minimally changed to get Cython Queue example working, Cython version
author | Henry S Thompson <ht@inf.ed.ac.uk> |
---|---|
date | Fri, 17 Jan 2025 15:43:56 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cy_works/qu.pyx Fri Jan 17 15:43:56 2025 +0000 @@ -0,0 +1,24 @@ +# distutils: sources = c-algorithms/src/queue.c +# distutils: include_dirs = c-algorithms/src/ + +cimport cqu + +cdef class Queue: + cdef cqu.Queue* _c_queue + + def __cinit__(self): + self._c_queue = cqu.queue_new() + if self._c_queue == NULL: + raise MemoryError() + + def __dealloc__(self): + if self._c_queue != NULL: + cqu.queue_free(self._c_queue) + +cdef testMe(): + print('testing...') + q = Queue() + print(cqu.queue_is_empty(q._c_queue)) + print('tested') + +testMe()