16 #ifndef JM_STRING_SET_H 17 #define JM_STRING_SET_H 54 if(found)
return *found;
69 size_t last = len - 1;
73 while (first <= last) {
74 mid = (last + first)/2;
78 if (mid == 0)
return first;
97 size_t len = strlen(str) + 1;
109 if(pnewstr) *pnewstr = newstr = s->callbacks->malloc(len);
110 if(!pnewstr || !newstr)
return 0;
111 memcpy(newstr, str, len);
struct jm_vector_jm_string jm_string_set
Set of string is based on a vector.
#define jm_vector_bsearch(T)
static size_t jm_string_set_find_index(jm_string_set *s, jm_string str)
Find index of a string in a set.
#define jm_vector_insert(T)
#define jm_vector_push_back(T)
#define jm_vector_get_item(T)
static jm_string jm_string_set_put(jm_string_set *s, jm_string str)
Put an element in the set if it is not there yet.
#define jm_vector_get_size(T)
const char * jm_string
A constant string.
static jm_string jm_string_set_find(jm_string_set *s, jm_string str)
Find a string in a set.