18 #ifndef _STLP_DBG_STRING_H 19 #define _STLP_DBG_STRING_H 21 #ifndef _STLP_DBG_ITERATOR_H 27 #define _STLP_NON_DBG_STRING_NAME _STLP_NON_DBG_NAME(str) 28 #define _STLP_NON_DBG_STRING _STLP_PRIV _STLP_NON_DBG_STRING_NAME <_CharT, _Traits, _Alloc> 30 #if defined (_STLP_DEBUG_USE_DISTINCT_VALUE_TYPE_HELPERS) 31 template <
class _CharT,
class _Traits,
class _Alloc>
34 {
return (_CharT*)0; }
35 template <
class _CharT,
class _Traits,
class _Alloc>
41 template <
class _CharT,
class _Traits,
class _Alloc>
43 #if !defined (__DMC__) 49 #if defined (_STLP_USE_PARTIAL_SPEC_WORKAROUND) && !defined (basic_string) 76 if (this->
capacity() > __old_capacity) {
120 #if !defined (_STLP_NO_MOVE_SEMANTIC) 124 # if defined (_STLP_NO_EXTENSIONS) || (_STLP_DEBUG_LEVEL == _STLP_STANDARD_DBG_LEVEL) 125 src.get()._M_iter_list._Invalidate_all();
132 #if !defined (_STLP_MEMBER_TEMPLATES) 144 template <
class _InputIterator>
150 # if defined (_STLP_NEEDS_EXTRA_TEMPLATE_CONSTRUCTORS) 151 template <
class _InputIterator>
189 const_reverse_iterator
rbegin()
const {
return const_reverse_iterator(
end()); }
191 const_reverse_iterator
rend()
const {
return const_reverse_iterator(
begin()); }
242 #if defined (_STLP_MEMBER_TEMPLATES) 243 template <
class _InputIter>
253 #if !defined (_STLP_MEMBER_TEMPLATES) || \ 254 !defined (_STLP_NO_METHOD_SPECIALIZATION) && !defined (_STLP_NO_EXTENSIONS) 331 if (__pos < __s.
size()) {
360 #if defined(_STLP_MEMBER_TEMPLATES) 361 template <
class _InputIter>
371 #if !defined (_STLP_MEMBER_TEMPLATES) || \ 372 !defined (_STLP_NO_METHOD_SPECIALIZATION) && !defined (_STLP_NO_EXTENSIONS) 441 #if defined (_STLP_MEMBER_TEMPLATES) 442 template <
class _InputIter>
454 #if !defined (_STLP_MEMBER_TEMPLATES) 465 #if !defined (_STLP_MEMBER_TEMPLATES) || !defined (_STLP_NO_METHOD_SPECIALIZATION) 471 # if (_STLP_DEBUG_LEVEL == _STLP_STANDARD_DBG_LEVEL) 481 # if (_STLP_DEBUG_LEVEL == _STLP_STANDARD_DBG_LEVEL) 492 if (__pos <
size()) {
591 #if defined (_STLP_MEMBER_TEMPLATES) 592 template <
class _InputIter>
594 _InputIter
__f, _InputIter
__l) {
606 #if !defined (_STLP_MEMBER_TEMPLATES) 608 const _CharT*
__f,
const _CharT*
__l) {
619 #if !defined (_STLP_MEMBER_TEMPLATES) || !defined (_STLP_NO_METHOD_SPECIALIZATION) 626 __f._M_iterator,
__l._M_iterator);
636 __f._M_iterator,
__l._M_iterator);
647 #if defined (_STLP_USE_PARTIAL_SPEC_WORKAROUND) && !defined (_STLP_FUNCTION_TMPL_PARTIAL_ORDER) 648 void _M_swap_workaround(
_Self& __x) {
swap(__x); }
674 const _CharT* __f2,
const _CharT* __l2)
675 {
return _Base::_M_compare(__f1, __l1, __f2, __l2); }
677 const _CharT* __f2,
const _CharT* __l2)
678 {
return _Base::_M_compare(__f1._M_iterator, __l1._M_iterator, __f2, __l2); }
681 {
return _Base::_M_compare(__f1, __l1, __f2._M_iterator, __l2._M_iterator); }
684 {
return _Base::_M_compare(__f1._M_iterator, __l1._M_iterator, __f2._M_iterator, __l2._M_iterator); }
790 #if defined (_STLP_USE_TEMPLATE_EXPRESSION) 796 #if defined (_STLP_USE_TEMPLATE_EXPORT) && !defined (_STLP_USE_MSVC6_MEM_T_BUG_WORKAROUND) 801 # if defined (_STLP_HAS_WCHAR_T) 809 #undef _STLP_NON_DBG_STRING 810 #undef _STLP_NON_DBG_STRING_NAME 812 #if defined (__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ == 96) 813 template <
class _CharT,
class _Traits,
class _Alloc>
817 #if defined (basic_string)
size_type rfind(_CharT __c, size_type __pos=npos) const
basic_string(size_type __n, _CharT __c, const allocator_type &__a=allocator_type())
_Self & replace(iterator __first, iterator __last, const_iterator __f, const_iterator __l)
basic_string(const _CharT *__s, const allocator_type &__a=allocator_type())
_Self & assign(const _Self &__s, size_type __pos, size_type __n)
size_type find_first_not_of(const _CharT *__s, size_type __pos, size_type __n) const
const_reverse_iterator rbegin() const
void _Compare_Capacity(size_type __old_capacity)
_Self & append(const _CharT *__f, const _CharT *__l)
_STLP_NO_MEM_T_STRING_BASE _Base
void reserve(size_type __s=0)
size_type capacity() const
_STLP_NON_DBG_STRING _Base
#define random_access_iterator_tag
size_type find(const _CharT *__s, size_type __pos=0) const
_Self & replace(iterator __f, iterator __l, size_type __n, _CharT __c)
size_type find_last_of(const _CharT *__s, size_type __pos=npos) const
_Self & append(const _Self &__s, size_type __pos, size_type __n)
_Self & assign(size_type __n, _CharT __c)
size_type find_first_not_of(_CharT __c, size_type __pos=0) const
size_type find_first_of(const _CharT *__s, size_type __pos=0) const
size_type find(const _Self &__s, size_type __pos=0) const
_Self & append(const_iterator __f, const_iterator __l)
_Self & replace(iterator __f, iterator __l, const _CharT *__s, size_type __n)
size_type find(_CharT __c) const
_Self & append(const _Self &__s)
_Self & assign(const_iterator __f, const_iterator __l)
bool _Dereferenceable(const _Iterator &__it)
static int _STLP_CALL _M_compare(const _CharT *__f1, const _CharT *__l1, const _CharT *__f2, const _CharT *__l2)
_Self & insert(size_type __pos, const _CharT *__s, size_type __n)
_STLP_PRIV __owned_list _M_iter_list
const _CharT * data() const
_Self & append(size_type __n, _CharT __c)
size_type rfind(const _CharT *__s, size_type __pos, size_type __n) const
int compare(size_type __pos1, size_type __n1, const _Self &__s, size_type __pos2, size_type __n2) const
_Self & assign(const _CharT *__f, const _CharT *__l)
_Self & operator=(const _Self &__s)
basic_string(const _Self &__s, size_type __pos, size_type __n=npos, const allocator_type &__a=allocator_type())
allocator_type get_allocator() const
_Self & append(const _CharT *__s)
size_type rfind(const _CharT *__s, size_type __pos=npos) const
#define _STLP_MOVE_TO_PRIV_NAMESPACE
_Self & assign(const _CharT *__s, size_type __n)
static int _STLP_CALL _M_compare(const _CharT *__f1, const _CharT *__l1, const_iterator __f2, const_iterator __l2)
size_type find_last_of(_CharT __c, size_type __pos=npos) const
basic_string(__move_source< _Self > src)
_Self & replace(size_type __pos, size_type __n, const _Self &__s)
static int _STLP_CALL _M_compare(const_iterator __f1, const_iterator __l1, const _CharT *__f2, const _CharT *__l2)
basic_string(_Reserve_t __r, size_t __n, const allocator_type &__a=allocator_type())
iterator erase(iterator __pos)
_Self & append(const _CharT *__s, size_type __n)
reference operator[](size_type __n)
void resize(size_type __n, _CharT __c)
GLenum GLuint GLenum GLsizei length
_Self & insert(size_type __pos, const _CharT *__s)
#define _STLP_DEFAULT_CONSTRUCTED(_TTp)
basic_string(const _CharT *__s, size_type __n, const allocator_type &__a=allocator_type())
_STLP_PRIVATE iterator const _CharT * __f
iterator erase(iterator __f, iterator __l)
const _CharT * c_str() const
_Self & replace(size_type __pos, size_type __n1, const _CharT *__s, size_type __n2)
void _Invalidate_iterator(const iterator &__it)
void insert(iterator __p, iterator __f, iterator __l)
#define __IMPORT_CONTAINER_TYPEDEFS(_Super)
const_iterator end() const
_Iterator _Non_Dbg_iter(_Iterator __it)
const_iterator begin() const
_STLP_PRIV __construct_checker< _STLP_NON_DBG_STRING > _ConstructCheck
_Base::size_type size_type
_STLP_PRIVATE const _CharT * __first
size_type find_first_not_of(const _CharT *__s, size_type __pos=0) const
_Self & insert(size_type __pos, size_type __n, _CharT __c)
#define _STLP_MOVE_TO_STD_NAMESPACE
void get(int argc, const char *argv[])
basic_string(const allocator_type &__a=allocator_type())
size_type find_first_of(const _CharT *__s, size_type __pos, size_type __n) const
_Self & replace(iterator __f, iterator __l, const _Self &__s)
int compare(size_type __pos, size_type __n, const _Self &__s) const
_Self & replace(size_type __pos1, size_type __n1, const _Self &__s, size_type __pos2, size_type __n2)
_Self & operator+=(_CharT __c)
_STLP_PRIVATE const _CharT const _CharT * __last
#define _STLP_ALLOCATOR_TYPE_DFL
_Self & replace(iterator __first, iterator __last, const _CharT *__f, const _CharT *__l)
#define _STLP_NON_DBG_STRING
void insert(iterator __p, const _CharT *__f, const _CharT *__l)
_Self & assign(const _Self &__s)
#define _STLP_EXPORT_TEMPLATE_CLASS
_Self & operator=(_CharT __c)
_Self & append(const _CharT *__first, const _CharT *__last)
size_type find_first_not_of(const _Self &__s, size_type __pos=0) const
_Self & replace(iterator __first, iterator __last, iterator __f, iterator __l)
_IsPOD< _CharT >::_Type _Char_Is_POD
_STLP_MOVE_TO_PRIV_NAMESPACE const _InputIterator const input_iterator_tag &_InputIterator __it(__first)
int compare(size_type __pos, size_type __n, const _CharT *__s) const
size_type find_last_not_of(const _Self &__s, size_type __pos=npos) const
void push_back(_CharT __c)
_Self & assign(const _CharT *__s)
reverse_iterator rbegin()
_Self substr(size_type __pos=0, size_type __n=npos) const
size_type find_last_not_of(const _CharT *__s, size_type __pos, size_type __n) const
size_type rfind(const _Self &__s, size_type __pos=npos) const
size_type find(_CharT __c, size_type __pos) const
size_type find_last_of(const _CharT *__s, size_type __pos, size_type __n) const
static int _STLP_CALL _M_compare(const_iterator __f1, const_iterator __l1, const_iterator __f2, const_iterator __l2)
int compare(const _Self &__s) const
#define _STLP_DEBUG_CHECK(expr)
basic_string< _CharT, _Traits, _Alloc > _Self
WDF_CHILD_LIST_ITERATOR iterator
_Self & operator=(const _CharT *__s)
_Self & replace(iterator __f, iterator __l, const _CharT *__s)
size_type find_first_of(const _Self &__s, size_type __pos=0) const
_Self & operator+=(const _CharT *__s)
size_type find(const _CharT *__s, size_type __pos, size_type __n) const
int compare(size_type __pos1, size_type __n1, const _CharT *__s, size_type __n2) const
basic_string(const_iterator __f, const_iterator __l, const allocator_type &__a=allocator_type())
_Self & insert(size_type __pos, const _Self &__s, size_type __beg, size_type __n)
const_reverse_iterator rend() const
const_reference operator[](size_type __n) const
#define _STLP_END_NAMESPACE
size_type find_last_not_of(_CharT __c, size_type __pos=npos) const
basic_string(const _Self &__s)
reference at(size_type __n)
iterator insert(iterator __p, _CharT __c)
_Base::allocator_type allocator_type
#define _STLP_FIX_LITERAL_BUG(__x)
size_type copy(_CharT *__s, size_type __n, size_type __pos=0) const
basic_string(const _CharT *__f, const _CharT *__l, const allocator_type &__a=allocator_type())
const_reference at(size_type __n) const
basic_string(const _Base &__x)
_Self & operator+=(const _Self &__s)
void insert(iterator __p, size_t __n, _CharT __c)
void insert(iterator __p, const_iterator __f, const_iterator __l)
int compare(const _CharT *__s) const
void _Invalidate_iterators(const iterator &__f, const iterator &__l)
_STLP_DECLARE_RANDOM_ACCESS_REVERSE_ITERATORS
#define _STLP_BEGIN_NAMESPACE
size_type find_last_of(const _Self &__s, size_type __pos=npos) const
_Self & insert(size_type __pos, const _Self &__s)
size_type find_last_not_of(const _CharT *__s, size_type __pos=npos) const
size_type find_first_of(_CharT __c, size_type __pos=0) const
_Self & replace(size_type __pos, size_type __n1, const _CharT *__s)
_Self & erase(size_type __pos=0, size_type __n=npos)
_Self & replace(size_type __pos, size_type __n1, size_type __n2, _CharT __c)
#define _STLP_VERBOSE_ASSERT(expr, diagnostic)
const value_type * const_iterator
_STLP_PRIVATE iterator const _CharT const _CharT * __l
const value_type & const_reference
_STLP_PRIV _String_reserve_t _Reserve_t
void resize(size_type __n)