gwenhywfar  5.11.1beta
stringlist.h
Go to the documentation of this file.
1 /***************************************************************************
2  $RCSfile$
3  -------------------
4  cvs : $Id$
5  begin : Thu Apr 03 2003
6  copyright : (C) 2003 by Martin Preuss
7  email : martin@libchipcard.de
8 
9  ***************************************************************************
10  * *
11  * This library is free software; you can redistribute it and/or *
12  * modify it under the terms of the GNU Lesser General Public *
13  * License as published by the Free Software Foundation; either *
14  * version 2.1 of the License, or (at your option) any later version. *
15  * *
16  * This library is distributed in the hope that it will be useful, *
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
19  * Lesser General Public License for more details. *
20  * *
21  * You should have received a copy of the GNU Lesser General Public *
22  * License along with this library; if not, write to the Free Software *
23  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, *
24  * MA 02111-1307 USA *
25  * *
26  ***************************************************************************/
27 
28 #ifndef GWENHYWFAR_STRINGLIST_H
29 #define GWENHYWFAR_STRINGLIST_H
30 
32 
33 #include <gwenhywfar/buffer.h>
34 
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 
41 typedef enum {
49 }
51 
52 
53 typedef struct GWEN_STRINGLISTENTRYSTRUCT GWEN_STRINGLISTENTRY;
54 
55 
56 typedef struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST;
57 
58 
60 
62 GWENHYWFAR_API int GWEN_StringList_toBuffer(const GWEN_STRINGLIST *sl, const char *delimiter, GWEN_BUFFER *outBuffer);
63 
68 
71 unsigned int GWEN_StringList_Count(const GWEN_STRINGLIST *sl);
72 
74  int take);
76  const char *s,
77  int take);
87 
90 
93  const char *s);
94 
103 
113 
122  const char *s,
123  int take,
124  int checkDouble);
125 
134  const char *s,
135  int take,
136  int checkDouble);
137 
143  const char *s);
144 
149 
150 
156  const GWEN_STRINGLIST *slSource,
157  int checkDouble);
158 
159 
166  const char *s);
167 
174 
175 
181 
182 
196  void *(*func)(const char *s, void *u),
197  void *user_data);
198 
202 
204 const char *GWEN_StringList_StringAt(const GWEN_STRINGLIST *l, int idx);
205 
207 int GWEN_StringList_StringAsIntAt(const GWEN_STRINGLIST *l, int idx, int defaultValue);
208 
209 
223  int ascending,
224  GWEN_STRINGLIST_SORT_MODE sortMode);
225 
227 GWEN_STRINGLIST *GWEN_StringList_fromString(const char *str, const char *delimiters, int checkDouble);
228 
245 GWEN_STRINGLIST *GWEN_StringList_fromString2(const char *str, const char *delimiters, int checkDouble, uint32_t flags);
246 
247 
258 
259 
260 #ifdef __cplusplus
261 }
262 #endif
263 
264 #endif
265 
266 
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
Definition: buffer.h:38
#define GWENHYWFAR_API
Definition: gwenhywfarapi.h:67
GWEN_STRINGLIST_SORT_MODE
Definition: stringlist.h:41
@ GWEN_StringList_SortModeCase
Definition: stringlist.h:45
@ GWEN_StringList_SortModeInt
Definition: stringlist.h:48
@ GWEN_StringList_SortModeNoCase
Definition: stringlist.h:43
GWENHYWFAR_API void GWEN_StringList_AppendStringList(GWEN_STRINGLIST *slDest, const GWEN_STRINGLIST *slSource, int checkDouble)
GWENHYWFAR_API int GWEN_StringList_AppendString(GWEN_STRINGLIST *sl, const char *s, int take, int checkDouble)
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringList_FindStringEntry(const GWEN_STRINGLIST *sl, const char *s)
GWENHYWFAR_API void GWEN_StringList_free(GWEN_STRINGLIST *sl)
GWENHYWFAR_API int GWEN_StringList_GetStringPos(const GWEN_STRINGLIST *sl, const char *s)
GWENHYWFAR_API const char * GWEN_StringListEntry_Data(const GWEN_STRINGLISTENTRY *se)
GWENHYWFAR_API void GWEN_StringListEntry_ReplaceString(GWEN_STRINGLISTENTRY *e, const char *s, int take)
GWENHYWFAR_API void GWEN_StringList_SetSenseCase(GWEN_STRINGLIST *sl, int i)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromString2(const char *str, const char *delimiters, int checkDouble, uint32_t flags)
GWENHYWFAR_API void * GWEN_StringList_ForEach(const GWEN_STRINGLIST *l, void *(*func)(const char *s, void *u), void *user_data)
struct GWEN_STRINGLISTENTRYSTRUCT GWEN_STRINGLISTENTRY
Definition: stringlist.h:53
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringListEntry_Next(const GWEN_STRINGLISTENTRY *se)
GWENHYWFAR_API void GWEN_StringList_RemoveFirstString(GWEN_STRINGLIST *sl)
GWENHYWFAR_API int GWEN_StringList_RemoveString(GWEN_STRINGLIST *sl, const char *s)
GWENHYWFAR_API unsigned int GWEN_StringList_Count(const GWEN_STRINGLIST *sl)
GWENHYWFAR_API void GWEN_StringList_AppendEntry(GWEN_STRINGLIST *sl, GWEN_STRINGLISTENTRY *se)
GWENHYWFAR_API void GWEN_StringList_RemoveCommonFirstEntries(GWEN_STRINGLIST *sl1, GWEN_STRINGLIST *sl2)
GWENHYWFAR_API void GWEN_StringList_Sort(GWEN_STRINGLIST *l, int ascending, GWEN_STRINGLIST_SORT_MODE sortMode)
GWENHYWFAR_API int GWEN_StringList_StringAsIntAt(const GWEN_STRINGLIST *l, int idx, int defaultValue)
GWENHYWFAR_API const char * GWEN_StringList_StringAt(const GWEN_STRINGLIST *l, int idx)
GWENHYWFAR_API void GWEN_StringListEntry_free(GWEN_STRINGLISTENTRY *sl)
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringListEntry_new(const char *s, int take)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_new(void)
GWENHYWFAR_API int GWEN_StringList_toBuffer(const GWEN_STRINGLIST *sl, const char *delimiter, GWEN_BUFFER *outBuffer)
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringList_FirstEntry(const GWEN_STRINGLIST *sl)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromTabString(const char *s, int checkDup)
GWENHYWFAR_API void GWEN_StringList_Clear(GWEN_STRINGLIST *sl)
GWENHYWFAR_API void GWEN_StringListEntry_SetData(GWEN_STRINGLISTENTRY *se, const char *s)
struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST
Definition: stringlist.h:56
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_dup(const GWEN_STRINGLIST *sl)
GWENHYWFAR_API int GWEN_StringList_HasString(const GWEN_STRINGLIST *sl, const char *s)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromString(const char *str, const char *delimiters, int checkDouble)
GWENHYWFAR_API void GWEN_StringList_RemoveEntry(GWEN_STRINGLIST *sl, GWEN_STRINGLISTENTRY *se)
GWENHYWFAR_API int GWEN_StringList_InsertString(GWEN_STRINGLIST *sl, const char *s, int take, int checkDouble)
GWENHYWFAR_API void GWEN_StringList_SetIgnoreRefCount(GWEN_STRINGLIST *sl, int i)
GWENHYWFAR_API const char * GWEN_StringList_FirstString(const GWEN_STRINGLIST *l)