std::basic_string< _CharT, _Traits, _Alloc >::_Rep Struct Reference

Inheritance diagram for std::basic_string< _CharT, _Traits, _Alloc >::_Rep:

std::basic_string< _CharT, _Traits, _Alloc >::_Rep_base List of all members.

Public Types

typedef _Alloc::template rebind<
char >::other 
_Raw_bytes_alloc

Public Member Functions

bool _M_is_leaked () const
bool _M_is_shared () const
void _M_set_leaked ()
void _M_set_sharable ()
_CharT * _M_refdata () throw ()
_CharT * _M_grab (const _Alloc &__alloc1, const _Alloc &__alloc2)
void _M_dispose (const _Alloc &__a)
void _M_destroy (const _Alloc &) throw ()
_CharT * _M_refcopy () throw ()
_CharT * _M_clone (const _Alloc &, size_type __res=0)

Static Public Member Functions

_Rep_S_empty_rep ()
_Rep_S_create (size_type, size_type, const _Alloc &)

Static Public Attributes

const size_type _S_max_size
const _CharT _S_terminal
size_type _S_empty_rep_storage []

template<typename _CharT, typename _Traits, typename _Alloc>
struct std::basic_string< _CharT, _Traits, _Alloc >::_Rep


Member Typedef Documentation

template<typename _CharT, typename _Traits, typename _Alloc>
typedef _Alloc::template rebind<char>::other std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_Raw_bytes_alloc
 

Definition at line 154 of file basic_string.h.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_destroy(), and std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_create().


Member Function Documentation

template<typename _CharT, typename _Traits, typename _Alloc>
_CharT * std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_clone const _Alloc &  ,
size_type  __res = 0
 

Definition at line 556 of file basic_string.tcc.

References std::basic_string< _CharT, _Traits, _Alloc >::_Rep_base::_M_length, and std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_refdata().

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_grab(), and std::basic_string< _CharT, _Traits, _Alloc >::reserve().

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

Definition at line 363 of file basic_string.tcc.

References std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_Raw_bytes_alloc.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_dispose(), and std::basic_string< _CharT, _Traits, _Alloc >::_S_construct().

template<typename _CharT, typename _Traits, typename _Alloc>
void std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_dispose const _Alloc &  __a  )  [inline]
 

Definition at line 212 of file basic_string.h.

References std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_destroy(), and std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_empty_rep().

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_M_mutate(), std::basic_string< _CharT, _Traits, _Alloc >::assign(), std::basic_string< _CharT, _Traits, _Alloc >::reserve(), and std::basic_string< char >::~basic_string().

template<typename _CharT, typename _Traits, typename _Alloc>
_CharT* std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_grab const _Alloc &  __alloc1,
const _Alloc &  __alloc2
[inline]
 

Definition at line 201 of file basic_string.h.

References std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_clone(), std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_is_leaked(), and std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_refcopy().

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::assign().

template<typename _CharT, typename _Traits, typename _Alloc>
bool std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_is_leaked  )  const [inline]
 

Definition at line 181 of file basic_string.h.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_grab(), std::basic_string< char >::_M_leak(), and std::basic_string< _CharT, _Traits, _Alloc >::swap().

template<typename _CharT, typename _Traits, typename _Alloc>
bool std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_is_shared  )  const [inline]
 

Definition at line 185 of file basic_string.h.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_M_leak_hard(), std::basic_string< _CharT, _Traits, _Alloc >::_M_mutate(), std::basic_string< _CharT, _Traits, _Alloc >::assign(), std::basic_string< _CharT, _Traits, _Alloc >::insert(), std::basic_string< _CharT, _Traits, _Alloc >::replace(), and std::basic_string< _CharT, _Traits, _Alloc >::reserve().

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

Definition at line 225 of file basic_string.h.

References std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_refdata(), and std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_empty_rep().

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_grab().

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

Definition at line 197 of file basic_string.h.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_clone(), std::basic_string< _CharT, _Traits, _Alloc >::_M_mutate(), std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_refcopy(), and std::basic_string< _CharT, _Traits, _Alloc >::_S_construct().

template<typename _CharT, typename _Traits, typename _Alloc>
void std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_set_leaked  )  [inline]
 

Definition at line 189 of file basic_string.h.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_M_leak_hard(), std::basic_string< char >::erase(), and std::basic_string< char >::insert().

template<typename _CharT, typename _Traits, typename _Alloc>
void std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_set_sharable  )  [inline]
 

Definition at line 193 of file basic_string.h.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_M_mutate(), std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_create(), std::basic_string< _CharT, _Traits, _Alloc >::assign(), and std::basic_string< _CharT, _Traits, _Alloc >::swap().

template<typename _CharT, typename _Traits, typename _Alloc>
basic_string< _CharT, _Traits, _Alloc >::_Rep * std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_create size_type  ,
size_type  ,
const _Alloc & 
[static]
 

Definition at line 469 of file basic_string.tcc.

References __N, std::__throw_length_error(), std::basic_string< _CharT, _Traits, _Alloc >::_Rep_base::_M_capacity, std::basic_string< _CharT, _Traits, _Alloc >::_Rep_base::_M_length, std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_set_sharable(), std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_Raw_bytes_alloc, and std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_max_size.

template<typename _CharT, typename _Traits, typename _Alloc>
_Rep& std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_empty_rep  )  [inline, static]
 

Definition at line 177 of file basic_string.h.

References std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_empty_rep_storage.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_dispose(), and std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_M_refcopy().


Member Data Documentation

template<typename _CharT, typename _Traits, typename _Alloc>
basic_string< _CharT, _Traits, _Alloc >::size_type std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_empty_rep_storage [static]
 

Definition at line 78 of file basic_string.tcc.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_empty_rep().

template<typename _CharT, typename _Traits, typename _Alloc>
const size_type std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_max_size [static]
 

Definition at line 169 of file basic_string.h.

Referenced by std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_create().

template<typename _CharT, typename _Traits, typename _Alloc>
const _CharT std::basic_string< _CharT, _Traits, _Alloc >::_Rep::_S_terminal [static]
 

Definition at line 170 of file basic_string.h.


The documentation for this struct was generated from the following files:
Generated on Tue Jan 30 17:32:13 2007 for GNU C++ STL by doxygen 1.3.6