Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

__rope_iterator_base Class Template Reference

#include <stl_rope.h>

Inheritance diagram for __rope_iterator_base:

Inheritance graph
[legend]
Collaboration diagram for __rope_iterator_base:

Collaboration graph
[legend]
List of all members.

Public Types

typedef __rope_RopeBase< charT,
Alloc > 
RopeBase

Public Methods

size_t index () const

Protected Types

enum  { path_cache_len = 4 }
enum  { iterator_buf_len = 15 }

Protected Methods

 __rope_iterator_base ()
 __rope_iterator_base (RopeBase *root, size_t pos)
 __rope_iterator_base (const __rope_iterator_base &x)
void incr (size_t n)
void decr (size_t n)

Static Protected Methods

void setbuf (__rope_iterator_base &x)
void setcache (__rope_iterator_base &x)
void setcache_for_incr (__rope_iterator_base &x)

Protected Attributes

size_t current_pos
RopeBaseroot
size_t leaf_pos
__GC_CONST charT * buf_start
__GC_CONST charT * buf_ptr
__GC_CONST charT * buf_end
const RopeBasepath_end [path_cache_len]
int leaf_index
unsigned char path_directions
charT tmp_buf [iterator_buf_len]

Friends

class rope< charT, Alloc >

template<class charT, class Alloc>
class __rope_iterator_base< charT, Alloc >


Member Typedef Documentation

template<class charT, class Alloc>
typedef __rope_RopeBase<charT,Alloc> __rope_iterator_base::RopeBase
 

Definition at line 615 of file stl_rope.h.

Referenced by __rope_const_iterator::__rope_const_iterator, and __rope_iterator::operator=.


Member Enumeration Documentation

template<class charT, class Alloc>
anonymous enum [protected]
 

Enumeration values:
path_cache_len 

Definition at line 618 of file stl_rope.h.

00618 { path_cache_len = 4 }; // Must be <= 9.

template<class charT, class Alloc>
anonymous enum [protected]
 

Enumeration values:
iterator_buf_len 

Definition at line 619 of file stl_rope.h.

00619 { iterator_buf_len = 15 };


Constructor & Destructor Documentation

template<class charT, class Alloc>
__rope_iterator_base< charT, Alloc >::__rope_iterator_base   [inline, protected]
 

Definition at line 661 of file stl_rope.h.

00661 {}

template<class charT, class Alloc>
__rope_iterator_base< charT, Alloc >::__rope_iterator_base RopeBase   root,
size_t    pos
[inline, protected]
 

Definition at line 662 of file stl_rope.h.

References buf_ptr, and current_pos.

