FIFE  be64c707dea6b3250bd4355bf5c825d25920087d
utf8 Namespace Reference

Namespaces

 internal
 
 unchecked
 

Classes

class  exception
 
class  invalid_code_point
 
class  invalid_utf16
 
class  invalid_utf8
 
class  iterator
 
class  not_enough_room
 

Typedefs

typedef unsigned char uint8_t
 
typedef unsigned short uint16_t
 
typedef unsigned int uint32_t
 

Functions

template<typename octet_iterator >
octet_iterator append (uint32_t cp, octet_iterator result)
 The library API - functions intended to be called by the users. More...
 
template<typename octet_iterator , typename output_iterator >
output_iterator replace_invalid (octet_iterator start, octet_iterator end, output_iterator out, uint32_t replacement)
 
template<typename octet_iterator , typename output_iterator >
output_iterator replace_invalid (octet_iterator start, octet_iterator end, output_iterator out)
 
template<typename octet_iterator >
uint32_t next (octet_iterator &it, octet_iterator end)
 
template<typename octet_iterator >
uint32_t peek_next (octet_iterator it, octet_iterator end)
 
template<typename octet_iterator >
uint32_t prior (octet_iterator &it, octet_iterator start)
 
template<typename octet_iterator >
uint32_t previous (octet_iterator &it, octet_iterator pass_start)
 Deprecated in versions that include "prior". More...
 
template<typename octet_iterator , typename distance_type >
void advance (octet_iterator &it, distance_type n, octet_iterator end)
 
template<typename octet_iterator >
std::iterator_traits< octet_iterator >::difference_type distance (octet_iterator first, octet_iterator last)
 
template<typename u16bit_iterator , typename octet_iterator >
octet_iterator utf16to8 (u16bit_iterator start, u16bit_iterator end, octet_iterator result)
 
template<typename u16bit_iterator , typename octet_iterator >
u16bit_iterator utf8to16 (octet_iterator start, octet_iterator end, u16bit_iterator result)
 
template<typename octet_iterator , typename u32bit_iterator >
octet_iterator utf32to8 (u32bit_iterator start, u32bit_iterator end, octet_iterator result)
 
template<typename octet_iterator , typename u32bit_iterator >
u32bit_iterator utf8to32 (octet_iterator start, octet_iterator end, u32bit_iterator result)
 
template<typename octet_iterator >
octet_iterator find_invalid (octet_iterator start, octet_iterator end)
 
template<typename octet_iterator >
bool is_valid (octet_iterator start, octet_iterator end)
 
template<typename octet_iterator >
bool starts_with_bom (octet_iterator it, octet_iterator end)
 
template<typename octet_iterator >
bool is_bom (octet_iterator it)
 

Variables

const uint8_t bom [] = {0xef, 0xbb, 0xbf}
 The library API - functions intended to be called by the users. More...
 

Typedef Documentation

◆ uint16_t

typedef unsigned short utf8::uint16_t

Definition at line 39 of file core.h.

◆ uint32_t

typedef unsigned int utf8::uint32_t

Definition at line 40 of file core.h.

◆ uint8_t

typedef unsigned char utf8::uint8_t

Definition at line 38 of file core.h.

Function Documentation

◆ advance()

template<typename octet_iterator , typename distance_type >
void utf8::advance ( octet_iterator &  it,
distance_type  n,
octet_iterator  end 
)

Definition at line 190 of file checked.h.

References next().

◆ append()

template<typename octet_iterator >
octet_iterator utf8::append ( uint32_t  cp,
octet_iterator  result 
)

The library API - functions intended to be called by the users.

Definition at line 73 of file checked.h.

References utf8::internal::is_code_point_valid().

Referenced by FIFE::FontBase::getAsImageMultiline(), fcn::UTF8StringEditor::insertChar(), replace_invalid(), FIFE::FontBase::splitTextToWidth(), utf16to8(), and utf32to8().

+ Here is the caller graph for this function:

