]>
git.saurik.com Git - apple/icu.git/blob - icuSources/common/ulist.h
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
4 ******************************************************************************
5 * Copyright (C) 2009-2016, International Business Machines
6 * Corporation and others. All Rights Reserved.
7 ******************************************************************************
13 #include "unicode/utypes.h"
14 #include "unicode/uenum.h"
17 typedef struct UList UList
;
19 U_CAPI UList
* U_EXPORT2
ulist_createEmptyList(UErrorCode
*status
);
21 U_CAPI
void U_EXPORT2
ulist_addItemEndList(UList
*list
, const void *data
, UBool forceDelete
, UErrorCode
*status
);
23 U_CAPI
void U_EXPORT2
ulist_addItemBeginList(UList
*list
, const void *data
, UBool forceDelete
, UErrorCode
*status
);
25 U_CAPI UBool U_EXPORT2
ulist_containsString(const UList
*list
, const char *data
, int32_t length
);
27 U_CAPI UBool U_EXPORT2
ulist_removeString(UList
*list
, const char *data
);
29 U_CAPI
void *U_EXPORT2
ulist_getNext(UList
*list
);
31 U_CAPI
int32_t U_EXPORT2
ulist_getListSize(const UList
*list
);
33 U_CAPI
void U_EXPORT2
ulist_resetList(UList
*list
);
35 U_CAPI
void U_EXPORT2
ulist_deleteList(UList
*list
);
38 * The following are for use when creating UEnumeration object backed by UList.
40 U_CAPI
void U_EXPORT2
ulist_close_keyword_values_iterator(UEnumeration
*en
);
42 U_CAPI
int32_t U_EXPORT2
ulist_count_keyword_values(UEnumeration
*en
, UErrorCode
*status
);
44 U_CAPI
const char * U_EXPORT2
ulist_next_keyword_value(UEnumeration
* en
, int32_t *resultLength
, UErrorCode
* status
);
46 U_CAPI
void U_EXPORT2
ulist_reset_keyword_values_iterator(UEnumeration
* en
, UErrorCode
* status
);
48 U_CAPI UList
* U_EXPORT2
ulist_getListFromEnum(UEnumeration
*en
);