31#include <SFML/Config.hpp>
40template <
unsigned int N>
66 template <
typename In>
67 static In
decode(In begin, In end, Uint32& output, Uint32 replacement = 0);
82 template <
typename Out>
83 static Out
encode(Uint32 input, Out output, Uint8 replacement = 0);
97 template <
typename In>
98 static In
next(In begin, In end);
113 template <
typename In>
114 static std::size_t
count(In begin, In end);
130 template <
typename In,
typename Out>
131 static Out
fromAnsi(In begin, In end, Out output,
const std::locale& locale = std::locale());
143 template <
typename In,
typename Out>
156 template <
typename In,
typename Out>
174 template <
typename In,
typename Out>
175 static Out
toAnsi(In begin, In end, Out output,
char replacement = 0,
const std::locale& locale = std::locale());
188 template <
typename In,
typename Out>
189 static Out
toWide(In begin, In end, Out output,
wchar_t replacement = 0);
202 template <
typename In,
typename Out>
203 static Out
toLatin1(In begin, In end, Out output,
char replacement = 0);
220 template <
typename In,
typename Out>
221 static Out
toUtf8(In begin, In end, Out output);
233 template <
typename In,
typename Out>
234 static Out
toUtf16(In begin, In end, Out output);
246 template <
typename In,
typename Out>
247 static Out
toUtf32(In begin, In end, Out output);
273 template <
typename In>
274 static In
decode(In begin, In end, Uint32& output, Uint32 replacement = 0);
289 template <
typename Out>
290 static Out
encode(Uint32 input, Out output, Uint16 replacement = 0);
304 template <
typename In>
305 static In
next(In begin, In end);
320 template <
typename In>
321 static std::size_t
count(In begin, In end);
337 template <
typename In,
typename Out>
338 static Out
fromAnsi(In begin, In end, Out output,
const std::locale& locale = std::locale());
350 template <
typename In,
typename Out>
363 template <
typename In,
typename Out>
381 template <
typename In,
typename Out>
382 static Out
toAnsi(In begin, In end, Out output,
char replacement = 0,
const std::locale& locale = std::locale());
395 template <
typename In,
typename Out>
396 static Out
toWide(In begin, In end, Out output,
wchar_t replacement = 0);
409 template <
typename In,
typename Out>
410 static Out
toLatin1(In begin, In end, Out output,
char replacement = 0);
422 template <
typename In,
typename Out>
423 static Out
toUtf8(In begin, In end, Out output);
440 template <
typename In,
typename Out>
441 static Out
toUtf16(In begin, In end, Out output);
453 template <
typename In,
typename Out>
454 static Out
toUtf32(In begin, In end, Out output);
481 template <
typename In>
482 static In
decode(In begin, In end, Uint32& output, Uint32 replacement = 0);
498 template <
typename Out>
499 static Out
encode(Uint32 input, Out output, Uint32 replacement = 0);
513 template <
typename In>
514 static In
next(In begin, In end);
528 template <
typename In>
529 static std::size_t
count(In begin, In end);
545 template <
typename In,
typename Out>
546 static Out
fromAnsi(In begin, In end, Out output,
const std::locale& locale = std::locale());
558 template <
typename In,
typename Out>
571 template <
typename In,
typename Out>
589 template <
typename In,
typename Out>
590 static Out
toAnsi(In begin, In end, Out output,
char replacement = 0,
const std::locale& locale = std::locale());
603 template <
typename In,
typename Out>
604 static Out
toWide(In begin, In end, Out output,
wchar_t replacement = 0);
617 template <
typename In,
typename Out>
618 static Out
toLatin1(In begin, In end, Out output,
char replacement = 0);
630 template <
typename In,
typename Out>
631 static Out
toUtf8(In begin, In end, Out output);
643 template <
typename In,
typename Out>
644 static Out
toUtf16(In begin, In end, Out output);
661 template <
typename In,
typename Out>
662 static Out
toUtf32(In begin, In end, Out output);
677 template <
typename In>
678 static Uint32
decodeAnsi(In input,
const std::locale& locale = std::locale());
692 template <
typename In>
710 template <
typename Out>
711 static Out
encodeAnsi(Uint32 codepoint, Out output,
char replacement = 0,
const std::locale& locale = std::locale());
727 template <
typename Out>
728 static Out
encodeWide(Uint32 codepoint, Out output,
wchar_t replacement = 0);
731#include <SFML/System/Utf.inl>
Specialization of the Utf template for UTF-16.
static Out toUtf16(In begin, In end, Out output)
Convert a UTF-16 characters range to UTF-16.
static In decode(In begin, In end, Uint32 &output, Uint32 replacement=0)
Decode a single UTF-16 character.
static Out fromWide(In begin, In end, Out output)
Convert a wide characters range to UTF-16.
static Out toWide(In begin, In end, Out output, wchar_t replacement=0)
Convert an UTF-16 characters range to wide characters.
static Out encode(Uint32 input, Out output, Uint16 replacement=0)
Encode a single UTF-16 character.
static Out fromLatin1(In begin, In end, Out output)
Convert a latin-1 (ISO-5589-1) characters range to UTF-16.
static Out toAnsi(In begin, In end, Out output, char replacement=0, const std::locale &locale=std::locale())
Convert an UTF-16 characters range to ANSI characters.
static std::size_t count(In begin, In end)
Count the number of characters of a UTF-16 sequence.
static Out toUtf32(In begin, In end, Out output)
Convert a UTF-16 characters range to UTF-32.
static Out fromAnsi(In begin, In end, Out output, const std::locale &locale=std::locale())
Convert an ANSI characters range to UTF-16.
static In next(In begin, In end)
Advance to the next UTF-16 character.
static Out toLatin1(In begin, In end, Out output, char replacement=0)
Convert an UTF-16 characters range to latin-1 (ISO-5589-1) characters.
static Out toUtf8(In begin, In end, Out output)
Convert a UTF-16 characters range to UTF-8.
Specialization of the Utf template for UTF-32.
static Uint32 decodeWide(In input)
Decode a single wide character to UTF-32.
static Out fromLatin1(In begin, In end, Out output)
Convert a latin-1 (ISO-5589-1) characters range to UTF-32.
static Out toLatin1(In begin, In end, Out output, char replacement=0)
Convert an UTF-16 characters range to latin-1 (ISO-5589-1) characters.
static Out toWide(In begin, In end, Out output, wchar_t replacement=0)
Convert an UTF-32 characters range to wide characters.
static Out toUtf8(In begin, In end, Out output)
Convert a UTF-32 characters range to UTF-8.
static Out encode(Uint32 input, Out output, Uint32 replacement=0)
Encode a single UTF-32 character.
static Out fromAnsi(In begin, In end, Out output, const std::locale &locale=std::locale())
Convert an ANSI characters range to UTF-32.
static Out toUtf16(In begin, In end, Out output)
Convert a UTF-32 characters range to UTF-16.
static Out encodeWide(Uint32 codepoint, Out output, wchar_t replacement=0)
Encode a single UTF-32 character to wide.
static Uint32 decodeAnsi(In input, const std::locale &locale=std::locale())
Decode a single ANSI character to UTF-32.
static Out toAnsi(In begin, In end, Out output, char replacement=0, const std::locale &locale=std::locale())
Convert an UTF-32 characters range to ANSI characters.
static In next(In begin, In end)
Advance to the next UTF-32 character.
static std::size_t count(In begin, In end)
Count the number of characters of a UTF-32 sequence.
static Out toUtf32(In begin, In end, Out output)
Convert a UTF-32 characters range to UTF-32.
static Out fromWide(In begin, In end, Out output)
Convert a wide characters range to UTF-32.
static In decode(In begin, In end, Uint32 &output, Uint32 replacement=0)
Decode a single UTF-32 character.
static Out encodeAnsi(Uint32 codepoint, Out output, char replacement=0, const std::locale &locale=std::locale())
Encode a single UTF-32 character to ANSI.
Specialization of the Utf template for UTF-8.
static In next(In begin, In end)
Advance to the next UTF-8 character.
static Out fromAnsi(In begin, In end, Out output, const std::locale &locale=std::locale())
Convert an ANSI characters range to UTF-8.
static Out toAnsi(In begin, In end, Out output, char replacement=0, const std::locale &locale=std::locale())
Convert an UTF-8 characters range to ANSI characters.
static In decode(In begin, In end, Uint32 &output, Uint32 replacement=0)
Decode a single UTF-8 character.
static Out encode(Uint32 input, Out output, Uint8 replacement=0)
Encode a single UTF-8 character.
static Out toUtf32(In begin, In end, Out output)
Convert a UTF-8 characters range to UTF-32.
static Out fromLatin1(In begin, In end, Out output)
Convert a latin-1 (ISO-5589-1) characters range to UTF-8.
static Out toUtf16(In begin, In end, Out output)
Convert a UTF-8 characters range to UTF-16.
static Out fromWide(In begin, In end, Out output)
Convert a wide characters range to UTF-8.
static Out toWide(In begin, In end, Out output, wchar_t replacement=0)
Convert an UTF-8 characters range to wide characters.
static Out toLatin1(In begin, In end, Out output, char replacement=0)
Convert an UTF-8 characters range to latin-1 (ISO-5589-1) characters.
static Out toUtf8(In begin, In end, Out output)
Convert a UTF-8 characters range to UTF-8.
static std::size_t count(In begin, In end)
Count the number of characters of a UTF-8 sequence.
Utility class providing generic functions for UTF conversions.