◆ distance()

◆ find_invalid()

template<typename octet_iterator >
octet_iterator utf8::find_invalid ( octet_iterator  start,
octet_iterator  end 
)

Definition at line 288 of file core.h.

References utf8::internal::UTF8_OK, and utf8::internal::validate_next().

Referenced by is_valid().

+ Here is the caller graph for this function:

◆ is_bom()

template<typename octet_iterator >
bool utf8::is_bom ( octet_iterator  it)
inline

Definition at line 317 of file core.h.

References utf8::internal::mask8().

◆ is_valid()

template<typename octet_iterator >
bool utf8::is_valid ( octet_iterator  start,
octet_iterator  end 
)
inline

Definition at line 300 of file core.h.

References find_invalid().

Referenced by FIFE::FontBase::getStringIndexAt(), and FIFE::TrueTypeFont::getWidth().

+ Here is the caller graph for this function:

◆ next()

◆ peek_next()

template<typename octet_iterator >
uint32_t utf8::peek_next ( octet_iterator  it,
octet_iterator  end 
)

Definition at line 157 of file checked.h.

References next().

Referenced by prior().

+ Here is the caller graph for this function:

◆ previous()

template<typename octet_iterator >
uint32_t utf8::previous ( octet_iterator &  it,
octet_iterator  pass_start 
)

Deprecated in versions that include "prior".

Definition at line 179 of file checked.h.

References utf8::internal::is_trail(), and next().

◆ prior()

template<typename octet_iterator >
uint32_t utf8::prior ( octet_iterator &  it,
octet_iterator  start 
)

Definition at line 163 of file checked.h.

References utf8::internal::is_trail(), and peek_next().

Referenced by utf8::iterator< octet_iterator >::operator--(), and fcn::UTF8StringEditor::prevChar().

+ Here is the caller graph for this function:

◆ replace_invalid() [1/2]

template<typename octet_iterator , typename output_iterator >
output_iterator utf8::replace_invalid ( octet_iterator  start,
octet_iterator  end,
output_iterator  out,
uint32_t  replacement 
)

◆ replace_invalid() [2/2]

template<typename octet_iterator , typename output_iterator >
output_iterator utf8::replace_invalid ( octet_iterator  start,
octet_iterator  end,
output_iterator  out 
)
inline

Definition at line 130 of file checked.h.

References utf8::internal::mask16(), and replace_invalid().

◆ starts_with_bom()

template<typename octet_iterator >
bool utf8::starts_with_bom ( octet_iterator  it,
octet_iterator  end 
)
inline

Definition at line 306 of file core.h.

References utf8::internal::mask8().

◆ utf16to8()

template<typename u16bit_iterator , typename octet_iterator >
octet_iterator utf8::utf16to8 ( u16bit_iterator  start,
u16bit_iterator  end,
octet_iterator  result 
)

◆ utf32to8()

template<typename octet_iterator , typename u32bit_iterator >
octet_iterator utf8::utf32to8 ( u32bit_iterator  start,
u32bit_iterator  end,
octet_iterator  result 
)

Definition at line 249 of file checked.h.

References append().

◆ utf8to16()

template<typename u16bit_iterator , typename octet_iterator >
u16bit_iterator utf8::utf8to16 ( octet_iterator  start,
octet_iterator  end,
u16bit_iterator  result 
)

◆ utf8to32()

template<typename octet_iterator , typename u32bit_iterator >
u32bit_iterator utf8::utf8to32 ( octet_iterator  start,
octet_iterator  end,
u32bit_iterator  result 
)

Definition at line 258 of file checked.h.

References next().

Referenced by FIFE::FontBase::getAsImageMultiline(), and FIFE::FontBase::splitTextToWidth().

+ Here is the caller graph for this function:

Variable Documentation

◆ bom

const uint8_t utf8::bom[] = {0xef, 0xbb, 0xbf}

The library API - functions intended to be called by the users.

Definition at line 285 of file core.h.