Minetest  5.4.0
irr::core::ustring16< TAlloc >::_ustring16_iterator_access Class Reference

---------------—/// iterator classes /// ---------------—/// More...

#include <irrUString.h>

+ Collaboration diagram for irr::core::ustring16< TAlloc >::_ustring16_iterator_access:

Public Member Functions

 _ustring16_iterator_access (const ustring16< TAlloc > *s, u32 p)
 
 operator uchar32_t () const
 Allow the class to be interpreted as a single UTF-32 character. More...
 
_ustring16_iterator_accessoperator= (const uchar32_t c)
 Allow one to change the character in the unicode string. More...
 
_ustring16_iterator_accessoperator++ ()
 Increments the value by 1. More...
 
uchar32_t operator++ (int)
 Increments the value by 1, returning the old value. More...
 
_ustring16_iterator_accessoperator-- ()
 Decrements the value by 1. More...
 
uchar32_t operator-- (int)
 Decrements the value by 1, returning the old value. More...
 
_ustring16_iterator_accessoperator+= (int val)
 Adds to the value by a specified amount. More...
 
_ustring16_iterator_accessoperator-= (int val)
 Subtracts from the value by a specified amount. More...
 
_ustring16_iterator_accessoperator*= (int val)
 Multiples the value by a specified amount. More...
 
_ustring16_iterator_accessoperator/= (int val)
 Divides the value by a specified amount. More...
 
_ustring16_iterator_accessoperator%= (int val)
 Modulos the value by a specified amount. More...
 
uchar32_t operator+ (int val) const
 Adds to the value by a specified amount. More...
 
uchar32_t operator- (int val) const
 Subtracts from the value by a specified amount. More...
 
uchar32_t operator* (int val) const
 Multiplies the value by a specified amount. More...
 
uchar32_t operator/ (int val) const
 Divides the value by a specified amount. More...
 
uchar32_t operator% (int val) const
 Modulos the value by a specified amount. More...
 

Private Member Functions

uchar32_t _get () const
 Gets a uchar32_t from our current position. More...
 
void _set (uchar32_t c)
 Sets a uchar32_t at our current position. More...
 

Private Attributes

const ustring16< TAlloc > * ref
 
u32 pos
 

Detailed Description

template<typename TAlloc = irrAllocator<uchar16_t>>
class irr::core::ustring16< TAlloc >::_ustring16_iterator_access

---------------—/// iterator classes /// ---------------—///

Access an element in a unicode string, allowing one to change it.

Constructor & Destructor Documentation

◆ _ustring16_iterator_access()

template<typename TAlloc = irrAllocator<uchar16_t>>
irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_ustring16_iterator_access ( const ustring16< TAlloc > *  s,
u32  p 
)
inline

Member Function Documentation

◆ _get()

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get ( ) const
inlineprivate

Gets a uchar32_t from our current position.

References irr::core::ustring16< TAlloc >::c_str(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::pos, irr::core::ustring16< TAlloc >::_ustring16_iterator_access::ref, irr::core::ustring16< TAlloc >::size_raw(), irr::core::unicode::toUTF32(), and UTF16_IS_SURROGATE.

Referenced by irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator uchar32_t(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator%(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator%=(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator*(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator*=(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator+(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator++(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator+=(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator-(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator--(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator-=(), irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator/(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator/=().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _set()

template<typename TAlloc = irrAllocator<uchar16_t>>
void irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set ( uchar32_t  c)
inlineprivate

◆ operator uchar32_t()

template<typename TAlloc = irrAllocator<uchar16_t>>
irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator uchar32_t ( ) const
inline

Allow the class to be interpreted as a single UTF-32 character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get().

+ Here is the call graph for this function:

◆ operator%()

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator% ( int  val) const
inline

Modulos the value by a specified amount.

Parameters
valThe amount to modulo this character by.
Returns
A unicode character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get().

+ Here is the call graph for this function:

◆ operator%=()

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator%= ( int  val)
inline

Modulos the value by a specified amount.

Parameters
valThe amount to modulo this character by.
Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator*()

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator* ( int  val) const
inline

Multiplies the value by a specified amount.

Parameters
valThe amount to multiply this character by.
Returns
A unicode character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get().

+ Here is the call graph for this function:

◆ operator*=()

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator*= ( int  val)
inline

Multiples the value by a specified amount.

Parameters
valThe amount to multiply this character by.
Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator+()

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator+ ( int  val) const
inline

Adds to the value by a specified amount.

Parameters
valThe amount to add to this character.
Returns
A unicode character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get().

+ Here is the call graph for this function:

◆ operator++() [1/2]

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator++ ( )
inline

Increments the value by 1.

Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator++() [2/2]

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator++ ( int  )
inline

Increments the value by 1, returning the old value.

Returns
A unicode character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator+=()

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator+= ( int  val)
inline

Adds to the value by a specified amount.

Parameters
valThe amount to add to this character.
Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator-()

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator- ( int  val) const
inline

Subtracts from the value by a specified amount.

Parameters
valThe amount to subtract from this character.
Returns
A unicode character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get().

+ Here is the call graph for this function:

◆ operator--() [1/2]

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator-- ( )
inline

Decrements the value by 1.

Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator--() [2/2]

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator-- ( int  )
inline

Decrements the value by 1, returning the old value.

Returns
A unicode character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator-=()

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator-= ( int  val)
inline

Subtracts from the value by a specified amount.

Parameters
valThe amount to subtract from this character.
Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator/()

template<typename TAlloc = irrAllocator<uchar16_t>>
uchar32_t irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator/ ( int  val) const
inline

Divides the value by a specified amount.

Parameters
valThe amount to divide this character by.
Returns
A unicode character.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get().

+ Here is the call graph for this function:

◆ operator/=()

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator/= ( int  val)
inline

Divides the value by a specified amount.

Parameters
valThe amount to divide this character by.
Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_get(), and irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

◆ operator=()

template<typename TAlloc = irrAllocator<uchar16_t>>
_ustring16_iterator_access& irr::core::ustring16< TAlloc >::_ustring16_iterator_access::operator= ( const uchar32_t  c)
inline

Allow one to change the character in the unicode string.

Parameters
cThe new character to use.
Returns
Myself.

References irr::core::ustring16< TAlloc >::_ustring16_iterator_access::_set().

+ Here is the call graph for this function:

Member Data Documentation

◆ pos

template<typename TAlloc = irrAllocator<uchar16_t>>
u32 irr::core::ustring16< TAlloc >::_ustring16_iterator_access::pos
private

◆ ref

template<typename TAlloc = irrAllocator<uchar16_t>>
const ustring16<TAlloc>* irr::core::ustring16< TAlloc >::_ustring16_iterator_access::ref
private

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