diff options
Diffstat (limited to 'python/gevent/__ident.pxd')
-rw-r--r-- | python/gevent/__ident.pxd | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/python/gevent/__ident.pxd b/python/gevent/__ident.pxd new file mode 100644 index 0000000..55e4307 --- /dev/null +++ b/python/gevent/__ident.pxd @@ -0,0 +1,26 @@ +cimport cython + +cdef extern from "Python.h": + + ctypedef class weakref.ref [object PyWeakReference]: + pass + +cdef heappop +cdef heappush +cdef object WeakKeyDictionary +cdef type ref + +@cython.internal +@cython.final +cdef class ValuedWeakRef(ref): + cdef object value + +@cython.final +cdef class IdentRegistry: + cdef object _registry + cdef list _available_idents + + @cython.final + cpdef object get_ident(self, obj) + @cython.final + cpdef _return_ident(self, ValuedWeakRef ref) |