ReactOS  0.4.12-dev-90-g2e2e63e
__sum_storage_elem< _CharT, _Traits, _Alloc > Struct Template Reference

#include <_string_sum.h>

Public Types

typedef __sum_storage_elem< _CharT, _Traits, _Alloc_Self
 
typedef basic_string< _CharT, _Traits, _Alloc_BString
 

Public Member Functions

 __sum_storage_elem (_Alloc __alloc)
 
template<class _Left , class _Right , class _StorageDir >
void _M_Init (__bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const &__ref) const
 
template<class _Left , class _Right , class _StorageDir >
_BString const_M_get_storage (__bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const &__ref, bool __do_init) const
 
template<class _Left , class _Right , class _StorageDir >
_BString_M_get_storage (__bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const &__ref)
 
size_t size () const
 
_CharT constoperator[] (size_t __n) const
 

Private Attributes

bool _M_init
 
basic_string< _CharT, _Traits, _Alloc_M_storage
 

Detailed Description

template<class _CharT, class _Traits, class _Alloc>
struct __sum_storage_elem< _CharT, _Traits, _Alloc >

Definition at line 372 of file _string_sum.h.

Member Typedef Documentation

◆ _BString

template<class _CharT , class _Traits , class _Alloc >
typedef basic_string<_CharT, _Traits, _Alloc> __sum_storage_elem< _CharT, _Traits, _Alloc >::_BString

Definition at line 374 of file _string_sum.h.

◆ _Self

template<class _CharT , class _Traits , class _Alloc >
typedef __sum_storage_elem<_CharT, _Traits, _Alloc> __sum_storage_elem< _CharT, _Traits, _Alloc >::_Self

Definition at line 373 of file _string_sum.h.

Constructor & Destructor Documentation

◆ __sum_storage_elem()

template<class _CharT , class _Traits , class _Alloc >
__sum_storage_elem< _CharT, _Traits, _Alloc >::__sum_storage_elem ( _Alloc  __alloc)
inline

Definition at line 376 of file _string_sum.h.

376  : _M_init(false), _M_storage(__alloc)
377  {}
basic_string< _CharT, _Traits, _Alloc > _M_storage
Definition: _string_sum.h:407

Member Function Documentation

◆ _M_get_storage() [1/2]

template<class _CharT , class _Traits , class _Alloc >
template<class _Left , class _Right , class _StorageDir >
_BString const& __sum_storage_elem< _CharT, _Traits, _Alloc >::_M_get_storage ( __bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const __ref,
bool  __do_init 
) const
inline

Definition at line 388 of file _string_sum.h.

389  {
390  if (__do_init) {
391  _M_Init(__ref);
392  }
393  return _M_storage;
394  }
basic_string< _CharT, _Traits, _Alloc > _M_storage
Definition: _string_sum.h:407
void _M_Init(__bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const &__ref) const
Definition: _string_sum.h:380

◆ _M_get_storage() [2/2]

template<class _CharT , class _Traits , class _Alloc >
template<class _Left , class _Right , class _StorageDir >
_BString& __sum_storage_elem< _CharT, _Traits, _Alloc >::_M_get_storage ( __bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const __ref)
inline

Definition at line 396 of file _string_sum.h.

396  {
397  _M_Init(__ref);
398  return _M_storage;
399  }
basic_string< _CharT, _Traits, _Alloc > _M_storage
Definition: _string_sum.h:407
void _M_Init(__bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const &__ref) const
Definition: _string_sum.h:380

◆ _M_Init()

template<class _CharT , class _Traits , class _Alloc >
template<class _Left , class _Right , class _StorageDir >
void __sum_storage_elem< _CharT, _Traits, _Alloc >::_M_Init ( __bstr_sum< _CharT, _Traits, _Alloc, _Left, _Right, _StorageDir > const __ref) const
inline

Definition at line 380 of file _string_sum.h.

380  {
381  if (!_M_init) {
382  _STLP_MUTABLE(_Self, _M_storage) = __ref;
383  _STLP_MUTABLE(_Self, _M_init) = true;
384  }
385  }
basic_string< _CharT, _Traits, _Alloc > _M_storage
Definition: _string_sum.h:407
#define _STLP_MUTABLE(type, x)
Definition: features.h:634
__sum_storage_elem< _CharT, _Traits, _Alloc > _Self
Definition: _string_sum.h:373

◆ operator[]()

template<class _CharT , class _Traits , class _Alloc >
_CharT const& __sum_storage_elem< _CharT, _Traits, _Alloc >::operator[] ( size_t  __n) const
inline

Definition at line 402 of file _string_sum.h.

403  { return __STATIC_CAST(_CharT*, 0)[__n]; }
return __n
Definition: _algo.h:75
#define __STATIC_CAST(__x, __y)
Definition: features.h:585

◆ size()

template<class _CharT , class _Traits , class _Alloc >
size_t __sum_storage_elem< _CharT, _Traits, _Alloc >::size ( ) const
inline

Definition at line 401 of file _string_sum.h.

401 { return 0; }

Member Data Documentation

◆ _M_init

template<class _CharT , class _Traits , class _Alloc >
bool __sum_storage_elem< _CharT, _Traits, _Alloc >::_M_init
mutableprivate

Definition at line 406 of file _string_sum.h.

◆ _M_storage

template<class _CharT , class _Traits , class _Alloc >
basic_string<_CharT, _Traits, _Alloc> __sum_storage_elem< _CharT, _Traits, _Alloc >::_M_storage
mutableprivate

Definition at line 407 of file _string_sum.h.


The documentation for this struct was generated from the following file: