3 #include <opensrf/utils.h>
4 #include <opensrf/log.h>
5 #include <opensrf/osrf_list.h>
7 #define STRING_ARRAY_MAX_SIZE 4096
10 #define STRING_ARRAY_H
12 #define OSRF_STRING_ARRAY_FREE(arr)\
13 if(arr) {osrfListFree(arr->list); free(arr);}
16 struct string_array_struct {
20 typedef struct string_array_struct osrfStringArray;
22 osrfStringArray* osrfNewStringArray(int size);
24 void osrfStringArrayAdd(osrfStringArray*, char* str);
26 char* osrfStringArrayGetString(osrfStringArray* arr, int index);
28 /* returns true if this array contains the given string */
29 int osrfStringArrayContains( osrfStringArray* arr, char* string );
31 void osrfStringArrayFree(osrfStringArray*);
33 /* total size of all included strings */
34 int string_array_get_total_size(osrfStringArray* arr);
36 void osrfStringArrayRemove( osrfStringArray* arr, char* str);