arsa  2.7
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
irrUString.h File Reference
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "irrTypes.h"
#include "irrAllocator.h"
#include "irrArray.h"
#include "irrMath.h"
#include "irrString.h"
#include "path.h"

Go to the source code of this file.

Classes

class  irr::core::ustring16< TAlloc >
 UTF-16 string class. More...
 
class  irr::core::ustring16< TAlloc >::_ustring16_iterator_access
 Access an element in a unicode string, allowing one to change it. More...
 
class  irr::core::ustring16< TAlloc >::_ustring16_const_iterator
 Iterator to iterate through a UTF-16 string. More...
 
class  irr::core::ustring16< TAlloc >::_ustring16_iterator
 Iterator to iterate through a UTF-16 string. More...
 

Namespaces

 irr
 Everything in the Irrlicht Engine can be found in this namespace.
 
 irr::core
 Basic classes such as vectors, planes, arrays, lists, and so on can be found in this namespace.
 
 irr::core::unicode
 

Macros

#define USTRING_NO_STL
 
#define UTF16_IS_SURROGATE(c)   (((c) & 0xF800) == 0xD800)
 Is a UTF-16 code point a surrogate? More...
 
#define UTF16_IS_SURROGATE_HI(c)   (((c) & 0xFC00) == 0xD800)
 
#define UTF16_IS_SURROGATE_LO(c)   (((c) & 0xFC00) == 0xDC00)
 
#define COPY_ARRAY(source, size)
 

Typedefs

typedef u32 irr::uchar32_t
 
typedef u16 irr::uchar16_t
 
typedef u8 irr::uchar8_t
 
typedef ustring16< irrAllocator< uchar16_t > > irr::core::ustring
 

Enumerations

enum  irr::core::unicode::EUTF_ENCODE {
  irr::core::unicode::EUTFE_NONE = 0, irr::core::unicode::EUTFE_UTF8, irr::core::unicode::EUTFE_UTF16, irr::core::unicode::EUTFE_UTF16_LE,
  irr::core::unicode::EUTFE_UTF16_BE, irr::core::unicode::EUTFE_UTF32, irr::core::unicode::EUTFE_UTF32_LE, irr::core::unicode::EUTFE_UTF32_BE
}
 Unicode encoding type. More...
 
enum  irr::core::unicode::EUTF_ENDIAN { irr::core::unicode::EUTFEE_NATIVE = 0, irr::core::unicode::EUTFEE_LITTLE, irr::core::unicode::EUTFEE_BIG }
 Unicode endianness. More...
 

Functions

uchar32_t irr::core::unicode::toUTF32 (uchar16_t high, uchar16_t low)
 
uchar16_t irr::core::unicode::swapEndian16 (const uchar16_t &c)
 
uchar32_t irr::core::unicode::swapEndian32 (const uchar32_t &c)
 
core::array< u8 > irr::core::unicode::getUnicodeBOM (EUTF_ENCODE mode)
 
EUTF_ENCODE irr::core::unicode::determineUnicodeBOM (const char *data)
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const ustring16< TAlloc > &right)
 Appends two ustring16s. More...
 
template<typename TAlloc , class B >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const B *const right)
 Appends a ustring16 and a null-terminated unicode string. More...
 
template<class B , typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const B *const left, const ustring16< TAlloc > &right)
 Appends a ustring16 and a null-terminated unicode string. More...
 
template<typename TAlloc , typename B , typename BAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const string< B, BAlloc > &right)
 Appends a ustring16 and an Irrlicht string. More...
 
