from libc.stdint cimport uint64_t ctypedef uint64_t key_t ctypedef size_t val_t cdef struct Cell: key_t key val_t value cdef class PointerHash: cdef size_t size cdef size_t filled cdef Cell* cells cdef size_t find_slot(self, key_t key) cdef Cell* lookup(self, key_t key) cdef void insert(self, key_t key, val_t value) cdef void resize(self, size_t new_size)