"Fossies" - the Fresh Open Source Software Archive

Member "region_8h_source.html" (3 Oct 2019, 23445 Bytes) of package /linux/misc/icu4c-65_1-docs.zip:


Caution: In this restricted "Fossies" environment the current HTML page may not be correctly presentated and may have some non-functional links. You can here alternatively try to browse the pure source code or just view or download the uninterpreted raw source code. If the rendering is insufficient you may try to find and view the page on the project site itself.

ICU 65.1  65.1
region.h
Go to the documentation of this file.
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4  *******************************************************************************
5  * Copyright (C) 2014-2016, International Business Machines Corporation and others.
6  * All Rights Reserved.
7  *******************************************************************************
8  */
9 
10 #ifndef REGION_H
11 #define REGION_H
12 
18 #include "unicode/utypes.h"
19 
20 #if U_SHOW_CPLUSPLUS_API
21 
22 #if !UCONFIG_NO_FORMATTING
23 
24 #include "unicode/uregion.h"
25 #include "unicode/uobject.h"
26 #include "unicode/uniset.h"
27 #include "unicode/unistr.h"
28 #include "unicode/strenum.h"
29 
30 U_NAMESPACE_BEGIN
31 
72 class U_I18N_API Region : public UObject {
73 public:
78  virtual ~Region();
79 
84  UBool operator==(const Region &that) const;
85 
90  UBool operator!=(const Region &that) const;
91 
99  static const Region* U_EXPORT2 getInstance(const char *region_code, UErrorCode &status);
100 
106  static const Region* U_EXPORT2 getInstance (int32_t code, UErrorCode &status);
107 
112  static StringEnumeration* U_EXPORT2 getAvailable(URegionType type, UErrorCode &status);
113 
120  const Region* getContainingRegion() const;
121 
130  const Region* getContainingRegion(URegionType type) const;
131 
141  StringEnumeration* getContainedRegions(UErrorCode &status) const;
142 
150  StringEnumeration* getContainedRegions( URegionType type, UErrorCode &status ) const;
151 
156  UBool contains(const Region &other) const;
157 
164  StringEnumeration* getPreferredValues(UErrorCode &status) const;
165 
170  const char* getRegionCode() const;
171 
177  int32_t getNumericCode() const;
178 
183  URegionType getType() const;
184 
185 #ifndef U_HIDE_INTERNAL_API
186 
190  static void cleanupRegionData();
191 #endif /* U_HIDE_INTERNAL_API */
192 
193 private:
194  char id[4];
195  UnicodeString idStr;
196  int32_t code;
197  URegionType fType;
198  Region *containingRegion;
199  UVector *containedRegions;
200  UVector *preferredValues;
201 
205  Region();
206 
207 
208  /*
209  * Initializes the region data from the ICU resource bundles. The region data
210  * contains the basic relationships such as which regions are known, what the numeric
211  * codes are, any known aliases, and the territory containment data.
212  *
213  * If the region data has already loaded, then this method simply returns without doing
214  * anything meaningful.
215  */
216 
217  static void U_CALLCONV loadRegionData(UErrorCode &status);
218 
219 };
220 
221 U_NAMESPACE_END
222 
223 #endif /* #if !UCONFIG_NO_FORMATTING */
224 
225 #endif /* U_SHOW_CPLUSPLUS_API */
226 
227 #endif // REGION_H
228 
229 //eof
URegionType
URegionType is an enumeration defining the different types of regions.
Definition: uregion.h:65
C++ API: Unicode String.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
#define U_CALLCONV
Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function typedefs to ma...
Definition: platform.h:870
Region is the class representing a Unicode Region Code, also known as a Unicode Region Subtag...
Definition: region.h:72
Base class for 'pure' C++ implementations of uenum api.
Definition: strenum.h:61
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
Definition: utypes.h:301
C API: URegion (territory containment and mapping)
UBool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
Definition: stringpiece.h:251
C++ API: Common ICU base class UObject.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Definition: utypes.h:415
C++ API: String Enumeration.
Basic definitions for ICU, for both C and C++ APIs.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
Definition: unistr.h:294
UObject is the common ICU "boilerplate" class.
Definition: uobject.h:223
int8_t UBool
The ICU boolean type.
Definition: umachine.h:261
C++ API: Unicode Set.