00662                                                      :
00663                    root(root), current_pos(pos), buf_ptr(0) {}
    __rope_iterator_base(const __rope_iterator_base& x) {

template<class charT, class Alloc>
__rope_iterator_base< charT, Alloc >::__rope_iterator_base const __rope_iterator_base< charT, Alloc > &    x [inline, protected]
 

Definition at line 664 of file stl_rope.h.

References buf_ptr, current_pos, and root.

00664                                                         {
00665         if (0 != x.buf_ptr) {
00666             *this = x;
00667         } else {
00668             current_pos = x.current_pos;
00669             root = x.root;
00670             buf_ptr = 0;
00671         }
00672     }


Member Function Documentation

template<class charT, class Alloc>
void __rope_iterator_base< charT, Alloc >::decr size_t    n [protected]
 

Referenced by __rope_iterator::operator+=, __rope_const_iterator::operator+=, __rope_iterator::operator--, __rope_const_iterator::operator--, __rope_iterator::operator-=, and __rope_const_iterator::operator-=.

template<class charT, class Alloc>
void __rope_iterator_base< charT, Alloc >::incr size_t    n [protected]
 

Referenced by __rope_iterator::operator++, __rope_const_iterator::operator++, __rope_iterator::operator+=, __rope_const_iterator::operator+=, __rope_iterator::operator-=, and __rope_const_iterator::operator-=.

template<class charT, class Alloc>
size_t __rope_iterator_base< charT, Alloc >::index   const [inline]
 

Definition at line 676 of file stl_rope.h.

References current_pos.

Referenced by rope::erase, rope::find, rope::insert, rope::replace, and rope::substr.

00676 { return current_pos; }

template<class charT, class Alloc>
void __rope_iterator_base< charT, Alloc >::setbuf __rope_iterator_base< charT, Alloc > &    x [static, protected]
 

template<class charT, class Alloc>
void __rope_iterator_base< charT, Alloc >::setcache __rope_iterator_base< charT, Alloc > &    x [static, protected]
 

Referenced by __rope_const_iterator::operator *.

template<class charT, class Alloc>
void __rope_iterator_base< charT, Alloc >::setcache_for_incr __rope_iterator_base< charT, Alloc > &    x [static, protected]
 


Friends And Related Function Documentation

template<class charT, class Alloc>
friend class rope< charT, Alloc > [friend]
 

Reimplemented in __rope_const_iterator.

Definition at line 613 of file stl_rope.h.


Member Data Documentation

template<class charT, class Alloc>
__GC_CONST charT* __rope_iterator_base::buf_end [protected]
 

Definition at line 629 of file stl_rope.h.

Referenced by __rope_const_iterator::operator++.

template<class charT, class Alloc>
__GC_CONST charT* __rope_iterator_base::buf_ptr [protected]
 

Definition at line 626 of file stl_rope.h.

Referenced by __rope_iterator_base, __rope_iterator::operator *, __rope_const_iterator::operator *, __rope_const_iterator::operator++, __rope_iterator::operator=, and __rope_const_iterator::operator=.

template<class charT, class Alloc>
__GC_CONST charT* __rope_iterator_base::buf_start [protected]
 

Definition at line 623 of file stl_rope.h.

template<class charT, class Alloc>
size_t __rope_iterator_base::current_pos [protected]
 

Definition at line 620 of file stl_rope.h.

Referenced by __rope_iterator_base, rope::append, index, __rope_iterator::operator *, operator+, __rope_iterator::operator++, __rope_const_iterator::operator++, __rope_iterator::operator--, __rope_const_iterator::operator--, __rope_iterator::operator=, __rope_const_iterator::operator=, __rope_iterator::operator[], __rope_const_iterator::operator[], and rope::rope.

template<class charT, class Alloc>
int __rope_iterator_base::leaf_index [protected]
 

Definition at line 636 of file stl_rope.h.

template<class charT, class Alloc>
size_t __rope_iterator_base::leaf_pos [protected]
 

Definition at line 622 of file stl_rope.h.

template<class charT, class Alloc>
unsigned char __rope_iterator_base::path_directions [protected]
 

Definition at line 639 of file stl_rope.h.

template<class charT, class Alloc>
const RopeBase* __rope_iterator_base::path_end[path_cache_len] [protected]
 

Definition at line 635 of file stl_rope.h.

template<class charT, class Alloc>
RopeBase* __rope_iterator_base::root [protected]
 

Definition at line 621 of file stl_rope.h.

Referenced by __rope_const_iterator::__rope_const_iterator, __rope_iterator::__rope_iterator, __rope_iterator_base, rope::append, operator+, __rope_const_iterator::operator++, __rope_const_iterator::operator--, __rope_iterator::operator=, __rope_const_iterator::operator=, __rope_const_iterator::operator[], rope::rope, and __rope_iterator::~__rope_iterator.

template<class charT, class Alloc>
charT __rope_iterator_base::tmp_buf[iterator_buf_len] [protected]
 

Definition at line 644 of file stl_rope.h.


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

Documentation generated on Thu May 2 15:03:18 2002

Generated with doxygen 1.2.12 by Dimitri van Heesch ,   1997-2001