/*
******************************************************************************
*
-* Copyright (C) 1996-2013, International Business Machines
+* Copyright (C) 1996-2015, International Business Machines
* Corporation and others. All Rights Reserved.
*
******************************************************************************
*/
uint32_t getLCID(void) const;
+#ifndef U_HIDE_DRAFT_API
+ /**
+ * Returns whether this locale's script is written right-to-left.
+ * If there is no script subtag, then the likely script is used, see uloc_addLikelySubtags().
+ * If no likely script is known, then FALSE is returned.
+ *
+ * A script is right-to-left according to the CLDR script metadata
+ * which corresponds to whether the script's letters have Bidi_Class=R or AL.
+ *
+ * Returns TRUE for "ar" and "en-Hebr", FALSE for "zh" and "fa-Cyrl".
+ *
+ * @return TRUE if the locale's script is written right-to-left
+ * @draft ICU 54
+ */
+ UBool isRightToLeft() const;
+#endif /* U_HIDE_DRAFT_API */
+
/**
* Fills in "dispLang" with the name of this locale's language in a format suitable for
* user display in the default locale. For example, if the locale's language code is
char fullNameBuffer[ULOC_FULLNAME_CAPACITY];
// name without keywords
char* baseName;
- char baseNameBuffer[ULOC_FULLNAME_CAPACITY];
+ void initBaseName(UErrorCode& status);
UBool fIsBogus;
inline const char *
Locale::getVariant() const
{
- getBaseName(); // lazy init
return &baseName[variantBegin];
}