10596faeddefbf198de137d5e893708495ab1584cFredrik Roubert// © 2016 and later: Unicode, Inc. and others.
264339d36f8bd4db5025fe2988eda22b491a9219cFredrik Roubert// License & terms of use: http://www.unicode.org/copyright.html
38393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius/*
48393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*******************************************************************************
58393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius* Copyright (C) 2013, International Business Machines Corporation and         *
68393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius* others. All Rights Reserved.                                                *
78393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*******************************************************************************
88393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*
98393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius* File REGION_IMPL.H
108393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*
118393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*******************************************************************************
128393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius*/
138393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
148393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#ifndef __REGION_IMPL_H__
158393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#define __REGION_IMPL_H__
168393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
178393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#include "unicode/utypes.h"
188393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
198393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#if !UCONFIG_NO_FORMATTING
208393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
218393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#include "uvector.h"
228393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#include "unicode/strenum.h"
238393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
248393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig CorneliusU_NAMESPACE_BEGIN
258393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
268393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
278393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Corneliusclass RegionNameEnumeration : public StringEnumeration {
288393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Corneliuspublic:
298393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    RegionNameEnumeration(UVector *fNameList, UErrorCode& status);
308393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual ~RegionNameEnumeration();
318393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    static UClassID U_EXPORT2 getStaticClassID(void);
328393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual UClassID getDynamicClassID(void) const;
338393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual const UnicodeString* snext(UErrorCode& status);
348393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual void reset(UErrorCode& status);
358393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    virtual int32_t count(UErrorCode& status) const;
368393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Corneliusprivate:
378393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    int32_t pos;
388393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius    UVector *fRegionNames;
398393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius};
408393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
418393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig CorneliusU_NAMESPACE_END
428393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
438393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#endif
448393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius
458393335b955da7340c9f19b1b4b2d6c0c2c04be7Craig Cornelius#endif
46