#include "utypeinfo.h"
#include "unicode/ustring.h"
#include "unicode/strenum.h"
#include "unicode/putil.h"
#include "uenumimp.h"
#include "ustrenum.h"
#include "cstring.h"
#include "cmemory.h"
#include "uassert.h"
U_NAMESPACE_BEGIN
#define THIS(en) …
U_CDECL_BEGIN
static void U_CALLCONV
ustrenum_close(UEnumeration* en) { … }
static int32_t U_CALLCONV
ustrenum_count(UEnumeration* en,
UErrorCode* ec)
{ … }
static const char16_t* U_CALLCONV
ustrenum_unext(UEnumeration* en,
int32_t* resultLength,
UErrorCode* ec)
{ … }
static const char* U_CALLCONV
ustrenum_next(UEnumeration* en,
int32_t* resultLength,
UErrorCode* ec)
{ … }
static void U_CALLCONV
ustrenum_reset(UEnumeration* en,
UErrorCode* ec)
{ … }
static const UEnumeration USTRENUM_VT = …;
U_CDECL_END
U_CAPI UEnumeration* U_EXPORT2
uenum_openFromStringEnumeration(icu::StringEnumeration* adopted, UErrorCode* ec) { … }
U_CDECL_BEGIN
UCharStringEnumeration;
static void U_CALLCONV
ucharstrenum_close(UEnumeration* en) { … }
static int32_t U_CALLCONV
ucharstrenum_count(UEnumeration* en,
UErrorCode* ) { … }
static const char16_t* U_CALLCONV
ucharstrenum_unext(UEnumeration* en,
int32_t* resultLength,
UErrorCode* ) { … }
static const char* U_CALLCONV
ucharstrenum_next(UEnumeration* en,
int32_t* resultLength,
UErrorCode* ) { … }
static void U_CALLCONV
ucharstrenum_reset(UEnumeration* en,
UErrorCode* ) { … }
static const UEnumeration UCHARSTRENUM_VT = …;
static const UEnumeration UCHARSTRENUM_U_VT = …;
U_CDECL_END
U_CAPI UEnumeration* U_EXPORT2
uenum_openCharStringsEnumeration(const char* const strings[], int32_t count,
UErrorCode* ec) { … }
U_CAPI UEnumeration* U_EXPORT2
uenum_openUCharStringsEnumeration(const char16_t* const strings[], int32_t count,
UErrorCode* ec) { … }