graph.pxd 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. from libc.stdint cimport uint32_t, uint64_t
  2. from cymem.cymem cimport Pool
  3. cimport lakesuperior.cy_include.collections as cc
  4. from lakesuperior.model.base cimport Key, TripleKey
  5. from lakesuperior.model.graph.triple cimport BufferTriple
  6. from lakesuperior.model.structures.keyset cimport Keyset
  7. from lakesuperior.store.ldp_rs cimport lmdb_triplestore
  8. # Callback for an iterator.
  9. ctypedef void (*lookup_callback_fn_t)(
  10. Graph gr, const TripleKey* spok_p, void* ctx
  11. )
  12. cdef class Graph:
  13. cdef:
  14. lmdb_triplestore.LmdbTriplestore store
  15. Keyset keys
  16. cc.key_compare_ft term_cmp_fn
  17. cc.key_compare_ft trp_cmp_fn
  18. Graph copy(self, str uri=*)
  19. Graph empty_copy(self, str uri=*)
  20. void _match_ptn_callback(
  21. self, pattern, Graph gr,
  22. lookup_callback_fn_t callback_fn, void* ctx=*
  23. ) except *
  24. cpdef void set(self, tuple trp) except *
  25. cdef:
  26. void add_trp_callback(Graph gr, const TripleKey* spok_p, void* ctx)
  27. void del_trp_callback(Graph gr, const TripleKey* spok_p, void* ctx)