#include <gwenhywfar/gwenhywfarapi.h>
Go to the source code of this file.
typedef struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST |
Definition at line 53 of file stringlist.h.
typedef struct GWEN_STRINGLISTENTRYSTRUCT GWEN_STRINGLISTENTRY |
Definition at line 50 of file stringlist.h.
Definition at line 39 of file stringlist.h.
GWENHYWFAR_API void GWEN_StringList_AppendEntry | ( | GWEN_STRINGLIST * | sl, | |
GWEN_STRINGLISTENTRY * | se | |||
) |
GWENHYWFAR_API int GWEN_StringList_AppendString | ( | GWEN_STRINGLIST * | sl, | |
const char * | s, | |||
int | take, | |||
int | checkDouble | |||
) |
Appends a string.
take | if true then the StringList takes over ownership of the string | |
checkDouble | if true the the string will only be appended if it does not already exist |
GWENHYWFAR_API void GWEN_StringList_Clear | ( | GWEN_STRINGLIST * | sl | ) |
GWENHYWFAR_API unsigned int GWEN_StringList_Count | ( | const GWEN_STRINGLIST * | sl | ) |
Returns the number of elements in this list.
GWENHYWFAR_API GWEN_STRINGLIST* GWEN_StringList_dup | ( | const GWEN_STRINGLIST * | sl | ) |
GWENHYWFAR_API GWEN_STRINGLISTENTRY* GWEN_StringList_FirstEntry | ( | const GWEN_STRINGLIST * | sl | ) |
GWENHYWFAR_API const char* GWEN_StringList_FirstString | ( | const GWEN_STRINGLIST * | l | ) |
Returns the first string in this list.
GWENHYWFAR_API void* GWEN_StringList_ForEach | ( | const GWEN_STRINGLIST * | l, | |
void *(*)(const char *s, void *u) | func, | |||
void * | user_data | |||
) |
Traverses the list, calling the callback function 'func' on each list element. Traversal will stop when 'func' returns a non-NULL value, and the routine will return with that value. Otherwise the routine will return NULL.
l | The list to traverse. | |
func | The function to be called with each list element. | |
user_data | A pointer passed on to the function 'func'. |
GWENHYWFAR_API void GWEN_StringList_free | ( | GWEN_STRINGLIST * | sl | ) |
GWENHYWFAR_API int GWEN_StringList_HasString | ( | const GWEN_STRINGLIST * | sl, | |
const char * | s | |||
) |
Checks whether the given string already exists within in the string list.
GWENHYWFAR_API int GWEN_StringList_InsertString | ( | GWEN_STRINGLIST * | sl, | |
const char * | s, | |||
int | take, | |||
int | checkDouble | |||
) |
Inserts a string.
take | if true then the StringList takes over ownership of the string | |
checkDouble | if true the the string will only be appended if it does not already exist |
GWENHYWFAR_API GWEN_STRINGLIST* GWEN_StringList_new | ( | ) |
GWENHYWFAR_API void GWEN_StringList_RemoveEntry | ( | GWEN_STRINGLIST * | sl, | |
GWEN_STRINGLISTENTRY * | se | |||
) |
GWENHYWFAR_API int GWEN_StringList_RemoveString | ( | GWEN_STRINGLIST * | sl, | |
const char * | s | |||
) |
Removes a given string from the stringlist.
GWENHYWFAR_API void GWEN_StringList_SetIgnoreRefCount | ( | GWEN_STRINGLIST * | sl, | |
int | i | |||
) |
Normally this group of functions ignores reference counters on stringlist entries when removing a string via GWEN_StringList_RemoveString. You can change this behaviour here.
sl | string list | |
i | if 0 then reference counters are honoured |
GWENHYWFAR_API void GWEN_StringList_SetSenseCase | ( | GWEN_STRINGLIST * | sl, | |
int | i | |||
) |
Normally this group of functions ignores cases when comparing two strings. You can change this behaviour here.
sl | string list | |
i | if 0 then cases are ignored |
GWENHYWFAR_API void GWEN_StringList_Sort | ( | GWEN_STRINGLIST * | l, | |
int | ascending, | |||
GWEN_STRINGLIST_SORT_MODE | sortMode | |||
) |
Sorts this list. Internally this uses qsort(3), so the sorting should be reasonably fast even for large lists.
l | The list to sort. | |
ascending | If non-zero, the list is sorted ascending, i.e. smallest string first, according to strcmp(3) rules. If zero, the list is sorted descending. | |
sortMode | See GWEN_StringList_SortModeNoCase and following |
GWENHYWFAR_API const char* GWEN_StringList_StringAt | ( | const GWEN_STRINGLIST * | l, | |
int | idx | |||
) |
GWENHYWFAR_API const char* GWEN_StringListEntry_Data | ( | const GWEN_STRINGLISTENTRY * | se | ) |
GWENHYWFAR_API void GWEN_StringListEntry_free | ( | GWEN_STRINGLISTENTRY * | sl | ) |
GWENHYWFAR_API GWEN_STRINGLISTENTRY* GWEN_StringListEntry_new | ( | const char * | s, | |
int | take | |||
) |
GWENHYWFAR_API GWEN_STRINGLISTENTRY* GWEN_StringListEntry_Next | ( | const GWEN_STRINGLISTENTRY * | se | ) |
GWENHYWFAR_API void GWEN_StringListEntry_ReplaceString | ( | GWEN_STRINGLISTENTRY * | e, | |
const char * | s, | |||
int | take | |||
) |
GWENHYWFAR_API void GWEN_StringListEntry_SetData | ( | GWEN_STRINGLISTENTRY * | se, | |
const char * | s | |||
) |