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.rdf.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. readonly lmdb_triplestore.LmdbTriplestore store
  15. public Keyset keys
  16. public object uri
  17. cc.key_compare_ft term_cmp_fn
  18. cc.key_compare_ft trp_cmp_fn
  19. void _match_ptn_callback(
  20. self, pattern, Graph gr, lookup_callback_fn_t callback_fn,
  21. bint callback_cond=*, void* ctx=*
  22. ) except *
  23. cpdef Graph copy(self, str uri=*)
  24. cpdef Graph empty_copy(self, str uri=*)
  25. cpdef void set(self, tuple trp) except *
  26. cdef:
  27. void add_trp_callback(Graph gr, const TripleKey* spok_p, void* ctx)