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()