• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 *******************************************************************************
5 * Copyright (C) 2007-2008, International Business Machines Corporation and
6 * others. All Rights Reserved.                                                *
7 *******************************************************************************
8 *
9 * File MSGFMT.H
10 *
11 *******************************************************************************
12 */
13 
14 #ifndef __MSGFMT_IMPL_H__
15 #define __MSGFMT_IMPL_H__
16 
17 #include "unicode/utypes.h"
18 
19 #if !UCONFIG_NO_FORMATTING
20 
21 #include "unicode/msgfmt.h"
22 #include "uvector.h"
23 #include "unicode/strenum.h"
24 
25 U_NAMESPACE_BEGIN
26 
27 class FormatNameEnumeration : public StringEnumeration {
28 public:
29     FormatNameEnumeration(LocalPointer<UVector> fFormatNames, UErrorCode& status);
30     virtual ~FormatNameEnumeration();
31     static UClassID U_EXPORT2 getStaticClassID(void);
32     virtual UClassID getDynamicClassID(void) const override;
33     virtual const UnicodeString* snext(UErrorCode& status) override;
34     virtual void reset(UErrorCode& status) override;
35     virtual int32_t count(UErrorCode& status) const override;
36 private:
37     int32_t pos;
38     LocalPointer<UVector> fFormatNames;
39 };
40 
41 U_NAMESPACE_END
42 
43 #endif
44 
45 #endif
46