Remove duplicate NEWS item
[geany-mirror.git] / tagmanager / strlist.h
bloba566390dd3f4076ed4ebe190b711bb3f981dd6b9
1 /*
2 * Copyright (c) 1999-2002, Darren Hiebert
4 * This source code is released for free distribution under the terms of the
5 * GNU General Public License.
7 * Defines external interface to resizable string lists.
8 */
9 #ifndef _STRLIST_H
10 #define _STRLIST_H
13 * INCLUDE FILES
15 #include "general.h" /* must always come first */
17 #include "vstring.h"
20 * DATA DECLARATIONS
22 typedef struct sStringList {
23 unsigned int max;
24 unsigned int count;
25 vString **list;
26 } stringList;
29 * FUNCTION PROTOTYPES
31 extern stringList *stringListNew (void);
32 extern void stringListAdd (stringList *const current, vString *string);
33 extern void stringListRemoveLast (stringList *const current);
34 extern void stringListCombine (stringList *const current, stringList *const from);
35 extern stringList* stringListNewFromArgv (const char* const* const list);
36 extern stringList* stringListNewFromFile (const char* const fileName);
37 extern void stringListClear (stringList *const current);
38 extern unsigned int stringListCount (const stringList *const current);
39 extern vString* stringListItem (const stringList *const current, const unsigned int indx);
40 extern vString* stringListLast (const stringList *const current);
41 extern void stringListDelete (stringList *const current);
42 extern boolean stringListHasInsensitive (const stringList *const current, const char *const string);
43 extern boolean stringListHas (const stringList *const current, const char *const string);
44 extern boolean stringListHasTest (const stringList *const current, boolean (*test)(const char *s));
45 extern boolean stringListRemoveExtension (stringList* const current, const char* const extension);
46 extern boolean stringListExtensionMatched (const stringList* const list, const char* const extension);
47 extern boolean stringListFileMatched (const stringList* const list, const char* const str);
48 extern void stringListPrint (const stringList *const current);
50 #endif /* _STRLIST_H */
52 /* vi:set tabstop=4 shiftwidth=4: */