str: Support mLib's `str' functions.
[mLib-python] / defs.pxi
index 10502f7..69f4adb 100644 (file)
--- a/defs.pxi
+++ b/defs.pxi
@@ -42,6 +42,7 @@ cdef extern from 'stddef.h':
 cdef extern from 'string.h':
   void memcpy(void *p, void *q, size_t n)
   char *strerror(int err)
+  size_t strlen(char *p)
 
 #----- Unix interface -------------------------------------------------------
 
@@ -151,6 +152,16 @@ cdef extern from 'mLib/sym.h':
   void sym_mkiter(sym_iter *i, sym_table *t)
   void *sym_next(sym_iter *i)
 
+#----- String utilities -----------------------------------------------------
+
+cdef extern from 'mLib/str.h':
+  enum:
+    STRF_QUOTE
+  char *str_qword(char **pp, unsigned f)
+  size_t str_qsplit(char *p, char **v, size_t c, char **rest, unsigned f)
+  int str_match(char *p, char *s)
+  void str_sanitize(char *d, char *p, size_t sz)
+
 #----- Atom stuff -----------------------------------------------------------
 
 # --- Atoms ---