Go to the documentation of this file.
19 #ifndef __NORMALIZER2_H__
20 #define __NORMALIZER2_H__
29 #if U_SHOW_CPLUSPLUS_API
31 #if !UCONFIG_NO_NORMALIZATION
203 normalize(src, result, errorCode);
516 norm2(n2), set(filterSet) {}
758 normalizeUTF8(uint32_t options,
const char *src, int32_t length,
775 #endif // !UCONFIG_NO_NORMALIZATION
779 #endif // __NORMALIZER2_H__
virtual UBool getRawDecomposition(UChar32 c, UnicodeString &decomposition) const
Gets the raw decomposition mapping of c.
virtual UChar32 composePair(UChar32 a, UChar32 b) const U_OVERRIDE
Performs pairwise composition of a & b and returns the composite if there is one.
virtual UBool getDecomposition(UChar32 c, UnicodeString &decomposition) const =0
Gets the decomposition mapping of c.
virtual int32_t spanQuickCheckYes(const UnicodeString &s, UErrorCode &errorCode) const =0
Returns the end of the normalized substring of the input string.
UNormalization2Mode
Constants for normalization modes.
static const Normalizer2 * getInstance(const char *packageName, const char *name, UNormalization2Mode mode, UErrorCode &errorCode)
Returns a Normalizer2 instance which uses the specified data file (packageName/name similar to ucnv_o...
virtual void normalizeUTF8(uint32_t options, StringPiece src, ByteSink &sink, Edits *edits, UErrorCode &errorCode) const U_OVERRIDE
Normalizes a UTF-8 string and optionally records how source substrings relate to changed and unchange...
Basic definitions for ICU, for both C and C++ APIs.
A mutable set of Unicode characters and multicharacter strings.
virtual UBool getRawDecomposition(UChar32 c, UnicodeString &decomposition) const U_OVERRIDE
Gets the raw decomposition mapping of c.
int8_t UBool
The ICU boolean type.
~FilteredNormalizer2()
Destructor.
static const Normalizer2 * getNFKCInstance(UErrorCode &errorCode)
Returns a Normalizer2 instance for Unicode NFKC normalization.
virtual UBool hasBoundaryAfter(UChar32 c) const =0
Tests if the character always has a normalization boundary after it, regardless of context.
virtual UnicodeString & normalizeSecondAndAppend(UnicodeString &first, const UnicodeString &second, UErrorCode &errorCode) const U_OVERRIDE
Appends the normalized form of the second string to the first string (merging them at the boundary) a...
USetSpanCondition
Argument values for whether span() and similar functions continue while the current character is cont...
FilteredNormalizer2(const Normalizer2 &n2, const UnicodeSet &filterSet)
Constructs a filtered normalizer wrapping any Normalizer2 instance and a filter set.
virtual UnicodeString & append(UnicodeString &first, const UnicodeString &second, UErrorCode &errorCode) const U_OVERRIDE
Appends the second string to the first string (merging them at the boundary) and returns the first st...
C++ API: StringPiece: Read-only byte string wrapper class.
virtual UBool hasBoundaryBefore(UChar32 c) const U_OVERRIDE
Tests if the character always has a normalization boundary before it, regardless of context.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
virtual UBool isNormalized(const UnicodeString &s, UErrorCode &errorCode) const U_OVERRIDE
Tests if the string is normalized.
static const Normalizer2 * getNFCInstance(UErrorCode &errorCode)
Returns a Normalizer2 instance for Unicode NFC normalization.
virtual UNormalizationCheckResult quickCheck(const UnicodeString &s, UErrorCode &errorCode) const U_OVERRIDE
Tests if the string is normalized.
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
UObject is the common ICU "boilerplate" class.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Records lengths of string edits but not replacement text.
virtual UBool isNormalizedUTF8(StringPiece s, UErrorCode &errorCode) const
Tests if the UTF-8 string is normalized.
virtual UnicodeString & normalize(const UnicodeString &src, UnicodeString &dest, UErrorCode &errorCode) const U_OVERRIDE
Writes the normalized form of the source string to the destination string (replacing its contents) an...
A ByteSink can be filled with bytes.
Unicode normalization functionality for standard Unicode normalization or for using custom mapping ta...
virtual UNormalizationCheckResult quickCheck(const UnicodeString &s, UErrorCode &errorCode) const =0
Tests if the string is normalized.
virtual UBool getDecomposition(UChar32 c, UnicodeString &decomposition) const U_OVERRIDE
Gets the decomposition mapping of c.
virtual UnicodeString & append(UnicodeString &first, const UnicodeString &second, UErrorCode &errorCode) const =0
Appends the second string to the first string (merging them at the boundary) and returns the first st...
virtual UBool hasBoundaryAfter(UChar32 c) const U_OVERRIDE
Tests if the character always has a normalization boundary after it, regardless of context.
UNormalizationCheckResult
Result values for normalization quick check functions.
C API: New API for Unicode Normalization.
virtual int32_t spanQuickCheckYes(const UnicodeString &s, UErrorCode &errorCode) const U_OVERRIDE
Returns the end of the normalized substring of the input string.
virtual uint8_t getCombiningClass(UChar32 c) const U_OVERRIDE
Gets the combining class of c.
virtual UBool isInert(UChar32 c) const U_OVERRIDE
Tests if the character is normalization-inert.
virtual UBool isInert(UChar32 c) const =0
Tests if the character is normalization-inert.
virtual UnicodeString & normalizeSecondAndAppend(UnicodeString &first, const UnicodeString &second, UErrorCode &errorCode) const =0
Appends the normalized form of the second string to the first string (merging them at the boundary) a...
virtual UBool hasBoundaryBefore(UChar32 c) const =0
Tests if the character always has a normalization boundary before it, regardless of context.
virtual uint8_t getCombiningClass(UChar32 c) const
Gets the combining class of c.
virtual UBool isNormalizedUTF8(StringPiece s, UErrorCode &errorCode) const U_OVERRIDE
Tests if the UTF-8 string is normalized.
virtual UBool isNormalized(const UnicodeString &s, UErrorCode &errorCode) const =0
Tests if the string is normalized.
~Normalizer2()
Destructor.
virtual UChar32 composePair(UChar32 a, UChar32 b) const
Performs pairwise composition of a & b and returns the composite if there is one.
static const Normalizer2 * getNFKCCasefoldInstance(UErrorCode &errorCode)
Returns a Normalizer2 instance for Unicode NFKC_Casefold normalization.
virtual void normalizeUTF8(uint32_t options, StringPiece src, ByteSink &sink, Edits *edits, UErrorCode &errorCode) const
Normalizes a UTF-8 string and optionally records how source substrings relate to changed and unchange...
A string-like object that points to a sized piece of memory.
static const Normalizer2 * getNFKDInstance(UErrorCode &errorCode)
Returns a Normalizer2 instance for Unicode NFKD normalization.
virtual UnicodeString & normalize(const UnicodeString &src, UnicodeString &dest, UErrorCode &errorCode) const =0
Writes the normalized form of the source string to the destination string (replacing its contents) an...
UnicodeString normalize(const UnicodeString &src, UErrorCode &errorCode) const
Returns the normalized form of the source string.
static const Normalizer2 * getNFDInstance(UErrorCode &errorCode)
Returns a Normalizer2 instance for Unicode NFD normalization.
Normalization filtered by a UnicodeSet.