strlist.h 897 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef VSF_STRLIST_H
  2. #define VSF_STRLIST_H
  3. /* Forward declarations */
  4. struct mystr;
  5. struct mystr_list_node;
  6. struct mystr_list
  7. {
  8. unsigned int PRIVATE_HANDS_OFF_alloc_len;
  9. unsigned int PRIVATE_HANDS_OFF_list_len;
  10. struct mystr_list_node* PRIVATE_HANDS_OFF_p_nodes;
  11. };
  12. #define INIT_STRLIST \
  13. { 0, 0, (void*)0 }
  14. void str_list_free(struct mystr_list* p_list);
  15. void str_list_add(struct mystr_list* p_list, const struct mystr* p_str,
  16. const struct mystr* p_sort_key_str);
  17. void str_list_sort(struct mystr_list* p_list, int reverse);
  18. unsigned int str_list_get_length(const struct mystr_list* p_list);
  19. int str_list_contains_str(const struct mystr_list* p_list,
  20. const struct mystr* p_str);
  21. const struct mystr* str_list_get_pstr(const struct mystr_list* p_list,
  22. unsigned int indexx);
  23. #endif /* VSF_STRLIST_H */