gwenhywfar  5.9.0
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 
89 const char *GWEN_StringListEntry_Data(const GWEN_STRINGLISTENTRY *se);
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 
173 GWENHYWFAR_API int GWEN_StringList_GetStringPos(const GWEN_STRINGLIST *sl, const char *s);
174 
175 
181 
182 
196  void *(*func)(const char *s, void *u),
197  void *user_data);
198 
201 const char *GWEN_StringList_FirstString(const GWEN_STRINGLIST *l);
202 
204 const char *GWEN_StringList_StringAt(const GWEN_STRINGLIST *l, int idx);
205 
206 
220  int ascending,
221  GWEN_STRINGLIST_SORT_MODE sortMode);
222 
224 GWEN_STRINGLIST *GWEN_StringList_fromString(const char *str, const char *delimiters, int checkDouble);
225 
242 GWEN_STRINGLIST *GWEN_StringList_fromString2(const char *str, const char *delimiters, int checkDouble, uint32_t flags);
243 
244 
255 
256 
257 #ifdef __cplusplus
258 }
259 #endif
260 
261 #endif
262 
263 
GWEN_STRINGLISTENTRY
struct GWEN_STRINGLISTENTRYSTRUCT GWEN_STRINGLISTENTRY
Definition: stringlist.h:53
GWEN_STRINGLIST
struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST
Definition: stringlist.h:56
GWEN_StringList_RemoveCommonFirstEntries
GWENHYWFAR_API void GWEN_StringList_RemoveCommonFirstEntries(GWEN_STRINGLIST *sl1, GWEN_STRINGLIST *sl2)
GWEN_StringList_FindStringEntry
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringList_FindStringEntry(const GWEN_STRINGLIST *sl, const char *s)
GWEN_StringList_dup
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_dup(const GWEN_STRINGLIST *sl)
GWEN_StringList_AppendString
GWENHYWFAR_API int GWEN_StringList_AppendString(GWEN_STRINGLIST *sl, const char *s, int take, int checkDouble)
GWEN_StringList_HasString
GWENHYWFAR_API int GWEN_StringList_HasString(const GWEN_STRINGLIST *sl, const char *s)
GWEN_StringList_AppendStringList
GWENHYWFAR_API void GWEN_StringList_AppendStringList(GWEN_STRINGLIST *slDest, const GWEN_STRINGLIST *slSource, int checkDouble)
GWEN_StringList_Sort
GWENHYWFAR_API void GWEN_StringList_Sort(GWEN_STRINGLIST *l, int ascending, GWEN_STRINGLIST_SORT_MODE sortMode)
GWEN_StringListEntry_Next
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringListEntry_Next(const GWEN_STRINGLISTENTRY *se)
GWEN_StringList_fromString2
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromString2(const char *str, const char *delimiters, int checkDouble, uint32_t flags)
GWEN_StringList_Count
GWENHYWFAR_API unsigned int GWEN_StringList_Count(const GWEN_STRINGLIST *sl)
GWEN_StringList_free
GWENHYWFAR_API void GWEN_StringList_free(GWEN_STRINGLIST *sl)
GWEN_StringList_SortModeCase
@ GWEN_StringList_SortModeCase
Definition: stringlist.h:70
GWEN_StringList_InsertString
GWENHYWFAR_API int GWEN_StringList_InsertString(GWEN_STRINGLIST *sl, const char *s, int take, int checkDouble)
GWEN_StringList_AppendEntry
GWENHYWFAR_API void GWEN_StringList_AppendEntry(GWEN_STRINGLIST *sl, GWEN_STRINGLISTENTRY *se)
GWEN_StringList_SetSenseCase
GWENHYWFAR_API void GWEN_StringList_SetSenseCase(GWEN_STRINGLIST *sl, int i)
GWEN_StringList_fromString
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromString(const char *str, const char *delimiters, int checkDouble)
GWEN_StringList_RemoveEntry
GWENHYWFAR_API void GWEN_StringList_RemoveEntry(GWEN_STRINGLIST *sl, GWEN_STRINGLISTENTRY *se)
GWEN_StringList_RemoveFirstString
GWENHYWFAR_API void GWEN_StringList_RemoveFirstString(GWEN_STRINGLIST *sl)
GWEN_StringList_SortModeInt
@ GWEN_StringList_SortModeInt
Definition: stringlist.h:73
buffer.h
GWEN_StringListEntry_new
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringListEntry_new(const char *s, int take)
GWEN_StringList_fromTabString
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromTabString(const char *s, int checkDup)
GWEN_StringList_StringAt
const GWENHYWFAR_API char * GWEN_StringList_StringAt(const GWEN_STRINGLIST *l, int idx)
GWEN_StringList_GetStringPos
GWENHYWFAR_API int GWEN_StringList_GetStringPos(const GWEN_STRINGLIST *sl, const char *s)
GWEN_StringList_Clear
GWENHYWFAR_API void GWEN_StringList_Clear(GWEN_STRINGLIST *sl)
gwenhywfarapi.h
GWEN_StringListEntry_free
GWENHYWFAR_API void GWEN_StringListEntry_free(GWEN_STRINGLISTENTRY *sl)
GWEN_StringListEntry_Data
const GWENHYWFAR_API char * GWEN_StringListEntry_Data(const GWEN_STRINGLISTENTRY *se)
GWEN_StringList_RemoveString
GWENHYWFAR_API int GWEN_StringList_RemoveString(GWEN_STRINGLIST *sl, const char *s)
GWEN_StringList_SetIgnoreRefCount
GWENHYWFAR_API void GWEN_StringList_SetIgnoreRefCount(GWEN_STRINGLIST *sl, int i)
GWEN_StringListEntry_SetData
GWENHYWFAR_API void GWEN_StringListEntry_SetData(GWEN_STRINGLISTENTRY *se, const char *s)
GWEN_StringList_new
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_new(void)
GWEN_StringList_FirstEntry
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringList_FirstEntry(const GWEN_STRINGLIST *sl)
GWEN_StringListEntry_ReplaceString
GWENHYWFAR_API void GWEN_StringListEntry_ReplaceString(GWEN_STRINGLISTENTRY *e, const char *s, int take)
GWENHYWFAR_API
#define GWENHYWFAR_API
Definition: gwenhywfarapi.h:67
GWEN_StringList_toBuffer
GWENHYWFAR_API int GWEN_StringList_toBuffer(const GWEN_STRINGLIST *sl, const char *delimiter, GWEN_BUFFER *outBuffer)
GWEN_StringList_ForEach
GWENHYWFAR_API void * GWEN_StringList_ForEach(const GWEN_STRINGLIST *l, void *(*func)(const char *s, void *u), void *user_data)
GWEN_StringList_FirstString
const GWENHYWFAR_API char * GWEN_StringList_FirstString(const GWEN_STRINGLIST *l)
GWEN_BUFFER
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
Definition: buffer.h:38
GWEN_StringList_SortModeNoCase
@ GWEN_StringList_SortModeNoCase
Definition: stringlist.h:68
GWEN_STRINGLIST_SORT_MODE
GWEN_STRINGLIST_SORT_MODE
Definition: stringlist.h:41