unicode_uc, unicode_lc, unicode_tc, unicode_convert_tocase — unicode uppercase, lowercase, and titlecase character lookup


#include <courier-unicode.h>
char32_t unicode_uc( char32_t c);
char32_t unicode_lc( char32_t c);
char32_t unicode_tc( char32_t c);
char *unicode_convert_tocase( const char *str,
  const char *charset,
  char32_t (*first_char_func)(uncode_char),
  char32_t (*char_func)(uncode_char));


unicode_uc(), unicode_lc(), unicode_tc() return the uppercase, lowercase, or the titlecase equivalent of the unicode character c. If this character does not have an uppercase, lowercase, or a titlecase equivalent, these functions return c, the same character.

unicode_convert_tocase() takes the string str in the character set charset. first_char_func and char_func, each, should be unicode_uc, unicode_lc, or unicode_tc. unicode_convert_tocase() returns a malloc()ed buffer. The first unicode character in str gets processed by first_char_func, and all other characters by char_func.