![]() |
ezEngine
Release 25.03
|
STL forward iterator used by all string classes. Iterates over unicode characters. The iterator starts at the first character of the string and ends at the address beyond the last character of the string. More...
#include <StringIterator.h>
Public Types | |
using | iterator_category = std::bidirectional_iterator_tag |
using | value_type = ezUInt32 |
using | difference_type = std::ptrdiff_t |
using | pointer = const char * |
using | reference = ezUInt32 |
Public Member Functions | |
EZ_DECLARE_POD_TYPE () | |
EZ_ALWAYS_INLINE | ezStringIterator ()=default |
Constructs an invalid iterator. | |
EZ_FORCE_INLINE | ezStringIterator (const char *pStartPtr, const char *pEndPtr, const char *pCurPtr) |
Constructs either a begin or end iterator for the given string. | |
EZ_ALWAYS_INLINE bool | IsValid () const |
Checks whether this iterator points to a valid element. Invalid iterators either point to m_pEndPtr or were never initialized. | |
EZ_ALWAYS_INLINE ezUInt32 | GetCharacter () const |
Returns the currently pointed to character in Utf32 encoding. | |
EZ_ALWAYS_INLINE ezUInt32 | operator* () const |
Returns the currently pointed to character in Utf32 encoding. | |
const EZ_ALWAYS_INLINE char * | GetData () const |
Returns the address the iterator currently points to. | |
EZ_ALWAYS_INLINE bool | operator== (const ezStringIterator &it2) const |
Checks whether the two iterators point to the same element. | |
EZ_ADD_DEFAULT_OPERATOR_NOTEQUAL (const ezStringIterator &) | |
EZ_ALWAYS_INLINE ezUInt32 | Advance () |
Advances the iterated to the next character, same as operator++, but returns how many bytes were consumed in the source string. | |
EZ_ALWAYS_INLINE ezStringIterator & | operator++ () |
Move to the next Utf8 character. | |
EZ_ALWAYS_INLINE ezStringIterator & | operator-- () |
Move to the previous Utf8 character. | |
EZ_ALWAYS_INLINE ezStringIterator | operator++ (int) |
Move to the next Utf8 character. | |
EZ_ALWAYS_INLINE ezStringIterator | operator-- (int) |
Move to the previous Utf8 character. | |
EZ_FORCE_INLINE void | operator+= (difference_type d) |
Advances the iterator forwards by d characters. Does not move it beyond the range's end. | |
EZ_FORCE_INLINE void | operator-= (difference_type d) |
Moves the iterator backwards by d characters. Does not move it beyond the range's start. | |
EZ_ALWAYS_INLINE ezStringIterator | operator+ (difference_type d) const |
Returns an iterator that is advanced forwards by d characters. | |
EZ_ALWAYS_INLINE ezStringIterator | operator- (difference_type d) const |
Returns an iterator that is advanced backwards by d characters. | |
void | SetCurrentPosition (const char *szCurPos) |
Allows to set the 'current' iteration position to a different value. More... | |
STL forward iterator used by all string classes. Iterates over unicode characters. The iterator starts at the first character of the string and ends at the address beyond the last character of the string.
|
inline |
Allows to set the 'current' iteration position to a different value.
Must be between the iterators start and end range.