CrystalSpace

Public API Reference

Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

csunicode.h File Reference

Unicode types and macros. More...

#include <cssysdef.h>

Go to the source code of this file.

Special character codes

#define CS_UC_BOM   0xFFFE
 Byte-order mark.
#define CS_UC_CHAR_HIGH_SURROGATE_FIRST   0xD800
 First char in the "high surrogate" range.
#define CS_UC_CHAR_HIGH_SURROGATE_LAST   0xDBFF
 Last char in the "high surrogate" range.
#define CS_UC_CHAR_LOW_SURROGATE_FIRST   0xDC00
 First char in the "low surrogate" range.
#define CS_UC_CHAR_LOW_SURROGATE_LAST   0xDFFF
 Last char in the "low surrogate" range.
#define CS_UC_CHAR_REPLACER   0xFFFD
 Replacer char.
#define CS_UC_INVALID   0xFFFF
 Invalid char.
#define CS_UC_IS_HIGH_SURROGATE(C)   (((C) & 0xFFFFFC00) == 0x0000DC00)
 Check whether a code is in the "high surrogate" range.
#define CS_UC_IS_LOW_SURROGATE(C)   (((C) & 0xFFFFFC00) == 0x0000D800)
 Check whether a code is in the "low surrogate" range.
#define CS_UC_IS_NONCHARACTER(C)
 Test whether a code point is a Unicode noncharacter.
#define CS_UC_IS_SURROGATE(C)   (((C) & 0xFFFFF800) == 0x0000D800)
 Check whether a code is in the "high" or "low surrogate" range.
#define CS_UC_LAST_CHAR   0x10FFFF
 Highest valid Unicode codepoint.

Typedefs

typedef uint16 utf16_char
 A single char in a UTF16 encoded string.
typedef uint32 utf32_char
 A single char in a UTF32 encoded string.
typedef uint8 utf8_char
 A single char in a UTF8 encoded string.


Detailed Description

Unicode types and macros.

Definition in file csunicode.h.


Define Documentation

#define CS_UC_BOM   0xFFFE
 

Byte-order mark.

Definition at line 53 of file csunicode.h.

#define CS_UC_CHAR_HIGH_SURROGATE_FIRST   0xD800
 

First char in the "high surrogate" range.

Definition at line 71 of file csunicode.h.

Referenced by csUnicodeTransform::EncodeUTF16().

#define CS_UC_CHAR_HIGH_SURROGATE_LAST   0xDBFF
 

Last char in the "high surrogate" range.

Definition at line 73 of file csunicode.h.

#define CS_UC_CHAR_LOW_SURROGATE_FIRST   0xDC00
 

First char in the "low surrogate" range.

Definition at line 75 of file csunicode.h.

Referenced by csUnicodeTransform::EncodeUTF16().

#define CS_UC_CHAR_LOW_SURROGATE_LAST   0xDFFF
 

Last char in the "low surrogate" range.

Definition at line 77 of file csunicode.h.

#define CS_UC_CHAR_REPLACER   0xFFFD
 

Replacer char.

Definition at line 49 of file csunicode.h.

#define CS_UC_INVALID   0xFFFF
 

Invalid char.

Definition at line 51 of file csunicode.h.

#define CS_UC_IS_HIGH_SURROGATE  )     (((C) & 0xFFFFFC00) == 0x0000DC00)
 

Check whether a code is in the "high surrogate" range.

Definition at line 60 of file csunicode.h.

Referenced by csUnicodeTransform::UTF16Decode(), csUnicodeTransform::UTF16Rewind(), and csUnicodeTransform::UTF16Skip().

#define CS_UC_IS_LOW_SURROGATE  )     (((C) & 0xFFFFFC00) == 0x0000D800)
 

Check whether a code is in the "low surrogate" range.

Definition at line 62 of file csunicode.h.

Referenced by csUnicodeTransform::UTF16Decode().

#define CS_UC_IS_NONCHARACTER  ) 
 

Value:

(((C) == CS_UC_INVALID) || \
                                         ((C) == CS_UC_BOM) || \
                                         (((C) >= 0xFDD0) && ((C) <= 0xFDEF)) \
                                         || ((C) > CS_UC_LAST_CHAR))
Test whether a code point is a Unicode noncharacter.

Definition at line 65 of file csunicode.h.

Referenced by csUnicodeTransform::EncodeUTF16(), csUnicodeTransform::EncodeUTF32(), csUnicodeTransform::EncodeUTF8(), csUnicodeTransform::UTF16Decode(), csUnicodeTransform::UTF32Decode(), and csUnicodeTransform::UTF8Decode().

#define CS_UC_IS_SURROGATE  )     (((C) & 0xFFFFF800) == 0x0000D800)
 

Check whether a code is in the "high" or "low surrogate" range.

Definition at line 58 of file csunicode.h.

Referenced by csUnicodeTransform::EncodeUTF16(), csUnicodeTransform::EncodeUTF32(), csUnicodeTransform::EncodeUTF8(), csUnicodeTransform::UTF16Decode(), csUnicodeTransform::UTF16Rewind(), csUnicodeTransform::UTF32Decode(), and csUnicodeTransform::UTF8Decode().

#define CS_UC_LAST_CHAR   0x10FFFF
 

Highest valid Unicode codepoint.

Definition at line 55 of file csunicode.h.

Referenced by csUnicodeTransform::EncodeUTF16(), csUnicodeTransform::EncodeUTF32(), csUnicodeTransform::EncodeUTF8(), csUnicodeTransform::UTF32Decode(), and csUnicodeTransform::UTF8Decode().


Generated for Crystal Space by doxygen 1.4.4