tinyutf8 4.0.2
Unicode (UTF-8) capable std::string
 
Loading...
Searching...
No Matches
tiny_utf8::iterator_base< Container, true > Struct Template Reference

#include <tinyutf8.h>

Public Types

typedef Container::value_type value_type
 
typedef Container::difference_type difference_type
 
typedef raw_codepoint_reference< Container, false > reference
 
typedef void * pointer
 
typedef std::bidirectional_iterator_tag iterator_category
 
typedef Container::value_type value_type
 
typedef Container::difference_type difference_type
 
typedef codepoint_reference< Container, false > reference
 
typedef void * pointer
 
typedef std::random_access_iterator_tag iterator_category
 

Public Member Functions

bool operator== (const iterator_base &it) const noexcept
 
bool operator!= (const iterator_base &it) const noexcept
 
 iterator_base (difference_type index, Container *instance) noexcept
 Ctor.
 
 iterator_base () noexcept=default
 Default function.
 
 iterator_base (const iterator_base &) noexcept=default
 
iterator_baseoperator= (const iterator_base &) noexcept=default
 
Container * get_instance () const noexcept
 Getter for the instance.
 
 iterator_base (iterator_base< Container, false > other) noexcept
 Constructor from non-raw iterator.
 
 operator iterator_base< Container, false > () const noexcept
 Cast to non-raw iterator.
 
difference_type get_index () const noexcept
 
difference_type get_raw_index () const noexcept
 Get the index of the codepoint the iterator points to.
 
reference get_reference () const noexcept
 Get a reference to the codepoint the iterator points to.
 
value_type get_value () const noexcept
 Get the value that the iterator points to.
 
bool operator== (const iterator_base &it) const noexcept
 
bool operator!= (const iterator_base &it) const noexcept
 
 iterator_base (difference_type index, Container *instance) noexcept
 Ctor.
 
 iterator_base () noexcept=default
 Default function.
 
 iterator_base (const iterator_base &) noexcept=default
 
iterator_baseoperator= (const iterator_base &) noexcept=default
 
Container * get_instance () const noexcept
 Getter for the instance.
 
difference_type get_index () const noexcept
 
difference_type get_raw_index () const noexcept
 Get the index of the codepoint the iterator points to.
 
reference get_reference () const noexcept
 Get a reference to the codepoint the iterator points to.
 
value_type get_value () const noexcept
 Get the value that the iterator points to.
 

Protected Member Functions

void advance (difference_type n) noexcept
 Advance the iterator n times (negative values allowed!)
 
void increment () noexcept
 Move the iterator one codepoint ahead.
 
void decrement () noexcept
 Move the iterator one codepoint backwards.
 
void advance (difference_type n) noexcept
 Advance the iterator n times (negative values allowed!)
 
void increment () noexcept
 Move the iterator one codepoint ahead.
 
void decrement () noexcept
 Move the iterator one codepoint backwards.
 

Protected Attributes

difference_type t_index
 
Container * t_instance = nullptr
 
difference_type t_index
 
Container * t_instance
 

Friends

template<typename, typename, typename>
class basic_string
 
class basic_string
 

Member Typedef Documentation

◆ difference_type [1/2]

typedef Container::difference_type tiny_utf8::iterator_base< Container, Raw >::difference_type

◆ difference_type [2/2]

template<typename Container>
typedef Container::difference_type tiny_utf8::iterator_base< Container, true >::difference_type

◆ iterator_category [1/2]

typedef std::random_access_iterator_tag tiny_utf8::iterator_base< Container, Raw >::iterator_category

◆ iterator_category [2/2]

template<typename Container>
typedef std::bidirectional_iterator_tag tiny_utf8::iterator_base< Container, true >::iterator_category

◆ pointer [1/2]

typedef void* tiny_utf8::iterator_base< Container, Raw >::pointer

◆ pointer [2/2]

template<typename Container>
typedef void* tiny_utf8::iterator_base< Container, true >::pointer

◆ reference [1/2]

typedef codepoint_reference<Container, false> tiny_utf8::iterator_base< Container, Raw >::reference

◆ reference [2/2]

template<typename Container>
typedef raw_codepoint_reference<Container, false> tiny_utf8::iterator_base< Container, true >::reference

◆ value_type [1/2]

typedef Container::value_type tiny_utf8::iterator_base< Container, Raw >::value_type

◆ value_type [2/2]

template<typename Container>
typedef Container::value_type tiny_utf8::iterator_base< Container, true >::value_type

Constructor & Destructor Documentation

◆ iterator_base() [1/7]

template<typename Container>
tiny_utf8::iterator_base< Container, true >::iterator_base ( difference_type index,
Container * instance )
inlinenoexcept

Ctor.

◆ iterator_base() [2/7]

template<typename Container>
tiny_utf8::iterator_base< Container, true >::iterator_base ( )
defaultnoexcept

Default function.

◆ iterator_base() [3/7]

template<typename Container>
tiny_utf8::iterator_base< Container, true >::iterator_base ( const iterator_base< Container, true > & )
defaultnoexcept

◆ iterator_base() [4/7]

template<typename Container>
tiny_utf8::iterator_base< Container, true >::iterator_base ( iterator_base< Container, false > other)
inlinenoexcept

Constructor from non-raw iterator.

◆ iterator_base() [5/7]

tiny_utf8::iterator_base< Container, Raw >::iterator_base ( difference_type index,
Container * instance )
inlinenoexcept

