/home/ntakagi/work/STLport-5.1.5/stlport/stl/_rope.h File Reference

#include <stl/_algobase.h>
#include <iosfwd>
#include <stl/_alloc.h>
#include <stl/_iterator.h>
#include <stl/_algo.h>
#include <stl/_function_base.h>
#include <stl/_numeric.h>
#include <stl/_hash_fun.h>
#include <stl/char_traits.h>
#include <stl/_threads.h>
#include <stl/_string_npos.h>
#include <stl/_rope.c>

Go to the source code of this file.

Classes

struct  _Rope_Concat_fn< _CharT, _Alloc >
class  char_producer< _CharT >
class  sequence_buffer< _Sequence, _Buf_sz >
class  _Rope_char_consumer< _CharT >
struct  _Rope_RopeRep< _CharT, _Alloc >
struct  _Rope_RopeLeaf< _CharT, _Alloc >
struct  _Rope_RopeConcatenation< _CharT, _Alloc >
struct  _Rope_RopeFunction< _CharT, _Alloc >
struct  _Rope_RopeSubstring< _CharT, _Alloc >
struct  _Rope_self_destruct_ptr< _CharT, _Alloc >
class  _Rope_char_ref_proxy< _CharT, _Alloc >
class  _Rope_char_ptr_proxy
class  _Rope_iterator_base< _CharT, _Alloc >
class  _Rope_const_iterator< _CharT, _Alloc >
class  _Rope_iterator< _CharT, _Alloc >
class  rope< _CharT, _Alloc >
struct  hash< crope >

Defines

#define _STLP_CREATE_ALLOCATOR(__atype, __a, _Tp)   (_Alloc_traits<_Tp,__atype>::create_allocator(__a))
#define __ROPE_MAX_DEPTH   45
#define __ROPE_DEPTH_SIZE   46
#define _ROPE_SWAP_SPECIALIZATION(_CharT, __Alloc)
#define __exponentiate_threshold   size_t(32)

Typedefs

typedef rope< char, _STLP_DEFAULT_ALLOCATOR(char) > crope

Functions

template<class _CharT>
_STLP_MOVE_TO_STD_NAMESPACE
void 
_S_construct_null_aux (_CharT *__p, const __true_type &)
template<class _CharT>
void _S_construct_null_aux (_CharT *__p, const __false_type &)
template<class _CharT>
void _S_construct_null (_CharT *__p)
 _ROPE_SWAP_SPECIALIZATION (char, _STLP_DEFAULT_ALLOCATOR(char)) _ROPE_SWAP_SPECIALIZATION(wchar_t
 _STLP_DEFAULT_ALLOCATOR (wchar_t)) template< class _CharT
