Sturla Molden skrev:
>
> cimport stdlib
>
> cdef class mallocbuffer:
>
> cdef readonly void *buf
> cdef readonly size_t nbytes
>
> def __cinit__(membuffer self, size_t nbytes):
> self.buf = stdlib.malloc(nbytes)
> if (self.buf == NULL):
> raise MemoryError, 'malloc failed'
> self.nbytes = nbytes
>
> def __dealloc__(membuffer self):
> if (self.buf): stdlib.free(self.buf)
>
Oops, two minor typos (it's getting late) :-)
cdef class membuffer:
cdef readonly void *buf
cdef readonly Py_ssize_t nbytes
def __cinit__(membuffer self, Py_ssize_t nbytes):
self.buf = stdlib.malloc(nbytes)
if (self.buf == NULL):
raise MemoryError, 'malloc failed'
self.nbytes = nbytes
def __dealloc__(membuffer self):
if (self.buf): stdlib.free(self.buf)
S.M.
_______________________________________________
Cython-dev mailing list
[email protected]
http://codespeak.net/mailman/listinfo/cython-dev