1 /* 2 ***************************************************************************************** 3 * Copyright (C) 2013, International Business Machines Corporation and others. 4 * All Rights Reserved. 5 ***************************************************************************************** 6 */ 7 8 #include "unicode/utypes.h" 9 10 #if !UCONFIG_NO_FORMATTING 11 12 #include "unicode/uregion.h" 13 #include "unicode/region.h" 14 #include "unicode/uenum.h" 15 16 U_NAMESPACE_USE 17 18 19 U_CAPI const URegion* U_EXPORT2 20 uregion_getRegionFromCode(const char *regionCode, UErrorCode *status) 21 { 22 return (URegion*)Region::getInstance(regionCode, *status); 23 } 24 25 26 U_CAPI const URegion* U_EXPORT2 27 uregion_getRegionFromNumericCode (int32_t code, UErrorCode *status) 28 { 29 return (URegion*)Region::getInstance(code, *status); 30 } 31 32 33 U_CAPI UEnumeration* U_EXPORT2 34 uregion_getAvailable(URegionType type, UErrorCode *status) 35 { 36 return uenum_openFromStringEnumeration( Region::getAvailable(type), status ); 37 } 38 39 40 U_CAPI UBool U_EXPORT2 41 uregion_areEqual(const URegion* uregion, const URegion* otherRegion) 42 { 43 return ( (void*)uregion == (void*)otherRegion ); 44 } 45 46 47 U_CAPI const URegion* U_EXPORT2 48 uregion_getContainingRegion(const URegion* uregion) 49 { 50 return (URegion*)((Region*)uregion)->getContainingRegion(); 51 } 52 53 54 U_CAPI const URegion* U_EXPORT2 55 uregion_getContainingRegionOfType(const URegion* uregion, URegionType type) 56 { 57 return (URegion*)((Region*)uregion)->getContainingRegion(type); 58 } 59 60 61 U_CAPI UEnumeration* U_EXPORT2 62 uregion_getContainedRegions(const URegion* uregion, UErrorCode *status) 63 { 64 return uenum_openFromStringEnumeration( ((Region*)uregion)->getContainedRegions(), status); 65 } 66 67 68 U_CAPI UEnumeration* U_EXPORT2 69 uregion_getContainedRegionsOfType(const URegion* uregion, URegionType type, UErrorCode *status) 70 { 71 return uenum_openFromStringEnumeration( ((Region*)uregion)->getContainedRegions(type), status); 72 } 73 74 75 U_CAPI UBool U_EXPORT2 76 uregion_contains(const URegion* uregion, const URegion* otherRegion) 77 { 78 return ((Region*)uregion)->contains(*((Region*)otherRegion)); 79 } 80 81 82 U_CAPI UEnumeration* U_EXPORT2 83 uregion_getPreferredValues(const URegion* uregion, UErrorCode *status) 84 { 85 return uenum_openFromStringEnumeration( ((Region*)uregion)->getPreferredValues(), status); 86 } 87 88 89 U_CAPI const char* U_EXPORT2 90 uregion_getRegionCode(const URegion* uregion) 91 { 92 return ((Region*)uregion)->getRegionCode(); 93 } 94 95 96 U_CAPI int32_t U_EXPORT2 97 uregion_getNumericCode(const URegion* uregion) 98 { 99 return ((Region*)uregion)->getNumericCode(); 100 } 101 102 103 U_CAPI URegionType U_EXPORT2 104 uregion_getType(const URegion* uregion) 105 { 106 return ((Region*)uregion)->getType(); 107 } 108 109 110 #endif /* #if !UCONFIG_NO_FORMATTING */ 111