stringlist2.h File Reference

#include <gwenhywfar/gwenhywfarapi.h>
#include <gwenhywfar/stringlist.h>
#include <gwenhywfar/types.h>
#include <gwenhywfar/refptr.h>
#include <gwenhywfar/list.h>

Go to the source code of this file.

Typedefs

typedef struct GWEN_STRINGLIST2 GWEN_STRINGLIST2
typedef GWEN_LIST_ITERATOR GWEN_STRINGLIST2_ITERATOR

Enumerations

enum  GWEN_STRINGLIST2_INSERTMODE { GWEN_StringList2_IntertMode_AlwaysAdd = 0, GWEN_StringList2_IntertMode_NoDouble, GWEN_StringList2_IntertMode_Reuse }

Functions

GWENHYWFAR_API int GWEN_StringList2_AppendString (GWEN_STRINGLIST2 *sl2, const char *s, int take, GWEN_STRINGLIST2_INSERTMODE m)
GWENHYWFAR_API void GWEN_StringList2_Dump (const GWEN_STRINGLIST2 *sl2)
GWENHYWFAR_API GWEN_STRINGLIST2GWEN_StringList2_dup (GWEN_STRINGLIST2 *sl2)
GWENHYWFAR_API
GWEN_STRINGLIST2_ITERATOR
GWEN_StringList2_First (const GWEN_STRINGLIST2 *l)
GWENHYWFAR_API void GWEN_StringList2_free (GWEN_STRINGLIST2 *sl2)
GWENHYWFAR_API int GWEN_StringList2_HasString (const GWEN_STRINGLIST2 *sl2, const char *s)
GWENHYWFAR_API int GWEN_StringList2_InsertString (GWEN_STRINGLIST2 *sl2, const char *s, int take, GWEN_STRINGLIST2_INSERTMODE m)
GWENHYWFAR_API
GWEN_STRINGLIST2_ITERATOR
GWEN_StringList2_Last (const GWEN_STRINGLIST2 *l)
GWENHYWFAR_API GWEN_STRINGLIST2GWEN_StringList2_new ()
GWENHYWFAR_API int GWEN_StringList2_RemoveString (GWEN_STRINGLIST2 *sl2, const char *s)
GWENHYWFAR_API void GWEN_StringList2_SetIgnoreRefCount (GWEN_STRINGLIST2 *sl2, int i)
GWENHYWFAR_API void GWEN_StringList2_SetSenseCase (GWEN_STRINGLIST2 *sl2, int i)
GWENHYWFAR_API const char * GWEN_StringList2Iterator_Data (GWEN_STRINGLIST2_ITERATOR *li)
GWENHYWFAR_API GWEN_REFPTRGWEN_StringList2Iterator_DataRefPtr (GWEN_STRINGLIST2_ITERATOR *li)
GWENHYWFAR_API void GWEN_StringList2Iterator_free (GWEN_STRINGLIST2_ITERATOR *li)
GWENHYWFAR_API unsigned int GWEN_StringList2Iterator_GetLinkCount (const GWEN_STRINGLIST2_ITERATOR *li)
GWENHYWFAR_API const char * GWEN_StringList2Iterator_Next (GWEN_STRINGLIST2_ITERATOR *li)
GWENHYWFAR_API const char * GWEN_StringList2Iterator_Previous (GWEN_STRINGLIST2_ITERATOR *li)

Typedef Documentation

Definition at line 41 of file stringlist2.h.

Definition at line 42 of file stringlist2.h.


Enumeration Type Documentation

Enumerator:
GWEN_StringList2_IntertMode_AlwaysAdd 
GWEN_StringList2_IntertMode_NoDouble 
GWEN_StringList2_IntertMode_Reuse 

Definition at line 45 of file stringlist2.h.


Function Documentation

GWENHYWFAR_API int GWEN_StringList2_AppendString ( GWEN_STRINGLIST2 sl2,
const char *  s,
int  take,
GWEN_STRINGLIST2_INSERTMODE  m 
)

Appends a string.

Returns:
0 if not appended, !=0 if appended
Parameters:
take if true then the StringList takes over ownership of the string
checkDouble if true the the string will only be appended if it does not already exist

Definition at line 90 of file stringlist2.c.

References GWEN_List_GetRefPtrInfo(), GWEN_List_PushBackRefPtr(), GWEN_ListIterator_IncLinkCount(), GWEN_RefPtr_AddFlags(), GWEN_REFPTR_FLAGS_AUTODELETE, GWEN_RefPtr_new(), GWEN_StringList2__GetString(), GWEN_StringList2_IntertMode_AlwaysAdd, GWEN_StringList2_IntertMode_NoDouble, GWEN_StringList2_IntertMode_Reuse, and GWEN_StringList2Iterator_free().

Referenced by GWEN_XML_AddNameSpace().

GWENHYWFAR_API void GWEN_StringList2_Dump ( const GWEN_STRINGLIST2 sl2  ) 
GWENHYWFAR_API GWEN_STRINGLIST2* GWEN_StringList2_dup ( GWEN_STRINGLIST2 sl2  ) 