Ctor.

◆ iterator_base() [6/7]

tiny_utf8::iterator_base< Container, Raw >::iterator_base ( )
defaultnoexcept

Default function.

◆ iterator_base() [7/7]

tiny_utf8::iterator_base< Container, Raw >::iterator_base ( const iterator_base< Container, true > & )
defaultnoexcept

Member Function Documentation

◆ advance() [1/2]

void tiny_utf8::iterator_base< Container, Raw >::advance ( difference_type n)
inlineprotectednoexcept

Advance the iterator n times (negative values allowed!)

◆ advance() [2/2]

template<typename Container>
void tiny_utf8::iterator_base< Container, true >::advance ( difference_type n)
inlineprotectednoexcept

Advance the iterator n times (negative values allowed!)

◆ decrement() [1/2]

void tiny_utf8::iterator_base< Container, Raw >::decrement ( )
inlineprotectednoexcept

Move the iterator one codepoint backwards.

◆ decrement() [2/2]

template<typename Container>
void tiny_utf8::iterator_base< Container, true >::decrement ( )
inlineprotectednoexcept

Move the iterator one codepoint backwards.

◆ get_index() [1/2]

difference_type tiny_utf8::iterator_base< Container, Raw >::get_index ( ) const
inlinenoexcept

◆ get_index() [2/2]

template<typename Container>
difference_type tiny_utf8::iterator_base< Container, true >::get_index ( ) const
inlinenoexcept

◆ get_instance() [1/2]

Container * tiny_utf8::iterator_base< Container, Raw >::get_instance ( ) const
inlinenoexcept

Getter for the instance.

◆ get_instance() [2/2]

template<typename Container>
Container * tiny_utf8::iterator_base< Container, true >::get_instance ( ) const
inlinenoexcept

Getter for the instance.

◆ get_raw_index() [1/2]

difference_type tiny_utf8::iterator_base< Container, Raw >::get_raw_index ( ) const
inlinenoexcept

Get the index of the codepoint the iterator points to.

◆ get_raw_index() [2/2]

template<typename Container>
difference_type tiny_utf8::iterator_base< Container, true >::get_raw_index ( ) const
inlinenoexcept

Get the index of the codepoint the iterator points to.

◆ get_reference() [1/2]

reference tiny_utf8::iterator_base< Container, Raw >::get_reference ( ) const
inlinenoexcept

Get a reference to the codepoint the iterator points to.

◆ get_reference() [2/2]

template<typename Container>
reference tiny_utf8::iterator_base< Container, true >::get_reference ( ) const
inlinenoexcept

Get a reference to the codepoint the iterator points to.

◆ get_value() [1/2]

value_type tiny_utf8::iterator_base< Container, Raw >::get_value ( ) const
inlinenoexcept

Get the value that the iterator points to.

◆ get_value() [2/2]

template<typename Container>
value_type tiny_utf8::iterator_base< Container, true >::get_value ( ) const
inlinenoexcept

Get the value that the iterator points to.

◆ increment() [1/2]

void tiny_utf8::iterator_base< Container, Raw >::increment ( )
inlineprotectednoexcept

Move the iterator one codepoint ahead.

◆ increment() [2/2]

template<typename Container>
void tiny_utf8::iterator_base< Container, true >::increment ( )
inlineprotectednoexcept

Move the iterator one codepoint ahead.

◆ operator iterator_base< Container, false >()

template<typename Container>
tiny_utf8::iterator_base< Container, true >::operator iterator_base< Container, false > ( ) const
inlinenoexcept

Cast to non-raw iterator.

◆ operator!=() [1/2]

bool tiny_utf8::iterator_base< Container, Raw >::operator!= ( const iterator_base< Container, true > & it) const
inlinenoexcept

◆ operator!=() [2/2]

template<typename Container>
bool tiny_utf8::iterator_base< Container, true >::operator!= ( const iterator_base< Container, true > & it) const
inlinenoexcept

◆ operator=() [1/2]

iterator_base & tiny_utf8::iterator_base< Container, Raw >::operator= ( const iterator_base< Container, true > & )
defaultnoexcept

◆ operator=() [2/2]

template<typename Container>
iterator_base & tiny_utf8::iterator_base< Container, true >::operator= ( const iterator_base< Container, true > & )
defaultnoexcept

◆ operator==() [1/2]

bool tiny_utf8::iterator_base< Container, Raw >::operator== ( const iterator_base< Container, true > & it) const
inlinenoexcept

◆ operator==() [2/2]

template<typename Container>
bool tiny_utf8::iterator_base< Container, true >::operator== ( const iterator_base< Container, true > & it) const
inlinenoexcept

Friends And Related Symbol Documentation

◆ basic_string [1/2]

friend class basic_string
friend

◆ basic_string [2/2]

template<typename Container>
template<typename, typename, typename>
friend class basic_string
friend

Member Data Documentation

◆ t_index [1/2]

difference_type tiny_utf8::iterator_base< Container, Raw >::t_index
protected

◆ t_index [2/2]

template<typename Container>
difference_type tiny_utf8::iterator_base< Container, true >::t_index
protected

◆ t_instance [1/2]

Container* tiny_utf8::iterator_base< Container, Raw >::t_instance
protected

◆ t_instance [2/2]

template<typename Container>
Container* tiny_utf8::iterator_base< Container, true >::t_instance = nullptr
protected

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