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