template<typename TAlloc , typename B , typename BAlloc >
ustring16< TAlloc > irr::core::operator+ (const string< B, BAlloc > &left, const ustring16< TAlloc > &right)
 Appends a ustring16 and an Irrlicht string. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const char right)
 Appends a ustring16 and a char. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const char left, const ustring16< TAlloc > &right)
 Appends a ustring16 and a char. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const short right)
 Appends a ustring16 and a short. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const short left, const ustring16< TAlloc > &right)
 Appends a ustring16 and a short. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const unsigned short right)
 Appends a ustring16 and an unsigned short. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const unsigned short left, const ustring16< TAlloc > &right)
 Appends a ustring16 and an unsigned short. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const int right)
 Appends a ustring16 and an int. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const int left, const ustring16< TAlloc > &right)
 Appends a ustring16 and an int. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const unsigned int right)
 Appends a ustring16 and an unsigned int. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const unsigned int left, const ustring16< TAlloc > &right)
 Appends a ustring16 and an unsigned int. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const long right)
 Appends a ustring16 and a long. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const long left, const ustring16< TAlloc > &right)
 Appends a ustring16 and a long. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const unsigned long right)
 Appends a ustring16 and an unsigned long. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const unsigned long left, const ustring16< TAlloc > &right)
 Appends a ustring16 and an unsigned long. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const float right)
 Appends a ustring16 and a float. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const float left, const ustring16< TAlloc > &right)
 Appends a ustring16 and a float. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const ustring16< TAlloc > &left, const double right)
 Appends a ustring16 and a double. More...
 
template<typename TAlloc >
ustring16< TAlloc > irr::core::operator+ (const double left, const ustring16< TAlloc > &right)
 Appends a ustring16 and a double. More...
 

Variables

const irr::u16 irr::core::unicode::UTF_REPLACEMENT_CHARACTER = 0xFFFD
 The unicode replacement character. Used to replace invalid characters. More...
 
const u16 irr::core::unicode::BOM = 0xFEFF
 The Unicode byte order mark. More...
 
const u8 irr::core::unicode::BOM_UTF8_LEN = 3
 The size of the Unicode byte order mark in terms of the Unicode character size. More...
 
const u8 irr::core::unicode::BOM_UTF16_LEN = 1
 
const u8 irr::core::unicode::BOM_UTF32_LEN = 1
 
const u8 irr::core::unicode::BOM_ENCODE_UTF8 [3] = { 0xEF, 0xBB, 0xBF }
 Unicode byte order marks for file operations. More...
 
const u8 irr::core::unicode::BOM_ENCODE_UTF16_BE [2] = { 0xFE, 0xFF }
 
const u8 irr::core::unicode::BOM_ENCODE_UTF16_LE [2] = { 0xFF, 0xFE }
 
const u8 irr::core::unicode::BOM_ENCODE_UTF32_BE [4] = { 0x00, 0x00, 0xFE, 0xFF }
 
const u8 irr::core::unicode::BOM_ENCODE_UTF32_LE [4] = { 0xFF, 0xFE, 0x00, 0x00 }
 
const u8 irr::core::unicode::BOM_ENCODE_UTF8_LEN = 3
 The size in bytes of the Unicode byte marks for file operations. More...
 
const u8 irr::core::unicode::BOM_ENCODE_UTF16_LEN = 2
 
const u8 irr::core::unicode::BOM_ENCODE_UTF32_LEN = 4
 

Macro Definition Documentation

◆ COPY_ARRAY

#define COPY_ARRAY (   source,
  size 
)
Value:
memcpy(ret.pointer(), source, size); \
ret.set_used(size)
GLsizeiptr size
GLsizei GLsizei GLchar * source

◆ USTRING_NO_STL

#define USTRING_NO_STL

Definition at line 42 of file irrUString.h.

◆ UTF16_IS_SURROGATE

#define UTF16_IS_SURROGATE (   c)    (((c) & 0xF800) == 0xD800)

Is a UTF-16 code point a surrogate?

Definition at line 71 of file irrUString.h.

◆ UTF16_IS_SURROGATE_HI

#define UTF16_IS_SURROGATE_HI (   c)    (((c) & 0xFC00) == 0xD800)

Definition at line 72 of file irrUString.h.

◆ UTF16_IS_SURROGATE_LO

#define UTF16_IS_SURROGATE_LO (   c)    (((c) & 0xFC00) == 0xDC00)

Definition at line 73 of file irrUString.h.