__gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep Struct Reference

Inheritance diagram for __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep:

__gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep_empty List of all members.

Public Types

typedef _Alloc::template rebind<
_Rep >::other 
_Rep_alloc_type

Public Member Functions

_CharT * _M_refdata () throw ()
_CharT * _M_refcopy () throw ()
void _M_set_length (size_type __n)
void _M_destroy (const _Alloc &) throw ()
_CharT * _M_clone (const _Alloc &, size_type __res=0)

Static Public Member Functions

static _Rep_S_create (size_type, size_type, const _Alloc &)

Public Attributes

union {
   struct {
      size_type   _M_length
      size_type   _M_capacity
      _Atomic_word   _M_refcount
   }   _M_info
   _CharT   _M_align
}; 

Detailed Description

template<typename _CharT, typename _Traits, typename _Alloc>
struct __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep

Definition at line 113 of file rc_string_base.h.


Member Typedef Documentation

template<typename _CharT, typename _Traits, typename _Alloc>
typedef _Alloc::template rebind<_Rep>::other __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_Rep_alloc_type

Definition at line 128 of file rc_string_base.h.


Member Function Documentation

template<typename _CharT, typename _Traits, typename _Alloc>
_CharT * __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_clone ( const _Alloc &  ,
size_type  __res = 0 
)

Definition at line 440 of file rc_string_base.h.

References __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_info, __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refdata(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_set_length(), __gnu_cxx::__vstring_utility< _CharT, _Traits, _Alloc >::_S_copy(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_S_create().

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_grab(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_reserve().

template<typename _CharT, typename _Traits, typename _Alloc>
void __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_destroy ( const _Alloc &   )  throw ()

Definition at line 430 of file rc_string_base.h.

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_dispose(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_S_construct().

template<typename _CharT, typename _Traits, typename _Alloc>
_CharT* __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refcopy (  )  throw () [inline]

Definition at line 135 of file rc_string_base.h.

References __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_info, and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refdata().

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_grab(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_S_construct().

template<typename _CharT, typename _Traits, typename _Alloc>
_CharT* __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refdata (  )  throw () [inline]

Definition at line 131 of file rc_string_base.h.

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_clone(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_erase(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_mutate(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refcopy(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_set_length(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_S_construct().

template<typename _CharT, typename _Traits, typename _Alloc>
void __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_set_length ( size_type  __n  )  [inline]

Definition at line 142 of file rc_string_base.h.

References __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_info, and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refdata().

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_clone(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_erase(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_set_length(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_S_construct().

template<typename _CharT, typename _Traits, typename _Alloc>
__rc_string_base< _CharT, _Traits, _Alloc >::_Rep * __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_S_create ( size_type  ,
size_type  ,
const _Alloc &   
) [static]

Definition at line 356 of file rc_string_base.h.

References __N, std::__throw_length_error(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_info, and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_S_max_size.

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_clone(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_erase(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_mutate(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_S_construct().


Member Data Documentation

union { ... }

template<typename _CharT, typename _Traits, typename _Alloc>
_CharT __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_align

Definition at line 125 of file rc_string_base.h.

template<typename _CharT, typename _Traits, typename _Alloc>
size_type __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_capacity

Definition at line 120 of file rc_string_base.h.

struct { ... } __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_info

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_capacity(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_clone(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_dispose(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_is_leaked(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_is_shared(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_length(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refcopy(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_set_leaked(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_set_length(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_set_sharable(), __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_S_construct(), and __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_S_create().

template<typename _CharT, typename _Traits, typename _Alloc>
size_type __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_length

Definition at line 119 of file rc_string_base.h.

Referenced by __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_M_clear().

template<typename _CharT, typename _Traits, typename _Alloc>
_Atomic_word __gnu_cxx::__rc_string_base< _CharT, _Traits, _Alloc >::_Rep::_M_refcount

Definition at line 121 of file rc_string_base.h.


The documentation for this struct was generated from the following file:
Generated on Tue Feb 2 16:58:03 2010 for GNU C++ STL by  doxygen 1.4.7