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