OpenVPN 3 Core Library
Loading...
Searching...
No Matches
unicode-impl.hpp File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  openvpn
 
namespace  openvpn::Unicode
 

Typedefs

typedef unsigned int openvpn::Unicode::UTF32
 
typedef unsigned short openvpn::Unicode::UTF16
 
typedef unsigned char openvpn::Unicode::UTF8
 

Enumerations

enum  openvpn::Unicode::ConversionResult { openvpn::Unicode::conversionOK , openvpn::Unicode::sourceExhausted , openvpn::Unicode::targetExhausted , openvpn::Unicode::sourceIllegal }
 
enum  openvpn::Unicode::ConversionFlags { openvpn::Unicode::strictConversion = 0 , openvpn::Unicode::lenientConversion }
 

Functions

ConversionResult openvpn::Unicode::ConvertUTF32toUTF16 (const UTF32 **sourceStart, const UTF32 *sourceEnd, UTF16 **targetStart, UTF16 *targetEnd, ConversionFlags flags)
 
ConversionResult openvpn::Unicode::ConvertUTF16toUTF32 (const UTF16 **sourceStart, const UTF16 *sourceEnd, UTF32 **targetStart, UTF32 *targetEnd, ConversionFlags flags)
 
ConversionResult openvpn::Unicode::ConvertUTF16toUTF8 (const UTF16 **sourceStart, const UTF16 *sourceEnd, UTF8 **targetStart, UTF8 *targetEnd, ConversionFlags flags)
 
bool openvpn::Unicode::isLegalUTF8 (const UTF8 *source, int length)
 
bool openvpn::Unicode::isLegalUTF8Sequence (const UTF8 *source, const UTF8 *sourceEnd)
 
ConversionResult openvpn::Unicode::ConvertUTF8toUTF16 (const UTF8 **sourceStart, const UTF8 *sourceEnd, UTF16 **targetStart, UTF16 *targetEnd, ConversionFlags flags)
 
ConversionResult openvpn::Unicode::ConvertUTF32toUTF8 (const UTF32 **sourceStart, const UTF32 *sourceEnd, UTF8 **targetStart, UTF8 *targetEnd, ConversionFlags flags)
 
ConversionResult openvpn::Unicode::ConvertUTF8toUTF32 (const UTF8 **sourceStart, const UTF8 *sourceEnd, UTF32 **targetStart, UTF32 *targetEnd, ConversionFlags flags)
 

Variables

const UTF32 openvpn::Unicode::UNI_REPLACEMENT_CHAR = (UTF32)0x0000FFFD
 
const UTF32 openvpn::Unicode::UNI_MAX_BMP = (UTF32)0x0000FFFF
 
const UTF32 openvpn::Unicode::UNI_MAX_UTF16 = (UTF32)0x0010FFFF
 
const UTF32 openvpn::Unicode::UNI_MAX_UTF32 = (UTF32)0x7FFFFFFF
 
const UTF32 openvpn::Unicode::UNI_MAX_LEGAL_UTF32 = (UTF32)0x0010FFFF
 
const int openvpn::Unicode::halfShift = 10
 
const UTF32 openvpn::Unicode::halfBase = 0x0010000UL
 
const UTF32 openvpn::Unicode::halfMask = 0x3FFUL
 
const UTF32 openvpn::Unicode::UNI_SUR_HIGH_START = (UTF32)0xD800
 
const UTF32 openvpn::Unicode::UNI_SUR_HIGH_END = (UTF32)0xDBFF
 
const UTF32 openvpn::Unicode::UNI_SUR_LOW_START = (UTF32)0xDC00
 
const UTF32 openvpn::Unicode::UNI_SUR_LOW_END = (UTF32)0xDFFF
 
const char openvpn::Unicode::trailingBytesForUTF8 [256]
 
const UTF32 openvpn::Unicode::offsetsFromUTF8 [6]
 
const UTF8 openvpn::Unicode::firstByteMark [7] = { 0x00, 0x00, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC }