u5e
UnicodeTextC++Library
Classes | Public Types | Public Member Functions | List of all members
u5e::utf8_iterator< NativeIterator > Class Template Reference

mutable utf8 iterator More...

#include <u5e/utf8_iterator.hpp>

Inheritance diagram for u5e::utf8_iterator< NativeIterator >:
Inheritance graph
[legend]
Collaboration diagram for u5e::utf8_iterator< NativeIterator >:
Collaboration graph
[legend]

Classes

class  proxyobject
 offers write access to the iterator at a given position More...
 

Public Types

typedef utf8_iterator pointer
 
- Public Types inherited from u5e::utf8_iterator_base< NativeIterator >
typedef codepoint value_type
 
typedef const codepointreference
 
typedef int difference_type
 
typedef std::bidirectional_iterator_tag iterator_category
 

Public Member Functions

 utf8_iterator (const NativeIterator raw_iterator)
 
 utf8_iterator (const utf8_iterator &tocopy)
 
proxyobject operator* ()
 
utf8_iteratoroperator++ ()
 
utf8_iterator operator++ (int junk)
 
utf8_iteratoroperator-- ()
 
utf8_iterator operator-- (int junk)
 
bool operator== (const utf8_iterator &rhs) const
 
bool operator!= (const utf8_iterator &rhs) const
 
- Public Member Functions inherited from u5e::utf8_iterator_base< NativeIterator >
 utf8_iterator_base (const NativeIterator raw_iterator)
 
bool rewind_to_start_of_codepoint (const char current_octet)
 
void forward_one_codepoint ()
 
void rewind_one_codepoint ()
 
const codepoint current_codepoint ()
 

Additional Inherited Members

- Public Attributes inherited from u5e::utf8_iterator_base< NativeIterator >
iterator_assertion< NativeIterator, char > _assertions
 
NativeIterator raw_iterator_
 

Detailed Description

template<typename NativeIterator>
class u5e::utf8_iterator< NativeIterator >

mutable utf8 iterator

Note that if you set a value in the middle of a text, you will likely make the string invalid. Most of the time you should only consider appending to an iterator, never writing in the middle of the text.

Template Parameters
NativeIteratorThe underlying type to be iterated over.

Definition at line 207 of file utf8_iterator.hpp.

Member Typedef Documentation

template<typename NativeIterator>
typedef utf8_iterator u5e::utf8_iterator< NativeIterator >::pointer

Offer itself as the pointer type

Definition at line 213 of file utf8_iterator.hpp.

Constructor & Destructor Documentation

template<typename NativeIterator>
u5e::utf8_iterator< NativeIterator >::utf8_iterator ( const NativeIterator  raw_iterator)
inline

Construct fro the underlying iterator

Definition at line 218 of file utf8_iterator.hpp.

template<typename NativeIterator>
u5e::utf8_iterator< NativeIterator >::utf8_iterator ( const utf8_iterator< NativeIterator > &  tocopy)
inline

Copy constructor

Definition at line 224 of file utf8_iterator.hpp.

Member Function Documentation

template<typename NativeIterator>
bool u5e::utf8_iterator< NativeIterator >::operator!= ( const utf8_iterator< NativeIterator > &  rhs) const
inline

Compare the iterator with another iterator

Definition at line 280 of file utf8_iterator.hpp.

template<typename NativeIterator>
proxyobject u5e::utf8_iterator< NativeIterator >::operator* ( )
inline

mutable utf8 iterator returns a proxy object in order to allow assignment to happen.

Definition at line 340 of file utf8_iterator.hpp.

template<typename NativeIterator>
utf8_iterator& u5e::utf8_iterator< NativeIterator >::operator++ ( )
inline

Advance the iterator

Definition at line 231 of file utf8_iterator.hpp.

template<typename NativeIterator>
utf8_iterator u5e::utf8_iterator< NativeIterator >::operator++ ( int  junk)
inline

Advance the iterator

Definition at line 236 of file utf8_iterator.hpp.

template<typename NativeIterator>
utf8_iterator& u5e::utf8_iterator< NativeIterator >::operator-- ( )
inline

Rewind the iterator

Definition at line 247 of file utf8_iterator.hpp.

template<typename NativeIterator>
utf8_iterator u5e::utf8_iterator< NativeIterator >::operator-- ( int  junk)
inline

Rewind the iterator

Definition at line 252 of file utf8_iterator.hpp.

template<typename NativeIterator>
bool u5e::utf8_iterator< NativeIterator >::operator== ( const utf8_iterator< NativeIterator > &  rhs) const
inline

Compare the iterator with another iterator

Definition at line 263 of file utf8_iterator.hpp.


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