Conversions between UTF32, UTF-16, and UTF-8
[Ferry Core library]


Namespaces

namespace  fe::imp
 A scope for imported stuff.

Files

file  ConvertUTF.h
 Conversions between UTF32, UTF-16, and UTF-8.

Typedefs

typedef unsigned short fe::imp::UTF16
typedef unsigned long fe::imp::UTF32
typedef unsigned char fe::imp::UTF8

Enumerations

enum  fe::imp::ConversionFlags { fe::imp::strictConversion, fe::imp::lenientConversion, fe::imp::firstCodePointStrictConversion, fe::imp::firstCodePointLenientConversion }
enum  fe::imp::ConversionResult { fe::imp::conversionOK, fe::imp::sourceExhausted, fe::imp::targetExhausted, fe::imp::sourceIllegal }

Functions

fe::imp::ConversionResult Fe_ConvertUTF16toUTF32 (const fe::imp::UTF16 **sourceStart, const fe::imp::UTF16 *sourceEnd, fe::imp::UTF32 **targetStart, fe::imp::UTF32 *targetEnd, fe::imp::ConversionFlags flags)
fe::imp::ConversionResult Fe_ConvertUTF16toUTF8 (const fe::imp::UTF16 **sourceStart, const fe::imp::UTF16 *sourceEnd, fe::imp::UTF8 **targetStart, fe::imp::UTF8 *targetEnd, fe::imp::ConversionFlags flags)
fe::imp::ConversionResult Fe_ConvertUTF32toUTF16 (const fe::imp::UTF32 **sourceStart, const fe::imp::UTF32 *sourceEnd, fe::imp::UTF16 **targetStart, fe::imp::UTF16 *targetEnd, fe::imp::ConversionFlags flags)
fe::imp::ConversionResult Fe_ConvertUTF32toUTF8 (const fe::imp::UTF32 **sourceStart, const fe::imp::UTF32 *sourceEnd, fe::imp::UTF8 **targetStart, fe::imp::UTF8 *targetEnd, fe::imp::ConversionFlags flags)
fe::imp::ConversionResult Fe_ConvertUTF8toUTF16 (const fe::imp::UTF8 **sourceStart, const fe::imp::UTF8 *sourceEnd, fe::imp::UTF16 **targetStart, fe::imp::UTF16 *targetEnd, fe::imp::ConversionFlags flags)
fe::imp::ConversionResult Fe_ConvertUTF8toUTF32 (const fe::imp::UTF8 **sourceStart, const fe::imp::UTF8 *sourceEnd, fe::imp::UTF32 **targetStart, fe::imp::UTF32 *targetEnd, fe::imp::ConversionFlags flags)
bool Fe_IsLegalUTF32 (fe::imp::UTF32 ch)
bool Fe_IsLegalUTF8Sequence (const fe::imp::UTF8 *source, const fe::imp::UTF8 *sourceEnd)

Typedef Documentation

typedef unsigned long fe::imp::UTF32

typedef unsigned short fe::imp::UTF16

typedef unsigned char fe::imp::UTF8


Enumeration Type Documentation

Enumerator:
conversionOK 
sourceExhausted 
targetExhausted 
sourceIllegal 

Enumerator:
strictConversion 
lenientConversion 
firstCodePointStrictConversion 
firstCodePointLenientConversion 


Function Documentation

fe::imp::ConversionResult Fe_ConvertUTF8toUTF16 ( const fe::imp::UTF8 **  sourceStart,
const fe::imp::UTF8 sourceEnd,
fe::imp::UTF16 **  targetStart,
fe::imp::UTF16 targetEnd,
fe::imp::ConversionFlags  flags 
)

Documented at ConvertUTF.h.

fe::imp::ConversionResult Fe_ConvertUTF16toUTF8 ( const fe::imp::UTF16 **  sourceStart,
const fe::imp::UTF16 sourceEnd,
fe::imp::UTF8 **  targetStart,
fe::imp::UTF8 targetEnd,
fe::imp::ConversionFlags  flags 
)

Documented at ConvertUTF.h.

fe::imp::ConversionResult Fe_ConvertUTF8toUTF32 ( const fe::imp::UTF8 **  sourceStart,
const fe::imp::UTF8 sourceEnd,
fe::imp::UTF32 **  targetStart,
fe::imp::UTF32 targetEnd,
fe::imp::ConversionFlags  flags 
)

Documented at ConvertUTF.h.

fe::imp::ConversionResult Fe_ConvertUTF32toUTF8 ( const fe::imp::UTF32 **  sourceStart,
const fe::imp::UTF32 sourceEnd,
fe::imp::UTF8 **  targetStart,
fe::imp::UTF8 targetEnd,
fe::imp::ConversionFlags  flags 
)

Documented at ConvertUTF.h.

fe::imp::ConversionResult Fe_ConvertUTF16toUTF32 ( const fe::imp::UTF16 **  sourceStart,
const fe::imp::UTF16 sourceEnd,
fe::imp::UTF32 **  targetStart,
fe::imp::UTF32 targetEnd,
fe::imp::ConversionFlags  flags 
)

Documented at ConvertUTF.h.

fe::imp::ConversionResult Fe_ConvertUTF32toUTF16 ( const fe::imp::UTF32 **  sourceStart,
const fe::imp::UTF32 sourceEnd,
fe::imp::UTF16 **  targetStart,
fe::imp::UTF16 targetEnd,
fe::imp::ConversionFlags  flags 
)

Documented at ConvertUTF.h.

bool Fe_IsLegalUTF8Sequence ( const fe::imp::UTF8 source,
const fe::imp::UTF8 sourceEnd 
)

Tests if the given UTF8 code unit sequence encodes legal code point.

See also:
Fe_IsLegalUTF32()

bool Fe_IsLegalUTF32 ( fe::imp::UTF32  ch  ) 

Returns true if the given value is withing the [0, 0xD800), or (0xDFFF, 0x10FFFF] ranges.

Parameters:
ch UTF32-encoded character to test.


Generated on Tue Nov 18 21:08:22 2008 for Ferry by doxygen 1.5.7.1
http://sourceforge.net