gwenhywfar 5.12.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
37extern "C" {
38#endif
39
40
41typedef enum {
51
52
53typedef struct GWEN_STRINGLISTENTRYSTRUCT GWEN_STRINGLISTENTRY;
54
55
56typedef struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST;
57
58
60
62GWENHYWFAR_API int GWEN_StringList_toBuffer(const GWEN_STRINGLIST *sl, const char *delimiter, GWEN_BUFFER *outBuffer);
63
68
71unsigned 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
204const char *GWEN_StringList_StringAt(const GWEN_STRINGLIST *l, int idx);
205
207int GWEN_StringList_StringAsIntAt(const GWEN_STRINGLIST *l, int idx, int defaultValue);
208
209
223 int ascending,
225
227GWEN_STRINGLIST *GWEN_StringList_fromString(const char *str, const char *delimiters, int checkDouble);
228
245GWEN_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 GWEN_STRINGLISTENTRY * GWEN_StringListEntry_Next(const GWEN_STRINGLISTENTRY *se)
GWENHYWFAR_API int GWEN_StringList_AppendString(GWEN_STRINGLIST *sl, const char *s, int take, int checkDouble)
GWENHYWFAR_API void GWEN_StringList_free(GWEN_STRINGLIST *sl)
GWENHYWFAR_API int GWEN_StringList_GetStringPos(const GWEN_STRINGLIST *sl, const char *s)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_dup(const GWEN_STRINGLIST *sl)
GWENHYWFAR_API void GWEN_StringListEntry_ReplaceString(GWEN_STRINGLISTENTRY *e, const char *s, int take)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_new(void)
GWENHYWFAR_API void GWEN_StringList_SetSenseCase(GWEN_STRINGLIST *sl, int i)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromTabString(const char *s, int checkDup)
struct GWEN_STRINGLISTENTRYSTRUCT GWEN_STRINGLISTENTRY
Definition: stringlist.h:53
GWENHYWFAR_API void GWEN_StringList_RemoveFirstString(GWEN_STRINGLIST *sl)
GWENHYWFAR_API const char * GWEN_StringList_FirstString(const GWEN_STRINGLIST *l)
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 const char * GWEN_StringList_StringAt(const GWEN_STRINGLIST *l, int idx)
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 GWEN_STRINGLIST * GWEN_StringList_fromString(const char *str, const char *delimiters, int checkDouble)
GWENHYWFAR_API void GWEN_StringListEntry_free(GWEN_STRINGLISTENTRY *sl)
GWENHYWFAR_API int GWEN_StringList_toBuffer(const GWEN_STRINGLIST *sl, const char *delimiter, GWEN_BUFFER *outBuffer)
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringList_FindStringEntry(const GWEN_STRINGLIST *sl, const char *s)
GWENHYWFAR_API GWEN_STRINGLIST * GWEN_StringList_fromString2(const char *str, const char *delimiters, int checkDouble, uint32_t flags)
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 void * GWEN_StringList_ForEach(const GWEN_STRINGLIST *l, void *(*func)(const char *s, void *u), void *user_data)
GWENHYWFAR_API GWEN_STRINGLISTENTRY * GWEN_StringList_FirstEntry(const GWEN_STRINGLIST *sl)
GWENHYWFAR_API int GWEN_StringList_HasString(const GWEN_STRINGLIST *sl, const char *s)
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 GWEN_STRINGLISTENTRY * GWEN_StringListEntry_new(const char *s, int take)
GWENHYWFAR_API const char * GWEN_StringListEntry_Data(const GWEN_STRINGLISTENTRY *se)