template<class _CharT, class _Alloc, class _CharConsumer>
bool _S_apply_to_pieces (_CharConsumer &__c, _Rope_RopeRep< _CharT, _Alloc > *__r, size_t __begin, size_t __end)
template<class _CharT, class _Alloc>
bool operator== (const _Rope_const_iterator< _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
template<class _CharT, class _Alloc>
bool operator< (const _Rope_const_iterator< _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
template<class _CharT, class _Alloc>
ptrdiff_t operator- (const _Rope_const_iterator< _CharT, _Alloc > &__x, const _Rope_const_iterator< _CharT, _Alloc > &__y)
template<class _CharT, class _Alloc>
_Rope_const_iterator< _CharT,
_Alloc > 
operator- (const _Rope_const_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
template<class _CharT, class _Alloc>
_Rope_const_iterator< _CharT,
_Alloc > 
operator+ (const _Rope_const_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
template<class _CharT, class _Alloc>
_Rope_const_iterator< _CharT,
_Alloc > 
operator+ (ptrdiff_t __n, const _Rope_const_iterator< _CharT, _Alloc > &__x)
template<class _CharT, class _Alloc>
bool operator== (const _Rope_iterator< _CharT, _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
template<class _CharT, class _Alloc>
bool operator< (const _Rope_iterator< _CharT, _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
template<class _CharT, class _Alloc>
ptrdiff_t operator- (const _Rope_iterator< _CharT, _Alloc > &__x, const _Rope_iterator< _CharT, _Alloc > &__y)
template<class _CharT, class _Alloc>
_Rope_iterator< _CharT, _Alloc > operator- (const _Rope_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
template<class _CharT, class _Alloc>
_Rope_iterator< _CharT, _Alloc > operator+ (const _Rope_iterator< _CharT, _Alloc > &__x, ptrdiff_t __n)
template<class _CharT, class _Alloc>
_Rope_iterator< _CharT, _Alloc > operator+ (ptrdiff_t __n, const _Rope_iterator< _CharT, _Alloc > &__x)
template<class _CharT, class _Alloc>
rope< _CharT, _Alloc > operator+ (const rope< _CharT, _Alloc > &__left, const rope< _CharT, _Alloc > &__right)
template<class _CharT, class _Alloc>
rope< _CharT, _Alloc > & operator+= (rope< _CharT, _Alloc > &__left, const rope< _CharT, _Alloc > &__right)
template<class _CharT, class _Alloc>
rope< _CharT, _Alloc > operator+ (const rope< _CharT, _Alloc > &__left, const _CharT *__right)
template<class _CharT, class _Alloc>
rope< _CharT, _Alloc > & operator+= (rope< _CharT, _Alloc > &__left, const _CharT *__right)
template<class _CharT, class _Alloc>
rope< _CharT, _Alloc > operator+ (const rope< _CharT, _Alloc > &__left, _CharT __right)
template<class _CharT, class _Alloc>
rope< _CharT, _Alloc > & operator+= (rope< _CharT, _Alloc > &__left, _CharT __right)
template<class _CharT, class _Alloc>
bool operator< (const rope< _CharT, _Alloc > &__left, const rope< _CharT, _Alloc > &__right)
template<class _CharT, class _Alloc>
bool operator== (const rope< _CharT, _Alloc > &__left, const rope< _CharT, _Alloc > &__right)
template<class _CharT, class _Alloc>
bool operator== (const _Rope_char_ptr_proxy< _CharT, _Alloc > &__x, const _Rope_char_ptr_proxy< _CharT, _Alloc > &__y)
template<class _CharT, class _Traits, class _Alloc>
basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__o, const rope< _CharT, _Alloc > &__r)
crope::reference __mutable_reference_at (crope &__c, size_t __i)
void swap (crope &__x, crope &__y)
template<class _CharT, class _Alloc>
void _Rope_rotate (_Rope_iterator< _CharT, _Alloc > __first, _Rope_iterator< _CharT, _Alloc > __middle, _Rope_iterator< _CharT, _Alloc > __last)
void rotate (_Rope_iterator< char, _STLP_DEFAULT_ALLOCATOR(char) > __first, _Rope_iterator< char, _STLP_DEFAULT_ALLOCATOR(char) > __middle, _Rope_iterator< char, _STLP_DEFAULT_ALLOCATOR(char) > __last)

Variables

rope< _CharT, _Alloc > __identity_element (_Rope_Concat_fn< _CharT, _Alloc >)


Define Documentation

#define __exponentiate_threshold   size_t(32)

#define __ROPE_DEPTH_SIZE   46

Definition at line 334 of file _rope.h.

#define __ROPE_MAX_DEPTH   45

Definition at line 333 of file _rope.h.

Referenced by rope< _CharT, _Alloc >::max_size().

#define _ROPE_SWAP_SPECIALIZATION ( _CharT,
__Alloc   ) 

Value:

inline void swap(_Rope_char_ref_proxy <_CharT, __Alloc > __a, \
                     _Rope_char_ref_proxy <_CharT, __Alloc > __b) { \
        _CharT __tmp = __a; \
        __a = __b; \
        __b = __tmp; \
    }

Definition at line 688 of file _rope.h.


Typedef Documentation

typedef rope<char, _STLP_DEFAULT_ALLOCATOR(char) > crope

Definition at line 2282 of file _rope.h.


Function Documentation

crope::reference __mutable_reference_at ( crope __c,
size_t  __i 
) [inline]

Definition at line 2287 of file _rope.h.

References rope< _CharT, _Alloc >::mutable_reference_at().

template<class _CharT, class _Alloc>
void _Rope_rotate ( _Rope_iterator< _CharT, _Alloc >  __first,
_Rope_iterator< _CharT, _Alloc >  __middle,
_Rope_iterator< _CharT, _Alloc >  __last 
)

_ROPE_SWAP_SPECIALIZATION ( char  ,
_STLP_DEFAULT_ALLOCATOR(char)   
)

template<class _CharT, class _Alloc, class _CharConsumer>
bool _S_apply_to_pieces ( _CharConsumer &  __c,
_Rope_RopeRep< _CharT, _Alloc > *  __r,
size_t  __begin,
size_t  __end 
)

template<class _CharT>
void _S_construct_null_aux ( _CharT *  __p,
const __false_type  
) [inline]

Definition at line 135 of file _rope.h.

References _Construct().

template<class _CharT>
_STLP_MOVE_TO_STD_NAMESPACE void _S_construct_null_aux ( _CharT *  __p,
const __true_type  
) [inline]

Definition at line 131 of file _rope.h.

Referenced by _S_construct_null().

_STLP_DEFAULT_ALLOCATOR ( wchar_t   ) 

template<class _CharT, class _Alloc>
rope<_CharT,_Alloc> operator+ ( const rope< _CharT, _Alloc > &  __left,
_CharT  __right 
) [inline]

template<class _CharT, class _Alloc>
rope<_CharT,_Alloc> operator+ ( const rope< _CharT, _Alloc > &  __left,
const _CharT *  __right 
) [inline]

template<class _CharT, class _Alloc>
rope<_CharT,_Alloc> operator+ ( const rope< _CharT, _Alloc > &  __left,
const rope< _CharT, _Alloc > &  __right 
) [inline]

template<class _CharT, class _Alloc>
_Rope_iterator<_CharT,_Alloc> operator+ ( ptrdiff_t  __n,
const _Rope_iterator< _CharT, _Alloc > &  __x 
) [inline]

template<class _CharT, class _Alloc>
_Rope_iterator<_CharT,_Alloc> operator+ ( const _Rope_iterator< _CharT, _Alloc > &  __x,
ptrdiff_t  __n 
) [inline]

template<class _CharT, class _Alloc>
_Rope_const_iterator<_CharT,_Alloc> operator+ ( ptrdiff_t  __n,
const _Rope_const_iterator< _CharT, _Alloc > &  __x 
) [inline]

template<class _CharT, class _Alloc>
_Rope_const_iterator<_CharT,_Alloc> operator+ ( const _Rope_const_iterator< _CharT, _Alloc > &  __x,
ptrdiff_t  __n 
) [inline]

template<class _CharT, class _Alloc>
rope<_CharT,_Alloc>& operator+= ( rope< _CharT, _Alloc > &  __left,
_CharT  __right 
) [inline]

Definition at line 2217 of file _rope.h.

References rope< _CharT, _Alloc >::append().

template<class _CharT, class _Alloc>
rope<_CharT,_Alloc>& operator+= ( rope< _CharT, _Alloc > &  __left,
const _CharT *  __right 
) [inline]

Definition at line 2203 of file _rope.h.

References rope< _CharT, _Alloc >::append().

template<class _CharT, class _Alloc>
rope<_CharT,_Alloc>& operator+= ( rope< _CharT, _Alloc > &  __left,
const rope< _CharT, _Alloc > &  __right 
) [inline]

template<class _CharT, class _Alloc>
_Rope_iterator<_CharT,_Alloc> operator- ( const _Rope_iterator< _CharT, _Alloc > &  __x,
ptrdiff_t  __n 
) [inline]

template<class _CharT, class _Alloc>
ptrdiff_t operator- ( const _Rope_iterator< _CharT, _Alloc > &  __x,
const _Rope_iterator< _CharT, _Alloc > &  __y 
) [inline]

Definition at line 2150 of file _rope.h.

References _Rope_iterator_base< _CharT, _Alloc >::_M_current_pos.

template<class _CharT, class _Alloc>
_Rope_const_iterator<_CharT,_Alloc> operator- ( const _Rope_const_iterator< _CharT, _Alloc > &  __x,
ptrdiff_t  __n 
) [inline]

template<class _CharT, class _Alloc>
ptrdiff_t operator- ( const _Rope_const_iterator< _CharT, _Alloc > &  __x,
const _Rope_const_iterator< _CharT, _Alloc > &  __y 
) [inline]

Definition at line 2094 of file _rope.h.

References _Rope_iterator_base< _CharT, _Alloc >::_M_current_pos.

template<class _CharT, class _Alloc>
bool operator< ( const rope< _CharT, _Alloc > &  __left,
const rope< _CharT, _Alloc > &  __right 
) [inline]

Definition at line 2224 of file _rope.h.

References rope< _CharT, _Alloc >::compare().

template<class _CharT, class _Alloc>
bool operator< ( const _Rope_iterator< _CharT, _Alloc > &  __x,
const _Rope_iterator< _CharT, _Alloc > &  __y 
) [inline]

Definition at line 2123 of file _rope.h.

template<class _CharT, class _Alloc>
bool operator< ( const _Rope_const_iterator< _CharT, _Alloc > &  __x,
const _Rope_const_iterator< _CharT, _Alloc > &  __y 
) [inline]

Definition at line 2065 of file _rope.h.

template<class _CharT, class _Traits, class _Alloc>
basic_ostream<_CharT, _Traits>& operator<< ( basic_ostream< _CharT, _Traits > &  __o,
const rope< _CharT, _Alloc > &  __r 
)

Definition at line 894 of file _rope.c.

References _S_io_get().

template<class _CharT, class _Alloc>
bool operator== ( const _Rope_char_ptr_proxy< _CharT, _Alloc > &  __x,
const _Rope_char_ptr_proxy< _CharT, _Alloc > &  __y 
) [inline]

Definition at line 2271 of file _rope.h.

References _Rope_char_ptr_proxy::_M_pos, and _Rope_char_ptr_proxy::_M_root.

template<class _CharT, class _Alloc>
bool operator== ( const rope< _CharT, _Alloc > &  __left,
const rope< _CharT, _Alloc > &  __right 
) [inline]

Definition at line 2231 of file _rope.h.

References rope< _CharT, _Alloc >::compare().

template<class _CharT, class _Alloc>
bool operator== ( const _Rope_iterator< _CharT, _Alloc > &  __x,
const _Rope_iterator< _CharT, _Alloc > &  __y 
) [inline]

template<class _CharT, class _Alloc>
bool operator== ( const _Rope_const_iterator< _CharT, _Alloc > &  __x,
const _Rope_const_iterator< _CharT, _Alloc > &  __y 
) [inline]

void rotate ( _Rope_iterator< char, _STLP_DEFAULT_ALLOCATOR(char) >  __first,
_Rope_iterator< char, _STLP_DEFAULT_ALLOCATOR(char) >  __middle,
_Rope_iterator< char, _STLP_DEFAULT_ALLOCATOR(char) >  __last 
) [inline]

Definition at line 2340 of file _rope.h.

References __last, and _Rope_rotate().

void swap ( crope __x,
crope __y 
) [inline]

Definition at line 2301 of file _rope.h.

References rope< _CharT, _Alloc >::swap().


Variable Documentation

rope<_CharT,_Alloc> __identity_element(_Rope_Concat_fn< _CharT, _Alloc >)

Definition at line 124 of file _rope.h.

Referenced by __power().



Generated on Mon Mar 10 15:32:49 2008 by  doxygen 1.5.1