# include/xapian/unicode.h File Reference

Unicode and UTF-8 related classes and functions. More...

`#include <xapian/visibility.h>`
`#include <string>`

Go to the source code of this file.

## Namespaces

namespace | Xapian
namespace | Xapian::Unicode
namespace | Xapian::Unicode::Internal

## Classes

class | Xapian::Utf8Iterator
| An iterator which returns Unicode character values from a UTF-8 encoded string. More...

## Enumerations

enum

category {
UNASSIGNED, UPPERCASE_LETTER, LOWERCASE_LETTER, TITLECASE_LETTER,
MODIFIER_LETTER, OTHER_LETTER, NON_SPACING_MARK, ENCLOSING_MARK,
COMBINING_SPACING_MARK, DECIMAL_DIGIT_NUMBER, LETTER_NUMBER, OTHER_NUMBER,
SPACE_SEPARATOR, LINE_SEPARATOR, PARAGRAPH_SEPARATOR, CONTROL,
FORMAT, PRIVATE_USE, SURROGATE, CONNECTOR_PUNCTUATION,
DASH_PUNCTUATION, OPEN_PUNCTUATION, CLOSE_PUNCTUATION, INITIAL_QUOTE_PUNCTUATION,
FINAL_QUOTE_PUNCTUATION, OTHER_PUNCTUATION, MATH_SYMBOL, CURRENCY_SYMBOL,
MODIFIER_SYMBOL, OTHER_SYMBOL
}

| Each Unicode character is in exactly one of these categories. More...

## Functions

XAPIAN_VISIBILITY_DEFAULT int | Xapian::Unicode::Internal::get_character_info (unsigned ch)
int | Xapian::Unicode::Internal::get_case_type (int info)
category | Xapian::Unicode::Internal::get_category (int info)
int | Xapian::Unicode::Internal::get_delta (int info)
XAPIAN_VISIBILITY_DEFAULT unsigned | Xapian::Unicode::nonascii_to_utf8 (unsigned ch, char *buf)
| Convert a single non-ASCII Unicode character to UTF-8.
unsigned | Xapian::Unicode::to_utf8 (unsigned ch, char *buf)
| Convert a single Unicode character to UTF-8.
void | Xapian::Unicode::append_utf8 (std::string &s, unsigned ch)
| Append the UTF-8 representation of a single Unicode character to a std::string.
category | Xapian::Unicode::get_category (unsigned ch)
| Return the category which a given Unicode character falls into.
bool | Xapian::Unicode::is_wordchar (unsigned ch)
| Test if a given Unicode character is "word character".
bool | Xapian::Unicode::is_whitespace (unsigned ch)
| Test if a given Unicode character is a whitespace character.
bool | Xapian::Unicode::is_currency (unsigned ch)
| Test if a given Unicode character is a currency symbol.
unsigned | Xapian::Unicode::tolower (unsigned ch)
| Convert a Unicode character to lowercase.
unsigned | Xapian::Unicode::toupper (unsigned ch)
| Convert a Unicode character to uppercase.
std::string | Xapian::Unicode::tolower (const std::string &term)
| Convert a UTF-8 std::string to lowercase.
std::string | Xapian::Unicode::toupper (const std::string &term)
| Convert a UTF-8 std::string to uppercase.

## Detailed Description

Unicode and UTF-8 related classes and functions.