1// Copyright (C) 2016 and later: Unicode, Inc. and others.
2// License & terms of use: http://www.unicode.org/copyright.html
3/*
4*******************************************************************************
5* Copyright (C) 2015, International Business Machines Corporation and
6* others. All Rights Reserved.                                                *
7*******************************************************************************
8*
9* File NUMSYS_IMPL.H
10*
11*******************************************************************************
12*/
13
14#ifndef __NUMSYS_IMPL_H__
15#define __NUMSYS_IMPL_H__
16
17#include "unicode/utypes.h"
18
19#if !UCONFIG_NO_FORMATTING
20
21#include "unicode/numsys.h"
22#include "uvector.h"
23#include "unicode/strenum.h"
24
25U_NAMESPACE_BEGIN
26
27class NumsysNameEnumeration : public StringEnumeration {
28public:
29    // NumsysNameEnumeration instance adopts numsysNames
30    NumsysNameEnumeration(UVector *numsysNames, UErrorCode& status);
31
32    virtual ~NumsysNameEnumeration();
33    static UClassID U_EXPORT2 getStaticClassID(void);
34    virtual UClassID getDynamicClassID(void) const;
35    virtual const UnicodeString* snext(UErrorCode& status);
36    virtual void reset(UErrorCode& status);
37    virtual int32_t count(UErrorCode& status) const;
38private:
39    int32_t pos;
40    UVector *fNumsysNames;
41};
42
43U_NAMESPACE_END
44
45#endif
46
47#endif
48