NGL  6.5
The NCCA Graphics Library
UTF32< CharType > Struct Template Reference

UTF-32 encoding. More...

#include <encodings.h>

+ Inheritance diagram for UTF32< CharType >:
+ Collaboration diagram for UTF32< CharType >:

Public Types

enum  { supportUnicode = 1 }
 
typedef CharType Ch
 

Public Member Functions

 RAPIDJSON_STATIC_ASSERT (sizeof(Ch) >=4)
 

Static Public Member Functions

template<typename OutputStream >
static void Encode (OutputStream &os, unsigned codepoint)
 
template<typename InputStream >
static bool Decode (InputStream &is, unsigned *codepoint)
 
template<typename InputStream , typename OutputStream >
static bool Validate (InputStream &is, OutputStream &os)
 

Detailed Description

template<typename CharType = unsigned>
struct UTF32< CharType >

UTF-32 encoding.

http://en.wikipedia.org/wiki/UTF-32

Template Parameters
CharTypeType for storing 32-bit UTF-32 data. Default is unsigned. C++11 may use char32_t instead.
Note
implements Encoding concept
For in-memory access, no need to concern endianness. The code units and code points are represented by CPU's endianness. For streaming, use UTF32LE and UTF32BE, which handle endianness.

Definition at line 372 of file encodings.h.

Member Typedef Documentation

template<typename CharType = unsigned>
typedef CharType UTF32< CharType >::Ch

Definition at line 373 of file encodings.h.

Member Enumeration Documentation

template<typename CharType = unsigned>
anonymous enum
Enumerator
supportUnicode 

Definition at line 376 of file encodings.h.

Member Function Documentation

template<typename CharType = unsigned>
template<typename InputStream >
static bool UTF32< CharType >::Decode ( InputStream &  is,
unsigned *  codepoint 
)
inlinestatic

Definition at line 386 of file encodings.h.

References RAPIDJSON_STATIC_ASSERT.

template<typename CharType = unsigned>
template<typename OutputStream >
static void UTF32< CharType >::Encode ( OutputStream &  os,
unsigned  codepoint 
)
inlinestatic

Definition at line 379 of file encodings.h.

References RAPIDJSON_ASSERT, and RAPIDJSON_STATIC_ASSERT.

template<typename CharType = unsigned>
UTF32< CharType >::RAPIDJSON_STATIC_ASSERT ( sizeof(Ch) >=  4)
template<typename CharType = unsigned>
template<typename InputStream , typename OutputStream >
static bool UTF32< CharType >::Validate ( InputStream &  is,
OutputStream &  os 
)
inlinestatic

Definition at line 394 of file encodings.h.

References RAPIDJSON_STATIC_ASSERT.


The documentation for this struct was generated from the following file: