1 #ifndef _STRLIST_H 2 #define _STRLIST_H 3 4 #if defined(HAVE_PCREPOSIX) 5 #include <pcreposix.h> 6 #else 7 #include <regex.h> 8 #endif 9 10 typedef struct strlist strlist_t; 11 12 struct strlist 13 { 14 long flag; 15 char *path; 16 regex_t *re; 17 strlist_t *next; 18 }; 19 20 extern void strlists_free(struct strlist **strlist); 21 extern int strlist_add(struct strlist **strlist, 22 const char *path, long flag); 23 extern int strlist_add_sorted(struct strlist **strlist, 24 const char *path, long flag); 25 extern int strlist_add_sorted_uniq(struct strlist **strlist, 26 const char *path, long flag); 27 extern int strlist_compile_regexes(struct strlist *strlist); 28 extern int strlist_find(struct strlist *strlist, const char *path, long flag); 29 30 #endif 31