16#if U_SHOW_CPLUSPLUS_API
23#if !UCONFIG_NO_NORMALIZATION
138#ifndef U_HIDE_DEPRECATED_API
188#ifndef U_FORCE_HIDE_DEPRECATED_API
207#ifndef U_HIDE_DEPRECATED_API
245 UBool compat, int32_t options,
267 UBool compat, int32_t options,
451 static inline int32_t
456#ifndef U_HIDE_DEPRECATED_API
729#ifndef U_FORCE_HIDE_DEPRECATED_API
748 UBool nextNormalize();
749 UBool previousNormalize();
752 void clearBuffer(
void);
768 int32_t currentIndex, nextIndex;
779#ifndef U_HIDE_DEPRECATED_API
788 return quickCheck(source, mode, 0, status);
795 return isNormalized(source, mode, 0, status);
C++ API: Character Iterator.
Abstract class that defines an API for iteration on text objects.
const char16_t * wrapper with implicit conversion from distinct but bit-compatible pointer types.
Normalization filtered by a UnicodeSet.
Unicode normalization functionality for standard Unicode normalization or for using custom mapping ta...
Old Unicode normalization API.
int32_t startIndex(void) const
Retrieve the index of the start of the input text.
void reset(void)
Reset the index to the beginning of the text.
int32_t endIndex(void) const
Retrieve the index of the end of the input text.
bool operator==(const Normalizer &that) const
Returns true when both iterators refer to the same character in the same input text.
static void decompose(const UnicodeString &source, UBool compat, int32_t options, UnicodeString &result, UErrorCode &status)
Static method to decompose a UnicodeString.
int32_t hashCode(void) const
Generates a hash code for this iterator.
static UClassID getStaticClassID()
ICU "poor man's RTTI", returns a UClassID for this class.
virtual UClassID getDynamicClassID() const override
ICU "poor man's RTTI", returns a UClassID for the actual class.
int32_t getIndex(void) const
Retrieve the current iteration position in the input text that is being normalized.
void setMode(UNormalizationMode newMode)
Set the normalization mode for this object.
UChar32 previous(void)
Return the previous character in the normalized text and decrement.
UChar32 last(void)
Return the last character in the normalized text.
virtual ~Normalizer()
Destructor.
void setText(const UnicodeString &newText, UErrorCode &status)
Set the input text over which this Normalizer will iterate.
UChar32 current(void)
Return the current character in the normalized text.
UBool getOption(int32_t option) const
Determine whether an option is turned on or off.
UNormalizationMode getUMode(void) const
Return the normalization mode for this object.
void setText(ConstChar16Ptr newText, int32_t length, UErrorCode &status)
Set the input text over which this Normalizer will iterate.
static UBool isNormalized(const UnicodeString &src, UNormalizationMode mode, int32_t options, UErrorCode &errorCode)
Test if a string is in a given normalization form; same as the other version of isNormalized but take...
Normalizer(const Normalizer ©)
Copy constructor.
Normalizer(const UnicodeString &str, UNormalizationMode mode)
Creates a new Normalizer object for iterating over the normalized form of a given string.
void setText(const CharacterIterator &newText, UErrorCode &status)
Set the input text over which this Normalizer will iterate.
static UNormalizationCheckResult quickCheck(const UnicodeString &source, UNormalizationMode mode, int32_t options, UErrorCode &status)
Performing quick check on a string; same as the other version of quickCheck but takes an extra option...
Normalizer(ConstChar16Ptr str, int32_t length, UNormalizationMode mode)
Creates a new Normalizer object for iterating over the normalized form of a given string.
void setOption(int32_t option, UBool value)
Set options that affect this Normalizer's operation.
static void normalize(const UnicodeString &source, UNormalizationMode mode, int32_t options, UnicodeString &result, UErrorCode &status)
Normalizes a UnicodeString according to the specified normalization mode.
static UnicodeString & concatenate(const UnicodeString &left, const UnicodeString &right, UnicodeString &result, UNormalizationMode mode, int32_t options, UErrorCode &errorCode)
Concatenate normalized strings, making sure that the result is normalized as well.
Normalizer(const CharacterIterator &iter, UNormalizationMode mode)
Creates a new Normalizer object for iterating over the normalized form of the given text.
UChar32 next(void)
Return the next character in the normalized text.
void getText(UnicodeString &result)
Copies the input text into the UnicodeString argument.
void setIndexOnly(int32_t index)
Set the iteration position in the input text that is being normalized, without any immediate normaliz...
static void compose(const UnicodeString &source, UBool compat, int32_t options, UnicodeString &result, UErrorCode &status)
Compose a UnicodeString.
Normalizer * clone() const
Returns a pointer to a new Normalizer that is a clone of this one.
UChar32 first(void)
Return the first character in the normalized text.
UObject is the common ICU "boilerplate" class.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
int32_t length(void) const
Return the length of the UnicodeString object.
char16_t * getBuffer(int32_t minCapacity)
Get a read/write pointer to the internal buffer.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
bool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
const UChar * toUCharPtr(const char16_t *p)
Converts from const char16_t * to const UChar *.
C++ API: New API for Unicode Normalization.
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
int8_t UBool
The ICU boolean type, a signed-byte integer.
UNormalizationCheckResult
Result values for normalization quick check functions.
U_CAPI int32_t unorm_compare(const UChar *s1, int32_t length1, const UChar *s2, int32_t length2, uint32_t options, UErrorCode *pErrorCode)
Compares two strings for canonical equivalence.
C API: Unicode Normalization.
UNormalizationMode
Constants for normalization modes.
C++ API: Common ICU base class UObject.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
#define U_COMMON_API
Set to export library symbols from inside the common library, and to import them from outside.