00001
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef STR_FUNCTIONS_H_
00033 #define STR_FUNCTIONS_H_
00034 #include <string.h>
00035 #include <glib.h>
00036
00047 typedef struct {
00048 GStringChunk *chunk;
00049 GPtrArray *ptrArray;
00050 GArray *constArray;
00051 guint len;
00052 } StringList;
00053
00059 StringList *stringList_new();
00060
00072 StringList *stringList_sized_new(size_t chunk_size, size_t element_count, size_t const_count);
00073
00079 void stringList_clear(StringList *sList);
00080
00090 int stringList_find_string(StringList *sList,const char* str);
00091
00105 char **stringList_to_charPointerPointer(StringList *sList);
00106
00114 const char *stringList_index(StringList *sList,guint index);
00115
00132 guint stringList_insert(StringList *sList, const char *str);
00133
00150 guint stringList_insert_const(StringList *sList, const char *str);
00151
00161 void stringList_free(StringList *sList);
00162
00170 char*
00171 initString(char *str);
00172
00173
00180 gboolean
00181 isEmptyString(const char *str);
00182
00191 void string_trim(char *str);
00192
00193
00206 char*
00207 subString(char *buf,const char *str,int beginIndex, int length);
00208
00215 char* ucs4_to_utf8(gunichar ucs4_code);
00216
00223 gunichar* utf8_to_ucs4(const char* utf8_str);
00224
00232 char* utf8_concat_ucs4(char* utf8_str,gunichar ucs4_code);
00233
00246 int strcmp_unsigned_signed(const unsigned char *str1, const char *str2);
00247
00258 unsigned char *signedStr_to_unsignedStr(const char *str);
00259
00270 unsigned char *signedStr_to_unsignedStr_buffer(unsigned char *resultBuf, const char *str);
00271
00282 char *unsignedStr_to_signedStr(const unsigned char *str);
00283
00294 char *unsignedStr_to_signedStr_buffer(char* resultBuf, const unsigned char *str);
00295
00296
00297 #endif