.TH "__gnu_cxx::rope< _CharT, _Alloc >" 3cxx "Tue Jul 18 2023" "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME __gnu_cxx::rope< _CharT, _Alloc > .SH SYNOPSIS .br .PP .PP Inherits __gnu_cxx::_Rope_base< _CharT, _Alloc >\&. .SS "Public Types" .in +1c .ti -1c .RI "typedef _Rope_RopeConcatenation< _CharT, _Alloc > \fB__C\fP" .br .ti -1c .RI "typedef _Rope_RopeFunction< _CharT, _Alloc > \fB__F\fP" .br .ti -1c .RI "typedef _Rope_RopeLeaf< _CharT, _Alloc > \fB__L\fP" .br .ti -1c .RI "typedef _Rope_RopeSubstring< _CharT, _Alloc > \fB__S\fP" .br .ti -1c .RI "typedef \fB__alloc_traits\fP< _Alloc >::template rebind< __C >::other \fB_CAlloc\fP" .br .ti -1c .RI "typedef \fB__alloc_traits\fP< _Alloc >::template rebind< _CharT >::other \fB_DataAlloc\fP" .br .ti -1c .RI "typedef \fB__alloc_traits\fP< _Alloc >::template rebind< __F >::other \fB_FAlloc\fP" .br .ti -1c .RI "typedef \fB__alloc_traits\fP< _Alloc >::template rebind< __L >::other \fB_LAlloc\fP" .br .ti -1c .RI "typedef \fB__alloc_traits\fP< _Alloc >::template rebind< __S >::other \fB_SAlloc\fP" .br .ti -1c .RI "typedef _Rope_const_iterator< _CharT, _Alloc > \fBconst_iterator\fP" .br .ti -1c .RI "typedef const _CharT * \fBconst_pointer\fP" .br .ti -1c .RI "typedef _CharT \fBconst_reference\fP" .br .ti -1c .RI "typedef \fBstd::reverse_iterator\fP< const_iterator > \fBconst_reverse_iterator\fP" .br .ti -1c .RI "typedef std::ptrdiff_t \fBdifference_type\fP" .br .ti -1c .RI "typedef _Rope_iterator< _CharT, _Alloc > \fBiterator\fP" .br .ti -1c .RI "typedef _Rope_char_ptr_proxy< _CharT, _Alloc > \fBpointer\fP" .br .ti -1c .RI "typedef _Rope_char_ref_proxy< _CharT, _Alloc > \fBreference\fP" .br .ti -1c .RI "typedef \fBstd::reverse_iterator\fP< iterator > \fBreverse_iterator\fP" .br .ti -1c .RI "typedef std::size_t \fBsize_type\fP" .br .ti -1c .RI "typedef _CharT \fBvalue_type\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBrope\fP (_CharT __c, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (char_producer< _CharT > *__fn, size_type __len, bool __delete_fn, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (const _CharT *__s, const _CharT *__e, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (const _CharT *__s, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (const _CharT *__s, size_type __len, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (const const_iterator &__s, const const_iterator &__e, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (const iterator &__s, const iterator &__e, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (const \fBrope\fP &__x, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "\fBrope\fP (size_type __n, _CharT __c, const allocator_type &__a=allocator_type())" .br .ti -1c .RI "allocator_type & \fB_M_get_allocator\fP ()" .br .ti -1c .RI "const allocator_type & \fB_M_get_allocator\fP () const" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP ()" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP (_CharT __c)" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP (const _CharT *__c_string)" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP (const _CharT *__iter, size_type __n)" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP (const _CharT *__s, const _CharT *__e)" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP (const \fBrope\fP &__y)" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP (const_iterator __s, const_iterator __e)" .br .ti -1c .RI "\fBrope\fP & \fBappend\fP (size_type __n, _CharT __c)" .br .ti -1c .RI "void \fBapply_to_pieces\fP (size_type __begin, size_type __end, _Rope_char_consumer< _CharT > &__c) const" .br .ti -1c .RI "_CharT \fBat\fP (size_type __pos) const" .br .ti -1c .RI "_CharT \fBback\fP () const" .br .ti -1c .RI "void \fBbalance\fP ()" .br .ti -1c .RI "const_iterator \fBbegin\fP ()" .br .ti -1c .RI "const_iterator \fBbegin\fP () const" .br .ti -1c .RI "const _CharT * \fBc_str\fP () const" .br .ti -1c .RI "void \fBclear\fP ()" .br .ti -1c .RI "int \fBcompare\fP (const \fBrope\fP &__y) const" .br .ti -1c .RI "const_iterator \fBconst_begin\fP () const" .br .ti -1c .RI "const_iterator \fBconst_end\fP () const" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBconst_rbegin\fP () const" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBconst_rend\fP () const" .br .ti -1c .RI "void \fBcopy\fP (_CharT *__buffer) const" .br .ti -1c .RI "size_type \fBcopy\fP (size_type __pos, size_type __n, _CharT *__buffer) const" .br .ti -1c .RI "void \fBdelete_c_str\fP ()" .br .ti -1c .RI "void \fBdump\fP ()" .br .ti -1c .RI "bool \fBempty\fP () const" .br .ti -1c .RI "const_iterator \fBend\fP ()" .br .ti -1c .RI "const_iterator \fBend\fP () const" .br .ti -1c .RI "iterator \fBerase\fP (const iterator &__p)" .br .ti -1c .RI "iterator \fBerase\fP (const iterator &__p, const iterator &__q)" .br .ti -1c .RI "void \fBerase\fP (size_type __p)" .br .ti -1c .RI "void \fBerase\fP (size_type __p, size_type __n)" .br .ti -1c .RI "size_type \fBfind\fP (_CharT __c, size_type __pos=0) const" .br .ti -1c .RI "size_type \fBfind\fP (const _CharT *__s, size_type __pos=0) const" .br .ti -1c .RI "_CharT \fBfront\fP () const" .br .ti -1c .RI "allocator_type \fBget_allocator\fP () const" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, _CharT __c)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, const _CharT *__i, const _CharT *__j)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, const _CharT *__i, size_type __n)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, const _CharT *c_string)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, const const_iterator &__i, const const_iterator &__j)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, const iterator &__i, const iterator &__j)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, const \fBrope\fP &__r)" .br .ti -1c .RI "iterator \fBinsert\fP (const iterator &__p, size_type __n, _CharT __c)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, _CharT __c)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, const _CharT *__c_string)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, const _CharT *__i, const _CharT *__j)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, const _CharT *__i, size_type __n)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, const const_iterator &__i, const const_iterator &__j)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, const iterator &__i, const iterator &__j)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, const \fBrope\fP &__r)" .br .ti -1c .RI "void \fBinsert\fP (size_type __p, size_type __n, _CharT __c)" .br .ti -1c .RI "size_type \fBlength\fP () const" .br .ti -1c .RI "size_type \fBmax_size\fP () const" .br .ti -1c .RI "iterator \fBmutable_begin\fP ()" .br .ti -1c .RI "iterator \fBmutable_end\fP ()" .br .ti -1c .RI "\fBreverse_iterator\fP \fBmutable_rbegin\fP ()" .br .ti -1c .RI "reference \fBmutable_reference_at\fP (size_type __pos)" .br .ti -1c .RI "\fBreverse_iterator\fP \fBmutable_rend\fP ()" .br .ti -1c .RI "\fBrope\fP & \fBoperator=\fP (const \fBrope\fP &__x)" .br .ti -1c .RI "_CharT \fBoperator[]\fP (size_type __pos) const" .br .ti -1c .RI "void \fBpop_back\fP ()" .br .ti -1c .RI "void \fBpop_front\fP ()" .br .ti -1c .RI "void \fBpush_back\fP (_CharT __x)" .br .ti -1c .RI "void \fBpush_front\fP (_CharT __x)" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBrbegin\fP ()" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBrbegin\fP () const" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBrend\fP ()" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBrend\fP () const" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, _CharT __c)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const _CharT *__c_string)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const _CharT *__i, const _CharT *__j)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const _CharT *__i, size_type __n)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const iterator &__q, _CharT __c)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const iterator &__q, const _CharT *__c_string)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const iterator &__q, const _CharT *__i, const _CharT *__j)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const iterator &__q, const _CharT *__i, size_type __n)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const iterator &__q, const const_iterator &__i, const const_iterator &__j)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const iterator &__q, const iterator &__i, const iterator &__j)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const iterator &__q, const \fBrope\fP &__r)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const \fBrope\fP &__r)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, const_iterator __i, const_iterator __j)" .br .ti -1c .RI "void \fBreplace\fP (const iterator &__p, iterator __i, iterator __j)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, _CharT __c)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, const _CharT *__c_string)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, const _CharT *__i, const _CharT *__j)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, const _CharT *__i, size_type __i_len)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, const const_iterator &__i, const const_iterator &__j)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, const iterator &__i, const iterator &__j)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, const \fBrope\fP &__r)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, size_type __n, _CharT __c)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, size_type __n, const _CharT *__c_string)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, size_type __n, const _CharT *__i, const _CharT *__j)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, size_type __n, const _CharT *__i, size_type __i_len)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, size_type __n, const const_iterator &__i, const const_iterator &__j)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, size_type __n, const iterator &__i, const iterator &__j)" .br .ti -1c .RI "void \fBreplace\fP (size_type __p, size_type __n, const \fBrope\fP &__r)" .br .ti -1c .RI "const _CharT * \fBreplace_with_c_str\fP ()" .br .ti -1c .RI "size_type \fBsize\fP () const" .br .ti -1c .RI "\fBrope\fP< _CharT, _Alloc > \fBsubstr\fP (const_iterator __start)" .br .ti -1c .RI "\fBrope\fP \fBsubstr\fP (const_iterator __start, const_iterator __end) const" .br .ti -1c .RI "\fBrope\fP \fBsubstr\fP (iterator __start) const" .br .ti -1c .RI "\fBrope\fP \fBsubstr\fP (iterator __start, iterator __end) const" .br .ti -1c .RI "\fBrope\fP \fBsubstr\fP (size_type __start, size_type __len=1) const" .br .ti -1c .RI "void \fBswap\fP (\fBrope\fP &__b)" .br .in -1c .SS "Static Public Member Functions" .in +1c .ti -1c .RI "static __C * \fB_C_allocate\fP (std::size_t __n)" .br .ti -1c .RI "static void \fB_C_deallocate\fP (__C *__p, std::size_t __n)" .br .ti -1c .RI "static _CharT * \fB_Data_allocate\fP (std::size_t __n)" .br .ti -1c .RI "static void \fB_Data_deallocate\fP (_CharT *__p, std::size_t __n)" .br .ti -1c .RI "static __F * \fB_F_allocate\fP (std::size_t __n)" .br .ti -1c .RI "static void \fB_F_deallocate\fP (__F *__p, std::size_t __n)" .br .ti -1c .RI "static __L * \fB_L_allocate\fP (std::size_t __n)" .br .ti -1c .RI "static void \fB_L_deallocate\fP (__L *__p, std::size_t __n)" .br .ti -1c .RI "static __S * \fB_S_allocate\fP (std::size_t __n)" .br .ti -1c .RI "static void \fB_S_deallocate\fP (__S *__p, std::size_t __n)" .br .in -1c .SS "Public Attributes" .in +1c .ti -1c .RI "_RopeRep * \fB_M_tree_ptr\fP" .br .in -1c .SS "Static Public Attributes" .in +1c .ti -1c .RI "static const size_type \fBnpos\fP" .br .in -1c .SS "Protected Types" .in +1c .ti -1c .RI "enum { \fB_S_copy_max\fP }" .br .ti -1c .RI "typedef _Rope_base< _CharT, _Alloc > \fB_Base\fP" .br .ti -1c .RI "typedef _CharT * \fB_Cstrptr\fP" .br .ti -1c .RI "typedef _Rope_RopeConcatenation< _CharT, _Alloc > \fB_RopeConcatenation\fP" .br .ti -1c .RI "typedef _Rope_RopeFunction< _CharT, _Alloc > \fB_RopeFunction\fP" .br .ti -1c .RI "typedef _Rope_RopeLeaf< _CharT, _Alloc > \fB_RopeLeaf\fP" .br .ti -1c .RI "typedef _Rope_RopeRep< _CharT, _Alloc > \fB_RopeRep\fP" .br .ti -1c .RI "typedef _Rope_RopeSubstring< _CharT, _Alloc > \fB_RopeSubstring\fP" .br .ti -1c .RI "typedef _Rope_self_destruct_ptr< _CharT, _Alloc > \fB_Self_destruct_ptr\fP" .br .ti -1c .RI "typedef _Base::allocator_type \fBallocator_type\fP" .br .in -1c .SS "Static Protected Member Functions" .in +1c .ti -1c .RI "static size_type \fB_S_allocated_capacity\fP (size_type __n)" .br .ti -1c .RI "static bool \fB_S_apply_to_pieces\fP (_Rope_char_consumer< _CharT > &__c, const _RopeRep *__r, size_type __begin, size_type __end)" .br .ti -1c .RI "static _RopeRep * \fB_S_concat\fP (_RopeRep *__left, _RopeRep *__right)" .br .ti -1c .RI "static _RopeRep * \fB_S_concat_char_iter\fP (_RopeRep *__r, const _CharT *__iter, size_type __slen)" .br .ti -1c .RI "static _RopeRep * \fB_S_destr_concat_char_iter\fP (_RopeRep *__r, const _CharT *__iter, size_type __slen)" .br .ti -1c .RI "static _RopeLeaf * \fB_S_destr_leaf_concat_char_iter\fP (_RopeLeaf *__r, const _CharT *__iter, size_type __slen)" .br .ti -1c .RI "static _CharT \fB_S_fetch\fP (_RopeRep *__r, size_type __pos)" .br .ti -1c .RI "static _CharT * \fB_S_fetch_ptr\fP (_RopeRep *__r, size_type __pos)" .br .ti -1c .RI "static bool \fB_S_is0\fP (_CharT __c)" .br .ti -1c .RI "static _RopeLeaf * \fB_S_leaf_concat_char_iter\fP (_RopeLeaf *__r, const _CharT *__iter, size_type __slen)" .br .ti -1c .RI "static _RopeConcatenation * \fB_S_new_RopeConcatenation\fP (_RopeRep *__left, _RopeRep *__right, allocator_type &__a)" .br .ti -1c .RI "static _RopeFunction * \fB_S_new_RopeFunction\fP (char_producer< _CharT > *__f, size_type __size, bool __d, allocator_type &__a)" .br .ti -1c .RI "static _RopeLeaf * \fB_S_new_RopeLeaf\fP (_CharT *__s, size_type __size, allocator_type &__a)" .br .ti -1c .RI "static _RopeSubstring * \fB_S_new_RopeSubstring\fP (_Rope_RopeRep< _CharT, _Alloc > *__b, size_type __s, size_type __l, allocator_type &__a)" .br .ti -1c .RI "static void \fB_S_ref\fP (_RopeRep *__t)" .br .ti -1c .RI "static _RopeLeaf * \fB_S_RopeLeaf_from_unowned_char_ptr\fP (const _CharT *__s, size_type __size, allocator_type &__a)" .br .ti -1c .RI "static size_type \fB_S_rounded_up_size\fP (size_type __n)" .br .ti -1c .RI "static _RopeRep * \fB_S_substring\fP (_RopeRep *__base, size_type __start, size_type __endp1)" .br .ti -1c .RI "static _RopeRep * \fB_S_tree_concat\fP (_RopeRep *__left, _RopeRep *__right)" .br .ti -1c .RI "static void \fB_S_unref\fP (_RopeRep *__t)" .br .ti -1c .RI "static _RopeRep * \fBreplace\fP (_RopeRep *__old, size_type __pos1, size_type __pos2, _RopeRep *__r)" .br .in -1c .SS "Static Protected Attributes" .in +1c .ti -1c .RI "static _CharT \fB_S_empty_c_str\fP [1]" .br .in -1c .SS "Friends" .in +1c .ti -1c .RI "class \fB_Rope_char_ptr_proxy< _CharT, _Alloc >\fP" .br .ti -1c .RI "class \fB_Rope_char_ref_proxy< _CharT, _Alloc >\fP" .br .ti -1c .RI "class \fB_Rope_const_iterator< _CharT, _Alloc >\fP" .br .ti -1c .RI "class \fB_Rope_iterator< _CharT, _Alloc >\fP" .br .ti -1c .RI "class \fB_Rope_iterator_base< _CharT, _Alloc >\fP" .br .ti -1c .RI "struct \fB_Rope_RopeRep< _CharT, _Alloc >\fP" .br .ti -1c .RI "struct \fB_Rope_RopeSubstring< _CharT, _Alloc >\fP" .br .ti -1c .RI "template \fBrope\fP< _CharT2, _Alloc2 > \fBoperator+\fP (const \fBrope\fP< _CharT2, _Alloc2 > &__left, _CharT2 __right)" .br .ti -1c .RI "template \fBrope\fP< _CharT2, _Alloc2 > \fBoperator+\fP (const \fBrope\fP< _CharT2, _Alloc2 > &__left, const _CharT2 *__right)" .br .ti -1c .RI "template \fBrope\fP< _CharT2, _Alloc2 > \fBoperator+\fP (const \fBrope\fP< _CharT2, _Alloc2 > &__left, const \fBrope\fP< _CharT2, _Alloc2 > &__right)" .br .in -1c .SH "Detailed Description" .PP .SS "template .br class __gnu_cxx::rope< _CharT, _Alloc >"This is an SGI extension\&. .PP \fBTodo\fP .RS 4 Needs documentation! See http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html .RE .PP .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.