Definition at line 71 of file stringlist2.c.

References GWEN_List_dup(), and GWEN_NEW_OBJECT.

GWENHYWFAR_API GWEN_STRINGLIST2_ITERATOR* GWEN_StringList2_First ( const GWEN_STRINGLIST2 l  ) 
GWENHYWFAR_API void GWEN_StringList2_free ( GWEN_STRINGLIST2 sl2  ) 

Definition at line 62 of file stringlist2.c.

References GWEN_FREE_OBJECT, and GWEN_List_free().

Referenced by GWEN_XMLNode_NormalizeNameSpaces().

GWENHYWFAR_API int GWEN_StringList2_HasString ( const GWEN_STRINGLIST2 sl2,
const char *  s 
)

Checks whether the given string already exists within in the string list.

Returns:
!=0 if found, 0 otherwise

Definition at line 194 of file stringlist2.c.

References GWEN_StringList2_First(), GWEN_StringList2Iterator_Data(), GWEN_StringList2Iterator_free(), and GWEN_StringList2Iterator_Next().

GWENHYWFAR_API int GWEN_StringList2_InsertString ( GWEN_STRINGLIST2 sl2,
const char *  s,
int  take,
GWEN_STRINGLIST2_INSERTMODE  m 
)

Inserts a string.

Returns:
0 if not inserted, !=0 if inserted
Parameters:
take if true then the StringList takes over ownership of the string
checkDouble if true the the string will only be appended if it does not already exist

Definition at line 132 of file stringlist2.c.

References GWEN_List_GetRefPtrInfo(), GWEN_List_PushFrontRefPtr(), GWEN_ListIterator_IncLinkCount(), GWEN_RefPtr_AddFlags(), GWEN_REFPTR_FLAGS_AUTODELETE, GWEN_RefPtr_new(), GWEN_StringList2__GetString(), GWEN_StringList2_IntertMode_AlwaysAdd, GWEN_StringList2_IntertMode_NoDouble, GWEN_StringList2_IntertMode_Reuse, and GWEN_StringList2Iterator_free().

GWENHYWFAR_API GWEN_STRINGLIST2_ITERATOR* GWEN_StringList2_Last ( const GWEN_STRINGLIST2 l  ) 

Definition at line 290 of file stringlist2.c.

References GWEN_List_Last().

GWENHYWFAR_API GWEN_STRINGLIST2* GWEN_StringList2_new (  ) 
GWENHYWFAR_API int GWEN_StringList2_RemoveString ( GWEN_STRINGLIST2 sl2,
const char *  s 
)

Removes a given string from the stringlist.

Returns:
0 if not found, !=0 if found and removed

Definition at line 174 of file stringlist2.c.

References GWEN_List_Erase(), GWEN_ListIterator_GetLinkCount(), GWEN_StringList2__GetString(), and GWEN_StringList2Iterator_free().

GWENHYWFAR_API void GWEN_StringList2_SetIgnoreRefCount ( GWEN_STRINGLIST2 sl2,
int  i 
)

Normally this group of functions ignores reference counters on stringlist entries when removing a string via GWEN_StringList2_RemoveString. You can change this behaviour here.

Parameters:
sl2 string list
i if 0 then reference counters are honoured
GWENHYWFAR_API void GWEN_StringList2_SetSenseCase ( GWEN_STRINGLIST2 sl2,
int  i 
)

Normally this group of functions ignores cases when comparing two strings. You can change this behaviour here.

Parameters:
sl2 string list
i if 0 then cases are ignored

Definition at line 83 of file stringlist2.c.

GWENHYWFAR_API const char* GWEN_StringList2Iterator_Data ( GWEN_STRINGLIST2_ITERATOR li  ) 
GWENHYWFAR_API GWEN_REFPTR* GWEN_StringList2Iterator_DataRefPtr ( GWEN_STRINGLIST2_ITERATOR li  ) 

Definition at line 323 of file stringlist2.c.

References GWEN_ListIterator_DataRefPtr().

GWENHYWFAR_API void GWEN_StringList2Iterator_free ( GWEN_STRINGLIST2_ITERATOR li  ) 
GWENHYWFAR_API unsigned int GWEN_StringList2Iterator_GetLinkCount ( const GWEN_STRINGLIST2_ITERATOR li  ) 

Definition at line 331 of file stringlist2.c.

References GWEN_ListIterator_GetLinkCount().

Referenced by GWEN_StringList2_Dump().

GWENHYWFAR_API const char* GWEN_StringList2Iterator_Next ( GWEN_STRINGLIST2_ITERATOR li  ) 
GWENHYWFAR_API const char* GWEN_StringList2Iterator_Previous ( GWEN_STRINGLIST2_ITERATOR li  ) 

Definition at line 303 of file stringlist2.c.

References GWEN_ListIterator_Previous().


Generated on Sat Jan 2 09:32:38 2010 for gwenhywfar by  doxygen 1.6.1