term.pxd 955 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. from libc.stdint cimport uint64_t
  2. # cdefs for serialize and deserialize methods
  3. cdef:
  4. #unsigned char *pack_data
  5. unsigned char term_type
  6. unsigned char *pack_fmt
  7. unsigned char *term_data
  8. unsigned char *term_datatype
  9. unsigned char *term_lang
  10. #size_t pack_size
  11. struct IdentifierTerm:
  12. char type
  13. unsigned char *data
  14. struct LiteralTerm:
  15. char type
  16. unsigned char *data
  17. unsigned char *datatype
  18. unsigned char *lang
  19. int serialize(term, unsigned char **pack_data, size_t *pack_size) except -1
  20. deserialize(unsigned char *data, size_t size)
  21. # cdefs for hash methods
  22. DEF _HLEN = 16
  23. ctypedef uint64_t Hash_128[2]
  24. ctypedef unsigned char Hash[_HLEN]
  25. cdef:
  26. uint64_t term_hash_seed1
  27. uint64_t term_hash_seed2
  28. unsigned char *term_hash_seed
  29. size_t SEED_LEN
  30. size_t HLEN
  31. void hash_(
  32. const unsigned char *message, size_t message_size, Hash *digest)