Lines Matching refs:Region
13 * \brief C++ API: Region classes (territory containment)
29 * <code>Region</code> is the class representing a Unicode Region Code, also known as a
30 * Unicode Region Subtag, which is defined based upon the BCP 47 standard. We often think of
31 * "regions" as "countries" when defining the characteristics of a locale. Region codes There are different
32 * types of region codes that are important to distinguish.
34 * Macroregion - A code for a "macro geographical (continental) region, geographical sub-region, or
39 * Macroregions are represented in ICU by one of three region types: WORLD ( region code 001 ),
43 * TERRITORY - A Region that is not a Macroregion. These are typically codes for countries, but also
49 * UNKNOWN - The code ZZ is defined by Unicode LDML for use to indicate that the Region is unknown,
50 * or that the value supplied as a region was invalid.
52 * DEPRECATED - Region codes that have been defined in the past but are no longer in modern usage,
56 * that a region code has been assigned for it. Some of these are UNM.49 codes that do't fall into
58 * their own region code. Region "EU" (European Union) is one such region code that is a grouping.
59 * Groupings will never be returned by the getContainingRegion() API, since a different type of region
60 * ( WORLD, CONTINENT, or SUBCONTINENT ) will always be the containing region instead.
62 * The Region class is not intended for public subclassing.
68 class U_I18N_API Region : public UObject {
74 virtual ~Region();
80 UBool operator==(const Region &that) const;
86 UBool operator!=(const Region &that) const;
89 * Returns a pointer to a Region using the given region code. The region code can be either 2-letter ISO code,
90 * 3-letter ISO code, UNM.49 numeric code, or other valid Unicode Region Code as defined by the LDML specification.
92 * If the region code is NULL or not recognized, the appropriate error code will be set ( U_ILLEGAL_ARGUMENT_ERROR )
95 static const Region* U_EXPORT2 getInstance(const char *region_code, UErrorCode &status);
98 * Returns a pointer to a Region using the given numeric region code. If the numeric region code is not recognized,
102 static const Region* U_EXPORT2 getInstance (int32_t code, UErrorCode &status);
113 * Returns a pointer to the region that contains this region. Returns NULL if this region is code "001" (World)
114 * or "ZZ" (Unknown region). For example, calling this method with region "IT" (Italy) returns the
115 * region "039" (Southern Europe).
118 const Region* getContainingRegion() const;
121 * Return a pointer to the region that geographically contains this region and matches the given type,
122 * moving multiple steps up the containment chain if necessary. Returns NULL if no containing region can be found
125 * with region "IT" (Italy) for type "URGN_CONTINENT" returns the region "150" ( Europe ).
128 const Region* getContainingRegion(URegionType type) const;
132 * Return an enumeration over the IDs of all the regions that are immediate children of this region in the
133 * region hierarchy. These returned regions could be either macro regions, territories, or a mixture of the two,
134 * depending on the containment data as defined in CLDR. This API may return NULL if this region doesn't have
135 * any sub-regions. For example, calling this method with region "150" (Europe) returns an enumeration containing
143 * Returns an enumeration over the IDs of all the regions that are children of this region anywhere in the region
144 * hierarchy and match the given type. This API may return an empty enumeration if this region doesn't have any
145 * sub-regions that match the given type. For example, calling this method with region "150" (Europe) and type
153 * Returns true if this region contains the supplied other region anywhere in the region hierarchy.
156 UBool contains(const Region &other) const;
161 * regions for this region. Returns null for a non-deprecated region. For example, calling this method with region
169 * Return this region's canonical region code.
175 * Return this region's numeric code.
176 * Returns a negative value if the given region does not have a numeric code assigned to it.
182 * Returns the region type of this region.
200 Region *containingRegion;
207 Region();
211 * Initializes the region data from the ICU resource bundles. The region data
215 * If the region data has already loaded, then this method simply returns without doing