38#ifndef BLOCXX_UTF8_UTILS_HPP_INCLUDE_GUARD_
39#define BLOCXX_UTF8_UTILS_HPP_INCLUDE_GUARD_
40#include "blocxx/BLOCXX_config.h"
60BLOCXX_COMMON_API
size_t charCount(
const char* utf8str);
68BLOCXX_COMMON_API UInt16
UTF8toUCS2(
const char* utf8char);
81BLOCXX_COMMON_API UInt32
UTF8toUCS4(
const char* utf8char);
#define BLOCXX_DECLARE_APIEXCEPTION(NAME, LINKAGE_SPEC)
Declare a new exception class named <NAME>Exception that derives from Exception This macro is typical...
Array<> wraps std::vector<> in COWReference<> adding ref counting and copy on write capability.
This String class is an abstract data type that represents as NULL terminated string of characters.
String toUpperCase(const char *input)
Convert the UTF-8 string to upper case and return the result.
String UCS2toUTF8(UInt16 ucs2char)
Convert one UCS2 16-bit char into a UTF-8 char (possibly multiple bytes)
BLOCXX_COMMON_API int compareToIgnoreCase(const char *str1, const char *str2)
Compares 2 UTF-8 strings, ignoring any case differences as defined by the Unicode spec CaseFolding....
bool toUpperCaseInPlace(char *input)
Convert the UTF-8 string to upper case.
String toLowerCase(const char *input)
Convert the UTF-8 string to lower case and return the result.
String UCS2ToString(const void *input, size_t inputLength)
Convert a UCS2 string into a UTF-8 (or ASCII) string.
Array< UInt16 > StringToUCS2(const String &input)
Convert a UTF-8 (or ASCII) string into a UCS2 string.
String UCS4toUTF8(UInt32 ucs4char)
Convert one UCS4 32-bit char into a UTF-8 char (possibly multiple bytes)
size_t charCount(const char *utf8str)
Count the number of UTF-8 chars in the string.
UInt16 UTF8toUCS2(const char *utf8char)
Convert one UTF-8 char (possibly multiple bytes) into a UCS2 16-bit char.
bool toLowerCaseInPlace(char *input)
Convert the UTF-8 string to lower case.
UInt32 UTF8toUCS4(const char *utf8char)
Convert one UTF-8 char (possibly multiple bytes) into a UCS4 32-bit char.
Array< UInt16 > StringToUCS2ReplaceInvalid(const String &input)
Convert a UTF-8 (or ASCII) string into a UCS2 string.